:root{color-scheme:light;--text:#242424;--muted:#686868;--link:#17679b;--line:#e3e3e3}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:28px}
body{margin:0;background:#fff;color:var(--text);font-family:Arial,Helvetica,sans-serif;font-size:15px;line-height:1.7;-webkit-font-smoothing:antialiased}
a{color:var(--link);text-decoration:none}a:hover{text-decoration:underline}a:focus-visible{outline:2px solid var(--link);outline-offset:4px}
.page{max-width:880px;margin:62px auto 0;padding:0 30px}
.profile{display:grid;grid-template-columns:minmax(0,1fr) 190px;gap:52px;align-items:start}
h1{font-size:34px;font-weight:500;line-height:1.25;letter-spacing:-.6px;margin:0 0 13px}.chinese-name{font-family:"Songti SC","STSong","SimSun",serif;font-weight:400;font-size:24px;color:#555;margin-left:12px;white-space:nowrap}
nav{display:flex;flex-wrap:wrap;gap:5px 12px;margin:0 0 27px;font-size:14px}nav>span{color:#929292}
h2{font-size:21px;font-weight:500;line-height:1.4;margin:0 0 12px}h3{font-size:14px;font-weight:600;margin:0 0 19px}
p{margin:0 0 13px}.muted{color:var(--muted);font-size:14px}.portrait{display:block;width:190px;height:auto;border-radius:2px;margin-top:3px}
.contact{margin-top:24px}.contact h2{font-size:15px;font-weight:600;margin-bottom:5px}.contact address{font-size:14px;font-style:normal;line-height:1.9}.contact address a{overflow-wrap:anywhere}.contact-label{font-size:12px;color:var(--muted);margin-left:5px}
.page-section{margin-top:36px}.page-section>h2{border-bottom:1px solid var(--line);padding-bottom:8px;margin-bottom:16px}
.notes-list{list-style:none;margin:0;padding:0}.notes-list li{margin:0 0 23px}.notes-list li:last-child{margin-bottom:0}.course-heading{display:flex;align-items:baseline;justify-content:space-between;gap:15px}.course-heading strong{font-size:15px;font-weight:600}.term{font-size:13px;white-space:nowrap;color:var(--muted)}.notes-list p{margin:3px 0 0;font-size:14px}.note-meta{font-size:12px;color:var(--muted);margin-left:15px}.pdf-label{font-size:12px}
footer{border-top:1px solid var(--line);margin-top:48px;padding:18px 0 27px;display:flex;justify-content:space-between;gap:20px;color:var(--muted);font-size:12px}footer a{color:var(--muted)}
.skip-link{position:fixed;top:-80px;left:16px;z-index:20;padding:10px 16px;background:#fff;border:1px solid var(--link)}.skip-link:focus{top:12px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:700px){.page{margin-top:36px;padding:0 24px}.profile{grid-template-columns:minmax(0,1fr) 150px;gap:25px}.portrait{width:150px}h1{font-size:30px}.chinese-name{font-size:21px;margin-left:6px}nav{gap:4px 9px;font-size:13px}.course-heading{align-items:flex-start;flex-direction:column;gap:1px}}
@media(max-width:520px){.page{margin-top:28px;padding:0 22px}.profile{grid-template-columns:1fr;gap:25px}.portrait{grid-row:2;width:160px}h1{font-size:31px}.chinese-name{font-size:22px}.page-section{margin-top:29px}nav{font-size:13px;margin-bottom:25px}.contact address{font-size:13px}.contact-label{font-size:11px}.course-heading strong{font-size:14px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
@media print{.page{margin-top:0;max-width:none}nav,footer,.skip-link{display:none}body{font-size:11pt}a{color:inherit;text-decoration:underline}.profile{grid-template-columns:1fr 140px;gap:30px}.portrait{width:140px}.page-section,.notes-list li{break-inside:avoid}}
