.page-title{max-width:1000px;margin:0 auto;padding:72px 60px 24px;display:flex;align-items:baseline;gap:32px;border-bottom:1px solid var(--ink)}.page-title h1{font-family:Spectral,serif;font-size:44px;font-style:italic;font-weight:500;line-height:1;letter-spacing:.005em}.page-title .meta{font-family:JetBrains Mono,monospace;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-faded);margin-left:auto;padding-bottom:4px}body>main{max-width:1000px;margin:0 auto;padding:0 60px 72px}.intro{padding:36px 0 28px;border-bottom:1px solid var(--rule-faint);font-size:19px;line-height:1.62;color:var(--ink);max-width:64ch}.intro em{font-style:italic}.intro a{color:var(--ink);border-bottom:1px solid var(--accent)}body>main h3{font-family:Spectral,serif;font-size:24px;font-style:italic;font-weight:500;letter-spacing:.005em;margin:48px 0 8px}body>main h4{font-family:Spectral,serif;font-size:18px;font-style:italic;font-weight:500;letter-spacing:.005em;margin:0}.scale-note{font-family:JetBrains Mono,monospace;font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-faded);margin-bottom:24px}.course-list{margin-bottom:16px;padding-top:36px}.course-rows{margin-top:4px}.course-row{display:grid;grid-template-columns:120px 1fr 180px 160px;gap:20px;padding:12px 0;border-bottom:1px solid var(--rule-faint);align-items:baseline;font-size:15px}.course-row:last-child{border-bottom:none}.course-term{font-family:JetBrains Mono,monospace;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-faded)}.course-title{color:var(--ink);font-weight:500}.course-code{font-family:JetBrains Mono,monospace;font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-quiet)}.course-modality{font-family:JetBrains Mono,monospace;font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-faded);text-align:right}.ior-flag{display:inline-block;margin-left:10px;font-family:JetBrains Mono,monospace;font-size:9px;letter-spacing:.14em;text-transform:uppercase;color:var(--accent);font-weight:500;border:1px solid var(--accent);padding:1px 6px;vertical-align:2px;border-radius:1px}.quant-panel{margin-top:48px}.quant-head{margin-bottom:24px}.q-selector-wrap{display:flex;flex-wrap:wrap;gap:6px 8px;margin-bottom:32px;padding-bottom:24px;border-bottom:1px solid var(--rule-faint)}.q-selector{font-family:JetBrains Mono,monospace;font-size:10px;letter-spacing:.08em;text-transform:uppercase;padding:8px 12px;background:transparent;border:1px solid var(--rule);color:var(--ink-quiet);cursor:pointer;transition:all .12s ease;line-height:1.3;text-align:left;max-width:320px}.q-selector:hover{border-color:var(--ink);color:var(--ink)}.q-selector.active{background:var(--ink);color:var(--ground);border-color:var(--ink)}.charts{position:relative;min-height:400px}.chart-panel{display:none;padding:0}.chart-panel.active{display:block}.chart-q-label{font-size:20px;font-style:italic;color:var(--ink);margin-bottom:24px;max-width:56ch;line-height:1.4}.bar-row{display:grid;grid-template-columns:140px 1fr 40px 44px;gap:14px;align-items:center;padding:7px 0;font-size:14px}.bar-key{font-family:JetBrains Mono,monospace;font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-quiet);text-align:right}.bar-track{height:22px;background:transparent;border-left:1px solid var(--rule);position:relative}.bar-fill{height:100%;background:var(--ink);opacity:.85;transition:width .4s ease}.chart-panel .bar-row:hover .bar-fill{background:var(--accent)}.bar-n{font-family:JetBrains Mono,monospace;font-size:11px;color:var(--ink);text-align:right}.bar-pct{font-family:JetBrains Mono,monospace;font-size:10px;color:var(--ink-faded);letter-spacing:.05em;text-align:right}.chart-n-total{margin-top:20px;padding-top:14px;border-top:1px solid var(--rule-faint);font-family:JetBrains Mono,monospace;font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-faded);text-align:right}.qual-section{margin-top:72px;padding-top:40px;border-top:1px solid var(--ink)}.qual-selector-wrap{display:flex;gap:6px;margin:16px 0 32px;padding-bottom:16px;border-bottom:1px solid var(--rule-faint)}.qual-selector{font-family:JetBrains Mono,monospace;font-size:10px;letter-spacing:.1em;text-transform:uppercase;padding:10px 16px;background:transparent;border:1px solid var(--rule);color:var(--ink-quiet);cursor:pointer;transition:all .12s ease}.qual-selector:hover{border-color:var(--ink);color:var(--ink)}.qual-selector.active{background:var(--ink);color:var(--ground);border-color:var(--ink)}.qual-panel{display:none}.qual-panel.active{display:block}.qual-head{display:flex;justify-content:space-between;align-items:baseline;gap:20px;margin-bottom:20px}.qual-q{font-family:Spectral,serif;font-size:17px;font-style:italic;color:var(--ink);line-height:1.45;max-width:64ch}.comment-count{font-family:JetBrains Mono,monospace;font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-faded);white-space:nowrap}.comments{max-height:600px;overflow-y:auto;padding:4px 0;border-top:1px solid var(--rule-faint);border-bottom:1px solid var(--rule-faint)}.comments::-webkit-scrollbar{width:8px}.comments::-webkit-scrollbar-track{background:transparent}.comments::-webkit-scrollbar-thumb{background:var(--rule);border-radius:4px}.comments::-webkit-scrollbar-thumb:hover{background:var(--ink-faded)}.comment{display:grid;grid-template-columns:150px 1fr;gap:18px;padding:14px 16px 14px 0;border-bottom:1px solid var(--rule-faint);align-items:baseline}.comment:last-child{border-bottom:none}.comment-tag{font-family:JetBrains Mono,monospace;font-size:9.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-faded);line-height:1.4;padding-top:4px}.comment-tag .ior-flag{margin-left:0;margin-top:3px;display:inline-block}.comment-text{font-size:14.5px;line-height:1.55;color:var(--ink)}@media(max-width:820px){.page-title{padding:48px 24px 20px;flex-direction:column;align-items:flex-start;gap:8px}.page-title h1{font-size:34px}.page-title .meta{margin-left:0}body>main{padding:0 24px 48px}.course-row{grid-template-columns:1fr;gap:4px;padding:14px 0}.course-modality{text-align:left}.bar-row{grid-template-columns:110px 1fr 36px 40px;gap:8px;font-size:13px}.bar-key{font-size:9.5px}.comment{grid-template-columns:1fr;gap:6px}.qual-selector-wrap{flex-wrap:wrap}}
