:root{--paper: #f2f2f7;--paper-2: #ebebf0;--paper-3: #e3e3e8;--card: #ffffff;--card-elev: #ffffff;--tint: #f7f7fa;--ink: #000000;--ink-2: #1c1c1e;--ink-3: #6c6c70;--ink-4: #8e8e93;--ink-5: #c7c7cc;--accent: #8b1a30;--accent-hover: #74172a;--accent-soft: #f3e2e6;--accent-ink: #531020;--accent-fg: var(--accent);--c-blue: #5b9cf8;--c-blue-soft: #e7f0fd;--c-green: #4cb069;--c-green-soft: #e3f3e7;--c-orange: #f0934a;--c-orange-soft: #fbe9d8;--c-purple: #9881d9;--c-purple-soft: #ece6f8;--c-pink: #d97aa3;--c-pink-soft: #f6e4ec;--c-teal: #5bb5ad;--c-teal-soft: #dff0ee;--c-yellow: #d8b245;--c-yellow-soft: #f5edd2;--c-amber: var(--c-yellow);--c-amber-soft: var(--c-yellow-soft);--c-moss: var(--c-green);--c-moss-soft: var(--c-green-soft);--c-slate: var(--c-blue);--c-slate-soft: var(--c-blue-soft);--c-mauve: var(--c-purple);--c-mauve-soft: var(--c-purple-soft);--c-rust: var(--c-orange);--c-rust-soft: var(--c-orange-soft);--c-ochre: var(--c-pink);--c-ochre-soft: var(--c-pink-soft);--ok: #34a853;--warn: #d9990a;--bad: #d04438;--line: #e5e5ea;--line-2: #d1d1d6;--line-strong: #000000;--r-xs: 6px;--r-sm: 8px;--r-md: 10px;--r-lg: 14px;--r-xl: 20px;--r-card: 12px;--r-pill: 999px;--shadow-sm: 0 0 0 .5px rgba(0, 0, 0, .04);--shadow-md: 0 1px 2px rgba(0, 0, 0, .04), 0 0 0 .5px rgba(0, 0, 0, .05);--shadow-lg: 0 12px 30px -10px rgba(0, 0, 0, .18), 0 0 0 .5px rgba(0, 0, 0, .06);--shadow-pop: 0 24px 60px -12px rgba(0, 0, 0, .28), 0 0 0 .5px rgba(0, 0, 0, .08);--font-sans: "Geist", -apple-system, BlinkMacSystemFont, "SF Pro Text", system-ui, sans-serif;--font-display: "Source Serif 4", "SF Pro Display", -apple-system, BlinkMacSystemFont, system-ui, serif;--font-mono: "Geist Mono", ui-monospace, "SF Mono", Menlo, monospace;--font-serif: var(--font-display)}[data-theme=dark]{color-scheme:dark;--paper: #000000;--paper-2: #1c1c1e;--paper-3: #2c2c2e;--card: #1c1c1e;--card-elev: #2c2c2e;--tint: #1f1f21;--ink: #ffffff;--ink-2: #f2f2f7;--ink-3: #98989f;--ink-4: #6c6c70;--ink-5: #48484a;--accent: #8b1a30;--accent-hover: #9a2238;--accent-soft: rgba(224, 122, 147, .2);--accent-ink: #e6859b;--accent-fg: #e6859b;--c-blue-soft: rgba(91, 156, 248, .18);--c-green-soft: rgba(76, 176, 105, .18);--c-orange-soft: rgba(240, 147, 74, .18);--c-purple-soft: rgba(152, 129, 217, .2);--c-pink-soft: rgba(217, 122, 163, .2);--c-teal-soft: rgba(91, 181, 173, .2);--c-yellow-soft: rgba(216, 178, 69, .2);--c-amber-soft: var(--c-yellow-soft);--c-moss-soft: var(--c-green-soft);--c-slate-soft: var(--c-blue-soft);--c-mauve-soft: var(--c-purple-soft);--c-rust-soft: var(--c-orange-soft);--c-ochre-soft: var(--c-pink-soft);--line: #2c2c2e;--line-2: #3a3a3c;--line-strong: #ffffff;--shadow-sm: 0 0 0 .5px rgba(255, 255, 255, .05);--shadow-md: 0 1px 2px rgba(0, 0, 0, .4), 0 0 0 .5px rgba(255, 255, 255, .05);--shadow-lg: 0 12px 30px -10px rgba(0, 0, 0, .6), 0 0 0 .5px rgba(255, 255, 255, .06);--shadow-pop: 0 24px 60px -12px rgba(0, 0, 0, .7), 0 0 0 .5px rgba(255, 255, 255, .08)}*,*:before,*:after{box-sizing:border-box}html,body{margin:0;padding:0}html{background:var(--paper);color:var(--ink);font-family:var(--font-sans);font-size:14.5px;line-height:1.45;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;letter-spacing:-.005em}body{background:var(--paper);color:var(--ink);min-height:100vh;overflow:hidden}button{font-family:inherit;color:inherit;background:none;border:0;padding:0;cursor:pointer}input,textarea,select{font-family:inherit;color:inherit}a{color:inherit;text-decoration:none}::selection{background:var(--accent-soft);color:var(--accent-fg)}*:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:4px}.app{display:grid;grid-template-rows:auto 1fr;height:100vh;background:var(--paper)}.topbar{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:14px;padding:12px 22px;background:color-mix(in oklab,var(--paper) 75%,transparent);-webkit-backdrop-filter:saturate(180%) blur(20px);backdrop-filter:saturate(180%) blur(20px);border-bottom:.5px solid var(--line);position:relative;z-index:40}.topbar>.brand{justify-self:start;min-width:0}.topbar-center{display:inline-flex;align-items:center;gap:12px;justify-self:center}.topbar-right{display:inline-flex;align-items:center;gap:14px;justify-self:end;min-width:0}.topbar-right .donate-pill{margin-right:8px}.brand{display:flex;align-items:center;gap:10px;font-size:16px;font-weight:600;letter-spacing:-.02em}.brand-mark{width:26px;height:26px;border-radius:8px;background:var(--accent);display:grid;place-items:center;color:#fff;font-weight:600;font-size:14px;letter-spacing:-.04em}.brand-version{font-family:var(--font-mono);font-size:10px;color:var(--ink-4);background:var(--paper-2);padding:2px 6px;border-radius:5px;margin-left:2px;letter-spacing:0}.nav-tabs{display:flex;gap:2px;padding:2px;background:var(--paper-2);border-radius:9px}.nav-tab{padding:6px 14px;font-size:13px;font-weight:500;border-radius:7px;color:var(--ink-3);transition:all .14s ease;display:inline-flex;align-items:center;gap:6px}.nav-tab:hover{color:var(--ink)}.nav-tab[aria-selected=true]{background:var(--card);color:var(--ink);box-shadow:var(--shadow-sm)}.spacer{flex:1}.term-pill{display:inline-flex;align-items:center;gap:6px;padding:6px 10px 6px 12px;font-size:13px;font-weight:500;color:var(--ink-2);background:var(--card);border-radius:var(--r-pill);white-space:nowrap;box-shadow:var(--shadow-sm);position:relative}.term-pill:hover{background:var(--paper-3)}.term-menu{position:absolute;top:calc(100% + 6px);right:0;z-index:30;background:var(--card-elev);border-radius:10px;padding:4px;box-shadow:var(--shadow-pop);min-width:200px}.term-menu button{display:block;width:100%;text-align:left;padding:8px 12px;font-size:13px;border-radius:7px;color:var(--ink-2);font-weight:500}.term-menu button:hover{background:var(--paper-2)}.term-menu button[aria-selected=true]{color:var(--accent-fg)}.icon-btn{width:32px;height:32px;display:grid;place-items:center;border-radius:8px;color:var(--ink-2);transition:background .14s ease}.icon-btn:hover{background:var(--paper-2)}.icon-btn[aria-pressed=true]{background:var(--accent-soft);color:var(--accent-fg)}.workspace{display:grid;grid-template-columns:var(--sidebar-w, 340px) 1fr;height:100%;min-height:0;overflow:hidden}.rail{background:var(--paper);display:flex;flex-direction:column;min-height:0;border-right:.5px solid var(--line);position:relative}.rail-scroll{flex:1;min-height:0;overflow-y:auto;padding:16px 14px 14px;display:flex;flex-direction:column;gap:16px}.rail-scroll::-webkit-scrollbar{width:8px}.rail-scroll::-webkit-scrollbar-thumb{background:transparent;border-radius:8px}.rail-scroll:hover::-webkit-scrollbar-thumb{background:var(--line-2)}.rail-footer{padding:10px 14px 14px;background:color-mix(in oklab,var(--paper) 78%,transparent);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-top:.5px solid var(--line)}.btn-cta{width:100%;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:11px 14px;background:var(--accent);color:#fff;font-size:13.5px;font-weight:600;letter-spacing:-.005em;border-radius:11px;transition:transform .14s ease,background .14s ease,box-shadow .14s ease;box-shadow:0 1px #ffffff26 inset,0 6px 18px -4px color-mix(in oklab,var(--accent) 35%,transparent)}.btn-cta:hover{background:var(--accent-hover);transform:translateY(-1px)}.btn-cta:active{transform:translateY(0)}.btn-cta b{font-weight:700}.btn-cta-disabled{background:var(--paper-3);color:var(--ink-4);box-shadow:none;cursor:not-allowed}.btn-cta-disabled:hover{background:var(--paper-3);transform:none}.btn-cta:not(.btn-cta-disabled){animation:cta-pulse .6s ease}@keyframes cta-pulse{0%,to{box-shadow:0 1px #ffffff26 inset,0 6px 18px -4px color-mix(in oklab,var(--accent) 35%,transparent)}40%{box-shadow:0 1px #fff3 inset,0 0 0 6px color-mix(in oklab,var(--accent) 22%,transparent),0 6px 18px -4px color-mix(in oklab,var(--accent) 50%,transparent)}}.rail-resize{position:absolute;top:0;right:-3px;bottom:0;width:7px;cursor:col-resize;z-index:12;transition:background .16s}.rail-resize:hover{background:linear-gradient(to right,transparent 40%,color-mix(in oklab,var(--accent) 30%,transparent) 50%,transparent 60%)}.rail-resize:active{background:linear-gradient(to right,transparent 40%,var(--accent) 50%,transparent 60%)}.search-filters{display:flex;gap:6px;padding:6px 8px 9px;border-top:.5px solid var(--line);flex-wrap:wrap}.pill-select{position:relative;display:inline-flex;align-items:center;flex:1;min-width:0}.pill-select select{appearance:none;border:0;background:var(--paper-2);padding:6px 24px 6px 10px;border-radius:var(--r-pill);font-size:11.5px;font-weight:500;color:var(--ink-2);font-family:inherit;letter-spacing:-.005em;cursor:pointer;width:100%;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;transition:background .12s}.pill-select select:hover{background:var(--paper-3)}.pill-select select:focus{outline:2px solid var(--accent);outline-offset:-1px}.pill-select>svg{position:absolute;right:9px;top:50%;transform:translateY(-50%);color:var(--ink-4);pointer-events:none}.group{display:flex;flex-direction:column}.group-title{font-size:12px;font-weight:500;color:var(--ink-3);letter-spacing:-.005em;padding:0 14px 6px;display:flex;justify-content:space-between;align-items:center}.group-title .count{color:var(--ink-4);font-variant-numeric:tabular-nums;font-weight:400}.group-card{background:var(--card);border-radius:var(--r-card);overflow:hidden;box-shadow:var(--shadow-sm)}.group-flex{flex:1;min-height:200px;display:flex;flex-direction:column}.group-flex .group-card{flex:1;display:flex;flex-direction:column;min-height:0}.search{position:relative;padding:8px 10px}.search-input{width:100%;padding:9px 12px 9px 32px;border-radius:9px;border:0;background:var(--paper-2);font-size:14px;outline:none;transition:background .14s;color:var(--ink);font-family:inherit;letter-spacing:-.005em}.search-input::placeholder{color:var(--ink-4)}.search-input:focus{background:var(--paper-3)}.search-icon{position:absolute;left:20px;top:50%;transform:translateY(-50%);color:var(--ink-4);pointer-events:none}.search-kbd{position:absolute;right:18px;top:50%;transform:translateY(-50%);font-family:var(--font-mono);font-size:10.5px;color:var(--ink-4);background:var(--card);padding:2px 5px;border-radius:4px;pointer-events:none;border:.5px solid var(--line)}.results-wrap{flex:1;min-height:0;overflow-y:auto;border-top:.5px solid var(--line)}.results-wrap::-webkit-scrollbar{width:6px}.results-wrap::-webkit-scrollbar-thumb{background:var(--line-2);border-radius:4px}.subject-group{padding:0}.subject-head{font-size:10.5px;color:var(--ink-3);padding:8px 14px 6px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;position:sticky;top:0;z-index:1;background:color-mix(in oklab,var(--card) 92%,transparent);-webkit-backdrop-filter:saturate(160%) blur(6px);backdrop-filter:saturate(160%) blur(6px);border-bottom:.5px solid var(--line)}.course-row{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:center;padding:9px 14px;cursor:pointer;border-top:.5px solid var(--line);transition:background .1s;position:relative}.course-row:first-child{border-top:0}.subject-head+.course-row{border-top:0}.course-row:hover{background:var(--paper-2)}.course-row.added .course-code{color:var(--accent-fg)}.course-row.added .course-name{color:var(--ink-3)}.course-text{min-width:0;display:flex;flex-direction:column;gap:2px}.course-code{font-family:var(--font-mono);font-size:12px;font-weight:600;color:var(--ink);white-space:nowrap;letter-spacing:0}.course-name{font-size:12px;color:var(--ink-3);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;line-height:1.3}.course-meta{display:flex;align-items:center;gap:8px;font-size:11.5px;color:var(--ink-4);font-variant-numeric:tabular-nums}.add-icon{width:18px;height:18px;display:grid;place-items:center;border-radius:50%;color:#fff;transition:all .14s ease;background:transparent;border:1.5px solid var(--ink-5)}.course-row:hover .add-icon{border-color:var(--accent-fg)}.course-row.added .add-icon{background:var(--accent);color:#fff;border-color:var(--accent-fg)}.basket-empty{padding:22px 14px;text-align:center;font-size:13px;color:var(--ink-4)}.basket-item{border-top:.5px solid var(--line)}.basket-item:first-child{border-top:0}.basket-row{display:flex;align-items:center;gap:10px;padding:9px 11px;cursor:pointer;transition:background .1s}.basket-row:hover{background:var(--paper-2)}.basket-color-bar{width:5px;height:26px;border-radius:999px;flex-shrink:0;align-self:center}.basket-info-stack{flex:1;min-width:0}.basket-code{font-family:var(--font-mono);font-size:12.5px;font-weight:600;letter-spacing:0;line-height:1.15}.basket-name{font-size:11.5px;color:var(--ink-3);line-height:1.3;margin-top:1px;text-wrap:pretty}.basket-row-right{display:flex;align-items:center;gap:2px;flex-shrink:0}.basket-icon-btn{width:20px;height:20px;display:grid;place-items:center;border-radius:5px;color:var(--ink-4);transition:all .12s}.basket-icon-btn:hover{background:var(--paper-3);color:var(--ink-2)}.basket-icon-btn.basket-x:hover{color:var(--bad)}.basket-icon-btn.basket-locked{color:var(--accent-fg);background:var(--accent-soft)}.basket-icon-btn.basket-locked:hover{color:var(--accent-hover);background:var(--accent-soft)}.basket-rating{padding:0 2px}.basket-rating{display:inline-flex;align-items:center;gap:3px;font-size:11px;color:var(--ink-2);font-variant-numeric:tabular-nums;font-weight:500;white-space:nowrap}.basket-grade{font-size:10.5px;font-weight:600;padding:1px 6px;background:var(--paper-2);color:var(--ink-2);border-radius:5px;font-variant-numeric:tabular-nums;letter-spacing:-.005em;min-width:24px;text-align:center}.basket-expanded{background:var(--paper-2);padding:12px 14px 14px;display:flex;flex-direction:column;gap:10px}.bx-field{display:grid;grid-template-columns:56px 1fr;align-items:center;gap:12px}.bx-field label{font-size:12px;color:var(--ink-3);font-weight:500}.bx-select{position:relative;display:flex;align-items:center}.bx-select select{appearance:none;width:100%;background:var(--card);border:0;border-radius:8px;padding:8px 28px 8px 10px;font-family:inherit;font-size:12.5px;font-weight:500;color:var(--ink);cursor:pointer;letter-spacing:-.005em;box-shadow:var(--shadow-sm)}.bx-select select:focus{outline:2px solid var(--accent);outline-offset:-1px}.bx-select>svg{position:absolute;right:10px;top:50%;transform:translateY(-50%);color:var(--ink-4);pointer-events:none}.color-picker{display:flex;gap:8px;flex-wrap:wrap}.color-picker .swatch{width:26px;height:26px;border-radius:6px;border:2px solid transparent;padding:0;transition:all .14s;cursor:pointer;position:relative}.color-picker .swatch:hover{transform:scale(1.05)}.color-picker .swatch.on{border-color:var(--ink);transform:scale(1.05)}.rating-mini{display:inline-flex;align-items:center;gap:3px;font-size:11.5px;color:var(--ink-2);font-variant-numeric:tabular-nums;font-weight:500}.grade-pill{font-size:11px;font-weight:600;padding:1px 7px;background:var(--paper-2);color:var(--ink-2);border-radius:6px;font-variant-numeric:tabular-nums;letter-spacing:-.005em}.filter-row{display:flex;flex-direction:column;padding:12px 14px;border-top:.5px solid var(--line);gap:10px}.filter-row:first-child{border-top:0}.filter-row.inline{flex-direction:row;align-items:center;justify-content:space-between;gap:12px}.filter-label{font-size:13px;font-weight:500;color:var(--ink);display:flex;justify-content:space-between;align-items:center;letter-spacing:-.005em;gap:10px}.filter-label .v{color:var(--ink-3);font-weight:400;font-variant-numeric:tabular-nums;white-space:nowrap;display:inline-flex;align-items:center;gap:4px}.chip-group{display:flex;gap:6px;flex-wrap:wrap}.chip{padding:5px 12px;border-radius:var(--r-pill);font-size:12.5px;border:0;color:var(--ink-2);background:var(--paper-2);transition:all .12s;font-weight:500;letter-spacing:-.005em}.chip:hover{background:var(--paper-3)}.chip[aria-pressed=true]{background:var(--accent);color:#fff}.chip-rating-any[aria-pressed=true]{background:var(--ink);color:var(--paper)}.day-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:5px}.day-chip{text-align:center;padding:7px 0;border-radius:8px;background:var(--paper-2);border:0;font-size:12px;font-weight:500;color:var(--ink-2);transition:all .12s;letter-spacing:-.005em}.day-chip:hover{background:var(--paper-3)}.day-chip[aria-pressed=true]{background:var(--accent);color:#fff}.day-chip-impossible{color:var(--ink-5);text-decoration:line-through;text-decoration-color:var(--ink-4);text-decoration-thickness:1px;cursor:not-allowed;opacity:.7}.day-chip-impossible:hover{background:var(--paper-2)}.range-wrap{position:relative;padding:16px 11px 6px}.range-track{position:relative;height:6px;background:var(--paper-2);border-radius:999px;cursor:pointer;box-shadow:inset 0 0 0 1px var(--line)}[data-theme=dark] .range-track{background:var(--paper-3);box-shadow:inset 0 0 0 1px #ffffff0f}.range-fill{position:absolute;top:0;bottom:0;background:linear-gradient(90deg,var(--accent),var(--accent-fg));border-radius:999px;box-shadow:0 0 10px -3px color-mix(in oklab,var(--accent-fg) 75%,transparent)}.range-knob{position:absolute;width:18px;height:18px;transform:translate(-50%,-50%);background:#fff;border:0;border-radius:50%;cursor:grab;box-shadow:0 1px 3px #00000047,0 0 0 1px #0000001a;transition:transform .12s ease,box-shadow .14s ease;z-index:2}.range-knob:after{content:"";position:absolute;inset:5px;border-radius:50%;background:var(--accent);transition:inset .12s ease,background .14s ease}[data-theme=dark] .range-knob{box-shadow:0 2px 6px #0000008c,0 0 0 1px #fff3}.range-knob:hover{transform:translate(-50%,-50%) scale(1.12);box-shadow:0 3px 9px #00000052,0 0 0 5px var(--accent-soft)}.range-knob:hover:after{inset:4px}.range-knob:active{cursor:grabbing;transform:translate(-50%,-50%) scale(1.2)}.range-knob:active:after{background:var(--accent-hover)}.range-ticks{display:flex;justify-content:space-between;font-size:11px;color:var(--ink-4);font-variant-numeric:tabular-nums;margin-top:8px}.toggle{width:38px;height:22px;background:var(--paper-3);border-radius:var(--r-pill);position:relative;transition:background .2s ease,box-shadow .2s ease;flex-shrink:0;cursor:pointer}.toggle:after{content:"";position:absolute;width:18px;height:18px;background:#fff;border-radius:50%;top:2px;left:2px;transition:transform .22s cubic-bezier(.4,0,.2,1),box-shadow .22s ease;box-shadow:0 1px 2px #0000002e,0 0 0 .5px #0000000f}.toggle:hover{background:color-mix(in oklab,var(--paper-3) 70%,var(--ink-5))}.toggle[aria-pressed=true]{background:var(--accent);box-shadow:0 0 0 .5px color-mix(in oklab,var(--accent) 40%,transparent),0 4px 12px -4px color-mix(in oklab,var(--accent) 50%,transparent)}.toggle[aria-pressed=true]:hover{background:var(--accent-hover)}.toggle[aria-pressed=true]:after{transform:translate(16px);box-shadow:0 2px 4px #00000038,0 0 0 .5px #00000014}.canvas{display:grid;grid-template-rows:auto 1fr auto;min-width:0;overflow:hidden;background:var(--paper)}.canvas>.cal-host{display:flex;flex-direction:column;height:100%;min-height:0}.canvas>.cal-host>.cal-wrap{flex:1;min-height:0}.subheader{display:flex;align-items:center;gap:10px;padding:14px 22px;background:color-mix(in oklab,var(--paper) 75%,transparent);-webkit-backdrop-filter:saturate(180%) blur(20px);backdrop-filter:saturate(180%) blur(20px);position:relative;z-index:20}.gen-pill{display:inline-flex;align-items:center;gap:8px;padding:7px 13px;background:var(--card);border-radius:var(--r-pill);font-size:13px;color:var(--ink-2);font-variant-numeric:tabular-nums;white-space:nowrap;box-shadow:var(--shadow-sm);font-weight:500}.gen-pill .count{color:var(--ink);font-weight:600}.gen-pill .dot{width:7px;height:7px;background:var(--ok);border-radius:50%}.gen-pill.warn .dot{background:var(--warn)}.gen-pill.bad .dot{background:var(--bad)}.nav-arrows{display:flex;align-items:center;gap:2px;background:var(--card);border-radius:var(--r-pill);padding:3px;box-shadow:var(--shadow-sm)}.nav-arrow{width:28px;height:28px;display:grid;place-items:center;border-radius:50%;color:var(--ink-2);transition:background .12s}.nav-arrow:hover:not(:disabled){background:var(--paper-2)}.nav-arrow:disabled{color:var(--ink-5);cursor:not-allowed}.nav-position{font-size:12.5px;color:var(--ink-2);font-variant-numeric:tabular-nums;padding:0 10px;min-width:56px;text-align:center;font-weight:500}.nav-position b{color:var(--ink);font-weight:600}.score-pip{display:inline-flex;align-items:center;gap:6px;padding:7px 12px;background:var(--card);border-radius:var(--r-pill);font-size:12.5px;color:var(--ink-2);box-shadow:var(--shadow-sm);white-space:nowrap;font-weight:500}.score-pip .label{color:var(--ink-4);font-weight:400}.score-pip .v{font-variant-numeric:tabular-nums;color:var(--ink);font-weight:600}.btn{display:inline-flex;align-items:center;gap:6px;padding:7px 14px;border-radius:9px;font-size:13.5px;font-weight:500;letter-spacing:-.005em;background:var(--card);color:var(--ink-2);transition:all .14s;white-space:nowrap;box-shadow:var(--shadow-sm)}.btn:hover{background:var(--paper-2)}.btn-primary{background:var(--accent);color:#fff}.btn-primary:hover{background:var(--accent-hover)}.btn-accent{background:var(--accent);color:#fff}.btn-accent:hover{background:var(--accent-hover)}.btn-ghost{background:transparent;box-shadow:none;color:var(--accent-fg)}.btn-ghost:hover{background:var(--accent-soft)}.cal-wrap{padding:16px 22px 22px;overflow:hidden;min-height:0}.cal-frame{background:var(--card);border-radius:var(--r-card);overflow:hidden;height:100%;min-height:0;display:flex;flex-direction:column;box-shadow:var(--shadow-sm)}.cal-header{display:grid;grid-template-columns:64px repeat(5,1fr);border-bottom:.5px solid var(--line)}.cal-header>div{padding:14px 14px 12px;font-size:12px;font-weight:500;color:var(--ink-3)}.cal-header .day-name{display:flex;flex-direction:column;gap:0}.cal-header .day-name .dow{color:var(--ink);font-weight:600;font-size:14px;letter-spacing:-.01em}.cal-virtual{display:grid;grid-template-columns:64px 1fr;align-items:start;gap:8px;padding:8px 12px 10px;border-bottom:.5px solid var(--line)}.cal-virtual-label{font-size:10.5px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--ink-3);align-self:center;text-align:right;padding-right:6px}.cal-virtual-chips{display:flex;gap:6px;flex-wrap:wrap}.cal-virtual-chip{display:inline-flex;align-items:center;gap:6px;padding:4px 8px;border-radius:999px;font-size:10.5px;font-weight:600;letter-spacing:-.005em;cursor:default}.cal-virtual-code{font-family:var(--font-mono);font-size:10px}.cal-virtual-mode{font-size:9.5px;font-weight:500;opacity:.72;text-transform:lowercase}.cal-grid{display:grid;grid-template-columns:64px repeat(5,1fr);position:relative;overflow:hidden;flex:1;min-height:0}.time-col{position:relative}.time-tick{position:absolute;left:0;right:0;font-size:10.5px;color:var(--ink-4);padding:0 8px 0 0;text-align:right;transform:translateY(-50%);font-variant-numeric:tabular-nums;background:var(--card);font-weight:500}.day-col{position:relative;border-left:.5px solid var(--line)}.hour-line{position:absolute;left:0;right:0;height:.5px;background:var(--line)}.cls{position:absolute;left:3px;right:3px;border-radius:7px;padding:5px 8px 6px;overflow:hidden;cursor:pointer;display:flex;flex-direction:column;gap:0;transition:transform .16s,box-shadow .16s;font-size:11px;line-height:1.25}.cls:hover{transform:translateY(-1px);box-shadow:0 6px 18px -4px #0000002e;z-index:5}.cls .cls-code{font-size:11.5px;font-weight:600;letter-spacing:-.01em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cls .cls-room{font-size:9.5px;opacity:.6;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:auto}.cls .cls-prof{font-size:10px;opacity:.78;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:1px}.cls.color-amber{background:var(--c-yellow-soft);color:#6a5108}.cls.color-moss{background:var(--c-green-soft);color:#1e6b34}.cls.color-slate{background:var(--c-blue-soft);color:#0a4f9a}.cls.color-mauve{background:var(--c-purple-soft);color:#4a3990}.cls.color-rust{background:var(--c-orange-soft);color:#8a4515}.cls.color-teal{background:var(--c-teal-soft);color:#1a5b56}.cls.color-ochre{background:var(--c-pink-soft);color:#883456}[data-theme=dark] .cls.color-amber{color:#f3d278}[data-theme=dark] .cls.color-moss{color:#8ce0a3}[data-theme=dark] .cls.color-slate{color:#8ebbf5}[data-theme=dark] .cls.color-mauve{color:#c6b9ee}[data-theme=dark] .cls.color-rust{color:#f5b988}[data-theme=dark] .cls.color-teal{color:#8bd4cc}[data-theme=dark] .cls.color-ochre{color:#ec9cb8}.popover-anchored{position:fixed;width:300px;background:var(--card-elev);border-radius:14px;padding:16px 16px 14px;box-shadow:0 14px 36px -10px #00000038,0 0 0 .5px #00000014;font-size:13px;z-index:60;animation:pop-grow .18s cubic-bezier(.2,.9,.3,1.1)}[data-theme=dark] .popover-anchored{box-shadow:0 14px 36px -10px #0009,0 0 0 .5px #ffffff14}.popover-anchored.placement-right{transform-origin:left center}.popover-anchored.placement-left{transform-origin:right center}.popover-anchored.placement-above{transform-origin:center bottom}.popover-anchored.placement-below{transform-origin:center top}@keyframes pop-grow{0%{transform:scale(.86);opacity:0}to{transform:scale(1);opacity:1}}.popover-arrow{position:absolute;width:10px;height:10px;background:var(--card-elev);transform:rotate(45deg);box-shadow:-.5px -.5px #0000000f}.placement-right .popover-arrow{left:-5px}.placement-left .popover-arrow{right:-5px;box-shadow:.5px .5px #0000000f}.placement-above .popover-arrow{bottom:-5px;left:50%;margin-left:-5px;box-shadow:.5px .5px #0000000f}.placement-below .popover-arrow{top:-5px;left:50%;margin-left:-5px}[data-theme=dark] .popover-arrow{box-shadow:none}.popover-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.popover-anchored h3{margin:0;font-size:15px;font-weight:600;letter-spacing:-.02em;line-height:1.25}.popover-anchored .pop-code{font-family:var(--font-mono);font-size:11px;color:var(--accent-fg);font-weight:500;letter-spacing:0;margin-bottom:3px}.pop-stats{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-top:12px}.pop-stat{padding:8px 10px;background:var(--paper-2);border-radius:8px}.pop-stat .lbl{font-size:10px;color:var(--ink-4);font-weight:500}.pop-stat .v{font-size:13.5px;color:var(--ink);margin-top:1px;font-variant-numeric:tabular-nums;font-weight:600;display:inline-flex;align-items:center;gap:4px}.pop-stat.has-link{cursor:pointer;transition:background .12s}.pop-stat.has-link:hover{background:var(--paper-3)}.pop-sections{margin-top:12px}.popmenu{position:absolute;z-index:50;background:var(--card-elev);border-radius:12px;box-shadow:var(--shadow-pop);padding:5px;min-width:240px;max-width:calc(100vw - 24px)}.popmenu-item{display:flex;align-items:center;gap:10px;padding:9px 11px;border-radius:8px;font-size:13.5px;color:var(--ink-2);cursor:pointer;width:100%;text-align:left;font-weight:500}.popmenu-item:hover{background:var(--paper-2);color:var(--ink)}.popmenu-item .ic{color:var(--ink-3)}.popmenu-item .kbd{margin-left:auto;font-family:var(--font-mono);font-size:10px;color:var(--ink-4);font-weight:400}.popmenu-divider{height:.5px;background:var(--line);margin:4px 8px}.popmenu-section{font-size:11px;color:var(--ink-4);padding:8px 11px 4px;font-weight:500}.export-wrap{position:relative;margin-left:auto}.filmstrip{display:flex;gap:10px;padding:4px 22px 26px;overflow-x:auto}.filmstrip-card{flex-shrink:0;width:148px;background:var(--card);padding:7px;border-radius:10px;cursor:pointer;transition:all .14s;box-shadow:var(--shadow-sm)}.filmstrip-card:hover{transform:translateY(-1px)}.filmstrip-card.active{box-shadow:0 0 0 2px var(--accent),var(--shadow-sm)}.mini-cal{display:grid;grid-template-columns:repeat(5,1fr);gap:1px;height:76px;background:var(--paper-2);border-radius:5px;overflow:hidden}.mini-day{position:relative;background:var(--card)}.mini-block{position:absolute;left:1px;right:1px;border-radius:1px}.filmstrip-meta{display:flex;justify-content:space-between;align-items:center;margin-top:6px;font-size:11px;color:var(--ink-3);font-variant-numeric:tabular-nums;font-weight:500}.filmstrip-meta .pos{font-family:var(--font-mono)}.filmstrip::-webkit-scrollbar{height:8px}.filmstrip::-webkit-scrollbar-thumb{background:var(--line-2);border-radius:8px}.seq-wrap{padding:22px 26px;overflow:auto;height:100%;position:relative}.seq-view-toggle{display:inline-flex;background:var(--paper-2);border-radius:999px;padding:3px;margin-top:6px;gap:2px}.seq-view-tab{display:inline-flex;align-items:center;gap:6px;padding:5px 12px;border-radius:999px;background:transparent;color:var(--ink-3);font-size:12px;font-weight:500;cursor:pointer;transition:background .12s,color .12s}.seq-view-tab:hover{color:var(--ink)}.seq-view-tab.active{background:var(--card);color:var(--ink);box-shadow:var(--shadow-sm)}.seq-card-custom:before{left:0;background:var(--c-purple)}.seq-card-custom{padding-left:14px}.seq-course-remove{margin-left:4px;display:inline-grid;place-items:center;width:18px;height:18px;border-radius:50%;background:transparent;color:var(--ink-4);border:0;cursor:pointer;opacity:.5;transition:opacity .12s,background .12s,color .12s}.seq-course:hover .seq-course-remove{opacity:1}.seq-course-remove:hover{background:var(--bad);color:#fff;opacity:1}.seq-catalogue{background:var(--card);border-radius:var(--r-card);box-shadow:var(--shadow-sm);margin-bottom:18px;overflow:hidden;animation:pop-grow .18s cubic-bezier(.2,.9,.3,1.1)}.seq-catalogue.v2{max-height:320px;display:flex;flex-direction:column}.seq-catalogue-bar{display:flex;align-items:center;gap:10px;padding:10px 12px;border-bottom:.5px solid var(--line);background:var(--card);position:sticky;top:0;z-index:2}.seq-catalogue-bar-left{display:flex;align-items:center;gap:8px;flex:1;min-width:0}.seq-catalogue-bar-left>svg:first-child{color:var(--ink-4);flex-shrink:0}.seq-catalogue-search{flex:1;height:30px;padding:0 10px;border-radius:8px;border:1px solid transparent;background:var(--paper-2);color:var(--ink);font-size:13px;font-family:inherit;min-width:0}.seq-catalogue-search:focus{outline:2px solid var(--accent);outline-offset:-1px;border-color:var(--accent-fg);background:var(--card)}.seq-catalogue-count{font-size:11px;color:var(--ink-4);font-weight:500;font-variant-numeric:tabular-nums;white-space:nowrap}.seq-catalogue-close{display:inline-grid;place-items:center;width:26px;height:26px;border-radius:50%;background:var(--paper-2);color:var(--ink-3);border:0;cursor:pointer;transition:background .12s,color .12s;flex-shrink:0}.seq-catalogue-close:hover{background:var(--accent-soft);color:var(--accent-fg)}.seq-catalogue-pills{display:flex;gap:4px;flex-wrap:wrap;padding:8px 12px;border-bottom:.5px solid var(--line)}.seq-pill{padding:4px 10px;border-radius:999px;background:var(--paper-2);color:var(--ink-3);font-size:11px;font-weight:600;font-family:var(--font-mono);letter-spacing:0;cursor:pointer;transition:background .12s,color .12s;border:0}.seq-pill:hover{color:var(--ink)}.seq-pill.active{background:var(--accent);color:#fff}.seq-catalogue-more{position:relative;display:inline-flex;align-items:center;padding:4px 24px 4px 10px;border-radius:999px;background:var(--paper-2);color:var(--ink-3);font-size:11px;font-weight:600;font-family:var(--font-mono);cursor:pointer}.seq-catalogue-more.active{background:var(--accent);color:#fff}.seq-catalogue-more select{position:absolute;inset:0;appearance:none;-webkit-appearance:none;background:transparent;border:0;color:transparent;cursor:pointer;padding-left:10px;padding-right:24px;font-family:var(--font-mono);font-size:11px;font-weight:600}.seq-catalogue-more select:focus{outline:2px solid var(--accent);outline-offset:1px;border-radius:999px}.seq-catalogue-more select option{color:var(--ink);background:var(--card)}.seq-catalogue-more svg{position:absolute;right:8px;top:50%;transform:translateY(-50%);pointer-events:none}.seq-catalogue-rows{flex:1;overflow-y:auto;padding:4px 0}.seq-catalogue-row{display:grid;grid-template-columns:78px 1fr auto;align-items:center;gap:12px;padding:6px 14px;font-size:12px;cursor:grab;transition:background 80ms;border-bottom:.5px solid color-mix(in oklab,var(--line) 70%,transparent)}.seq-catalogue-row:last-child{border-bottom:0}.seq-catalogue-row:hover{background:color-mix(in oklab,var(--accent) 4%,var(--card))}.seq-catalogue-row:active{cursor:grabbing}.seq-catalogue-row-code{font-family:var(--font-mono);font-size:10.5px;font-weight:600;color:var(--ink);white-space:nowrap}.seq-catalogue-row-name{font-size:12px;color:var(--ink-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.seq-catalogue-row-tag{display:inline-flex;align-items:center;gap:3px;font-size:10px;color:var(--c-green);font-weight:600;text-transform:uppercase;letter-spacing:.04em;padding:2px 7px;border-radius:999px;background:var(--c-green-soft)}.seq-catalogue-row-add{display:inline-grid;place-items:center;width:22px;height:22px;border-radius:50%;background:var(--paper-2);color:var(--ink-3);border:0;cursor:pointer;opacity:0;transition:opacity .12s,background .12s,color .12s,transform .12s}.seq-catalogue-row-add:hover{background:var(--accent);color:#fff;transform:scale(1.1)}.seq-catalogue-row.is-placed{opacity:.55;cursor:not-allowed}.seq-catalogue-row.is-placed:hover{background:var(--card)}.seq-catalogue-row.is-placed .seq-catalogue-row-name{color:var(--ink-4)}.seq-catalogue-chips{display:none}.seq-catalogue-empty{grid-column:1 / -1;padding:18px 4px;font-size:12.5px;color:var(--ink-4);text-align:center;font-style:italic}.seq-catalogue-chip{display:grid;grid-template-columns:70px 1fr auto;align-items:center;gap:10px;padding:7px 10px 7px 8px;border-radius:8px;border:1px solid var(--line);background:var(--card);font-size:12px;cursor:grab;transition:border-color .12s,background .12s,transform .12s,box-shadow .12s;min-width:0}.seq-catalogue-chip:hover{border-color:var(--c-purple);background:color-mix(in oklab,var(--c-purple) 5%,var(--card));box-shadow:0 1px 3px #0000000a}.seq-catalogue-chip:active{cursor:grabbing}.seq-catalogue-chip-code{font-family:var(--font-mono);font-size:10.5px;font-weight:600;color:var(--ink);letter-spacing:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.seq-catalogue-chip-name{font-size:11.5px;color:var(--ink-3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.seq-catalogue-chip-tag{font-size:9.5px;color:var(--c-green);font-weight:600;text-transform:uppercase;letter-spacing:.05em;padding:2px 6px;border-radius:999px;background:var(--c-green-soft)}.seq-catalogue-chip.is-placed{opacity:.6;cursor:not-allowed}.seq-catalogue-chip.is-placed .seq-catalogue-chip-name{color:var(--ink-4)}.seq-catalogue-chip.is-placed:hover{border-color:var(--line);background:var(--card);transform:none;box-shadow:none}.seq-catalogue-chips::-webkit-scrollbar{width:8px}.seq-catalogue-chips::-webkit-scrollbar-track{background:transparent}.seq-catalogue-chips::-webkit-scrollbar-thumb{background:var(--line-2);border-radius:4px;border:2px solid var(--card)}.seq-catalogue-chips::-webkit-scrollbar-thumb:hover{background:var(--ink-4)}.seq-list{background:var(--card);border-radius:var(--r-card);box-shadow:var(--shadow-sm);overflow:hidden}.seq-list-toolbar{display:flex;align-items:center;gap:8px;padding:10px 16px;border-bottom:.5px solid var(--line)}.seq-list-toolbar-label{font-size:11px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--ink-4);margin-right:4px}.seq-list-sort{padding:5px 10px;border-radius:999px;background:var(--paper-2);color:var(--ink-3);font-size:12px;font-weight:500;cursor:pointer;transition:background .12s,color .12s}.seq-list-sort:hover{color:var(--ink)}.seq-list-sort.active{background:var(--accent);color:#fff}.seq-list-toolbar-count{margin-left:auto;font-size:11.5px;color:var(--ink-3);font-variant-numeric:tabular-nums}.seq-list-rows{padding:4px 0}.seq-list-row{display:grid;grid-template-columns:80px 1fr 150px 130px 100px 32px;align-items:center;gap:12px;padding:8px 16px;font-size:12.5px;border-top:.5px solid var(--line)}.seq-list-row:first-child{border-top:0}.seq-list-head{font-size:10.5px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--ink-4);border-top:0;border-bottom:.5px solid var(--line);padding-top:10px;padding-bottom:10px}.seq-list-row.is-taken{background:var(--c-green-soft)}.seq-list-row.is-taking{background:var(--c-yellow-soft)}.seq-list-row.is-taken .seq-list-title,.seq-list-row.is-taking .seq-list-title{color:var(--ink-2)}.seq-list-code{font-family:var(--font-mono);font-size:11px;font-weight:600}.seq-list-title{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--ink-3)}.seq-list-origin{font-size:11px;color:var(--ink-3)}.seq-list-origin.origin-major{color:var(--c-blue)}.seq-list-origin.origin-minor{color:var(--accent-fg)}.seq-list-origin.origin-custom{color:var(--c-purple)}.seq-list-required{margin-left:4px;color:var(--c-orange);font-weight:500}.seq-list-when{font-size:11px;color:var(--ink-3);font-variant-numeric:tabular-nums}.seq-list-status-btn{padding:3px 8px;border-radius:999px;font-size:10.5px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;cursor:pointer;transition:background .12s,transform .12s;text-align:center}.seq-list-status-btn:hover{transform:translateY(-1px)}.seq-list-status-btn.list-status-taken{background:var(--c-green-soft);color:var(--c-green)}.seq-list-status-btn.list-status-taking{background:var(--c-yellow-soft);color:#6a5108}.seq-list-status-btn.list-status-planned{background:var(--accent-soft);color:var(--accent-fg)}.seq-list-status-btn.list-status-none{background:var(--paper-2);color:var(--ink-4)}[data-theme=dark] .seq-list-status-btn.list-status-taking{color:#f3d278}.seq-list-actions{display:flex;justify-content:center}.seq-list-remove{display:inline-grid;place-items:center;width:22px;height:22px;border-radius:50%;background:transparent;color:var(--ink-4);border:0;cursor:pointer;opacity:.5;transition:opacity .12s,background .12s,color .12s}.seq-list-row:hover .seq-list-remove{opacity:1}.seq-list-remove:hover{background:var(--bad);color:#fff}.seq-status{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}@media (max-width: 1000px){.seq-status{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 600px){.seq-status{grid-template-columns:1fr}}.seq-status-col{background:var(--card);border-radius:var(--r-card);box-shadow:var(--shadow-sm);display:flex;flex-direction:column;min-height:240px}.seq-status-head{display:grid;grid-template-columns:1fr auto;align-items:baseline;gap:8px;padding:12px 14px;border-top:3px solid;border-radius:var(--r-card) var(--r-card) 0 0}.seq-status-label{font-size:13px;font-weight:600;letter-spacing:-.01em}.seq-status-count{font-size:13px;font-weight:600;color:var(--ink-3);font-variant-numeric:tabular-nums}.seq-status-help{grid-column:1 / -1;font-size:10.5px;color:var(--ink-4)}.seq-status-cards{display:flex;flex-direction:column;gap:6px;padding:8px 12px 12px}.seq-status-empty{padding:16px 4px;font-size:11.5px;color:var(--ink-4);text-align:center;font-style:italic}.seq-status-card{position:relative;display:grid;grid-template-columns:1fr auto;gap:4px;padding:8px 10px 8px 12px;border-radius:8px;border:1px solid var(--line);background:var(--card);cursor:pointer;transition:border-color .12s,transform .12s}.seq-status-card:hover{border-color:var(--accent-fg);transform:translateY(-1px)}.seq-status-card:before{content:"";position:absolute;left:0;top:6px;bottom:6px;width:3px;border-radius:0 2px 2px 0}.seq-status-card.origin-major:before{background:var(--c-blue)}.seq-status-card.origin-minor:before{background:var(--accent)}.seq-status-card.origin-custom:before{background:var(--c-purple)}.seq-status-card.is-required{padding-left:18px}.seq-status-card.is-required:after{content:"";position:absolute;left:6px;top:6px;bottom:6px;width:3px;border-radius:0 2px 2px 0;background:var(--c-orange)}.seq-status-card-code{grid-column:1;font-family:var(--font-mono);font-size:11px;font-weight:600}.seq-status-card-title{grid-column:1 / -1;font-size:11.5px;color:var(--ink-3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.seq-status-card-remove{grid-column:2;grid-row:1;display:inline-grid;place-items:center;width:18px;height:18px;border-radius:50%;background:transparent;color:var(--ink-4);border:0;cursor:pointer;opacity:.5;transition:opacity .12s,background .12s,color .12s}.seq-status-card:hover .seq-status-card-remove{opacity:1}.seq-status-card-remove:hover{background:var(--bad);color:#fff}.seq-toast{position:fixed;bottom:24px;left:50%;transform:translate(-50%);display:inline-flex;align-items:center;gap:8px;padding:10px 16px;border-radius:14px;font-size:13px;font-weight:500;line-height:1.35;box-shadow:var(--shadow-lg);z-index:100;max-width:min(680px,calc(100vw - 48px));cursor:pointer;animation:pop-grow .18s cubic-bezier(.2,.9,.3,1.1)}.seq-toast-ok{background:var(--ink);color:var(--paper)}.seq-toast-warn{background:#6a4f00;color:#fff8e0}.seq-toast-err{background:var(--bad);color:#fff}[data-theme=dark] .seq-toast-warn{background:#f0c95a;color:#2a2000}.seq-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:22px;flex-wrap:wrap;padding:22px 24px;background:var(--card);border-radius:var(--r-card);box-shadow:var(--shadow-sm)}.seq-career{display:flex;flex-direction:column;gap:8px;padding:14px 16px;background:color-mix(in oklab,var(--accent) 4%,var(--paper));border-radius:var(--r-card);border:1px solid var(--line)}[data-theme=dark] .seq-career{background:color-mix(in oklab,var(--accent) 8%,var(--paper-2));border-color:var(--line-2)}.seq-career-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;flex-wrap:wrap}.seq-career-title{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:600;letter-spacing:.01em;text-transform:uppercase;color:var(--ink-3)}.seq-career-title svg{color:var(--accent-fg)}.seq-career-program{font-size:12px;font-weight:500;text-transform:none;letter-spacing:normal;color:var(--ink-3)}.seq-career-pct{display:inline-flex;align-items:baseline;gap:4px;font-variant-numeric:tabular-nums}.seq-career-pct b{font-size:22px;font-weight:700;color:var(--accent-fg);letter-spacing:-.02em;line-height:1}.seq-career-pct span{font-size:11px;color:var(--ink-3);font-weight:500;text-transform:uppercase;letter-spacing:.04em}.seq-career-bar{position:relative;display:flex;height:14px;border-radius:999px;background:var(--paper-2);box-shadow:inset 0 0 0 1px var(--line);overflow:hidden}[data-theme=dark] .seq-career-bar{background:#3a3a3c;box-shadow:inset 0 0 0 1px #ffffff1a}.seq-career-seg{height:100%;transition:width .4s ease;box-shadow:inset -1px 0 #0000002e}.seq-career-seg:last-of-type{box-shadow:none}.seq-career-seg.seg-taken{background:var(--c-green)}.seq-career-seg.seg-taking{background:var(--c-yellow)}.seq-career-seg.seg-planned{background:var(--accent)}[data-theme=dark] .seq-career-seg.seg-taken{background:#5fcf7e}[data-theme=dark] .seq-career-seg.seg-taking{background:#f0c95a}[data-theme=dark] .seq-career-seg.seg-planned{background:#c83452}.seq-career-tick{position:absolute;top:0;bottom:0;width:1px;background:#0000002e;transform:translate(-.5px);pointer-events:none}[data-theme=dark] .seq-career-tick{background:#ffffff2e}.seq-career-foot{display:flex;align-items:center;gap:6px;font-size:11.5px;color:var(--ink-3);flex-wrap:wrap;font-variant-numeric:tabular-nums}.seq-career-stat{display:inline-flex;align-items:baseline;gap:4px}.seq-career-stat b{font-weight:700;font-size:13px}.seq-career-spacer{flex:1;min-width:12px}.seq-career-courses{font-size:11.5px;color:var(--ink-4);font-weight:500}.seq-head-v2{display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;flex-wrap:nowrap;gap:16px}.seq-head-row1{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}.seq-head-row1 h1{margin:0}.seq-head-row2{display:grid;grid-template-columns:1fr 1fr;gap:24px;align-items:start}@media (max-width: 720px){.seq-head-row2{grid-template-columns:1fr;gap:14px}}.seq-head-row3{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}.seq-head-actions{display:inline-flex;gap:8px;align-items:center;flex-wrap:wrap}.seq-head-actions-sep{display:inline-block;width:1px;height:22px;background:var(--line);margin:0 2px}.seq-head-stats{display:inline-flex;gap:6px;flex-wrap:wrap;font-variant-numeric:tabular-nums}.stat-chip{display:inline-flex;align-items:baseline;gap:4px;padding:4px 10px;border-radius:999px;background:var(--paper-2);font-size:11.5px;color:var(--ink-3);font-weight:500}.stat-chip b{font-weight:700;color:var(--ink)}.stat-chip.stat-taken b{color:var(--c-green)}.stat-chip.stat-taken{background:var(--c-green-soft)}.stat-chip.stat-taking b{color:var(--c-yellow)}.stat-chip.stat-taking{background:var(--c-yellow-soft);color:#6a5108}[data-theme=dark] .stat-chip.stat-taking{color:#f3d278}.stat-chip.stat-planned b{color:var(--accent-fg)}.stat-chip.stat-planned{background:var(--accent-soft)}.stat-chip.stat-remaining b{color:var(--ink)}.seq-head-left{display:flex;flex-direction:column;gap:0;min-width:0}.seq-head-right{display:flex;flex-direction:column;gap:16px;min-width:0}.seq-legend{display:inline-flex;gap:14px;flex-wrap:wrap;font-size:11.5px;color:var(--ink-3);font-weight:500;margin-top:12px}.seq-track{display:flex;flex-direction:column;gap:8px}.seq-track-bar{display:flex;height:10px;border-radius:999px;background:var(--paper-2);box-shadow:inset 0 0 0 1px var(--line);overflow:hidden;margin-top:2px}[data-theme=dark] .seq-track-bar{background:#3a3a3c;box-shadow:inset 0 0 0 1px #ffffff1a}.seq-track-seg{height:100%;transition:width .4s ease;box-shadow:inset -1px 0 #0000002e}.seq-track-seg:last-of-type{box-shadow:none}.seq-track-seg.seg-taken{background:var(--c-green)}.seq-track-seg.seg-taking{background:var(--c-yellow)}.seq-track-seg.seg-planned{background:var(--accent)}[data-theme=dark] .seq-track-seg.seg-taken{background:#5fcf7e}[data-theme=dark] .seq-track-seg.seg-taking{background:#f0c95a}[data-theme=dark] .seq-track-seg.seg-planned{background:#c83452}.seq-track-counts{display:inline-flex;gap:6px;align-items:center;flex-wrap:wrap;font-size:11.5px;color:var(--ink-3);font-variant-numeric:tabular-nums}.seq-track-counts .dot-sep{color:var(--ink-5)}.seq-track-empty{font-size:11.5px;color:var(--ink-4);font-style:italic;padding-top:2px}.seq-head h1{font-size:26px;margin:0 0 6px;letter-spacing:-.03em;font-weight:600}.seq-head p{color:var(--ink-3);margin:0;max-width:56ch;font-size:14px}.progress-bar{width:280px;height:6px;background:var(--paper-2);border-radius:var(--r-pill);overflow:hidden;margin-top:12px}.progress-fill{height:100%;background:var(--accent);border-radius:var(--r-pill);transition:width .4s ease}.seq-years{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.seq-grid-scroll{overflow-x:auto;overflow-y:visible;padding-bottom:6px;scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch}.seq-grid-scroll.is-scrolling{mask-image:linear-gradient(to right,#000 0,#000 calc(100% - 36px),transparent);-webkit-mask-image:linear-gradient(to right,#000 0,#000 calc(100% - 36px),transparent)}.seq-grid{--year-count: 4;display:grid;grid-template-columns:repeat(var(--year-count),minmax(186px,1fr)) auto;gap:14px;align-items:start;width:100%}.seq-year-col{display:flex;flex-direction:column;gap:12px;scroll-snap-align:start}.seq-year-add-col{min-width:0}.seq-year-add-btn{display:inline-flex;align-items:center;gap:6px;align-self:start;margin-top:30px;padding:8px 14px;border-radius:999px;border:1.5px dashed var(--line-2);background:transparent;color:var(--ink-3);font-size:12px;font-weight:500;cursor:pointer;transition:border-color .14s,background .14s,color .14s;white-space:nowrap}.seq-year-add-btn:hover{border-color:var(--accent-fg);color:var(--accent-fg);background:color-mix(in oklab,var(--accent) 5%,transparent);border-style:solid}.icon-btn{display:inline-grid;place-items:center;width:32px;height:32px;border-radius:8px;background:var(--paper-2);color:var(--ink-3);border:0;cursor:pointer;transition:background .12s,color .12s}.icon-btn:hover{background:var(--accent-soft);color:var(--accent-fg)}.seq-year-remove{display:inline-grid;place-items:center;width:22px;height:22px;border-radius:50%;background:var(--paper-2);color:var(--ink-3);border:0;cursor:pointer;transition:background .14s,color .14s}.seq-year-remove:hover{background:var(--accent-soft);color:var(--accent-fg)}.seq-drop{transition:outline .14s ease,background .14s ease;outline:1.5px dashed transparent;outline-offset:-2px}.seq-drop-over{outline-color:var(--accent-fg);background:color-mix(in oklab,var(--accent) 5%,var(--card))}.seq-card{cursor:grab;user-select:none;-webkit-user-drag:element}.seq-card:active{cursor:grabbing}.seq-card.dragging{opacity:.45}.seq-card-major,.seq-card-minor{position:relative;padding-left:12px}.seq-card-major:before,.seq-card-minor:before,.seq-card-required:after{content:"";position:absolute;top:6px;bottom:6px;width:3px;border-radius:0 2px 2px 0}.seq-card-major:before{left:0;background:var(--c-blue)}.seq-card-minor:before{left:0;background:var(--accent)}.seq-card-required{padding-left:18px}.seq-card-required:after{left:6px;background:var(--c-orange)}.seq-card-pool{background:transparent}.seq-card-pool .code,.seq-card-pool .name{opacity:.92}.seq-label-required{color:var(--c-orange)}.seq-label-major{color:var(--c-blue)}.seq-label-minor{color:var(--accent-fg)}.seq-label-pool{color:var(--ink-3)}.seq-grid .seq-term-h{padding:9px 12px 6px;font-size:11.5px}.seq-grid .seq-course{padding:6px 12px;font-size:12.5px}.seq-grid .seq-course .code{font-size:10.5px}.seq-grid .seq-course .name{font-size:12px}.seq-pool-head{padding:8px 12px 4px;font-size:10.5px;color:var(--ink-3);font-weight:500;letter-spacing:-.005em;border-top:.5px solid var(--line);display:flex;flex-direction:column;gap:4px}.seq-pool-head:first-child{border-top:0}.seq-pool-head-row{display:flex;justify-content:space-between;align-items:center;gap:8px}.seq-pool-head-label{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.seq-pool-head-count{font-variant-numeric:tabular-nums;color:var(--ink-2);font-weight:600;font-size:10.5px;white-space:nowrap}.seq-pool-bar{height:3px;background:var(--paper-2);border-radius:999px;overflow:hidden}.seq-pool-bar-fill{height:100%;border-radius:999px;background:var(--c-green);transition:width .24s ease}.seq-pool-bar-fill.warn{background:var(--warn)}.seq-reqs{background:var(--card);border-radius:var(--r-card);padding:18px 22px 20px;margin-bottom:18px;box-shadow:var(--shadow-sm)}.seq-reqs-title{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:16px}.seq-reqs-title>span:first-child{font-size:15px;font-weight:600;letter-spacing:-.015em;color:var(--ink)}.seq-reqs-title .sub{font-size:12px;color:var(--ink-3);font-variant-numeric:tabular-nums}.seq-reqs-grid{display:grid;grid-template-columns:1fr;gap:14px}@media (min-width: 760px){.seq-reqs-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));column-gap:28px}}.cat-row{display:flex;flex-direction:column;gap:7px}.cat-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.cat-name{font-size:13px;font-weight:500;color:var(--ink);display:inline-flex;align-items:center;gap:8px;letter-spacing:-.005em}.cat-tag{font-size:9.5px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;padding:2px 6px;background:var(--paper-2);color:var(--ink-3);border-radius:5px}.cat-tag-major{background:var(--accent-soft);color:var(--accent-fg)}.cat-credits{font-size:12.5px;color:var(--ink-3);font-variant-numeric:tabular-nums;white-space:nowrap}.cat-credits .v{color:var(--ink);font-weight:600}.cat-credits .of{color:var(--ink-4);margin-left:2px}.cat-bar{height:7px;background:var(--paper-2);border-radius:var(--r-pill);position:relative;overflow:hidden}.cat-bar-taken{position:absolute;left:0;top:0;bottom:0;background:var(--accent);border-radius:var(--r-pill);transition:width .4s cubic-bezier(.4,0,.2,1)}.cat-bar-planned{position:absolute;top:0;bottom:0;background:color-mix(in oklab,var(--accent) 28%,transparent);transition:all .4s cubic-bezier(.4,0,.2,1)}.cat-foot{display:flex;gap:12px;font-size:11px;color:var(--ink-3);font-variant-numeric:tabular-nums;flex-wrap:wrap}.cat-foot>span{display:inline-flex;align-items:center;gap:5px}.cat-foot .dot{width:6px;height:6px;border-radius:50%;background:var(--ink-4)}.cat-foot .dot.taken{background:var(--accent)}.cat-foot .dot.planned{background:color-mix(in oklab,var(--accent) 35%,transparent);border:1px solid color-mix(in oklab,var(--accent) 60%,transparent)}.cat-foot .dot.rem{background:var(--paper-3);border:1px solid var(--line-2)}.seq-year-h{font-size:18px;margin:0 0 10px;font-weight:600;letter-spacing:-.02em;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:0 4px}.seq-year-h>span:first-child{display:inline-flex;align-items:baseline;gap:8px;min-width:0}.seq-year-h .lbl{font-size:11px;color:var(--ink-4);font-weight:500;letter-spacing:-.005em}.seq-term{background:var(--card);border-radius:var(--r-card);padding:4px 0;margin-bottom:12px;box-shadow:var(--shadow-sm);overflow:hidden}.seq-term-h{font-size:12px;color:var(--ink-3);padding:12px 14px 8px;display:flex;justify-content:space-between;font-weight:500;letter-spacing:-.005em}.seq-course{display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:center;padding:8px 14px;font-size:13px;transition:background .12s;cursor:pointer;border-top:.5px solid var(--line)}.seq-course:hover{background:var(--paper-2)}.seq-course .code{font-family:var(--font-mono);font-size:11px;font-weight:500;letter-spacing:0}.seq-course .name{color:var(--ink-3);font-size:12.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.seq-course .status{width:22px;height:22px;border-radius:50%;border:1.5px solid var(--ink-5);display:grid;place-items:center;color:transparent;transition:all .14s;background:transparent}.seq-course .status[data-s=taken]{background:var(--ok);border-color:var(--ok);color:#fff}.seq-course .status[data-s=taking]{background:var(--c-yellow);border-color:var(--c-yellow);color:#5a4308}.seq-course .status[data-s=planned]{background:var(--accent);border-color:var(--accent-fg);color:#fff}.seq-course.taken:hover{background:color-mix(in oklab,var(--c-green-soft) 80%,var(--paper-2) 20%)}.seq-course.taken .code,.seq-course.taken .name{color:#1e6b34;opacity:1;text-decoration:none}[data-theme=dark] .seq-course.taken .code,[data-theme=dark] .seq-course.taken .name{color:#6fd693}.seq-course.taking:hover{background:color-mix(in oklab,var(--c-yellow-soft) 80%,var(--paper-2) 20%)}.seq-course.taking .code,.seq-course.taking .name{color:#6a5108}[data-theme=dark] .seq-course.taking .code,[data-theme=dark] .seq-course.taking .name{color:#f3d278}.seq-label-taking{color:var(--c-yellow)}.seq-label-taken{color:var(--c-green)}.empty-frame{background:var(--card);border-radius:var(--r-card);display:grid;place-items:center;height:100%;min-height:500px;padding:40px;box-shadow:var(--shadow-sm)}.empty-headline{font-family:var(--font-display);font-size:28px;margin:0 0 8px;letter-spacing:-.025em;font-weight:500;line-height:1.15}.empty-pad-icon{display:inline-flex;padding:16px;border-radius:18px;background:var(--accent-soft);color:var(--accent-fg);margin-bottom:20px}.empty-warn-icon{display:inline-flex;padding:16px;border-radius:18px;background:var(--c-orange-soft);color:var(--c-orange);margin-bottom:20px}.empty-copy{color:var(--ink-3);margin:0 0 20px;font-size:14px;line-height:1.5}.empty-kbd-hint{display:inline-flex;gap:8px;padding:8px 12px;background:var(--paper-2);border-radius:10px;font-size:12.5px;color:var(--ink-3);align-items:center}.empty-kbd-hint kbd{font-family:var(--font-mono);padding:2px 6px;background:var(--card);border-radius:5px;border:.5px solid var(--line);font-size:11px}.group-title-action{font-size:11.5px;color:var(--accent-fg);font-weight:500;padding:2px 8px;border-radius:999px;background:var(--accent-soft);transition:background .12s;letter-spacing:-.005em}.group-title-action:hover{background:color-mix(in oklab,var(--accent) 18%,transparent)}.toast{position:fixed;bottom:24px;left:50%;transform:translate(-50%);background:var(--ink);color:var(--paper);padding:10px 16px;border-radius:14px;font-size:13px;line-height:1.4;box-shadow:var(--shadow-lg);z-index:100;font-weight:500;max-width:min(720px,calc(100vw - 48px));text-align:center;white-space:normal;word-break:normal;cursor:pointer;animation:pop-grow .18s cubic-bezier(.2,.9,.3,1.1)}.toast:hover{background:color-mix(in oklab,var(--ink) 92%,white 8%)}@media (max-width: 900px){body{overflow:auto}.app{height:auto;min-height:100vh}.workspace{grid-template-columns:1fr;height:auto}.rail-resize{display:none}.rail{border-right:0;border-bottom:.5px solid var(--line)}.rail-scroll{padding:14px}.rail-footer{position:sticky;bottom:0}.group-flex{min-height:280px;max-height:50vh}.canvas{height:auto;overflow:visible}.cal-wrap{padding:6px 14px 14px;overflow:visible}.cal-frame{min-height:70vh}.topbar{display:flex;flex-wrap:wrap;padding:12px 14px;gap:10px}.topbar-center,.topbar-right{justify-self:auto}.brand-version{display:none}.subheader{padding:12px 14px;flex-wrap:wrap;gap:8px}.seq-wrap{padding:16px 14px}.seq-grid{grid-template-columns:1fr}}.seq-hero{display:flex;flex-direction:column;gap:18px;padding:20px 22px;background:radial-gradient(120% 140% at 100% 0%,color-mix(in oklab,var(--accent) 7%,transparent),transparent 55%),var(--card);border:1px solid var(--line);border-radius:var(--r-xl);box-shadow:var(--shadow-md)}[data-theme=dark] .seq-hero{border-color:var(--line-2);background:radial-gradient(120% 140% at 100% 0%,color-mix(in oklab,var(--accent) 16%,transparent),transparent 55%),var(--card)}.seq-hero-top{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;flex-wrap:wrap}.seq-hero-titles{display:flex;flex-direction:column;gap:2px;min-width:0}.seq-hero-eyebrow{font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--accent-fg)}.seq-hero h1{margin:0;font-family:var(--font-display);font-size:30px;line-height:1.05;font-weight:600;letter-spacing:-.02em;color:var(--ink)}.seq-progress{display:flex;align-items:center;gap:22px;padding:16px 4px 4px;border-top:1px solid var(--line)}[data-theme=dark] .seq-progress{border-top-color:var(--line-2)}.seq-ring{position:relative;width:108px;height:108px;flex-shrink:0}.seq-ring svg{width:100%;height:100%;transform:rotate(-90deg)}.seq-ring-track{fill:none;stroke:var(--paper-2);stroke-width:9}[data-theme=dark] .seq-ring-track{stroke:var(--paper-3)}.seq-ring-seg{fill:none;stroke-width:9;stroke-linecap:butt;transition:stroke-dasharray .5s cubic-bezier(.2,.8,.2,1),stroke-dashoffset .5s cubic-bezier(.2,.8,.2,1)}.seq-ring-seg.ring-taken{stroke:var(--c-green)}.seq-ring-seg.ring-taking{stroke:var(--c-yellow)}.seq-ring-seg.ring-planned{stroke:var(--accent)}[data-theme=dark] .seq-ring-seg.ring-taken{stroke:#5fcf7e}[data-theme=dark] .seq-ring-seg.ring-taking{stroke:#f0c95a}[data-theme=dark] .seq-ring-seg.ring-planned{stroke:#c83452}.seq-ring-label{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px}.seq-ring-label b{font-size:27px;font-weight:700;line-height:1;letter-spacing:-.03em;color:var(--ink);font-variant-numeric:tabular-nums}.seq-ring-label b i{font-style:normal;font-size:15px;color:var(--ink-3);margin-left:1px}.seq-ring-label span{font-size:9.5px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-4)}.seq-progress-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:14px}.seq-progress-id{display:flex;flex-direction:column;gap:6px;min-width:0}.seq-progress-name{font-size:17px;font-weight:600;letter-spacing:-.01em;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.seq-progress-meta{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:12px;color:var(--ink-3)}.seq-type-badge{font-size:10px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;padding:2px 7px;border-radius:var(--r-pill);background:var(--accent-soft);color:var(--accent-fg)}.seq-progress-faculty{color:var(--ink-3);font-weight:500}.seq-progress-target{color:var(--ink-4);font-variant-numeric:tabular-nums}.seq-progress-empty{display:inline-flex;align-items:center;gap:8px;font-size:14px;color:var(--ink-3)}.seq-progress-empty svg{color:var(--accent-fg)}.seq-stat-tiles{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}@media (max-width: 560px){.seq-stat-tiles{grid-template-columns:repeat(2,1fr)}}.seq-tile{position:relative;display:flex;flex-direction:column;gap:1px;padding:9px 11px 10px;border-radius:var(--r-md);background:var(--paper);border:1px solid var(--line);overflow:hidden}[data-theme=dark] .seq-tile{background:var(--paper-2);border-color:var(--line-2)}.seq-tile:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px}.seq-tile b{font-size:19px;font-weight:700;line-height:1.1;letter-spacing:-.02em;color:var(--ink);font-variant-numeric:tabular-nums}.seq-tile span{font-size:11px;font-weight:500;color:var(--ink-3)}.seq-tile i{font-style:normal;font-size:10.5px;color:var(--ink-4);font-variant-numeric:tabular-nums}.seq-tile.tile-taken:before{background:var(--c-green)}.seq-tile.tile-taking:before{background:var(--c-yellow)}.seq-tile.tile-planned:before{background:var(--accent)}.seq-tile.tile-remaining:before{background:var(--ink-5)}.seq-tile.tile-taken b{color:var(--c-green)}.seq-tile.tile-taking b{color:#9a7407}[data-theme=dark] .seq-tile.tile-taking b{color:#f0c95a}.seq-tile.tile-planned b{color:var(--accent-fg)}[data-theme=dark] .seq-tile.tile-planned b{color:var(--accent-ink)}.seq-hero-selectors{display:grid;grid-template-columns:1fr 1fr;gap:16px;align-items:start;padding-top:16px;border-top:1px solid var(--line)}[data-theme=dark] .seq-hero-selectors{border-top-color:var(--line-2)}@media (max-width: 720px){.seq-hero-selectors{grid-template-columns:1fr;gap:14px}}.seq-hero-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding-top:14px;border-top:1px solid var(--line)}[data-theme=dark] .seq-hero-actions{border-top-color:var(--line-2)}.seq-year-h{display:flex;align-items:center;gap:8px;justify-content:flex-start;padding:7px 12px;margin:0 0 12px;border-radius:var(--r-md);background:color-mix(in oklab,var(--accent) 6%,var(--paper));border:1px solid var(--line);font-size:14px;font-weight:600;letter-spacing:-.01em}[data-theme=dark] .seq-year-h{background:color-mix(in oklab,var(--accent) 14%,var(--paper-2));border-color:var(--line-2)}.seq-year-h>span:first-child{display:inline-flex;align-items:baseline;gap:7px;min-width:0}.seq-year-h .lbl{font-size:10px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--accent-fg)}.seq-year-credits{margin-right:auto;font-size:11px;font-weight:600;color:var(--ink-4);font-variant-numeric:tabular-nums;padding:1px 7px;border-radius:var(--r-pill);background:var(--card);border:1px solid var(--line)}[data-theme=dark] .seq-year-credits{background:var(--paper-3);border-color:var(--line-2)}.seq-term{background:var(--card);border:1px solid var(--line);border-radius:var(--r-lg);padding:0 0 4px;margin-bottom:12px;box-shadow:var(--shadow-sm);overflow:hidden;transition:border-color .14s ease,box-shadow .14s ease}[data-theme=dark] .seq-term{border-color:var(--line-2)}.seq-grid .seq-term-h{display:flex;align-items:center;justify-content:space-between;padding:10px 14px 9px;font-size:11px;font-weight:600;letter-spacing:.03em;text-transform:uppercase;color:var(--ink-3);border-bottom:1px solid var(--line);background:var(--tint)}[data-theme=dark] .seq-grid .seq-term-h{border-bottom-color:var(--line-2);background:var(--paper-2)}.seq-grid .seq-term-h>span:last-child{font-variant-numeric:tabular-nums;color:var(--ink-4);letter-spacing:0}.seq-drop-over{outline:2px dashed var(--accent);outline-offset:-3px;background:color-mix(in oklab,var(--accent) 6%,var(--card))}.seq-grid .seq-course{display:grid;grid-template-columns:1fr auto auto;grid-template-areas:"code status remove" "name status remove";gap:1px 10px;align-items:center;padding:8px 12px 8px 14px;border-top:1px solid var(--line);cursor:pointer;transition:background .12s ease}.seq-grid .seq-course .seq-course-remove{grid-area:remove;align-self:center}[data-theme=dark] .seq-grid .seq-course{border-top-color:var(--line-2)}.seq-grid .seq-course:first-of-type{border-top:0}.seq-grid .seq-course .code{grid-area:code;font-family:var(--font-mono);font-size:11px;font-weight:600;letter-spacing:0;color:var(--ink)}.seq-grid .seq-course .name{grid-area:name;font-size:12px;color:var(--ink-3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.seq-grid .seq-course .status{grid-area:status}.seq-course:hover{background:var(--paper)}[data-theme=dark] .seq-course:hover{background:var(--paper-2)}.seq-card-major,.seq-card-minor,.seq-card-custom{position:relative;padding-left:16px}.seq-card-major:before,.seq-card-minor:before,.seq-card-custom:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;border-radius:0}.seq-card-major:before{background:var(--c-blue)}.seq-card-minor:before{background:var(--accent)}.seq-card-custom:before{background:var(--c-purple)}.seq-card-required:after{content:"";position:static;display:none}.seq-card-required .code:before{content:"";display:inline-block;width:5px;height:5px;border-radius:50%;background:var(--c-orange);margin-right:6px;vertical-align:middle}.seq-grid .seq-course .status{width:20px;height:20px;border-radius:50%;border:1.5px solid var(--ink-5);display:grid;place-items:center;color:transparent;background:transparent;transition:all .14s ease}.seq-course:hover .status{border-color:var(--ink-4)}.seq-grid .seq-course .status[data-s=taken]{background:var(--ok);border-color:var(--ok);color:#fff}.seq-grid .seq-course .status[data-s=taking]{background:var(--c-yellow);border-color:var(--c-yellow);color:#5a4308}.seq-grid .seq-course .status[data-s=planned]{background:var(--accent);border-color:var(--accent-fg);color:#fff}.seq-course.taken{background:var(--c-green-soft)}.seq-course.taking{background:var(--c-yellow-soft)}.seq-course.taken .name{color:color-mix(in oklab,var(--c-green) 70%,var(--ink-3))}.seq-course.taking .name{color:#8a6a08}[data-theme=dark] .seq-course.taking .name{color:#f3d278}.seq-year-add-btn{margin-top:2px;border-radius:var(--r-md)}@media (max-width: 560px){.seq-hero{padding:16px}.seq-hero h1{font-size:25px}.seq-progress{flex-direction:column;align-items:stretch;gap:16px}.seq-ring{align-self:center}}.seq-catalogue.v2{max-height:58vh;border:1px solid var(--line)}[data-theme=dark] .seq-catalogue.v2{border-color:var(--line-2)}.seq-catalogue-bar{padding:9px 12px}.seq-catalogue-pills{padding:7px 10px;gap:4px}.seq-pill{padding:3px 9px;font-size:11px}.seq-catalogue-rows{display:grid;grid-template-columns:repeat(auto-fill,minmax(232px,1fr));gap:1px 6px;align-content:start;padding:6px}.seq-catalogue-rows .seq-catalogue-empty{grid-column:1 / -1}.seq-catalogue-row{grid-template-columns:auto 1fr auto;gap:8px;padding:5px 8px;border-bottom:0;border-radius:var(--r-sm)}.seq-catalogue-row:hover{background:color-mix(in oklab,var(--accent) 8%,var(--card))}[data-theme=dark] .seq-catalogue-row:hover{background:color-mix(in oklab,var(--accent) 22%,var(--card))}.seq-catalogue-row-code{font-size:10px}.seq-catalogue-row-name{font-size:11.5px;color:var(--ink-2)}.seq-catalogue-row-tag{font-size:9px;padding:1px 6px}.seq-catalogue-row-add{width:18px;height:18px;opacity:.3}.seq-catalogue-row:hover .seq-catalogue-row-add{opacity:1}.seq-catalogue-rows::-webkit-scrollbar{width:9px}.seq-catalogue-rows::-webkit-scrollbar-thumb{background:var(--line-2);border-radius:999px;border:2px solid var(--card);background-clip:padding-box}.seq-catalogue-rows::-webkit-scrollbar-thumb:hover{background:var(--ink-4);background-clip:padding-box}.seq-export{position:relative;display:inline-flex}.seq-export-menu{position:absolute;top:calc(100% + 6px);left:0;z-index:30;min-width:214px;background:var(--card);border:1px solid var(--line);border-radius:var(--r-md);box-shadow:var(--shadow-pop);padding:5px;display:flex;flex-direction:column;gap:2px;animation:pop-grow .14s cubic-bezier(.2,.9,.3,1.1)}[data-theme=dark] .seq-export-menu{border-color:var(--line-2)}.seq-export-menu button{display:flex;align-items:center;gap:10px;padding:8px 10px;border:0;border-radius:var(--r-sm);background:transparent;color:var(--ink);cursor:pointer;text-align:left;transition:background .12s}.seq-export-menu button:hover{background:var(--paper-2)}.seq-export-menu button>svg{color:var(--accent-fg);flex-shrink:0}.seq-export-menu button span{display:flex;flex-direction:column;gap:1px}.seq-export-menu button b{font-size:13px;font-weight:600}.seq-export-menu button i{font-style:normal;font-size:11px;color:var(--ink-4)}.seq-status-card{cursor:grab;user-select:none;-webkit-user-drag:element}.seq-status-card:active{cursor:grabbing}.seq-status-card.dragging{opacity:.45}.seq-status-col{transition:outline .14s ease,background .14s ease;border-radius:var(--r-md)}.seq-status-col.is-drop-over{outline:2px dashed var(--accent);outline-offset:-3px;background:color-mix(in oklab,var(--accent) 7%,transparent)}.subheader{flex-wrap:wrap;row-gap:8px}.metrics{display:inline-flex;align-items:center;gap:6px;flex-wrap:wrap;min-width:0}.metric{display:inline-flex;align-items:center;gap:6px;padding:6px 11px;background:var(--card);border-radius:var(--r-pill);box-shadow:var(--shadow-sm);font-size:12.5px;color:var(--ink-3);font-variant-numeric:tabular-nums;white-space:nowrap}.metric>svg{color:var(--ink-4);flex-shrink:0}.metric b{color:var(--ink);font-weight:600}.metric i{font-style:normal;color:var(--ink-4);font-weight:400}.metric-green>svg,.metric-green b{color:var(--c-green)}.metric-accent>svg,.metric-accent b{color:var(--accent-fg)}[data-theme=dark] .metric-accent>svg,[data-theme=dark] .metric-accent b{color:var(--accent-ink)}.metric-warn>svg,.metric-warn b{color:var(--warn)}.metric-warn{box-shadow:inset 0 0 0 1px color-mix(in oklab,var(--warn) 38%,transparent),var(--shadow-sm)}@media (max-width: 1180px){.metric i{display:none}}.opt-bar{display:flex;flex-direction:column;gap:7px;margin-bottom:10px}.opt-bar-label{font-size:10.5px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--ink-4)}.opt-seg{display:flex;flex-wrap:wrap;gap:5px}.opt-seg-btn{display:inline-flex;align-items:center;gap:5px;padding:6px 10px;border-radius:var(--r-pill);background:var(--paper-2);color:var(--ink-3);font-size:12px;font-weight:500;cursor:pointer;border:1px solid transparent;transition:background .12s,color .12s,border-color .12s}.opt-seg-btn:hover{color:var(--ink)}.opt-seg-btn>svg{color:var(--ink-4);transition:color .12s}.opt-seg-btn.active{background:var(--accent-soft);color:var(--accent-fg);border-color:color-mix(in oklab,var(--accent) 30%,transparent)}.opt-seg-btn.active>svg{color:var(--accent-fg)}.cal-now{position:absolute;left:0;right:0;height:2px;background:var(--bad);z-index:3;pointer-events:none;box-shadow:0 0 6px color-mix(in oklab,var(--bad) 55%,transparent)}.cal-now:before{content:"";position:absolute;left:-3px;top:-3px;width:8px;height:8px;border-radius:50%;background:var(--bad)}.donate-pill{display:inline-flex;align-items:center;gap:2px;padding:3px 5px 3px 11px;border-radius:var(--r-pill);background:var(--card);box-shadow:var(--shadow-sm)}.donate-lead{display:inline-flex;align-items:center;gap:5px;font-size:11.5px;font-weight:600;letter-spacing:.01em;color:var(--ink-3);padding-right:9px;margin-right:3px;border-right:1px solid var(--line)}[data-theme=dark] .donate-lead{border-right-color:var(--line-2)}.donate-seg{position:relative;padding:4px 11px;border-radius:var(--r-pill);font-size:12.5px;font-weight:600;color:var(--ink-2);white-space:nowrap;transition:background .18s ease,color .18s ease,box-shadow .2s ease}.donate-seg:hover{background:var(--accent);color:#fff;box-shadow:0 0 11px color-mix(in oklab,var(--accent) 42%,transparent)}[data-theme=dark] .donate-seg:hover{box-shadow:0 0 13px color-mix(in oklab,var(--accent) 60%,transparent)}.donate-hearts{position:absolute;inset:0;pointer-events:none;overflow:visible}.donate-hearts i{position:absolute;top:1px;font-style:normal;font-size:12px;line-height:1;color:#f43f5e;opacity:0;will-change:transform,opacity}.donate-hearts i:before{content:"♥";display:block}.donate-hearts i:nth-child(1){left:20%;--x: -15px;font-size:11px}.donate-hearts i:nth-child(2){left:40%;--x: 10px;font-size:13px}.donate-hearts i:nth-child(3){left:55%;--x: -7px;font-size:12px}.donate-hearts i:nth-child(4){left:70%;--x: 16px;font-size:14px}.donate-hearts i:nth-child(5){left:85%;--x: -4px;font-size:10px}.donate-seg:hover .donate-hearts i{animation:heart-float 1.7s ease-in-out infinite}.donate-seg:hover .donate-hearts i:nth-child(2){animation-delay:.34s}.donate-seg:hover .donate-hearts i:nth-child(3){animation-delay:.68s}.donate-seg:hover .donate-hearts i:nth-child(4){animation-delay:1.02s}.donate-seg:hover .donate-hearts i:nth-child(5){animation-delay:1.36s}@keyframes heart-float{0%{opacity:0;transform:translateY(5px) scale(.55) rotate(-7deg)}22%{opacity:1;transform:translate(calc(var(--x, 0px) * .22),-7px) scale(1.05) rotate(-2deg)}60%{opacity:.85;transform:translate(calc(var(--x, 0px) * .65),-18px) scale(.96) rotate(4deg)}to{opacity:0;transform:translate(var(--x, 0px),-29px) scale(.78) rotate(7deg)}}@media (prefers-reduced-motion: reduce){.donate-seg:hover .donate-hearts i{animation:none}}.byline-btn{display:inline-flex;align-items:center;padding:4px;font-size:11px;font-weight:500;letter-spacing:.01em;color:var(--ink-4);background:transparent;white-space:nowrap;transition:color .13s ease}.byline-btn[href]{cursor:pointer}.byline-btn:hover{color:var(--ink-2)}.brand .byline-btn:before{content:"·";margin-right:7px;color:var(--ink-5);font-weight:600}.info-btn{color:var(--ink-3);border-radius:50%}.info-btn:hover{color:var(--accent-fg);background:var(--accent-soft)}.info-pulse{animation:info-pulse .9s ease}@keyframes info-pulse{0%{box-shadow:0 0 color-mix(in oklab,var(--accent) 55%,transparent)}60%{box-shadow:0 0 0 10px color-mix(in oklab,var(--accent) 0%,transparent);color:var(--accent-fg)}to{box-shadow:0 0 0 0 transparent}}@media (max-width: 1080px){.donate-lead{display:none}}@media (max-width: 1000px){.byline-btn{display:none}}@media (max-width: 900px){.donate-pill,.byline-btn{display:none}}.welcome-overlay{position:fixed;inset:0;z-index:1000;display:grid;place-items:center;padding:20px;background:color-mix(in oklab,#000 46%,transparent);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:welcome-fade .22s ease;transition:background .46s ease,backdrop-filter .46s ease}.welcome-overlay.closing{background:transparent;-webkit-backdrop-filter:blur(0px);backdrop-filter:blur(0px)}@keyframes welcome-fade{0%{opacity:0}to{opacity:1}}.welcome-card{position:relative;width:100%;max-width:640px;max-height:86vh;display:flex;flex-direction:column;background:var(--card);border:1px solid var(--line);border-radius:var(--r-xl);box-shadow:var(--shadow-pop);overflow:hidden;transform-origin:center center;animation:welcome-pop .36s cubic-bezier(.2,.9,.3,1.1)}[data-theme=dark] .welcome-card{border-color:var(--line-2)}@keyframes welcome-pop{0%{opacity:0;transform:scale(.92) translateY(10px)}to{opacity:1;transform:scale(1) translateY(0)}}.welcome-card.closing{animation:none;opacity:0;transform:translate(var(--dock-x, 0),var(--dock-y, 0)) scale(.05);transition:transform .54s cubic-bezier(.5,0,.7,.16),opacity .18s ease .4s;pointer-events:none}.welcome-close{position:absolute;top:12px;right:12px;z-index:2;width:28px;height:28px;display:grid;place-items:center;border-radius:50%;background:color-mix(in oklab,var(--paper-2) 80%,transparent);color:var(--ink-3);cursor:pointer;transition:background .12s,color .12s}.welcome-close:hover{background:var(--accent-soft);color:var(--accent-fg)}.welcome-hero{display:flex;align-items:center;gap:16px;padding:22px 24px;background:radial-gradient(120% 160% at 0% 0%,color-mix(in oklab,var(--accent) 12%,transparent),transparent 60%),var(--tint);border-bottom:1px solid var(--line)}[data-theme=dark] .welcome-hero{border-bottom-color:var(--line-2)}.welcome-mark{width:46px;height:46px;flex-shrink:0;border-radius:13px;background:var(--accent);color:#fff;display:grid;place-items:center;font-size:26px;font-weight:600;letter-spacing:-.04em}.welcome-hero h2{margin:0;font-family:var(--font-display);font-size:23px;font-weight:600;letter-spacing:-.02em;color:var(--ink)}.welcome-hero p{margin:3px 0 0;font-size:13.5px;color:var(--ink-3);line-height:1.4}.welcome-body{padding:18px 24px;overflow-y:auto;display:flex;flex-direction:column;gap:20px}.welcome-sec-head{display:inline-flex;align-items:center;gap:7px;font-size:11.5px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--accent-fg);margin-bottom:12px}.welcome-steps{display:flex;flex-direction:column;gap:13px}.welcome-step{display:grid;grid-template-columns:auto 1fr;gap:12px;align-items:start}.welcome-step-ic{display:grid;place-items:center;width:30px;height:30px;flex-shrink:0;border-radius:9px;background:var(--accent-soft);color:var(--accent-fg)}.welcome-step b{display:block;font-size:13.5px;font-weight:600;color:var(--ink);margin-bottom:2px}.welcome-step p{margin:0;font-size:12.5px;line-height:1.45;color:var(--ink-3)}.welcome-tips{display:flex;flex-wrap:wrap;gap:8px;padding-top:4px}.welcome-tips span{display:inline-flex;align-items:center;gap:5px;padding:5px 10px;border-radius:var(--r-pill);background:var(--paper-2);color:var(--ink-3);font-size:11.5px;font-weight:500}.welcome-tips span>svg{color:var(--ink-4)}.welcome-tips b{color:var(--ink);font-family:var(--font-mono);font-size:11px}.welcome-donate{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px;margin-top:4px;padding:11px 14px;border-radius:var(--r-md);background:var(--accent-soft)}.welcome-donate-label{display:inline-flex;align-items:center;gap:7px;font-size:12.5px;font-weight:600;color:var(--accent-fg)}.welcome-donate-links{display:inline-flex;gap:8px}.welcome-donate-links a{padding:6px 14px;border-radius:var(--r-pill);font-size:12.5px;font-weight:600;color:#fff;background:var(--accent);transition:box-shadow .18s ease,transform .14s ease}.welcome-donate-links a:hover{transform:translateY(-1px);box-shadow:0 0 11px color-mix(in oklab,var(--accent) 45%,transparent)}.welcome-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 24px;border-top:1px solid var(--line);background:var(--tint)}[data-theme=dark] .welcome-foot{border-top-color:var(--line-2)}.welcome-foot-hint{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:var(--ink-4)}.welcome-foot-hint>svg{color:var(--accent-fg)}.btn-cta.welcome-go{width:auto;padding:11px 20px;flex-shrink:0}@media (max-width: 560px){.welcome-hero{padding:18px}.welcome-body{padding:16px 18px}.welcome-foot{padding:12px 18px;flex-direction:column;align-items:stretch}.btn-cta.welcome-go{width:100%}}.seq-status-key{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin:0 2px 14px;padding:9px 14px;background:var(--card);border:1px solid var(--line);border-radius:var(--r-md);box-shadow:var(--shadow-sm);font-size:12px;color:var(--ink-2)}[data-theme=dark] .seq-status-key{border-color:var(--line-2)}.seq-key-title{font-size:10.5px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--ink-4)}.seq-key{display:inline-flex;align-items:center;gap:6px}.seq-key-dot{width:11px;height:11px;border-radius:50%;display:inline-block;flex-shrink:0}.seq-key-dot.k-required{background:var(--c-orange)}.seq-key-dot.k-taken{background:var(--ok)}.seq-key-dot.k-taking{background:var(--c-yellow)}.seq-key-dot.k-planned{background:var(--accent)}.seq-key-rail{width:4px;height:13px;border-radius:2px;display:inline-block;flex-shrink:0}.seq-key-rail.k-major{background:var(--c-blue)}.seq-key-rail.k-minor{background:var(--accent)}.seq-key-sep{width:1px;height:16px;background:var(--line)}[data-theme=dark] .seq-key-sep{background:var(--line-2)}.seq-key-hint{margin-left:auto;color:var(--ink-4);font-size:11.5px}@media (max-width: 700px){.seq-key-hint{display:none}}.seq-cat-overlay{position:fixed;inset:0;z-index:950;display:flex;justify-content:flex-end;background:color-mix(in oklab,#000 20%,transparent);-webkit-backdrop-filter:blur(1px);backdrop-filter:blur(1px);animation:welcome-fade .16s ease}.seq-cat-modal{width:100%;max-width:440px;height:100%;padding:14px;display:flex;flex-direction:column;animation:seq-cat-slide .24s cubic-bezier(.2,.9,.3,1.1)}@keyframes seq-cat-slide{0%{transform:translate(28px);opacity:0}to{transform:translate(0);opacity:1}}.seq-cat-modal .seq-catalogue.v2{flex:1;max-height:100%;margin-bottom:0;box-shadow:var(--shadow-pop)}@media (max-width: 560px){.seq-cat-modal{max-width:100%;padding:10px}}:where(button,a,input,select,textarea,[role=button],[role=slider],[role=switch],[role=menuitem],[tabindex="0"]):focus-visible{outline:2px solid var(--accent-fg);outline-offset:2px}.range-knob:focus-visible{outline:3px solid var(--accent-fg);outline-offset:3px}.cls:focus-visible{outline:2px solid var(--ink);outline-offset:-2px}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}}button:disabled,.btn:disabled,.btn-cta:disabled,.btn-primary:disabled{cursor:not-allowed}.saved-shelf-mini{display:inline-flex;align-items:center;gap:5px;flex-wrap:wrap;font-size:11.5px;color:var(--ink-4);line-height:1.4}.saved-shelf-mini>svg{color:var(--accent-fg)}.saved-shelf-mini b{color:var(--ink-2)}.saved-shelf-mini span{color:var(--accent-fg);font-weight:600}.filmstrip-group-label{display:inline-flex;align-items:center;justify-content:center;gap:4px;align-self:stretch;flex-shrink:0;writing-mode:vertical-rl;transform:rotate(180deg);font-size:9.5px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--accent-fg)}.filmstrip-group-label>svg{transform:rotate(180deg)}.filmstrip-card.is-saved{position:relative;box-shadow:inset 0 0 0 1px var(--accent-soft),var(--shadow-sm)}.filmstrip-card.is-saved.active{box-shadow:0 0 0 2px var(--accent),var(--shadow-sm)}.filmstrip-del{position:absolute;top:3px;right:3px;z-index:2;width:16px;height:16px;display:grid;place-items:center;border-radius:50%;background:color-mix(in oklab,var(--card) 80%,transparent);color:var(--ink-4);cursor:pointer;opacity:0;transition:opacity .12s ease,color .12s ease}.filmstrip-card.is-saved:hover .filmstrip-del,.filmstrip-card.is-saved:focus-within .filmstrip-del{opacity:1}.filmstrip-del:hover{color:var(--bad)}.filmstrip-meta .pos.saved{color:var(--accent-fg);display:inline-flex;align-items:center}.filmstrip-divider{width:1px;align-self:stretch;background:var(--line);margin:4px 6px;flex-shrink:0}[data-theme=dark] .filmstrip-divider{background:var(--line-2)}.seq-progress2{display:flex;flex-direction:column;gap:9px;padding:13px 16px;margin:14px 0;background:var(--tint);border:1px solid var(--line);border-radius:var(--r-md)}[data-theme=dark] .seq-progress2{border-color:var(--line-2)}.seq-progress2-head{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.seq-progress2-id{display:flex;align-items:baseline;gap:9px;flex-wrap:wrap;min-width:0}.seq-progress2-name{font-family:var(--font-display);font-size:16px;font-weight:600;color:var(--ink);letter-spacing:-.01em}.seq-progress2-faculty,.seq-progress2-target{font-size:12px;color:var(--ink-4)}.seq-progress2-empty{display:inline-flex;align-items:center;gap:7px;font-size:13px;color:var(--ink-3)}.seq-progress2-empty>svg{color:var(--accent-fg)}.seq-progress2-pct{margin-left:auto;font-size:12.5px;color:var(--ink-3);white-space:nowrap}.seq-progress2-pct b{font-size:15px;color:var(--ink);font-weight:700;font-variant-numeric:tabular-nums}.seq-progress2-bar{display:flex;height:9px;border-radius:999px;overflow:hidden;background:var(--paper-2)}.seq-progress2-bar .seg{height:100%;transition:width .42s cubic-bezier(.2,.8,.2,1)}.seq-progress2-bar .seg-taken{background:var(--ok)}.seq-progress2-bar .seg-taking{background:var(--c-yellow)}.seq-progress2-bar .seg-planned{background:var(--accent)}.seq-progress2-stats{display:flex;flex-wrap:wrap;gap:5px 15px}.seq-mini-stat{display:inline-flex;align-items:baseline;gap:5px;font-size:12px;color:var(--ink-4)}.seq-mini-stat b{font-size:14px;font-weight:700;color:var(--ink-2);font-variant-numeric:tabular-nums}.seq-mini-stat.tile-taken b{color:var(--ok)}.seq-mini-stat.tile-planned b{color:var(--accent-fg)}.seq-status-key.in-hero{margin:12px 0 0;padding:12px 2px 0;background:transparent;border:0;border-top:1px solid var(--line);border-radius:0;box-shadow:none}[data-theme=dark] .seq-status-key.in-hero{border-top-color:var(--line-2)}.seq-bar{display:flex;flex-direction:column;gap:12px;padding:16px 18px 13px;margin-bottom:16px;background:var(--card);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow-sm)}[data-theme=dark] .seq-bar{border-color:var(--line-2)}.seq-bar-top{display:flex;flex-wrap:wrap;gap:16px 28px;align-items:flex-start}.seq-bar-programs{display:grid;grid-template-columns:repeat(2,minmax(200px,250px));gap:8px 14px;min-width:0}.seq-bar-controls{display:flex;flex-direction:column;gap:9px;align-items:flex-end;margin-left:auto;min-width:0}.seq-bar .seq-hero-actions.in-bar{border:0;padding:0;margin:0;justify-content:flex-end;flex-wrap:wrap}.seq-bar .seq-progress2{border-top:.5px solid var(--line);padding-top:11px}.seq-bar .seq-status-key.in-hero{margin:0;padding:9px 0 0;background:transparent;border:0;box-shadow:none;border-radius:0;border-top:.5px solid var(--line)}[data-theme=dark] .seq-bar .seq-progress2,[data-theme=dark] .seq-bar .seq-status-key.in-hero{border-top-color:var(--line-2)}.seq-body{display:flex;gap:16px;align-items:flex-start}.seq-body>.seq-plan-capture{flex:1 1 auto;min-width:0}.seq-cat-dock{flex:0 0 372px;width:372px;position:sticky;top:6px;animation:seq-cat-slide .22s cubic-bezier(.2,.9,.3,1.1)}.seq-cat-dock .seq-catalogue.v2{max-height:calc(100vh - 150px);margin-bottom:0;box-shadow:var(--shadow-md)}@media (max-width: 1100px){.seq-cat-dock{position:fixed;top:0;right:0;bottom:0;z-index:950;width:min(440px,calc(100vw - 16px));padding:12px;background:color-mix(in oklab,var(--paper) 94%,transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:-14px 0 44px #00000047;display:flex;flex-direction:column}.seq-cat-dock .seq-catalogue.v2{flex:1;max-height:none}}@media (max-width: 760px){.seq-bar-programs{grid-template-columns:1fr;width:100%}.seq-bar-controls{align-items:flex-start;margin-left:0}.seq-bar .seq-hero-actions.in-bar{justify-content:flex-start}}
