.fm-course{--green:var(--color-melon-700,#357b4f);--pale:var(--color-melon-50,#f2f8ee);--line:var(--color-melon-100,#e0eedb);--muted:var(--color-ink-soft,#57635c)}.fm-course .course-hero{background:linear-gradient(180deg,var(--pale),#fff);border-bottom:1px solid var(--line);padding:36px 0 44px}.fm-course .back{color:var(--green);font-size:14px}.fm-course .badges{flex-wrap:wrap;gap:8px;margin-top:26px;display:flex}.fm-course .term,.fm-course .tag{border-radius:30px;padding:4px 11px;font-size:11px;font-weight:600;line-height:1.5}.fm-course .term{background:var(--color-melon-500,#599b4b);color:#fff}.fm-course .tag{color:var(--muted);border:1px solid #cfd7cc}.fm-course .course-hero h1{font-family:var(--font-display);letter-spacing:-1.3px;margin:20px 0 18px;font-size:clamp(30px,4vw,48px);font-weight:800;line-height:1.2}.fm-course .subtitle{color:var(--muted);font-size:20px;line-height:1.7}.fm-course .institution{color:var(--muted);margin-top:12px;font-size:14px}.fm-course .hero-meta{color:var(--green);flex-wrap:wrap;gap:0;margin-top:27px;font-size:12px;display:flex}.fm-course .hero-meta span+span{border-left:1px solid #cbdcc8;margin-left:20px;padding-left:20px}.fm-course .course-layout{grid-template-columns:240px minmax(0,1fr);gap:64px;padding-top:48px;padding-bottom:80px;display:grid}.fm-course .course-toc{align-self:start;max-height:calc(100vh - 116px);padding-right:12px;position:sticky;top:92px;overflow:auto}.fm-course .eyebrow{text-transform:uppercase;letter-spacing:1.5px;color:var(--green);font-size:10px;font-weight:700}.fm-course .toc-group{border-bottom:1px solid var(--line);padding:15px 0}.fm-course .toc-group a{color:var(--muted);gap:10px;padding:5px 0;font-size:11px;line-height:1.55;display:flex}.fm-course .toc-group a:hover,.fm-course .toc-group a:focus{color:var(--green)}.fm-course .toc-group a span{font-variant-numeric:tabular-nums;color:#81917c}.fm-course .toc-group .toc-part{color:var(--green);margin-bottom:5px;font-size:12px;font-weight:700}.fm-course .download{color:var(--green);padding-top:18px;font-size:12px;display:inline-block}.fm-course .course-content h2{letter-spacing:-.4px;margin-top:7px;font-size:23px;font-weight:750;line-height:1.5}.fm-course .overview>p{color:var(--muted);margin-top:15px;font-size:14px;line-height:1.95}.fm-course .format{background:var(--pale);border:1px solid var(--line);border-radius:14px;margin:22px 0 40px;padding:20px 24px}.fm-course .format strong{color:var(--green);font-size:13px}.fm-course .format p{color:var(--muted);margin-top:6px;font-size:13px;line-height:1.9}.fm-course .schedule-heading{justify-content:space-between;align-items:center;gap:16px;padding-bottom:26px;display:flex}.fm-course .schedule-heading button{border:1px solid var(--line);color:var(--green);white-space:nowrap;cursor:pointer;background:#fff;border-radius:30px;padding:9px 14px;font-size:11px}.fm-course .schedule-heading button:hover{background:var(--pale)}.fm-course .part{margin-bottom:38px}.fm-course .part-heading{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:20px;padding:8px 0 18px;display:flex}.fm-course .part-heading h2{font-size:19px}.fm-course .range{color:var(--green);letter-spacing:1px;white-space:nowrap;font-size:10px}.fm-course .week{border:1px solid var(--line);background:#fff;border-radius:16px;margin-top:18px;scroll-margin-top:90px;overflow:hidden;box-shadow:0 3px 14px #173f1610}.fm-course .week-heading{align-items:flex-start;gap:14px;padding:23px 24px 0;display:flex}.fm-course .week-number{background:var(--pale);color:var(--green);border-radius:9px;padding:7px 10px;font-size:14px;font-weight:700;line-height:1.4}.fm-course .week h3{padding-top:3px;font-size:17px;font-weight:700;line-height:1.65}.fm-course .question{color:var(--muted);padding:15px 24px 21px;font-size:13px;line-height:1.85}.fm-course .question>span{color:var(--green);margin-bottom:4px;font-size:11px;font-weight:600;display:block}.fm-course .week summary{cursor:pointer;color:var(--green);border-top:1px solid var(--line);background:#fbfdf9;align-items:center;gap:8px;padding:13px 24px;font-size:12px;list-style:none;display:flex}.fm-course .week summary::-webkit-details-marker{display:none}.fm-course .count{border:1px solid var(--line);border-radius:12px;padding:0 6px;font-size:10px}.fm-course .chevron{margin-left:auto;font-size:17px}.fm-course details[open] .chevron{transform:rotate(180deg)}.fm-course .papers{padding:0 24px;list-style:none}.fm-course .papers li{border-top:1px solid #eef2eb;padding:17px 0}.fm-course .paper-heading a{color:var(--green);overflow-wrap:anywhere;font-size:13px;font-weight:600;line-height:1.65}.fm-course .paper-heading a:hover{text-underline-offset:3px;text-decoration:underline}.fm-course .paper-role{color:#718069;margin-top:5px;font-size:10px;display:block}.fm-course .papers p{color:var(--muted);margin-top:6px;font-size:12px;line-height:1.8}.fm-course .back-top{color:var(--green);font-size:12px}.fm-course :focus-visible{outline:2px solid var(--green);outline-offset:4px}.fm-course .course-hero .container-page,.fm-course .course-layout{max-width:1152px}@media (max-width:1023px){.fm-course .course-layout{grid-template-columns:195px minmax(0,1fr);gap:28px}}@media (max-width:720px){.fm-course .course-layout{padding-top:30px;display:block}.fm-course .course-toc{max-height:none;display:none;position:static}.fm-course .course-hero{padding:25px 0 32px}.fm-course .course-hero h1{letter-spacing:-.8px}.fm-course .subtitle{font-size:16px}.fm-course .hero-meta{font-size:11px}.fm-course .hero-meta span+span{margin-left:12px;padding-left:12px}.fm-course .schedule-heading{align-items:flex-start}.fm-course .course-content h2{font-size:21px}.fm-course .schedule-heading button{padding:8px 9px;font-size:10px}.fm-course .week-heading{gap:11px;padding:19px 18px 0}.fm-course .week h3{font-size:16px}.fm-course .question{padding:13px 18px 18px}.fm-course .week summary{padding:12px 18px}.fm-course .papers{padding:0 18px}.fm-course .part-heading h2{font-size:18px}.fm-course .part-heading{gap:10px}.fm-course .range{font-size:9px}.fm-course .format{padding:18px}.fm-course .badges{margin-top:22px}}@media (prefers-reduced-motion:reduce){.fm-course html{scroll-behavior:auto}}@media print{.fm-course .course-toc,.fm-course #expand-all,.fm-course .back-top{display:none}.fm-course .course-layout{display:block}.fm-course .week{break-inside:avoid;box-shadow:none}.fm-course .course-hero{padding:0 0 20px}}.fm-course .schedule-notice{background:#f2f6f1;border-left:3px solid #4c8067;padding:12px 16px;font-size:14px;line-height:1.8}.fm-course .paper-reading{grid-template-columns:1fr 1fr;gap:24px;display:grid}.fm-course .paper-reading strong{color:#365647;letter-spacing:.03em;margin-bottom:5px;font-size:12px;display:block}.fm-course .extended-readings{border-top:1px dashed #d7e0d6;margin-top:12px;padding-top:20px}.fm-course .extended-readings h4{color:#365647;margin:0 0 8px;font-size:14px}.fm-course .extended-readings h4 span{color:#69776f;margin-left:8px;font-size:12px;font-weight:400}@media (max-width:720px){.fm-course .paper-reading{grid-template-columns:1fr;gap:0}}.class-materials{border-top:1px solid var(--line);margin:0 24px 20px;padding:14px 0}.class-materials h4{color:var(--green);margin-bottom:8px;font-size:12px;font-weight:600}.class-materials ul{flex-wrap:wrap;gap:10px 24px;padding:0;list-style:none;display:flex}.class-materials a{color:var(--green);text-underline-offset:3px;font-size:13px;text-decoration:underline}@media (max-width:720px){.class-materials{margin-left:18px;margin-right:18px}}
