/* 共享主题：学术主题、品牌清晰度和卡片层次。 保留分区注释，避免再新增重复覆盖文件。 */

/* ===== 原模块：academic-theme.css ===== */
/* 官网学术主题，覆盖基础配色和通用组件。修改时保留页面中样式表的加载顺序。 */
/* Shared academic presentation. Loaded after each page's layout styles. */
:root {
  --ink: #182f4d;
  --blue: #203749;
  --orange: #285f8d;
  --gold: #aa9670;
  --soft: #f5f8fc;
  --line: #dce5ef;
  --muted: #425467;
}
body {
  background: #fff;
}
.site-header,
.simple-header{
  background: #fff;
  border-bottom: 1px solid var(--line);
  box-shadow: none;
}
.announcement {
  background: #182f4d;
}
.announcement span {
  color: #f0dfb6;
}
.button{
  background: #203749;
  border-radius: 2px;
  box-shadow: none;
}
.button:hover{
  background: #192f42;
}
a:focus-visible,
button:focus-visible,
summary:focus-visible {
  outline: 3px solid #28699a;
  outline-offset: 4px;
}
.hero,
.page-hero,
.content-hero,
.science-hero,
.school-hero {
  background: #f5f8fc;
  color: #182f4d;
  border-bottom: 1px solid #dce5ef;
}
.hero::after,
.page-hero::after {
  display: none;
}
.hero h1,
.page-hero h1,
.content-hero h1,
.school-hero h1,
.competition-hero h1,
.v2-heading h2,
.section-heading h2,
.page-intro h2,
.program-copy h2,
.method h2,
.trial h2,
.page-cta h2 {
  font-family: Georgia, "Times New Roman", serif;
  font-weight: 400;
  line-height: 1.16;
  letter-spacing: -0.025em;
}
.hero h1 {
  font-size: clamp(38px, 4.1vw, 58px);
}
.school-hero h1 {
  font-size: clamp(40px, 5.5vw, 76px);
}
.hero .highlight {
  color: #203749;
}
.hero .eyebrow,
.page-hero .kicker,
.content-hero .kicker {
  color: #305f86;
}
.hero-lead,
.hero .hero-lead {
  color: #425467;
}
.problem-card,
.school-hero aside {
  transform: none;
  box-shadow: none;
  border: 1px solid #d6e1ed;
  border-radius: 2px;
}
.problem-card {
  background: #fff;
  padding: 30px;
  border-top: 3px solid #203749;
}
.problem-card h2 {
  font-family: Georgia, "Times New Roman", serif;
  line-height: 1.55;
}
.problem-top {
  font-weight: 600;
  letter-spacing: 0.1em;
  border-bottom-width: 1px;
}
.problem-label,
.problem-top b {
  color: #305f86;
}
.problem-note {
  position: static;
  margin-top: 16px;
  padding: 0;
  background: transparent;
  color: #425467;
  font-size: 14px;
  font-weight: 400;
  transform: none;
}

.stats,
.programs,
.bookstore {
  background: #fff;
}
.stats strong {
  color: #203749;
}
.v2-programs,
.method,
.stories,
.program-band,
.home-club {
  background: #f5f8fc;
}
.program-band.light,
.trial,
.page-cta {
  background: #f4f7fb;
}
.program-band.dark {
  background: #182f4d;
}
.program-card,
.book-card,
.story-grid blockquote,
.info-card,
.content-grid article,
.pathway-cards a,
.v2-program-grid a {
  background: #fff;
  border: 1px solid #dce5ef;
  border-top: 2px solid #aa9670;
  border-radius: 2px;
  box-shadow: none;
}
.program-card:hover,
.book-card:hover,
.info-card:hover,
.pathway-cards a:hover {
  transform: none;
  box-shadow: none;
  border-color: #8ca9c4;
}
.v2-five article {
  border-color: #dce5ef;
}
.v2-five b,
.v2-program-grid span,
.v2-program-grid b,
.pathway-cards span {
  color: #305f86;
}
.v2-program-grid h3,
.v2-five h3,
.content-grid h2,
.info-card h3 {
  font-family: "DM Sans", Arial, sans-serif;
}
.trial-form,
.inquiry-form {
  background: #fff;
  border-color: #dce5ef;
}
.trial-points span {
  background: #eaf1f8;
}
.site-footer,
.simple-footer {
  background: #f5f8fc;
  border-top: 1px solid #d6e1ed;
}
@media (max-width: 1250px) {
  .site-header .main-nav {
    background: #fff;
    border-bottom-color: #dce5ef;
  }
}
@media (max-width: 620px) {
  .hero h1 {
    font-size: clamp(34px, 9vw, 44px);
    letter-spacing: -0.025em;
  }
  .problem-card {
    padding: 21px;
  }
}
@media (prefers-reduced-motion: reduce) {
  html {
    scroll-behavior: auto;
  }
}

/* Academic site refresh: retain page layouts, unify the visual language. */
body.academic-site {
  --ink: #182f4d;
  --blue: #203749;
  --orange: #285f8d;
  --gold: #aa9670;
  --soft: #f5f8fc;
  --line: #dce5ef;
  --muted: #425467;
  --paper: #fff;
  --cream: #f3ecdc;
  background: #f6f2e9;
  color: #182f4d;
}
body.playful-site.academic-site
  :is(
    .program-card,
    .book-card,
    .story-grid blockquote,
    .info-card,
    .content-grid article,
    .pathway-cards > a,
    .v2-program-grid > a,
    .v2-five > article,
    .course-card,
    .level-pathway article,
    .two-column-details article,
    .stage-grid article,
    .contest-card,
    .sample-card,
    .assessment-card,
    .schedule-card,
    .confirmation-card,
    .account-record,
    .account-stats article,
    .account-admin-grid > section,
    .student-list article,
    .admin-area-grid > a,
    .login-card,
    .registration-card,
    .overview article,
    .setup-card,
    .panel,
    .catalog-card,
    .hero-study,
    .worked-example,
    .unit-detail,
    .organizer-intro,
    .cms-contests,
    .school-hero aside,
    .problem-card,
    .study-paper,
    .alignment-form,
    .trial-form,
    .inquiry-form,
    .account-login,
    .enrol-summary,
    .placement-help,
    .lesson-card,
    .preview-note,
    .review-sidebar,
    .common-mistake,
    .next-review,
    .catalog-filters
  ),
body.playful-site.academic-site.registration-result-page #confirmation {
  background: #fff;
  border: 1px solid #dce5ef;
  border-radius: 6px;
  box-shadow: 0 3px 12px #182f4d06;
  transform: none;
  --surface-accent: #203749;
  --path-accent: #203749;
  --path-light: #f5f8fc;
  --path-base: #edf3fa;
  --path-edge: #d6e1ed;
}
body.playful-site.academic-site
  :is(
    .program-card,
    .book-card,
    .story-grid blockquote,
    .info-card,
    .content-grid article,
    .pathway-cards > a,
    .v2-program-grid > a,
    .v2-five > article,
    .course-card,
    .level-pathway article,
    .two-column-details article,
    .stage-grid article,
    .contest-card,
    .sample-card,
    .assessment-card,
    .schedule-card,
    .confirmation-card,
    .account-record,
    .account-stats article,
    .account-admin-grid > section,
    .student-list article,
    .admin-area-grid > a,
    .login-card,
    .registration-card,
    .overview article,
    .setup-card,
    .panel,
    .catalog-card,
    .hero-study,
    .worked-example,
    .unit-detail,
    .organizer-intro,
    .cms-contests,
    .school-hero aside,
    .problem-card,
    .study-paper,
    .alignment-form,
    .trial-form,
    .inquiry-form,
    .account-login,
    .enrol-summary,
    .placement-help,
    .lesson-card,
    .preview-note,
    .review-sidebar,
    .common-mistake,
    .next-review,
    .catalog-filters
  ):hover {
  transform: none;
  box-shadow: 0 3px 12px #182f4d0a;
  border-color: #a8bdd1;
}
body.playful-site.academic-site
  :is(
    .site-header,
    .simple-header,
    .algebra-header,
    .course-header
  ) {
  background: #fff;
  border-bottom: 1px solid #dce5ef;
  box-shadow: none;
}
body.playful-site.academic-site
  :is(
    .hero,
    .page-hero,
    .content-hero,
    .science-hero,
    .school-hero,
    .course-hero,
    .store-hero,
    .competition-hero,
    .algebra-hero) {
  background: linear-gradient(115deg, #e4edf3 8%, #dfe9e9 65%, #ebe0c8);
  border-bottom: 1px solid #dce5ef;
  color: #182f4d;
}
body.playful-site.academic-site :is(.hero, .page-hero)::after,
body.playful-site.academic-site.registration-result-page #confirmation::before {
  display: none;
}
body.playful-site.academic-site :is(.stats, .programs, .bookstore) {
  background: #f6f2e9;
}
body.playful-site.academic-site
  :is(
    .v2-programs,
    .method,
    .stories,
    .program-band,
    .home-club,
    .trial,
    .page-cta,
    .competition-section.tinted,
    .practice-section,
    .modeling-section,
    .semester-section,
    .private-support,
    .alignment-section) {
  background: #e9eee5;
}
body.playful-site.academic-site .program-band.dark {
  background: #182f4d;
  color: #fff;
}
body.playful-site.academic-site :is(h1, h2) {
  font-family: Georgia, "Times New Roman", serif;
  font-weight: 400;
  letter-spacing: -0.025em;
  line-height: 1.2;
}
body.playful-site.academic-site h3 {
  font-family: "DM Sans", Arial, sans-serif;
  font-weight: 700;
  letter-spacing: -0.015em;
  line-height: 1.35;
}
body.playful-site.academic-site
  :is(
    .button,
    .a-button,
    .pathway-primary,
    .study-next,
    .admin-shell .primary,
    .student-wrap .register-button
  ) {
  background: #203749;
  color: #fff;
  border: 1px solid #203749;
  border-radius: 5px;
  box-shadow: none;
  transform: none;
}
body.playful-site.academic-site
  :is(
    .button,
    .a-button,
    .pathway-primary,
    .study-next
  ):hover {
  background: #192f42;
  color: #fff;
  box-shadow: none;
  transform: none;
}
body.playful-site.academic-site
  :is(
    .a-button.outline,
    .button.secondary,
    .secondary-button
  ) {
  background: #fff;
  color: #203749;
  border: 1px solid #a8bdd1;
  border-radius: 5px;
  box-shadow: none;
}
body.playful-site.academic-site .study-next :is(small, strong, .next-icon) {
  color: #fff;
}
body.playful-site.academic-site
  :is(
    .pathway-symbol,
    .v2-five b,
    .answer-row span,
    .problem-top b,
    .trial-points span,
    .course-details summary,
    .catalog-cover-link,
    .competition-map
  ) {
  background: #f4f7fb;
  border-color: #d6e1ed;
  border-radius: 5px;
  box-shadow: none;
  color: #203749;
}
body.playful-site.academic-site .problem-note {
  background: transparent;
  border: 0;
  border-radius: 0;
  box-shadow: none;
  transform: none;
  color: #425467;
}
body.playful-site.academic-site :is(.site-footer, .simple-footer) {
  background: #f4f7fb;
  border-top: 1px solid #d6e1ed;
}
body.playful-site.academic-site :is(.announcement, .algebra-announcement) {
  background: #182f4d;
}
body.playful-site.academic-site
  :is(
    .competition-jump,
    .region-strip,
    .course-footer,
    .algebra-final,
    .publisher-note
  ) {
  background: #f4f7fb;
}
body.playful-site.academic-site .hero .highlight {
  color: #203749;
  text-decoration: none;
}
body.playful-site.academic-site .hero .home-hero-title::after {
  height: 2px;
  background: #aa9670;
}
body.playful-site.academic-site .brand-logo {
  mix-blend-mode: multiply;
  background: transparent;
  filter: none;
  border-radius: 0;
}

/* Let the transparent logo sit directly on every header/footer surface. */
body.playful-site.academic-site :is(.brand, .brand-footer, .brand-logo) {
  background: transparent;
  border: 0;
  box-shadow: none;
  border-radius: 0;
}
body.playful-site.academic-site .brand-footer {
  padding: 0;
}
body.playful-site.academic-site .brand-logo {
  mix-blend-mode: normal;
}/* Bright academic palette: white space, blue ink, restrained brass details. */


body.playful-site.academic-site :is(.eyebrow, .kicker) {
  color: #75613f;
  font-weight: 700;
  letter-spacing: 0.14em;
}
body.playful-site.academic-site
  :is(
    .content-grid article,
    .home-pathways .program-card,
    .v2-program-grid > a,
    .problem-card) {
  border-top: 3px solid #aa9670;
}
body.playful-site.academic-site
  :is(.content-grid h2, .home-pathways .program-card h3) {
  color: #182f4d;
  font-family: Georgia, "Times New Roman", serif;
  font-weight: 400;
  line-height: 1.3;
}
body.playful-site.academic-site
  :is(.content-grid li, .content-hero > p:not(.kicker)) {
  color: #425467;
}
body.playful-site.academic-site .system-panel {
  background: linear-gradient(120deg, #dae5eb, #e9dfc8);
  color: #182f4d;
  border: 1px solid #dce5ef;
  border-left: 3px solid #aa9670;
  border-radius: 10px;
}
body.playful-site.academic-site .system-panel > p:last-child {
  color: #425467;
}
body.playful-site.academic-site
  :is( .program-band.dark) {
  background: #182f4d;
  color: #fff;
}
body.playful-site.academic-site
  :is( .program-band.dark)
  :is(.kicker) {
  color: #f0dfb6;
}


body.playful-site.academic-site :is(.site-footer, .simple-footer) {
  background: #e8e4d9;
  border-top-color: #dce5ef;
}
body.playful-site.academic-site
  :is(.button, .a-button, .pathway-primary) {
  box-shadow: none;
}
body.playful-site.academic-site :is(input, select, textarea):focus-visible {
  outline: 3px solid #28699a;
  outline-offset: 3px;
}/* Quiet mineral and linen tones: distinct cards with restrained saturation. */


body.playful-site.academic-site
  :is(
    .program-card,
    .home-pathways .program-card,
    .book-card,
    .story-grid blockquote,
    .info-card,
    .content-grid article,
    .pathway-cards > a,
    .v2-program-grid > a,
    .v2-five > article,
    .course-card,
    .level-pathway article,
    .two-column-details article,
    .stage-grid article,
    .contest-card,
    .sample-card,
    .assessment-card,
    .schedule-card,
    .account-stats article,
    .admin-area-grid > a,
    .overview article,
    .catalog-card,
    .lesson-card,
    .problem-card) {
  --academic-card-light: #d4e0e8;
  --academic-card-base: #e5edf2;
  --academic-card-edge: #b9cad5;
  --academic-card-accent: #405d72;
}
body.playful-site.academic-site
  :is(
    .program-card,
    .home-pathways .program-card,
    .book-card,
    .story-grid blockquote,
    .info-card,
    .content-grid article,
    .pathway-cards > a,
    .v2-program-grid > a,
    .v2-five > article,
    .course-card,
    .level-pathway article,
    .two-column-details article,
    .stage-grid article,
    .contest-card,
    .sample-card,
    .assessment-card,
    .schedule-card,
    .account-stats article,
    .admin-area-grid > a,
    .overview article,
    .catalog-card,
    .lesson-card,
    .problem-card):nth-child(8n + 2) {
  --academic-card-light: #d9e2d5;
  --academic-card-base: #e9eee5;
  --academic-card-edge: #becbb7;
  --academic-card-accent: #4e654d;
}
body.playful-site.academic-site
  :is(
    .program-card,
    .home-pathways .program-card,
    .book-card,
    .story-grid blockquote,
    .info-card,
    .content-grid article,
    .pathway-cards > a,
    .v2-program-grid > a,
    .v2-five > article,
    .course-card,
    .level-pathway article,
    .two-column-details article,
    .stage-grid article,
    .contest-card,
    .sample-card,
    .assessment-card,
    .schedule-card,
    .account-stats article,
    .admin-area-grid > a,
    .overview article,
    .catalog-card,
    .lesson-card,
    .problem-card):nth-child(8n + 3) {
  --academic-card-light: #e8ddc3;
  --academic-card-base: #f0e9d9;
  --academic-card-edge: #d0c09d;
  --academic-card-accent: #705c36;
}
body.playful-site.academic-site
  :is(
    .program-card,
    .home-pathways .program-card,
    .book-card,
    .story-grid blockquote,
    .info-card,
    .content-grid article,
    .pathway-cards > a,
    .v2-program-grid > a,
    .v2-five > article,
    .course-card,
    .level-pathway article,
    .two-column-details article,
    .stage-grid article,
    .contest-card,
    .sample-card,
    .assessment-card,
    .schedule-card,
    .account-stats article,
    .admin-area-grid > a,
    .overview article,
    .catalog-card,
    .lesson-card,
    .problem-card):nth-child(8n + 4) {
  --academic-card-light: #dfd8cd;
  --academic-card-base: #ece7df;
  --academic-card-edge: #c8bcab;
  --academic-card-accent: #695a47;
}
body.playful-site.academic-site
  :is(
    .program-card,
    .home-pathways .program-card,
    .book-card,
    .story-grid blockquote,
    .info-card,
    .content-grid article,
    .pathway-cards > a,
    .v2-program-grid > a,
    .v2-five > article,
    .course-card,
    .level-pathway article,
    .two-column-details article,
    .stage-grid article,
    .contest-card,
    .sample-card,
    .assessment-card,
    .schedule-card,
    .account-stats article,
    .admin-area-grid > a,
    .overview article,
    .catalog-card,
    .lesson-card,
    .problem-card):nth-child(8n + 5) {
  --academic-card-light: #dedbd2;
  --academic-card-base: #eceae3;
  --academic-card-edge: #c5bfb0;
  --academic-card-accent: #645d4b;
}
body.playful-site.academic-site
  :is(
    .program-card,
    .home-pathways .program-card,
    .book-card,
    .story-grid blockquote,
    .info-card,
    .content-grid article,
    .pathway-cards > a,
    .v2-program-grid > a,
    .v2-five > article,
    .course-card,
    .level-pathway article,
    .two-column-details article,
    .stage-grid article,
    .contest-card,
    .sample-card,
    .assessment-card,
    .schedule-card,
    .account-stats article,
    .admin-area-grid > a,
    .overview article,
    .catalog-card,
    .lesson-card,
    .problem-card):nth-child(8n + 6) {
  --academic-card-light: #d4e1df;
  --academic-card-base: #e5eeeb;
  --academic-card-edge: #b7cbc6;
  --academic-card-accent: #47655e;
}
body.playful-site.academic-site
  :is(
    .program-card,
    .home-pathways .program-card,
    .book-card,
    .story-grid blockquote,
    .info-card,
    .content-grid article,
    .pathway-cards > a,
    .v2-program-grid > a,
    .v2-five > article,
    .course-card,
    .level-pathway article,
    .two-column-details article,
    .stage-grid article,
    .contest-card,
    .sample-card,
    .assessment-card,
    .schedule-card,
    .account-stats article,
    .admin-area-grid > a,
    .overview article,
    .catalog-card,
    .lesson-card,
    .problem-card):nth-child(8n + 7) {
  --academic-card-light: #dcdce6;
  --academic-card-base: #eaeaf0;
  --academic-card-edge: #bfc0d0;
  --academic-card-accent: #5a5d77;
}
body.playful-site.academic-site
  :is(
    .program-card,
    .home-pathways .program-card,
    .book-card,
    .story-grid blockquote,
    .info-card,
    .content-grid article,
    .pathway-cards > a,
    .v2-program-grid > a,
    .v2-five > article,
    .course-card,
    .level-pathway article,
    .two-column-details article,
    .stage-grid article,
    .contest-card,
    .sample-card,
    .assessment-card,
    .schedule-card,
    .account-stats article,
    .admin-area-grid > a,
    .overview article,
    .catalog-card,
    .lesson-card,
    .problem-card):nth-child(8n + 8) {
  --academic-card-light: #dedfce;
  --academic-card-base: #eaecdf;
  --academic-card-edge: #c4c7ad;
  --academic-card-accent: #5b6248;
}
body.playful-site.academic-site
  :is(
    .program-card,
    .home-pathways .program-card,
    .book-card,
    .story-grid blockquote,
    .info-card,
    .content-grid article,
    .pathway-cards > a,
    .v2-program-grid > a,
    .v2-five > article,
    .course-card,
    .level-pathway article,
    .two-column-details article,
    .stage-grid article,
    .contest-card,
    .sample-card,
    .assessment-card,
    .schedule-card,
    .account-stats article,
    .admin-area-grid > a,
    .overview article,
    .catalog-card,
    .lesson-card,
    .problem-card) {
  --surface-accent: var(--academic-card-accent);
  --path-accent: var(--academic-card-accent);
  --path-light: var(--academic-card-light);
  --path-base: var(--academic-card-base);
  --path-edge: var(--academic-card-edge);
  background:
    linear-gradient(155deg, #ffffff38, #ffffff00 48%, #182f4d06),
    var(--academic-card-light);
  border: 1px solid var(--academic-card-edge);
  border-radius: 10px;
  box-shadow:
    inset 0 1px 0 #ffffffb3,
    inset 0 -1px 0 #182f4d0a,
    0 2px 4px #182f4d0a,
    0 12px 24px -8px #182f4d29;
  transition:
    transform 0.2s ease,
    box-shadow 0.2s ease,
    border-color 0.2s ease;
}
@media (hover: hover) and (pointer: fine) {
  body.playful-site.academic-site
    :is(
      .program-card,
      .home-pathways .program-card,
      .book-card,
      .story-grid blockquote,
      .info-card,
      .content-grid article,
      .pathway-cards > a,
      .v2-program-grid > a,
      .v2-five > article,
      .course-card,
      .level-pathway article,
      .two-column-details article,
      .stage-grid article,
      .contest-card,
      .sample-card,
      .assessment-card,
      .schedule-card,
      .account-stats article,
      .admin-area-grid > a,
      .overview article,
      .catalog-card,
      .lesson-card,
      .problem-card):hover {
    transform: translateY(-3px);
    border-color: var(--academic-card-accent);
    box-shadow:
      inset 0 1px 0 #ffffffb3,
      inset 0 -1px 0 #182f4d0a,
      0 4px 6px #182f4d0d,
      0 20px 32px -10px #182f4d33;
  }
}
@media (prefers-reduced-motion: reduce) {
  body.playful-site.academic-site
    :is(
      .program-card,
      .home-pathways .program-card,
      .book-card,
      .story-grid blockquote,
      .info-card,
      .content-grid article,
      .pathway-cards > a,
      .v2-program-grid > a,
      .v2-five > article,
      .course-card,
      .level-pathway article,
      .two-column-details article,
      .stage-grid article,
      .contest-card,
      .sample-card,
      .assessment-card,
      .schedule-card,
      .account-stats article,
      .admin-area-grid > a,
      .overview article,
      .catalog-card,
      .lesson-card,
      .problem-card),
  body.playful-site.academic-site
    :is(
      .program-card,
      .home-pathways .program-card,
      .book-card,
      .story-grid blockquote,
      .info-card,
      .content-grid article,
      .pathway-cards > a,
      .v2-program-grid > a,
      .v2-five > article,
      .course-card,
      .level-pathway article,
      .two-column-details article,
      .stage-grid article,
      .contest-card,
      .sample-card,
      .assessment-card,
      .schedule-card,
      .account-stats article,
      .admin-area-grid > a,
      .overview article,
      .catalog-card,
      .lesson-card,
      .problem-card):hover {
    transition: none;
    transform: none;
  }
}
body.playful-site.academic-site :is(.pathway-symbol, .v2-five b) {
  background: var(--academic-card-light, #d4e0e8);
  color: var(--academic-card-accent, #405d72);
  border-color: var(--academic-card-edge, #b9cad5);
}

/* Editorial spacing for the public program cards. */
body.playful-site.academic-site
  :is(.content-grid article, .home-pathways .program-card) {
  padding: clamp(26px, 2.5vw, 36px);
}
body.playful-site.academic-site .content-grid {
  gap: 22px;
}
body.playful-site.academic-site .content-grid h2 {
  min-height: 0;
  margin-bottom: 24px;
  font-size: 24px;
}
body.playful-site.academic-site .content-grid li {
  margin-block: 12px;
}/* Academic editorial hierarchy for public course and program content. */


body.playful-site.academic-site
  :is(
    .program-card h3,
    .pathway-cards h3,
    .v2-program-grid h3,
    .v2-five h3,
    .info-card h3,
    .stage-grid h3,
    .topic-matrix h3,
    .course-card h3
  ) {
  font-family: Georgia, "Times New Roman", serif;
  font-weight: 400;
  letter-spacing: -0.015em;
  line-height: 1.3;
}
body.playful-site.academic-site
  :is(
    .content-grid h2,
    .home-pathways .program-card h3,
    .pathway-cards h3,
    .v2-program-grid h3
  ) {
  padding-bottom: 18px;
  border-bottom: 1px solid #182f4d26;
}
body.playful-site.academic-site
  :is(.content-hero h1, .page-hero h1) {
  letter-spacing: -0.035em;
  text-wrap: balance;
}
body.playful-site.academic-site
  :is(.content-hero > p:not(.kicker), .program-copy > p) {
  max-width: 65ch;
  line-height: 1.8;
}
body.playful-site.academic-site .content-grid ul {
  list-style: none;
  padding-left: 0;
}
body.playful-site.academic-site .content-grid li {
  margin: 0;
  padding-block: 10px;
  line-height: 1.65;
}
body.playful-site.academic-site .content-grid li + li {
  border-top: 1px solid #182f4d14;
}
body.playful-site.academic-site
  :is(.pathway-step, .grade, .problem-label) {
  font-variant-numeric: lining-nums tabular-nums;
}


/* ===== 原模块：clarity.css ===== */
/* 品牌标识与界面清晰度覆盖规则。修改时保留页面中样式表的加载顺序。 */
/* Shared, resolution-independent presentation; loaded after page themes. */
html { -webkit-text-size-adjust: 100%; text-size-adjust: 100%; }
/* Size each logo on one axis; keep its own intrinsic artwork proportions. */
body .brand .brand-logo { width: auto; aspect-ratio: auto; object-fit: contain; flex-shrink: 0; image-rendering: auto; }
body .brand-footer .brand-logo { width: 160px; height: auto; max-height: none; }
body .institution-mark img { width: auto; height: auto; max-width: 100%; max-height: 66px; aspect-ratio: auto; object-fit: contain; flex-shrink: 0; }
body.playful-site.academic-site {
  --clarity-font: 'DM Sans', 'Segoe UI', 'Microsoft YaHei', Arial, sans-serif;
  --muted: #425467;
  font-family: var(--clarity-font);
  line-height: 1.65;
}
body.playful-site.academic-site :is(button, input, select, textarea) { font-family: var(--clarity-font); }
body.playful-site.academic-site :is(h1, h2, h3, .hero .home-hero-title, .home-pathways .program-card h3, .content-grid h2, .hero-editorial h1) {
  font-family: var(--clarity-font);
  font-weight: 650;
  letter-spacing: -.025em;
  line-height: 1.22;
  text-wrap: balance;
  overflow-wrap: break-word;
}
body.playful-site.academic-site :is(h3, .home-pathways .program-card h3) { font-weight: 700; letter-spacing: -.015em; line-height: 1.35; }
body.playful-site.academic-site .hero .home-hero-title { font-size: clamp(2rem, 3.2vw, 3rem); }
body.playful-site.academic-site :is(.hero-lead, .hero-description, .content-hero > p:not(.kicker), .page-hero > p:not(.kicker)) {
  font-size: 1.125rem;
  line-height: 1.75;
  max-width: 65ch;
}
body.playful-site.academic-site :is(.info-card p, .info-card li, .program-card > p:not(.grade), .program-card li, .home-pathways .program-card > p:not(.grade), .home-pathways .program-card li, .content-grid p, .content-grid li) {
  font-size: 1rem;
  line-height: 1.7;
  color: #364c61;
}
body.playful-site.academic-site :is(.pathway-step, .pathway-secondary, .home-pathways .grade, .home-pathways .grade span, .hero-footnote, .study-label, .paper-top, .paper-flow, .study-next small) {
  font-size: .875rem;
  line-height: 1.55;
}
body.playful-site.academic-site :is(.eyebrow, .kicker, .pathway-step, .study-label) { letter-spacing: .08em; }
body.playful-site.academic-site :is(.pathway-primary, .algebra-hero .hero-editorial .a-button) { font-size: 1rem; }
body.playful-site.academic-site :is(.footer-main > div:not(:first-child), .footer-bottom, .simple-footer) { color: #425467; }/* Flat CSS surfaces and borders stay sharp at any display scale. */


body.playful-site.academic-site :is(.hero, .page-hero, .content-hero, .science-hero, .school-hero, .course-hero, .store-hero, .competition-hero, .algebra-hero) {
  background: #e7eef1;
}
body.playful-site.academic-site :is(.program-card, .home-pathways .program-card, .book-card, .story-grid blockquote, .info-card, .content-grid article, .pathway-cards > a, .v2-program-grid > a, .v2-five > article, .course-card, .level-pathway article, .two-column-details article, .stage-grid article, .contest-card, .sample-card, .assessment-card, .schedule-card, .account-stats article, .admin-area-grid > a, .overview article, .catalog-card, .lesson-card, .problem-card) {
  background: var(--academic-card-base, #f5f8fc);
  border: 1px solid var(--academic-card-edge, #bccbd5);
  border-top: 3px solid var(--academic-card-accent, #405d72);
  border-radius: 6px;
  box-shadow: none;
  transform: none;
  transition: border-color .15s ease;
}
body.playful-site.academic-site :is(.program-card, .home-pathways .program-card, .book-card, .story-grid blockquote, .info-card, .content-grid article, .pathway-cards > a, .v2-program-grid > a, .v2-five > article, .course-card, .level-pathway article, .two-column-details article, .stage-grid article, .contest-card, .sample-card, .assessment-card, .schedule-card, .account-stats article, .admin-area-grid > a, .overview article, .catalog-card, .lesson-card, .problem-card):hover {
  transform: none;
  box-shadow: none;
  border-color: var(--academic-card-accent, #405d72);
}
body.playful-site.academic-site :is(.pathway-symbol, .v2-five b, .study-paper, .hero-study, .worked-example, .unit-detail, .panel, .login-card, .registration-card, .trial-form, .inquiry-form) {
  box-shadow: none;
  transform: none;
}
.pathway-symbol svg { display: block; width: 28px; height: 28px; }
@media (min-width: 1001px) {
  body.playful-site.academic-site .home-pathways .program-card h3 { min-height: calc(2.7em + 19px); }
}
body.playful-site.academic-site :is(.graph-row, .competition-map) svg { max-width: 100%; height: auto; }
body.playful-site.academic-site :is(.problem-card h2, math, .math-expression) { font-family: 'Cambria Math', 'STIX Two Math', Georgia, serif; }
body.playful-site.academic-site :is(.hero-copy, .hero-visual, .page-intro > *, .section-heading > *, .content-grid > *, .program-grid > *, .info-grid > *) { min-width: 0; }
body.playful-site.academic-site .content-wrap { width: 100%; min-width: 0; }
body.playful-site.academic-site :is(.content-grid, .info-grid, .program-grid) { gap: 24px; }
body.playful-site.academic-site :is(input:not([type=checkbox]):not([type=radio]):not([type=hidden]), select, textarea) { font-size: 1rem; }
body.playful-site.academic-site :is(.button, .a-button, .pathway-primary) { min-height: 44px; }
body.playful-site.academic-site :is(a, button, summary, input, select, textarea):focus-visible { outline: 3px solid #28699a; outline-offset: 3px; }
/* Keep anchored sections below the homepage's sticky navigation. */
body.playful-site.academic-site .site-header ~ main[id],
body.playful-site.academic-site .site-header ~ main [id] { scroll-margin-top: 132px; }
@media (max-width: 760px) {
  body.playful-site.academic-site .explorer-tabs {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px 16px;
    overflow: visible;
  }
  body.playful-site.academic-site .explorer-tabs button {
    min-width: 0;
    min-height: 48px;
    padding: 10px 4px;
    white-space: normal;
    line-height: 1.45;
  }
}
@media (max-width: 1100px) {
  body.playful-site.academic-site .site-header .main-nav {
    max-height: calc(100dvh - 160px);
    overflow-y: auto;
    overscroll-behavior-y: contain;
  }
  body.playful-site.academic-site .site-header .main-nav:not(.open) { visibility: hidden; pointer-events: none; }
  body.playful-site.academic-site .site-header .main-nav.open { visibility: visible; pointer-events: auto; z-index: 1; box-shadow: none; }
  body.playful-site.academic-site .site-header .main-nav a { font-size: 1rem; min-height: 44px; }
  body.playful-site.academic-site .menu-toggle { min-width: 44px; min-height: 44px; }
}
@media (max-width: 620px) {
  body.playful-site.academic-site .site-header ~ main[id],
  body.playful-site.academic-site .site-header ~ main [id] { scroll-margin-top: 116px; }
  body.playful-site.academic-site .home-hero-title .hero-title-phrase { white-space: normal; }
  body.playful-site.academic-site :is(.content-grid, .info-grid, .program-grid) { gap: 20px; }
  body.playful-site.academic-site :is(.simple-footer, .footer-bottom) { flex-wrap: wrap; gap: 12px; }
}
@media (max-width: 480px) {
  body.playful-site.academic-site .assessment-grid { grid-template-columns: minmax(0, 1fr); }
  body.playful-site.academic-site .assessment-grid article { min-width: 0; border-right: 1px solid var(--line); }
  body.playful-site.academic-site .system-panel { padding: 24px; }
}
@media (prefers-reduced-motion: reduce) {
  body.playful-site.academic-site *, body.playful-site.academic-site *::before, body.playful-site.academic-site *::after { transition: none; animation: none; scroll-behavior: auto; }
}
@media print {
  body.playful-site.academic-site { background: #fff; color: #182f4d; }
  body.playful-site.academic-site :is(.site-header, .simple-header, .algebra-header, .course-header) { position: static; }
  body.playful-site.academic-site :is(.program-card, .info-card, .content-grid article) { break-inside: avoid; }
}/* ===== 原模块：card-depth.css ===== */
/* 通用卡片的边框、阴影和层次。修改时保留页面中样式表的加载顺序。 */
/* Shared card depth. Preserve existing backgrounds, dimensions and spacing. */





body.playful-site.academic-site
  :is(
    .home-pathways .program-card,
    .program-card,
    .book-card,
    .story-grid blockquote,
    .info-card,
    .content-grid article,
    .pathway-cards > a,
    .v2-program-grid > a,
    .v2-five > article,
    .course-card,
    .level-pathway article,
    .two-column-details article,
    .stage-grid article,
    .contest-card,
    .sample-card,
    .assessment-card,
    .schedule-card,
    .confirmation-card,
    .account-record,
    .account-stats article,
    .account-admin-grid > section,
    .student-list article,
    .admin-area-grid > a,
    .login-card,
    .registration-card,
    .overview article,
    .setup-card,
    .panel,
    .catalog-card,
    .hero-study,
    .worked-example,
    .unit-detail,
    .organizer-intro,
    .cms-contests,
    .school-hero aside,
    .problem-card,
    .study-paper,
    .alignment-form,
    .trial-form,
    .inquiry-form,
    .account-login,
    .enrol-summary,
    .placement-help,
    .lesson-card,
    .preview-note,
    .review-sidebar,
    .common-mistake,
    .next-review,
    .catalog-filters
  ),
body.playful-site.academic-site.registration-result-page #confirmation {
  box-shadow:
    inset 0 1px 0 rgb(255 255 255 / 65%),
    0 2px 3px rgb(24 47 77 / 7%),
    0 8px 20px -4px rgb(24 47 77 / 18%);
  transition:
    box-shadow 180ms ease,
    transform 180ms ease,
    border-color 180ms ease;
}
@media (hover: hover) and (pointer: fine) {
  body.playful-site.academic-site
    :is(
      .home-pathways .program-card,
      .program-card,
      .book-card,
      .story-grid blockquote,
      .info-card,
      .content-grid article,
      .pathway-cards > a,
      .v2-program-grid > a,
      .v2-five > article,
      .course-card,
      .level-pathway article,
      .two-column-details article,
      .stage-grid article,
      .contest-card,
      .sample-card,
      .assessment-card,
      .schedule-card,
      .confirmation-card,
      .account-record,
      .account-stats article,
      .account-admin-grid > section,
      .student-list article,
      .admin-area-grid > a,
      .login-card,
      .registration-card,
      .overview article,
      .setup-card,
      .panel,
      .catalog-card,
      .hero-study,
      .worked-example,
      .unit-detail,
      .organizer-intro,
      .cms-contests,
      .school-hero aside,
      .problem-card,
      .study-paper,
      .alignment-form,
      .trial-form,
      .inquiry-form,
      .account-login,
      .enrol-summary,
      .placement-help,
      .lesson-card,
      .preview-note,
      .review-sidebar,
      .common-mistake,
      .next-review,
      .catalog-filters
    ):hover {
    box-shadow:
      inset 0 1px 0 rgb(255 255 255 / 75%),
      0 4px 6px rgb(24 47 77 / 8%),
      0 14px 28px -6px rgb(24 47 77 / 23%);
  }
  body.playful-site.academic-site
    :is(
      .home-pathways .program-card,
      .program-card,
      .book-card,
      .info-card,
      .course-card,
      .contest-card,
      .catalog-card,
      .pathway-cards > a,
      .v2-program-grid > a,
      .admin-area-grid > a
    ):hover {
    transform: translateY(-3px);
  }
}
@media (prefers-reduced-motion: reduce) {
  body.playful-site.academic-site
    :is(
      .home-pathways .program-card,
      .program-card,
      .book-card,
      .story-grid blockquote,
      .info-card,
      .content-grid article,
      .pathway-cards > a,
      .v2-program-grid > a,
      .v2-five > article,
      .course-card,
      .level-pathway article,
      .two-column-details article,
      .stage-grid article,
      .contest-card,
      .sample-card,
      .assessment-card,
      .schedule-card,
      .confirmation-card,
      .account-record,
      .account-stats article,
      .account-admin-grid > section,
      .student-list article,
      .admin-area-grid > a,
      .login-card,
      .registration-card,
      .overview article,
      .setup-card,
      .panel,
      .catalog-card,
      .hero-study,
      .worked-example,
      .unit-detail,
      .organizer-intro,
      .cms-contests,
      .school-hero aside,
      .problem-card,
      .study-paper,
      .alignment-form,
      .trial-form,
      .inquiry-form,
      .account-login,
      .enrol-summary,
      .placement-help,
      .lesson-card,
      .preview-note,
      .review-sidebar,
      .common-mistake,
      .next-review,
      .catalog-filters
    ),
  body.playful-site.academic-site.registration-result-page #confirmation {
    transition: none;
  }
  body.playful-site.academic-site
    :is(
      .home-pathways .program-card,
      .program-card,
      .book-card,
      .info-card,
      .course-card,
      .contest-card,
      .catalog-card,
      .pathway-cards > a,
      .v2-program-grid > a,
      .admin-area-grid > a
    ):hover {
    transform: none;
  }
}
@media print {
  body.playful-site.academic-site
    :is(
      .home-pathways .program-card,
      .program-card,
      .book-card,
      .story-grid blockquote,
      .info-card,
      .content-grid article,
      .pathway-cards > a,
      .v2-program-grid > a,
      .v2-five > article,
      .course-card,
      .level-pathway article,
      .two-column-details article,
      .stage-grid article,
      .contest-card,
      .sample-card,
      .assessment-card,
      .schedule-card,
      .confirmation-card,
      .account-record,
      .account-stats article,
      .account-admin-grid > section,
      .student-list article,
      .admin-area-grid > a,
      .login-card,
      .registration-card,
      .overview article,
      .setup-card,
      .panel,
      .catalog-card,
      .hero-study,
      .worked-example,
      .unit-detail,
      .organizer-intro,
      .cms-contests,
      .school-hero aside,
      .problem-card,
      .study-paper,
      .alignment-form,
      .trial-form,
      .inquiry-form,
      .account-login,
      .enrol-summary,
      .placement-help,
      .lesson-card,
      .preview-note,
      .review-sidebar,
      .common-mistake,
      .next-review,
      .catalog-filters
    ),
  body.playful-site.academic-site.registration-result-page #confirmation {
    box-shadow: none;
    transform: none;
  }
}
