body{background:#f4f8fb}.class-header{max-width:1240px;padding:24px 36px;border-bottom:0}.class-name{display:flex;gap:13px;align-items:center;color:#163f65;font-size:21px;font-weight:700}.class-name small{display:block;font-size:13px;font-weight:400;color:#60788b;letter-spacing:1px}.class-monogram{display:grid;place-items:center;width:49px;height:49px;background:#197565;color:#fff;border-radius:15px;font:28px "Kaiti SC",serif}.class-header nav{align-items:center;gap:26px;font-size:15px}.class-header nav a{color:#365770}.class-header .nav-active{padding:9px 18px;border-radius:25px;color:#fff;background:#24679a}.class-main{max-width:1240px;padding:6px 36px 32px}.class-intro{display:grid;grid-template-columns:1.3fr 1fr;gap:50px;padding:40px 42px;background:#e5f0fa;border-radius:24px;border:1px solid #d3e3f1;margin-bottom:30px}.intro-copy{align-self:center}.class-intro .eyebrow{color:#3d6485;letter-spacing:1px;font-size:14px}.class-intro h1{font-size:43px;font-weight:700;line-height:1.32;letter-spacing:1px;color:#153f68;margin:12px 0 16px}.intro-subtitle{font-size:18px;color:#246953;font-weight:600;margin:0 0 12px}.intro-description{font-size:16px;line-height:1.9;color:#4d6579;margin:0 0 22px;max-width:500px}.class-meta{gap:4px;font-size:14px;flex-direction:column}.class-meta a{color:#285b7d;overflow-wrap:anywhere}.month-welcome{padding:24px 27px;background:#fff;border-radius:18px;box-shadow:0 8px 24px #20415e09;align-self:center;border-top:5px solid #27866b}.welcome-label{color:#28755d;font-size:14px;margin:0 0 4px}.month-welcome h2{font-size:23px;color:#214d47;margin:0 0 12px}.month-welcome>a{display:grid;grid-template-columns:43px 1fr auto;gap:14px;align-items:center;text-decoration:none;padding:13px 0;color:#28455d;border-bottom:1px solid #e5ecef}.month-welcome>a:hover{color:#1b765d}.welcome-date{border-radius:12px;padding:6px 0;text-align:center;background:#edf6f2;color:#1d715a;font-size:21px;font-weight:650}.month-welcome>a:nth-of-type(2) .welcome-date{color:#225d99;background:#e9f2fc}.month-welcome>a:nth-of-type(3) .welcome-date{color:#875c13;background:#fff2d4}.month-welcome strong{display:block;font-size:17px}.month-welcome small{display:block;font-size:13px;color:#6a7c89}.month-welcome .welcome-note{margin:14px 0 0;color:#657d70;font-size:13px}.section-kicker{font-size:13px;letter-spacing:1px;color:#527b70;margin:0 0 3px}.section-head h2{font-size:25px;font-weight:650;color:#1d425e}.section-head>span{font-size:14px}.calendar-section{background:#fff;padding:26px;border:1px solid #d9e5ee;border-radius:18px}.mini-calendar{border-color:#dce5ed}.calendar-month{border-color:#dce5ed}.calendar-month h3{background:#eaf3fa;color:#285575;font-size:17px}.calendar-month:nth-child(2n) h3{background:#e9f5ef;color:#27664f}.calendar-date{color:#325773;font-size:13px}.calendar-date:hover{background:#dcedfb}.calendar-date.cal-review,.calendar-key .cal-review{background:#e0f3e9;color:#28654c}.calendar-date.cal-exam,.calendar-key .cal-exam{background:#ffebbf;color:#825211}.calendar-date.cal-event,.calendar-key .cal-event{background:#eee8fa;color:#6a4e90}.calendar-date.cal-holiday,.calendar-key .cal-holiday{background:#f1f3f6;color:#707d8a}.calendar-key{gap:20px}.calendar-key b{border:0;border-radius:4px}.teaching-section{margin:32px 0;padding:26px 26px 22px;background:#fff;border:1px solid #d9e5ee;border-radius:18px}.timeline-scroll{overflow-x:auto;margin-top:25px;padding-bottom:10px}.semester-timeline{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(6,minmax(165px,1fr));min-width:1020px}.semester-timeline li{position:relative;padding:0 19px 0 0;--milestone:#2c76aa}.semester-timeline .milestone-green{--milestone:#288466}.semester-timeline .milestone-amber{--milestone:#b87913}.milestone-date{font-size:14px;color:var(--milestone);font-weight:600;display:block;min-height:32px}.timeline-node{display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:var(--milestone);color:#fff;font-size:14px;position:relative;z-index:1;margin:4px 0 15px;border:4px solid #fff;box-sizing:content-box}.semester-timeline li:not(:last-child):after{content:'';position:absolute;top:55px;left:38px;right:0;height:3px;background:#dce8ee}.semester-timeline h3{font-size:18px;margin:0 0 8px;color:#28485f}.semester-timeline p{font-size:14px;line-height:1.8;color:#617382;margin:0 0 12px}.milestone-note{font-size:12px;color:var(--milestone);display:block}.pace-note{display:flex;gap:20px;align-items:baseline;background:#eaf5ee;border-left:4px solid #35876a;padding:16px 20px;border-radius:0 10px 10px 0;margin-top:20px}.pace-note strong{color:#26634d;font-size:16px;white-space:nowrap}.pace-note span{font-size:14px;color:#527265}.course-section>.section-head{padding:0 4px}.open-month{background:#e2f2e8;color:#26664b!important;padding:6px 13px;border-radius:20px;white-space:nowrap}.course-section .section-note{font-size:15px;padding:0 4px}.month-group{border:1px solid #d9e5ee;border-radius:16px;overflow:hidden;margin-top:14px;background:white}.month-group:last-child{border-bottom:1px solid #d9e5ee}.month-group>summary{background:#edf4f9;color:#285470;padding:17px 23px}.month-group[open]>summary{background:#246a97;color:#fff}.month-group[open] .month-count{color:#e4f0f7}.course-row{grid-template-columns:102px minmax(0,1fr);padding:28px 24px}.course-date strong{color:#23689b}.course-date span{font-size:13px}.course-row.review .course-date strong{color:#25724f}.course-row.review{background:#f4fbf6}.course-heading h3{font-weight:650}.course-heading .status{color:#28684b;background:#e4f3e9;border:0;border-radius:20px;font-size:13px;padding:4px 12px}.course-heading .status.locked{background:#eef1f5;color:#6d7d88}.lesson-link{color:#205d8b;border-color:#a7c9e0}.course-plan{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:16px 0}.course-row.review .course-plan{grid-template-columns:repeat(3,minmax(0,1fr))}.course-plan>div{border-left:3px solid #a4cbbc;padding-left:13px}.course-plan strong{font-size:16px;color:#285e54}.course-plan p{font-size:15px;color:#637482}.course-actions .primary-action{background:#246d9e;border-radius:9px;font-size:16px;padding:11px 18px}.course-test{align-items:center}.course-test>span:first-child{color:#385d6b;white-space:nowrap}.practice-entry button{border-radius:9px;font-size:15px;padding:9px 16px;font-family:inherit}.practice-entry button[data-table=write]{background:#e0f2e7;color:#236449;border-color:#afdbc1}.practice-entry button[data-table=recognize]{background:#e5f0fd;color:#285e92;border-color:#b7d2ec}.practice-entry button[data-table=words]{background:#fff1d4;color:#835a19;border-color:#ecd39e}.practice-entry button:hover{filter:brightness(.96)}.course-row.exam{background:#fff8e9}.course-row.exam .course-date strong{color:#9a6512}.course-row.event{background:#f7f2fe}.course-row.future{background:#fcfdfe}.class-main>footer{padding:24px 6px 0;margin-top:35px}.class-main>footer>div{display:flex;gap:20px;margin-bottom:10px;color:#416579}.class-main>footer strong{color:#24654f}.class-main>footer>div span{font-size:14px}@media(max-width:760px){.class-header{padding:19px 20px;flex-wrap:wrap;gap:18px}.class-header nav{width:100%;gap:23px;justify-content:space-between;font-size:14px}.class-name{font-size:20px}.class-main{padding:0 16px 24px}.class-intro{grid-template-columns:1fr;gap:26px;padding:28px 24px;border-radius:19px}.class-intro h1{font-size:35px}.month-welcome{padding:21px}.calendar-section,.teaching-section{padding:21px 16px;border-radius:16px}.section-head{flex-wrap:wrap;gap:9px}.section-head h2{font-size:22px}.section-head>span{font-size:13px;text-align:left}.semester-timeline{min-width:1120px}.pace-note{flex-direction:column;gap:5px;padding:13px 15px}.pace-note strong{white-space:normal}.course-row{grid-template-columns:1fr;padding:22px 18px}.course-plan,.course-row.review .course-plan{grid-template-columns:1fr;gap:12px}.course-actions{align-items:flex-start}.course-test{align-items:flex-start;gap:10px;flex-wrap:wrap}.practice-entry{gap:7px}.practice-entry button{padding:8px 12px}.month-group>summary{padding:16px;font-size:18px}.month-count{font-size:12px}.course-heading h3{font-size:20px}.class-main>footer>div{flex-direction:column;gap:3px}}@media print{.class-intro{display:block;background:white;padding:0}.month-welcome,.timeline-scroll{display:none}.class-main{max-width:none}.course-plan{display:block}.course-section .primary-action,.practice-entry{display:none}}
