.cb-course{min-width:0}.cb-course-toolbar,.cb-course-layout{grid-template-columns:280px minmax(0,1fr);gap:32px;max-width:1200px;display:grid}.cb-course-toolbar{align-items:center;margin:0 auto 1.25rem}.cb-course-toolbar>.back-link{justify-self:start}.cb-course-search{min-width:0}.cb-course-search .search-field{grid-template-columns:auto minmax(0,1fr) minmax(120px,155px) auto;gap:10px;max-width:none;min-height:50px;margin:0;padding:5px 12px}.cb-course-search .search-icon{font-size:27px}.cb-course-search .search-field input{padding:8px 0;font-size:15px}.cb-course-search .search-department{border-top:0;border-left:1px solid var(--line);grid-area:auto;grid-template-columns:minmax(0,1fr);gap:1px;padding:2px 0 2px 10px}.cb-course-search .search-department label{font-size:8px}.cb-course-search .search-department select{padding:1px 0;font-size:14px}.cb-course-search .button{min-height:36px;padding:7px 15px;font-size:14px}.cb-course-section{min-width:0;margin:1.5rem 0;padding:clamp(1.25rem,3vw,2.2rem)}.cb-course-section h2{margin-bottom:1.2rem}.cb-course-section h3{margin-top:1.75rem}.cb-course-section p+p{margin-top:1rem}.cb-course-layout{margin:1.25rem auto 0}.cb-course-main{gap:26px;min-width:0;display:grid}.cb-course-main>.course-heading{flex-direction:row;align-items:flex-start;gap:24px;margin:0}.cb-course-identity{flex:1;min-width:0}.cb-course-heading h1{overflow-wrap:anywhere;max-width:15ch;font-size:clamp(2rem,3.2vw,3rem)}.cb-course-heading .small{margin-top:.55rem;font-size:.75rem}.cb-course-code-line{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.cb-course-code-line .badge{padding:.2rem .4rem;font-size:.6rem}.cb-course-convenor-byline{flex:0 200px;min-width:0}.cb-course-convenor-byline h2{letter-spacing:0;color:var(--muted);margin:0;font-size:.8rem;font-weight:400;line-height:1.5}.cb-course-convenor-byline ul{gap:.4rem;margin:.5rem 0 0;padding:0;list-style:none;display:grid}.cb-course-convenor-byline li{overflow-wrap:anywhere;font-size:1.15rem;font-weight:600;line-height:1.35}.cb-course-main>.cb-course-distribution{background:var(--wash);border:0;min-height:0;margin:0;padding:1.35rem}.cb-course-main .cb-course-section-heading{align-items:center;gap:.75rem}.cb-course-main .cb-course-section-heading h2{margin:0;font-size:1.4rem}.cb-course-main .cb-course-chart{--cb-course-plot-height:130px}.cb-course-main>p.small,.cb-course-ratings h2{margin:0}.cb-course-ratings p.small{font-size:.75rem;line-height:1.6}.cb-course-ratings .inset-note{margin-bottom:0}.cb-course-ratings .inset-note h3{font-size:1.1rem}.cb-course-rating-breakdown{gap:.8rem;margin-top:1.75rem;display:grid}.cb-course-rating-breakdown>div{grid-template-columns:1.75rem minmax(0,1fr) 36px;align-items:center;gap:.65rem;font-size:.85rem;display:grid}.cb-course-rating-breakdown>div>:last-child{text-align:right;color:var(--muted)}.cb-course-reviews{min-height:175px}.cb-course-reviews .review-toolbar{flex-wrap:wrap;gap:.75rem}.cb-course-reviews .line-controls{gap:1.25rem}.cb-course-review-active,.cb-course-review-friends{padding:.85rem .4rem;font-weight:600}.cb-course-review-active{color:var(--red);border-bottom:3px solid var(--red)}.cb-course-review-friends{color:var(--muted)}.cb-course-reviews .review-toolbar>.button{margin-block:.4rem}.cb-course-card-meta,.cb-course-section-heading{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1.5rem;display:flex}.cb-course-year{gap:.5rem;font-weight:600;display:grid}.cb-course-year select{background:var(--paper);border:1px solid var(--line);color:var(--ink);font:inherit;border-radius:.5rem;min-height:38px;padding:.4rem .65rem;font-size:.9rem}.cb-course-notice{border-left:3px solid var(--red);background:var(--wash);padding:.75rem 1rem}.cb-course-chart-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.65rem;margin-top:1rem;display:flex}.cb-course-chart-toolbar .small{font-size:.75rem}.cb-course-chart-controls{border:1px solid var(--line);border-radius:.5rem;gap:.15rem;padding:.2rem;display:inline-flex}.cb-course-chart-controls button{color:var(--muted);background:0 0;border-radius:.3rem;min-height:32px;padding:.4rem .7rem;font:.75rem/1.4 Arial,sans-serif}.cb-course-chart-controls button[aria-pressed=true]{background:var(--ink);color:var(--paper)}.cb-course-chart{--cb-course-plot-height:175px;grid-template-columns:2.25rem minmax(0,1fr);gap:.75rem;margin-top:.85rem;font:.7rem/1.4 Arial,sans-serif;display:grid}.cb-course-chart-axis{height:var(--cb-course-plot-height);color:var(--muted);text-align:right;flex-direction:column;justify-content:space-between;margin-top:1.4rem;display:flex}.cb-course-chart-axis span{line-height:0}.cb-course-chart-plot{padding-top:1.4rem;position:relative}.cb-course-chart-gridlines{height:var(--cb-course-plot-height);border-left:1px solid var(--line);flex-direction:column;justify-content:space-between;display:flex;position:absolute;inset:1.4rem 0 auto}.cb-course-chart-gridlines span{border-top:1px solid var(--line)}.cb-course-chart-columns{gap:clamp(.35rem,1.5vw,1.4rem);padding-inline:.5rem;display:grid;position:relative}.cb-course-chart-column{text-align:center;min-width:0}.cb-course-bar-slot{height:var(--cb-course-plot-height);justify-content:center;align-items:flex-end;display:flex}.cb-course-bar{background:var(--red);border-radius:.3rem .3rem 0 0;width:min(100%,2.6rem);transition:height .2s;position:relative}.cb-course-bar-value{white-space:nowrap;font-weight:600;position:absolute;top:-1.25rem;left:50%;transform:translate(-50%)}.cb-course-grade-label{color:var(--muted);margin-top:.55rem;display:block}.cb-course-chart-empty{text-align:center;min-height:195px;color:var(--muted);align-content:center;display:grid}.cb-course-distribution p.cb-course-chart-notice{color:var(--muted);margin-top:.6rem;font:.75rem/1.5 Arial,sans-serif}.cb-course-reviews-empty{align-items:center;gap:1.2rem;padding-top:1.5rem;display:flex}.cb-course-reviews-empty h3{margin:0;font-size:1.1rem}.cb-course-reviews-empty p{color:var(--muted);margin-top:.4rem;font-size:.9rem}.cb-course-review-icon{color:var(--line);font-size:4rem;line-height:1}.cb-course-unrated-blocks{grid-template-columns:repeat(5,minmax(0,1fr));gap:.4rem;width:100%;display:grid}.cb-course-unrated-blocks>span{aspect-ratio:1;border:1px solid var(--line);width:100%;position:relative;overflow:hidden}.cb-course-unrated-blocks i{background:var(--red);position:absolute;inset:0 auto 0 0}.cb-course-unrated-blocks>span:after{content:"";background:var(--paper);position:absolute;inset:28%}@media (max-width:900px){.cb-course-toolbar,.cb-course-layout{grid-template-columns:minmax(0,1fr);gap:24px}.cb-course-ratings{order:2}.cb-course-main{order:1}}@media (max-width:700px){.cb-course-toolbar{gap:.85rem}.cb-course-search .search-field{border-radius:18px;grid-template-columns:auto minmax(0,1fr) auto}.cb-course-search .search-field input,.cb-course-search .search-department select{font-size:16px}.cb-course-search .search-department{border-left:0;border-top:1px solid var(--line);grid-area:2/1/auto/-1;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:12px;padding:8px 0 2px}.cb-course-search .button{min-height:44px}}@media (max-width:600px){.cb-course-main>.course-heading{flex-direction:column;gap:1rem}.cb-course-convenor-byline{border-left:0;flex:auto;align-self:stretch;padding-left:21px}}@media (max-width:480px){.cb-course-main>.cb-course-distribution{padding:1rem}.cb-course-chart{gap:.4rem;font-size:.65rem}.cb-course-chart-columns{gap:.35rem;padding-inline:.2rem}.cb-course-main .cb-course-chart{--cb-course-plot-height:120px}}@media (prefers-reduced-motion:reduce){.cb-course-bar{transition:none}}.cb-course-distribution>.cb-course-attribution{color:var(--muted);margin-top:1.1rem;font:.75rem/1.6 Arial,sans-serif}.cb-course-distribution>.cb-course-grade-meanings{color:var(--muted);flex-wrap:wrap;gap:.3rem 1rem;margin:1rem 0 0;font:.7rem/1.6 Arial,sans-serif;display:flex}.course-like-section{margin-top:22px}.course-like-control{gap:10px;display:grid}.course-like-button{border:1px solid var(--red);min-height:46px;color:var(--red);background:0 0;border-radius:8px;justify-content:center;align-items:center;gap:10px;padding:11px 17px;font:600 .95rem/1.4 Arial,sans-serif;text-decoration:none;display:inline-flex}.course-like-button svg{flex:none;width:22px;height:22px}.course-like-button[aria-pressed=true]{color:var(--paper);background:var(--red)}.course-like-button[aria-pressed=true] svg{fill:currentColor;stroke:var(--red)}.course-like-button:hover{box-shadow:0 0 0 2px var(--line)}.course-like-button:disabled{opacity:.65;cursor:wait}.course-like-total{color:var(--muted);font:.8rem/1.5 Arial,sans-serif}.course-like-control .form-error{font-size:.8rem}
.quick-rating{margin-top:1rem}.quick-rating-label{margin:0 0 .6rem;font-size:.9rem;font-weight:600}.quick-rating-squares>span{display:flex}.quick-rating-squares>span:after,.quick-rating-squares i{pointer-events:none}.quick-rating-squares button{z-index:1;cursor:pointer;background:0 0;border:0;border-radius:0;flex:1;min-width:0;padding:0;position:relative}.quick-rating-squares button:focus-visible{outline:2px solid var(--ink);outline-offset:-3px}.quick-rating-squares button:disabled{cursor:wait}.quick-rating-help,.quick-rating-feedback{color:var(--muted);margin:.65rem 0 0;font:.75rem/1.6 Arial,sans-serif}.quick-rating-feedback:empty{display:none}.quick-rating-feedback.form-error{color:var(--red)}.quick-rating-login{margin-top:1rem;text-decoration:none;display:block}.quick-rating-login:focus-visible{outline:2px solid var(--red);outline-offset:4px}
