:root,[data-theme=light]{color-scheme:light;--bg:#f6f5fa;--surface:#fff;--surface-2:#efeef5;--line:#e2e0eb;--line-2:#cfccdc;--ink:#1b1a24;--ink-2:#585569;--ink-3:#6b687d;--accent:#5b3fd6;--accent-ink:#fff;--accent-soft:#ede9ff;--red:#c2302d;--red-tint:#fbebea;--amber:#9a6200;--amber-tint:#fff4dc;--green:#1b7f45;--cat-compulsory:#3a6fd8;--cat-foundation:#158f7c;--cat-capstone:#d9731f;--cat-specialisation-core:#b8399a;--cat-specialisation-elective:#a9891a;--cat-elective:#66758c;--cat-uncounted:#a6a3af;--scrim:#14102873;--shadow:0 1px 2px #1410280f, 0 12px 32px #14102824;--font:-apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif;--mono:ui-monospace, Menlo, Consolas, monospace;--bar:56px}[data-theme=dark]{color-scheme:dark;--bg:#121118;--surface:#1b1a23;--surface-2:#16151e;--line:#2c2a38;--line-2:#3b3849;--ink:#edebf5;--ink-2:#a9a5bb;--ink-3:#8c889e;--accent:#a99dff;--accent-ink:#17122e;--accent-soft:#2a2447;--red:#ff8480;--red-tint:#3a1f22;--amber:#f2b84b;--amber-tint:#3a2e15;--green:#63cf8e;--cat-compulsory:#6e9cff;--cat-foundation:#3fc7b0;--cat-capstone:#ffa157;--cat-specialisation-core:#ec7bd2;--cat-specialisation-elective:#e3c24a;--cat-elective:#9aa8c0;--cat-uncounted:#5c5966;--scrim:#0009;--shadow:0 1px 2px #0006, 0 12px 32px #0000008c}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){color-scheme:dark;--bg:#121118;--surface:#1b1a23;--surface-2:#16151e;--line:#2c2a38;--line-2:#3b3849;--ink:#edebf5;--ink-2:#a9a5bb;--ink-3:#8c889e;--accent:#a99dff;--accent-ink:#17122e;--accent-soft:#2a2447;--red:#ff8480;--red-tint:#3a1f22;--amber:#f2b84b;--amber-tint:#3a2e15;--green:#63cf8e;--cat-compulsory:#6e9cff;--cat-foundation:#3fc7b0;--cat-capstone:#ffa157;--cat-specialisation-core:#ec7bd2;--cat-specialisation-elective:#e3c24a;--cat-elective:#9aa8c0;--cat-uncounted:#5c5966;--scrim:#0009;--shadow:0 1px 2px #0006, 0 12px 32px #0000008c}}@keyframes tally-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}*{box-sizing:border-box}html,body{margin:0;padding:0}body{background:var(--bg);color:var(--ink);font-family:var(--font);font-variant-numeric:tabular-nums;-webkit-font-smoothing:antialiased;-webkit-text-size-adjust:100%;font-size:14px;line-height:1.45}a{color:var(--accent)}h1,h2,h3{letter-spacing:-.01em;margin:0;line-height:1.2}p{margin:0 0 .75rem}input,button,select{font:inherit;color:inherit}button{cursor:pointer}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}[hidden]{display:none!important}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.eyebrow{letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3);margin:0;font-size:11px;font-weight:600}.fine{color:var(--ink-2);font-size:12.5px;line-height:18px}.code,.codes,.chip,kbd{font-family:var(--mono)}summary{cursor:pointer;list-style:none}summary::-webkit-details-marker{display:none}.btn{border:1px solid var(--line-2);background:var(--surface);height:34px;color:var(--ink);white-space:nowrap;border-radius:8px;justify-content:center;align-items:center;gap:8px;padding:0 12px;font-weight:500;text-decoration:none;display:inline-flex}.btn:hover{background:var(--surface-2)}.btn--primary{background:var(--accent);color:var(--accent-ink);border-color:#0000;font-weight:600}.btn--primary:hover{background:var(--accent);filter:brightness(1.08)}.btn--dashed{border:1.5px dashed var(--line-2);color:var(--ink-2);background:0 0;font-size:13px;font-weight:400}.btn--dashed:hover{border-color:var(--accent);color:var(--accent);background:var(--accent-soft)}.btn--danger{color:var(--red);background:0 0;border-color:#0000}.btn--danger:hover{background:var(--red-tint)}.btn--icon{width:34px;color:var(--ink-2);padding:0}.bar{height:var(--bar);border-bottom:1px solid var(--line);background:var(--surface);z-index:10;flex:none;align-items:center;gap:20px;padding:0 24px;display:flex;position:relative}.brand{color:var(--ink);letter-spacing:-.01em;flex:none;align-items:center;gap:10px;font-size:17px;font-weight:700;text-decoration:none;display:inline-flex}.mark{background:var(--accent);width:22px;height:22px;color:var(--accent-ink);border-radius:6px;justify-content:center;align-items:center;font-size:13px;font-weight:800;display:inline-flex}.plan-title{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:15px;font-weight:600;overflow:hidden}.rename{align-items:center;gap:6px;min-width:0;margin:0;display:flex}.rename input{color:var(--ink);background:0 0;border:none;border-bottom:1px dashed #0000;border-radius:6px;width:340px;max-width:100%;padding:4px 6px;font-size:15px;font-weight:500}.rename input:hover{border-bottom-color:var(--line-2)}.rename input:focus-visible{outline:2px solid var(--accent);outline-offset:0}#bar-tools{color:inherit;background:0 0;border:none;align-items:center;gap:6px;margin:0 0 0 auto;padding:0;display:flex;inset:auto;overflow:visible}#bar-tools>a{color:var(--ink-2);border-radius:6px;padding:6px 12px;font-weight:500;text-decoration:none}#bar-tools>a:hover{background:var(--surface-2);color:var(--ink)}#bar-tools .copy{margin-left:8px}#bar-tools .theme{border:1px solid var(--line-2);background:var(--surface);width:34px;height:34px;color:var(--ink-2);border-radius:8px;justify-content:center;align-items:center;display:inline-flex}#bar-tools .theme:hover{background:var(--surface-2)}.more{color:var(--ink-2);background:0 0;border:none;border-radius:6px;flex:none;padding:6px;font-size:18px;line-height:1}.has-more #bar-tools[popover]{top:calc(var(--bar) + 6px);background:var(--surface);border:1px solid var(--line-2);width:min(320px,100vw - 24px);box-shadow:var(--shadow);border-radius:10px;flex-direction:column;align-items:stretch;gap:4px;margin:0;padding:8px;animation:.12s ease-out tally-in;position:fixed;bottom:auto;left:auto;right:12px}.has-more #bar-tools[popover]:not(:popover-open){display:none}.has-more #bar-tools[popover] .rename input{border:1px solid var(--line-2);width:100%;height:38px}.has-more #bar-tools[popover] .copy,.has-more #bar-tools[popover] .theme{justify-content:flex-start;width:100%;margin:0;padding:0 12px}.has-more #bar-tools[popover] .theme:after{content:"Light / dark";margin-left:8px}#bar-tools::backdrop{background:0 0}.toast{background:var(--ink);color:var(--bg);box-shadow:var(--shadow);z-index:50;border-radius:8px;max-width:calc(100vw - 32px);margin:0;padding:10px 16px;font-size:13px;animation:.15s ease-out tally-in;position:fixed;bottom:24px;left:50%;transform:translate(-50%)}.toast:empty{display:none}main{padding:24px 16px 48px}.column{max-width:44rem;margin:0 auto}.column--wide{max-width:80rem}.column h1{letter-spacing:-.02em;margin:24px 0 14px;font-size:30px;font-weight:600;line-height:36px}.lede{color:var(--ink-2);font-size:15px;line-height:24px}.home{flex-direction:column;gap:28px;max-width:440px;margin:6vh auto 0;display:flex}.home h1{margin:0}.home .lede{margin:14px 0 0}.start{background:var(--surface);border:1px solid var(--line);border-radius:12px;flex-direction:column;gap:14px;margin:0;padding:20px;display:flex}.start label{color:var(--ink-2);flex-direction:column;gap:6px;font-size:12.5px;font-weight:500;display:flex}.start input,.start select{border:1px solid var(--line-2);background:var(--bg);height:38px;color:var(--ink);border-radius:8px;padding:0 12px;font-size:14px;font-weight:400}.start .btn{height:40px;margin-top:4px}.home .fine{margin:0;font-size:13.5px}.home .fine a{font-weight:500;text-decoration:none}.courses{grid-template-columns:repeat(auto-fill,minmax(min(100%,26rem),1fr));gap:12px;margin:20px 0 0;padding:0;list-style:none;display:grid}.course{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:14px 16px}.course h2{margin-bottom:8px;font-size:14px}.course h2 a{font-family:var(--mono);font-size:13px;text-decoration:none}.course .title{color:var(--ink-2);font-weight:400}.course dl{grid-template-columns:1fr 1fr;gap:8px 16px;margin:0;font-size:13px;display:grid}.course dl .wide{grid-column:1/-1}.course dt{color:var(--ink-3);text-transform:uppercase;letter-spacing:.06em;font-size:11px;font-weight:600}.course dd{margin:0}.flag{border-radius:6px;margin:6px 0 0;padding:6px 10px;font-size:12.5px;line-height:18px;display:block}.flag--error{background:var(--red-tint);color:var(--red)}.flag--warning{background:var(--amber-tint);color:var(--amber)}article img{border:1px solid var(--line);border-radius:8px;max-width:100%;height:auto}article pre{background:var(--surface);border:1px solid var(--line);border-radius:8px;padding:12px;overflow-x:auto}article code{font-family:var(--mono);font-size:.9em}.app main{padding:0}.plan{flex-direction:column;display:flex}.board{flex-direction:column;gap:14px;min-width:0;padding:14px 14px 140px;display:flex}.year{grid-template-columns:minmax(0,1fr);gap:10px;display:grid}.year-label{align-items:baseline;gap:8px;display:flex}.year-n{letter-spacing:-.02em;font-size:20px;font-weight:700}.year-units{color:var(--ink-2);font-size:12px}.semester{background:var(--surface-2);border:1px solid var(--line);border-radius:12px;flex-direction:column;gap:8px;min-width:0;padding:10px;transition:border-color .12s,background-color .12s;display:flex}.semester--done{background:var(--bg)}.semester.drop{border-color:var(--accent);background:var(--accent-soft)}.semester-head{justify-content:space-between;align-items:center;gap:8px;height:24px;padding:0 4px;display:flex}.semester-head h3{font-size:14px;font-weight:600}.lock{width:28px;height:28px;color:var(--ink-3);border-radius:6px;justify-content:center;align-items:center;display:inline-flex}.semester--done .lock{color:var(--accent)}.entries{flex-direction:column;flex:1;gap:8px;min-height:12px;margin:0;padding:0;list-style:none;display:flex}.semester-foot{align-items:center;gap:8px;display:flex}.semester-foot .add{flex:1;height:40px}.load{color:var(--ink-2);background:var(--surface);border:1px solid var(--line);white-space:nowrap;border-radius:6px;padding:6px 10px;font-size:12px}.load--over{color:var(--amber);border-color:color-mix(in srgb, var(--amber) 40%, var(--line))}.extend{margin:0}.extend .btn{border-radius:12px;width:100%;height:44px}.entry{background:var(--surface);border:1px solid var(--line);cursor:grab;border-radius:8px;align-items:stretch;min-height:54px;display:flex;position:relative}.entry:hover{border-color:var(--line-2)}.entry.dragging{opacity:.5}.semester--done .entry{cursor:default;border-color:#0000}.semester--done .stripe{opacity:.55}.entry--error{background:var(--red-tint)}.entry--warning{background:var(--amber-tint)}.stripe{background:var(--cat);border-radius:8px 0 0 8px;flex:none;width:4px}.open{text-align:left;cursor:pointer;background:0 0;border:none;border-radius:6px;flex-direction:column;flex:1;justify-content:center;gap:3px;min-width:0;padding:8px 8px 8px 12px;display:flex}.open:focus-visible{outline-offset:-2px}.open .row{align-items:baseline;gap:8px;min-width:0;display:flex}.open .code{flex:none;font-size:12.5px;font-weight:600}.open .title{white-space:nowrap;text-overflow:ellipsis;min-width:0;font-size:13.5px;overflow:hidden}.short{white-space:nowrap;text-overflow:ellipsis;align-items:center;gap:5px;max-width:100%;font-size:12px;font-weight:500;display:inline-flex;overflow:hidden}.short svg{flex:none}.short span{text-overflow:ellipsis;overflow:hidden}.short--error{color:var(--red)}.short--warning{color:var(--amber)}.u{color:var(--ink-2);background:var(--surface-2);white-space:nowrap;border-radius:5px;align-self:center;margin-right:4px;padding:2px 6px;font-size:11.5px}.entry--error .u,.entry--warning .u{background:color-mix(in srgb, var(--surface) 55%, transparent)}.menu{flex:none;display:flex}.menu>summary{width:28px;color:var(--ink-3);border-radius:0 8px 8px 0;justify-content:center;align-items:center;font-size:16px;line-height:1;display:inline-flex}.menu>summary:hover{color:var(--ink)}.menu>summary:focus-visible{outline-offset:-2px}.menu-pop{z-index:20;background:var(--surface);border:1px solid var(--line-2);min-width:220px;box-shadow:var(--shadow);cursor:default;border-radius:10px;flex-direction:column;padding:6px;animation:.12s ease-out tally-in;display:flex;position:absolute;top:34px;right:6px}.menu-pop .eyebrow{padding:6px 10px 4px}.menu-pop form{flex-direction:column;margin:0;display:flex}.menu-pop hr{background:var(--line);border:none;height:1px;margin:6px 4px}.menu-item{text-align:left;color:var(--ink);background:0 0;border:none;border-radius:6px;justify-content:space-between;gap:12px;width:100%;padding:8px 10px;font-size:13px;display:flex}.menu-item:hover{background:var(--surface-2)}.menu-item:focus-visible{outline-offset:-2px}.menu-item .note{color:var(--amber);font-size:12px}.menu-item--danger{color:var(--red)}.menu-item--danger:hover{background:var(--red-tint)}.cat-compulsory{--cat:var(--cat-compulsory)}.cat-foundation{--cat:var(--cat-foundation)}.cat-capstone{--cat:var(--cat-capstone)}.cat-specialisation-core{--cat:var(--cat-specialisation-core)}.cat-specialisation-elective{--cat:var(--cat-specialisation-elective)}.cat-elective{--cat:var(--cat-elective)}.cat-uncounted{--cat:var(--cat-uncounted)}.cat-level{--cat:var(--cat-elective)}.swatch{background:var(--cat);border-radius:3px;flex:none;width:10px;height:10px;display:inline-block}.dot{background:var(--cat);border-radius:50%;flex:none;width:10px;height:10px;display:inline-block}.requirements{min-width:0}.sheet{flex-direction:column;min-height:0;display:flex}.sheet-bar{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"handle handle""count hint""flags hint""bar bar";align-items:center;column-gap:12px;padding:8px 20px 14px;display:grid}.sheet-bar .handle{background:var(--line-2);border-radius:2px;grid-area:handle;width:36px;height:4px;margin:0 auto 12px}.sheet-bar .count{grid-area:count;margin:0 0 3px;font-size:14px;font-weight:600}.sheet-bar .flags{grid-area:flags}.sheet-bar .hint{grid-area:hint}.sheet-bar .bar-track{grid-area:bar}.sheet-bar .hint{color:var(--ink-3);white-space:nowrap;font-size:12px}.sheet-bar .hint:after{content:" ▴"}.sheet[open] .sheet-bar .hint:after{content:" ▾"}.flags{color:var(--ink-2);flex-wrap:wrap;align-items:center;gap:6px;font-size:12px;display:inline-flex}.flags .sq{border-radius:2px;width:7px;height:7px;display:inline-block}.flags .sq--error{background:var(--red)}.flags .sq--warning{background:var(--amber)}.flags .sq--none{background:var(--line-2)}.flags--error{color:var(--red)}.bar-track{background:var(--surface-2);border-radius:2px;height:4px;display:block;overflow:hidden}.bar-fill{background:var(--accent);height:100%}.sheet-bar .bar-track{margin-top:10px}.sheet-head{border-bottom:1px solid var(--line);align-items:center;gap:18px;padding:24px 20px 20px;display:none}.ring{flex:none;width:88px;height:88px;position:relative}.ring svg{display:block;transform:rotate(-90deg)}.ring .pct{letter-spacing:-.02em;justify-content:center;align-items:center;font-size:20px;font-weight:700;line-height:1;display:flex;position:absolute;inset:0}.sheet-head .who{min-width:0}.sheet-head .prog{font-size:15px;font-weight:600;line-height:20px}.sheet-head .spec{color:var(--ink-2);font-size:12px;line-height:16px}.sheet-head .count{margin-top:8px;font-size:13px}.sheet-head .count b{font-weight:600}.sheet-head .count span{color:var(--ink-2)}.sheet-head .flags{margin-top:2px}.sheet-body{min-height:0;padding:6px 12px 12px;overflow:auto}.group-name{padding:12px 8px 4px}.line{border-radius:8px}.line>summary{border-radius:8px;padding:8px 8px 10px}.line>summary:hover{background:var(--surface-2)}.line>summary:focus-visible{outline-offset:-2px}.line .row{align-items:flex-start;gap:10px;display:flex}.line .swatch{margin-top:4px}.line .label{flex:1;font-size:13px;line-height:18px}.line .have{color:var(--ink-2);white-space:nowrap;align-items:center;gap:6px;font-size:13px;line-height:18px;display:inline-flex}.line .have b{color:var(--ink);font-weight:600}.line .have svg{flex:none}.line .bar-track{margin:8px 0 0 20px}.line .bar-fill{background:var(--cat)}.chips{flex-wrap:wrap;gap:6px;margin:2px 8px 10px 28px;display:flex}.chip{border:1px solid color-mix(in srgb, var(--cat) 55%, var(--line));background:color-mix(in srgb, var(--cat) 16%, var(--surface));color:var(--ink);border-radius:999px;padding:3px 8px;font-size:11.5px}.chip--missing{border:1px dashed var(--line-2);color:var(--ink-3);background:0 0}.chips .none{color:var(--ink-3);font-size:12px}.sheet-body .fine{color:var(--ink-3);margin:14px 8px 0}.verdicts{margin-top:6px}.verdicts>summary{color:var(--ink-2);align-items:center;gap:8px;padding:6px 0;font-size:13px;display:inline-flex}.verdicts>summary:after{content:"▸";color:var(--ink-3)}.verdicts[open]>summary:after{content:"▾"}.verdict-list{flex-direction:column;gap:8px;margin:8px 0 0;padding:0;list-style:none;display:flex}.verdict{border:1px solid var(--line);background:var(--surface);border-radius:8px;padding:12px 14px;font-size:13.5px;line-height:20px}.verdict .says{font-weight:600}.verdict--error{background:var(--red-tint)}.verdict--error .says{color:var(--red)}.verdict--warning{background:var(--amber-tint)}.verdict--warning .says{color:var(--amber)}.verdict--ok .says{color:var(--green)}.verdict .code{font-size:12.5px;font-weight:600}dialog{color:var(--ink);z-index:41}dialog::backdrop{background:var(--scrim)}.drawer{background:var(--surface);width:100%;max-width:100%;max-height:88vh;box-shadow:var(--shadow);border:none;border-radius:16px 16px 0 0;margin:0;padding:0;animation:.18s ease-out tally-in;position:fixed;inset:auto 0 0}.drawer[open]{flex-direction:column;display:flex}.drawer-head{border-bottom:1px solid var(--line);align-items:flex-start;gap:12px;padding:20px 24px 16px;display:flex}.drawer-head .stripe{border-radius:2px;align-self:stretch}.drawer-head .who{flex:1;min-width:0}.drawer-head .code{color:var(--ink-2);font-size:13px;font-weight:600}.drawer-head h2{margin-top:2px;font-size:20px;font-weight:600;line-height:26px}.drawer-head .meta{color:var(--ink-2);margin:6px 0 0;font-size:13px}.close{color:var(--ink-2);background:0 0;border:none;border-radius:6px;padding:4px 6px;font-size:20px;line-height:1}.close:hover{background:var(--surface-2)}.drawer-body{flex-direction:column;flex:1;gap:20px;padding:20px 24px;display:flex;overflow:auto}.drawer-body .eyebrow{margin-bottom:8px}.drawer-body .verdict-list{margin:0}.req-text{border:1px solid var(--line);color:var(--ink-2);background:repeating-linear-gradient(135deg, var(--surface) 0 6px, var(--surface-2) 6px 8px);border-radius:8px;margin:0;padding:12px 14px;font-size:12.5px;line-height:18px}.req-text.none{font-family:var(--mono);color:var(--ink-3);font-size:12px}.counts{align-items:center;gap:10px;font-size:13px;display:flex}.pnc{font-size:13.5px;font-weight:500;text-decoration:none}.pnc:hover{text-decoration:underline}.drawer-foot{border-top:1px solid var(--line);flex-wrap:wrap;gap:8px;padding:14px 24px;display:flex}.drawer-foot form{margin:0;display:contents}.drawer-foot .btn--danger{margin-left:auto}.search{background:var(--surface);width:600px;max-width:calc(100% - 24px);box-shadow:var(--shadow);border:1px solid var(--line);border-radius:12px;margin:0 auto;padding:0;animation:.15s ease-out tally-in;position:fixed;top:12px;left:0;right:0}.search form{margin:0}.search-head{border-bottom:1px solid var(--line);align-items:center;gap:12px;padding:14px 18px;display:flex}.search-head svg{flex:none}.search-head input{min-width:0;color:var(--ink);background:0 0;border:none;outline:none;flex:1;padding:0;font-size:16px}.search-head input::-webkit-search-cancel-button{display:none}.search-head .into{color:var(--ink-3);white-space:nowrap;font-size:12px}.search-head kbd{color:var(--ink-3);border:1px solid var(--line-2);border-radius:4px;padding:1px 6px;font-size:12px}.results{flex-direction:column;max-height:60vh;margin:0;padding:6px 8px;list-style:none;display:flex;overflow:auto}.result{text-align:left;color:var(--ink);background:0 0;border:none;border-radius:8px;align-items:center;gap:12px;width:100%;padding:10px;display:flex}.result:hover{background:var(--surface-2)}.result:focus-visible{outline-offset:-2px}.result--none .code,.result--none .title{color:var(--ink-2);font-weight:400}.result--none .dot{opacity:.5}.result .code{flex:none;width:76px;font-size:12.5px;font-weight:600}.result .what{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.result .title{white-space:nowrap;text-overflow:ellipsis;font-size:13.5px;overflow:hidden}.result .meta{color:var(--ink-2);flex-wrap:wrap;gap:8px;font-size:12px;display:flex}.result .preview{font-weight:500}.result .preview--error{color:var(--red)}.result .preview--warning{color:var(--amber)}.result .preview:empty{display:none}.result .cat{color:var(--ink-3);white-space:nowrap;font-size:12px}.search .empty{color:var(--ink-2);margin:0;padding:24px 18px;font-size:13px;line-height:20px}.search-foot{border-top:1px solid var(--line);color:var(--ink-3);gap:16px;padding:10px 18px;font-size:12px;display:flex}.search-foot span:last-child{margin-left:auto}@media (width<=63.99rem){.bar{gap:10px;height:52px;padding:0 16px}.app .wordmark{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.app .brand{gap:0}.rename{display:none}.has-more #bar-tools .rename{display:flex}.search-head .into,.search-foot,.result .cat{display:none}.requirements{z-index:30;background:var(--surface);border-top:1px solid var(--line);box-shadow:var(--shadow);border-radius:16px 16px 0 0;flex-direction:column;max-height:calc(100vh - 120px);display:flex;position:fixed;bottom:0;left:0;right:0}.requirements:has(.sheet[open]):before{content:"";background:var(--scrim);z-index:-1;position:fixed;inset:0}.sheet-body{border-top:1px solid var(--line)}}@media (width>=40rem){.year{grid-template-columns:96px minmax(0,1fr) minmax(0,1fr);align-items:start;gap:16px}.year-label{flex-direction:column;gap:2px;padding-top:12px}.semester{min-height:180px;padding:12px}.semester-head{height:28px}.semester-foot .add{height:34px}.extend{margin-left:112px}.drawer{border-radius:0;width:420px;height:100%;max-height:100%;inset:0 0 0 auto}.search{max-width:calc(100% - 40px);top:96px}.results{max-height:440px}}@media (width>=64rem){.app{flex-direction:column;height:100vh;display:flex;overflow:hidden}.app main{flex:1;min-height:0;display:flex}.plan{flex-direction:row;flex:1;min-height:0}.app .plan-title{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.more{display:none}.has-more #bar-tools[popover]:not(:popover-open){display:flex}.has-more #bar-tools[popover]{width:auto;box-shadow:none;background:0 0;border:none;flex-direction:row;align-items:center;gap:6px;margin:0 0 0 auto;padding:0;animation:none;position:static}.has-more #bar-tools[popover] .rename input{border:none;border-bottom:1px dashed #0000;width:340px;height:auto}.has-more #bar-tools[popover] .rename input:hover{border-bottom-color:var(--line-2)}.has-more #bar-tools[popover] .copy{width:auto;margin-left:8px;padding:0 12px}.has-more #bar-tools[popover] .theme{justify-content:center;width:34px;padding:0}.has-more #bar-tools[popover] .theme:after{content:none}#bar-tools{flex:1;min-width:0}#bar-tools .rename{margin-right:auto}#bar-tools .rename:before{content:"";background:var(--line);flex:none;width:1px;height:20px;margin-right:14px}.requirements{border-right:1px solid var(--line);background:var(--surface);flex-direction:column;flex:none;width:340px;display:flex;overflow:hidden}.sheet{flex:1}.sheet-bar{display:none}.sheet-head{display:flex}.sheet-body{flex:1}.board{flex:1;gap:20px;padding:24px 28px 40px;overflow:auto}}@media (width>=100rem){.requirements{width:380px}.board{padding:28px 36px 48px}}
