:root{--anu-blue:#00313c;--anu-blue-dark:#001a20;--gold:#a6762c;--ink:#16242b;--muted:#5b6b74;--paper:#f5f7f8;--card:#fff;--border:#dbe2e6;--danger-muted:#8a4b4b}*{box-sizing:border-box}body{color:var(--ink);background:var(--paper);margin:0;font-family:system-ui,sans-serif;line-height:1.6}nav[aria-label=site]{background:var(--anu-blue);align-items:center;gap:1.5rem;padding:1rem 1.5rem;display:flex}nav[aria-label=site] a{color:#fff;border-bottom:2px solid #0000;padding-block:.15rem;font-weight:600;text-decoration:none}nav[aria-label=site] a:hover,nav[aria-label=site] a:focus-visible{border-bottom-color:var(--gold)}main{max-width:42rem;margin:0 auto;padding:2rem 1.25rem 3rem}h1{color:var(--anu-blue);margin-block-end:.35rem;font-size:1.9rem}h2{color:var(--anu-blue);margin-block-end:.25rem;font-size:1.15rem}.planner-header{margin-block-end:2rem}.semester-badge{letter-spacing:.03em;text-transform:uppercase;color:var(--anu-blue);border:1px solid var(--gold);background:#f2ede1;border-radius:999px;margin:0 0 .6rem;padding:.2rem .7rem;font-size:.78rem;font-weight:700;display:inline-block}.tagline{color:var(--anu-blue);margin:.1rem 0 .75rem;font-size:1.05rem;font-weight:600}.lede{color:var(--muted);max-width:38rem;margin:0}section+section{margin-block-start:2.5rem}.plan-summary{background:var(--card);border:1px solid var(--border);border-radius:.6rem;margin-block-end:1.25rem;padding:1.25rem 1.4rem}.plan-counts{color:var(--ink);margin:0 0 .35rem;font-weight:600}.plan-breakdown{color:var(--muted);margin:0 0 .6rem;font-size:.9rem}.plan-load{color:var(--muted);font-variant-numeric:tabular-nums;flex-wrap:wrap;align-items:center;gap:.5rem;margin:0 0 .6rem;display:flex}.load-badge{white-space:nowrap;border-radius:999px;padding:.15rem .6rem;font-size:.78rem;font-weight:700}.load-badge--light{color:#2f6b4f;background:#eaf3ee}.load-badge--standard{color:var(--anu-blue);background:#eaf1f7}.load-badge--full{color:var(--gold);background:#f8f1e3}.load-badge--over{color:var(--danger-muted);background:#f8ecec}.load-bar{background:var(--paper);border:1px solid var(--border);border-radius:999px;height:.5rem;margin-block-end:.5rem;overflow:hidden}.load-bar-fill{background:var(--anu-blue);border-radius:inherit;height:100%}.load-disclaimer{color:var(--muted);margin:0;font-size:.78rem}.empty-state{border:1px dashed var(--border);color:var(--muted);text-align:center;background:var(--card);border-radius:.5rem;margin:0;padding:1.5rem}.empty-state p{margin:0}.empty-state p+p{margin-block-start:.4rem}#courses{gap:.75rem;margin:0;padding:0;list-style:none;display:grid}.course-card{background:var(--card);border:1px solid var(--border);border-radius:.5rem;justify-content:space-between;align-items:center;gap:1rem;padding:.9rem 1.1rem;display:flex}.course-card form{margin:0}.course-info{flex-direction:column;gap:.3rem;min-width:0;display:flex}.course-heading{flex-wrap:wrap;align-items:baseline;gap:.15rem .6rem;display:flex}.course-code{color:var(--anu-blue);letter-spacing:.02em;font-weight:700}.course-title{color:var(--ink)}.course-meta{align-items:center;gap:.5rem;display:flex}.course-units{color:var(--muted);white-space:nowrap;font-size:.9rem}.type-badge{text-transform:uppercase;letter-spacing:.02em;white-space:nowrap;border-radius:999px;padding:.1rem .55rem;font-size:.72rem;font-weight:700}.type-badge--core{color:var(--anu-blue);border:1px solid var(--anu-blue);background:#e7edf0}.type-badge--elective{color:var(--gold);border:1px solid var(--gold);background:#f5ede0}.remove-button{border:1px solid var(--border);color:var(--muted);white-space:nowrap;background:0 0;border-radius:.4rem;padding:.35rem .8rem;font-size:.85rem}.remove-button:hover,.remove-button:focus-visible{border-color:var(--danger-muted);color:var(--danger-muted)}form{margin-block:1.5rem}.add-course-form{background:var(--card);border:1px solid var(--border);border-radius:.5rem;grid-template-columns:repeat(auto-fit,minmax(9rem,1fr));align-items:start;gap:1rem;padding:1.25rem;display:grid}.field{flex-direction:column;gap:.3rem;min-width:0;display:flex}.field label{color:var(--muted);font-size:.85rem;font-weight:600}.field small{color:var(--muted);font-size:.75rem}.submit-field{justify-content:flex-end}input,select{width:100%;font:inherit;border:1px solid var(--border);background:var(--card);color:inherit;border-radius:.35rem;padding:.5rem .6rem}input:focus-visible,select:focus-visible{outline:2px solid var(--anu-blue);outline-offset:1px}button{font:inherit;cursor:pointer;border-radius:.35rem}.primary-button{background:var(--anu-blue);color:#fff;border:none;width:100%;padding:.6rem 1.4rem;font-weight:600}.primary-button:hover,.primary-button:focus-visible{background:var(--anu-blue-dark)}@media (width<=30rem){.course-card{flex-direction:column;align-items:flex-start}.course-card form{align-self:flex-end}}
