:root{color-scheme:light;--gold:#b97d1c;--gold-hover:#a46e17;--bronze:#8a5c13;--stone:#6b6154;--ink:#111;--ink-soft:#5f5f5f;--page:#fff;--card:#fff;--head:#f6f6f6;--line:#d9d9d9;--line-soft:#ebebeb;--gold-soft:#fbf4e8;--nav:#000;--nav-ink:#fff;--nav-hover:#1f1f1f;--font:"Public Sans", -apple-system, "Segoe UI", Roboto, "Helvetica Neue", sans-serif;--radius:3px;--width:80rem}*,:before,:after{box-sizing:border-box}html,body{margin:0}body{background:var(--page);min-height:100vh;color:var(--ink);font-family:var(--font);-webkit-font-smoothing:antialiased;flex-direction:column;font-size:.9375rem;line-height:1.5;display:flex}a{color:var(--bronze);text-decoration:none}a:hover{text-decoration:underline}:focus-visible{outline:2px solid var(--gold);outline-offset:2px}h1,h2,h3,p{margin:0}ul,ol{margin:0;padding:0;list-style:none}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.masthead{background:var(--card)}.masthead-inner{max-width:var(--width);align-items:center;gap:1.5rem;min-height:7.5rem;margin:0 auto;padding:0 1.5rem;display:flex;position:relative}.brand{color:var(--ink);flex:none;align-self:stretch;align-items:center;gap:.9rem;display:flex;position:relative}.brand:hover{text-decoration:none}.brand:before,.brand:after{content:"";background:var(--gold);width:2px;height:1.6rem;position:absolute;left:1.2rem}.brand:before{top:0}.brand:after{bottom:0}.brand-mark{border:2px solid var(--gold);width:2.6rem;height:3rem;color:var(--gold);border-radius:0 0 1.3rem 1.3rem;place-items:center;font-size:1.3rem;font-weight:800;display:grid}.brand-name{font-size:1.35rem;font-weight:500;line-height:1.05}.chevron{fill:none;width:.8rem;height:1.6rem;stroke:var(--gold);stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;flex:none;margin-left:2.5rem}.site-title{letter-spacing:.01em;text-transform:uppercase;font-size:1.45rem;font-weight:500}.utility{letter-spacing:.03em;gap:1rem;font-size:.95rem;font-weight:500;display:flex;position:absolute;bottom:.7rem;right:1.5rem}.utility span+span{color:var(--ink-soft)}.navbar{background:var(--nav)}.navbar-inner{max-width:var(--width);justify-content:flex-end;align-items:stretch;min-height:4.25rem;margin:0 auto;padding:0 1rem;display:flex}.navbar a{height:100%;color:var(--nav-ink);letter-spacing:.04em;align-items:center;padding:0 1.1rem;font-size:1.15rem;font-weight:500;display:flex}.navbar a:hover{background:var(--nav-hover);text-decoration:none}.navbar a[aria-current=page]{color:var(--gold)}.nav-icon svg{width:1.5rem;height:1.5rem}.navbar li:first-child svg{fill:currentColor}.navbar li:last-child svg{fill:none;stroke:currentColor;stroke-width:2.4px;stroke-linecap:round}.subbar{background:var(--card);border-bottom:1px solid var(--line)}.crumbs{max-width:var(--width);margin:0 auto;padding:.7rem 1.5rem}.crumbs ol{flex-wrap:wrap;align-items:center;font-size:.875rem;display:flex}.crumbs li+li:before{content:"›";color:var(--ink-soft);margin:0 .55rem}.crumbs [aria-current=page]{color:var(--ink);font-weight:600}.content{width:100%;max-width:var(--width);flex:1;margin:0 auto;padding:1.75rem 1.5rem}.footer{border-top:1px solid var(--line);background:var(--card)}.footer p{max-width:var(--width);color:var(--ink-soft);margin:0 auto;padding:1rem 1.5rem;font-size:.8rem}.page-head{margin-bottom:1.5rem}.eyebrow{color:var(--bronze);letter-spacing:.07em;text-transform:uppercase;margin-bottom:.25rem;font-size:.78rem;font-weight:700}h1{letter-spacing:-.01em;font-size:1.85rem;font-weight:800;line-height:1.2}.lede{max-width:46rem;color:var(--ink-soft);margin-top:.45rem;font-size:1rem}.columns{grid-template-columns:minmax(0,1fr) 21rem;align-items:start;gap:1.25rem;display:grid}.stack{gap:1.25rem;display:grid}.card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}.card-head{background:var(--head);border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:.8rem 1rem;display:flex}h2{font-size:1rem;font-weight:700}h3{margin:1.25rem 0 .5rem;font-size:.9rem;font-weight:700}.card-body{padding:1rem}.empty{color:var(--ink-soft);padding:.25rem 0;font-size:.875rem}.alert{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);align-items:center;gap:.75rem;margin-bottom:1.25rem;padding:.75rem 1rem;display:flex}.alert-tag{border-radius:var(--radius);letter-spacing:.06em;text-transform:uppercase;flex:none;padding:.1rem .5rem;font-size:.72rem;font-weight:800}.alert-ok{background:var(--gold-soft);border-color:var(--gold)}.alert-ok .alert-tag{background:var(--gold);color:var(--ink)}.alert-blocked{border-color:var(--ink)}.alert-blocked .alert-tag{background:var(--ink);color:var(--card)}label{font-size:.8rem;font-weight:700}input,select{min-height:2.4rem;color:var(--ink);font:inherit;background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:.4rem .6rem}input:focus,select:focus{border-color:var(--gold)}input:focus-visible,select:focus-visible{outline:2px solid var(--gold);outline-offset:0}input[type=checkbox]{width:1rem;height:1rem;min-height:0;accent-color:var(--gold);margin:0}.btn{min-height:2.4rem;font:inherit;white-space:nowrap;border-radius:var(--radius);cursor:pointer;border:1px solid #0000;justify-content:center;align-items:center;padding:.4rem 1.1rem;font-weight:700;display:inline-flex}.btn-primary{color:var(--ink);background:var(--gold);border-color:var(--gold)}.btn-primary:hover{background:var(--gold-hover);border-color:var(--gold-hover)}.btn-secondary{color:var(--ink);background:var(--card);border-color:var(--line)}.btn-secondary:hover{background:var(--head);border-color:var(--ink-soft)}.btn-small{min-height:2rem;padding:.25rem .75rem;font-size:.85rem}.btn-block{width:100%}.pill{letter-spacing:.02em;white-space:nowrap;border:1px solid;border-radius:999px;padding:.1rem .55rem;font-size:.72rem;font-weight:700;display:inline-block}.pill-held{color:var(--bronze);border-color:var(--gold);background:var(--gold-soft)}.pill-blocked{color:var(--ink-soft);border-color:var(--line);background:var(--head)}.toolbar{border-bottom:1px solid var(--line);flex-wrap:wrap;align-items:flex-end;gap:.75rem;padding:1rem;display:flex}.field{flex-direction:column;gap:.3rem;display:flex}.field-search{flex:18rem}.field-check{flex-direction:row;align-items:center;gap:.45rem;min-height:2.4rem}.field-check label{font-size:.875rem;font-weight:400}.search-box{position:relative}.search-box svg{fill:none;width:1.05rem;height:1.05rem;stroke:var(--ink-soft);stroke-width:2px;stroke-linecap:round;pointer-events:none;position:absolute;top:50%;left:.65rem;transform:translateY(-50%)}.search-box input{width:100%;padding-left:2.1rem}.list-meta{background:var(--head);border-bottom:1px solid var(--line);color:var(--ink-soft);padding:.6rem 1rem;font-size:.85rem}.list-meta strong{color:var(--ink)}#results>.empty{padding:1.25rem 1rem}.course-row{border-bottom:1px solid var(--line-soft);justify-content:space-between;gap:1rem;padding:.95rem 1rem;display:flex}.course-row:last-child{border-bottom:0}.course-row:hover{background:var(--head)}.course-main{min-width:0}.course-link{color:var(--ink);flex-wrap:wrap;align-items:baseline;gap:.2rem .6rem;display:inline-flex}.course-link .title{color:var(--ink);font-size:1rem;font-weight:700}.course-link:hover .title{color:var(--bronze)}.code{letter-spacing:.04em;color:var(--bronze);font-size:.82rem;font-weight:700}.facts{color:var(--ink-soft);flex-wrap:wrap;margin-top:.25rem;font-size:.82rem;display:flex}.facts li+li:before{content:"|";color:var(--line);margin:0 .5rem}.sessions{color:var(--ink-soft);margin-top:.3rem;font-size:.8rem}.matched{color:var(--ink-soft);margin-top:.3rem;font-size:.75rem;font-style:italic}.reason{color:var(--ink);margin-top:.4rem;font-size:.85rem;font-weight:600}.course-row.is-blocked .course-link .title,.course-row.is-blocked .code{color:var(--ink-soft)}.course-side{text-align:right;flex-direction:column;flex:none;align-items:flex-end;gap:.5rem;display:flex}.course-side form{align-items:center;gap:.5rem;display:flex}.seats{color:var(--ink-soft);white-space:nowrap;font-size:.8rem}.seats strong{color:var(--ink);font-size:.95rem}.person{border-bottom:1px solid var(--line-soft);padding-bottom:.9rem}.person-name{font-size:1.05rem;font-weight:700}.person-meta{color:var(--ink-soft);font-size:.82rem}.load{border-bottom:1px solid var(--line-soft);padding:.9rem 0}.load-figure{color:var(--ink-soft);font-size:.9rem}.load-figure strong{color:var(--ink);font-size:1.6rem;font-weight:800}.meter{background:var(--line-soft);border-radius:999px;height:.5rem;margin:.45rem 0 .35rem;overflow:hidden}.meter span{background:var(--gold);height:100%;display:block}.load-caption{color:var(--ink-soft);font-size:.8rem}.clash-list{background:var(--head);border:1px solid var(--ink);border-radius:var(--radius);margin-top:.9rem;padding:.6rem .75rem;font-size:.82rem;font-weight:600}.held-list>li{border-bottom:1px solid var(--line-soft);justify-content:space-between;align-items:flex-start;gap:.75rem;padding:.75rem 0;display:flex}.held-main a{color:var(--ink);flex-direction:column;display:flex}.held-main .title{font-weight:700}.completed{padding-top:.9rem;font-size:.85rem}.completed-label{color:var(--ink-soft);letter-spacing:.06em;text-transform:uppercase;margin-bottom:.15rem;font-size:.75rem;font-weight:700}.details{grid-template-columns:repeat(3,minmax(0,1fr));margin:0;display:grid}.details>div{border-bottom:1px solid var(--line-soft);padding:.75rem 1rem}.details>div:nth-last-child(-n+3){border-bottom:0}.details dt{color:var(--ink-soft);letter-spacing:.06em;text-transform:uppercase;font-size:.75rem;font-weight:700}.details dd{margin:.1rem 0 0;font-weight:700}.table{border-collapse:collapse;width:100%;font-size:.875rem}.table th{background:var(--head);border-bottom:1px solid var(--line);color:var(--ink-soft);letter-spacing:.06em;text-align:left;text-transform:uppercase;padding:.55rem 1rem;font-size:.75rem}.table td{border-bottom:1px solid var(--line-soft);padding:.65rem 1rem}.table tr:last-child td{border-bottom:0}.action-note{margin-bottom:.75rem;font-size:.9rem}.action-note .reason{margin-top:.5rem;display:block}.link-list li{border-bottom:1px solid var(--line-soft);justify-content:space-between;align-items:center;gap:.5rem;padding:.5rem 0;display:flex}.link-list li:last-child{border-bottom:0}.prose{max-width:50rem;padding:1.75rem 2rem;font-size:1rem;line-height:1.65}.prose h1{margin-bottom:1rem}.prose h2{border-bottom:1px solid var(--line-soft);margin:2rem 0 .6rem;padding-bottom:.4rem;font-size:1.25rem}.prose h3{margin:1.5rem 0 .4rem;font-size:1.05rem}.prose p{margin:0 0 .9rem}.prose ul{margin:0 0 .9rem;padding-inline-start:1.25rem;list-style:outside}.prose li{margin-block:.3rem}.prose code{background:var(--head);border:1px solid var(--line-soft);border-radius:3px;padding:.1rem .3rem;font-size:.85em}@media (width<=64rem){.columns{grid-template-columns:minmax(0,1fr)}}@media (width<=48rem){.masthead-inner{gap:.75rem;min-height:5rem;padding:0 1rem}.brand:before,.brand:after{display:none}.brand-mark{width:2.1rem;height:2.5rem;font-size:1.05rem}.brand-name{font-size:1.05rem}.chevron{height:1.2rem;margin-left:.25rem}.site-title{font-size:.95rem}.utility{display:none}.navbar-inner{flex-wrap:wrap;justify-content:flex-start;min-height:3.25rem;padding:0 .25rem}.navbar a{min-height:3.25rem;padding:0 .7rem;font-size:.95rem}.crumbs{padding:.6rem 1rem}.content{padding:1.25rem 1rem}.course-row{flex-direction:column}.course-side{text-align:left;flex-direction:row;justify-content:space-between;align-items:center}.details{grid-template-columns:repeat(2,minmax(0,1fr))}.details>div:nth-last-child(-n+3){border-bottom:1px solid var(--line-soft)}.details>div:nth-last-child(-n+2){border-bottom:0}.prose{padding:1.25rem}}
