:root{color:var(--color-text);background:var(--color-bg);--radius-sm:2px;--radius-md:4px;--radius-lg:8px;--radius-pill:999px;font-family:"Source Sans 3",ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{min-width:320px;color:var(--color-text);background:linear-gradient(180deg,var(--color-bg-gradient-start) 0,var(--color-bg-gradient-end) 72%,var(--color-foam) 100%);margin:0}.themed-scroll,html{scrollbar-width:thin;scrollbar-color:var(--color-scrollbar) var(--color-scrollbar-track)}.themed-scroll::-webkit-scrollbar{width:10px;height:10px}.themed-scroll::-webkit-scrollbar-track{border-radius:var(--radius-pill);background:var(--color-scrollbar-track)}.themed-scroll::-webkit-scrollbar-thumb{border-radius:var(--radius-pill);background:linear-gradient(180deg,var(--color-scrollbar-thumb-start),var(--color-scrollbar-thumb-end));background-clip:padding-box;border:2px solid #0000}.themed-scroll::-webkit-scrollbar-thumb:hover{background:linear-gradient(180deg,var(--color-scrollbar-thumb-hover-start),var(--color-scrollbar-thumb-hover-end));background-clip:padding-box}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}h1,h2,h3,p{margin-top:0}h1{max-width:860px;color:var(--color-text-heading);letter-spacing:-.035em;margin-bottom:14px;font-size:clamp(1.45rem,3vw,1.85rem);line-height:1.15}h1,h2{font-family:Outfit,"Source Sans 3",sans-serif;font-weight:600}h2{color:var(--color-text);letter-spacing:-.03em;margin-bottom:0;font-size:clamp(1.15rem,2vw,1.4rem)}h3{color:var(--color-text-heading);margin-bottom:8px;font-size:1.05rem}html:not([data-theme]){visibility:hidden}.themed-scroll-horizontal{scroll-behavior:smooth}.app-frame{--app-header-sticky-top:0px;--app-header-offset:56px;--planner-sticky-top:calc(var(--app-header-offset) + 8px);min-height:100vh}.app-chrome{border-bottom:1px solid var(--color-border);background:var(--color-bg-gradient-start);width:100%;margin:0;padding:0;transition:background-color .45s,border-color .45s}.app-header{justify-content:stretch;width:100%;margin:0;padding:0 clamp(16px,3vw,32px);display:flex}.nav{justify-content:space-between;align-items:center;gap:16px;padding:0;display:flex}.nav.nav-bar{width:100%;min-height:56px;box-shadow:none;-webkit-backdrop-filter:none;background:0 0;border:0;border-radius:0;padding:0}.nav.nav-bar.has-planner-tabs{gap:16px}.nav.nav-bar.is-landing{justify-content:center;position:relative}.nav-end{justify-content:flex-end;align-self:stretch;align-items:stretch;gap:2px;min-width:0;margin-left:auto;display:flex}.nav.nav-bar.is-landing .nav-end{margin-left:0}.brand.brand-dock-in{animation:.5s cubic-bezier(.16,1,.3,1) both brand-dock-in}@keyframes brand-dock-in{0%{opacity:0;transform:translate(-12px)}to{opacity:1;transform:none}}.nav-planner-tabs{border:0;flex:none;justify-content:flex-end;align-self:stretch;align-items:stretch;gap:2px;min-width:0;margin:0;padding:0;display:flex}.nav-tab{white-space:nowrap;flex:none;padding:0 12px}.nav-tab-short{display:none}@media (width<=1100px){.nav.nav-bar.is-landing{justify-content:flex-end}}@media (width>=761px) and (width<=1100px){.nav-tab{padding:0 8px}.nav-tab-label{display:none}.nav-tab-short{display:inline}.nav-link{padding:0 8px;font-size:.86rem}.nav-login{margin-left:4px;padding-inline:10px}}@media (width>=761px) and (width<=960px){.nav-link,.nav-tab{padding:0 6px}.nav-link{font-size:.82rem}}.nav-menu-toggle{z-index:2;width:auto;min-width:44px;min-height:56px;color:var(--color-text-nav);cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:0;border-radius:0;justify-content:center;align-self:stretch;align-items:center;margin:0;padding:0 12px;transition:color .14s;display:none;position:relative}.nav-menu-toggle:hover{color:var(--color-text-heading);background:0 0}.nav-menu-toggle:focus-visible{outline:2px solid var(--color-primary);outline-offset:-4px}.app-nav-drawer-root{z-index:200;position:fixed;inset:0}.app-nav-drawer-backdrop{background:color-mix(in srgb,var(--color-text-heading) 28%,transparent);cursor:pointer;border:0;margin:0;padding:0;position:absolute;inset:0}.app-nav-drawer-frame{pointer-events:none;justify-content:flex-start;display:flex;position:absolute;inset:0}.app-nav-drawer-panel{--nav-drawer-inline:16px;--nav-drawer-head-height:56px;pointer-events:auto;width:min(288px,84vw);height:100%;max-height:100dvh;padding:0 0 calc(16px + env(safe-area-inset-bottom,0px));border-right:1px solid var(--color-border);background:var(--color-surface);box-shadow:8px 0 28px color-mix(in srgb,var(--color-text-heading) 10%,transparent);flex-direction:column;animation:.2s app-nav-drawer-slide-in;display:flex}@keyframes app-nav-drawer-slide-in{0%{transform:translate(-100%)}to{transform:translate(0)}}body.nav-drawer-open{overflow:hidden}.app-nav-drawer-head{box-sizing:content-box;height:var(--nav-drawer-head-height);min-height:var(--nav-drawer-head-height);padding:0 var(--nav-drawer-inline);border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;gap:12px;display:flex}.app-nav-drawer-title{color:var(--color-text-heading);letter-spacing:-.02em;margin:0;font-size:.9rem;font-weight:800;line-height:1.2}.app-nav-drawer-close{border:1px solid var(--color-border);background:var(--color-surface);width:32px;height:32px;color:var(--color-text-muted);cursor:pointer;border-radius:8px;flex:none;justify-content:center;align-items:center;margin:0;padding:0;display:inline-flex}.app-nav-drawer-close:hover{color:var(--color-text-heading);border-color:color-mix(in srgb,var(--color-primary) 35%,var(--color-border));background:color-mix(in srgb,var(--color-primary) 8%,transparent)}.app-nav-drawer-nav{padding:10px calc(var(--nav-drawer-inline) - 8px);flex-direction:column;gap:2px;display:flex;overflow-y:auto}.app-nav-drawer-link{min-height:40px;color:var(--color-text-nav);letter-spacing:-.02em;border-radius:8px;align-items:center;padding:0 8px;font-size:.95rem;font-weight:700;line-height:1.2;text-decoration:none;transition:color .14s,background .14s;display:flex}.app-nav-drawer-link:hover{color:var(--color-text-heading);background:color-mix(in srgb,var(--color-primary) 8%,transparent)}.app-nav-drawer-link[aria-current=page]{color:var(--color-primary);background:color-mix(in srgb,var(--color-primary) 12%,transparent)}.app-nav-drawer-legal{padding:12px var(--nav-drawer-inline) 16px;border-top:1px solid var(--color-border);flex-wrap:wrap;gap:8px 16px;margin-top:auto;display:flex}.app-nav-drawer-legal a{color:var(--color-text-faint);font-size:.82rem;font-weight:600;text-decoration:none}.app-nav-drawer-legal a:hover{color:var(--color-primary)}.brand{color:var(--color-primary);letter-spacing:-.02em;flex-shrink:0;align-items:center;gap:.5rem;font-family:Outfit,"Source Sans 3",sans-serif;font-size:1.35rem;font-weight:700;text-decoration:none;display:inline-flex}.brand,.brand-text{line-height:1.3;overflow:visible}.brand-text{padding-block:.12em;display:block}.brand-mark{border-radius:var(--radius-sm);width:1.65rem;height:1.65rem;box-shadow:none;background:0 0;flex-shrink:0;place-items:center;display:none;position:relative}.brand-mark:after{content:"";background-color:var(--color-primary);width:100%;height:100%;-webkit-mask-image:url(../brand/logo-mark.png);mask-image:url(../brand/logo-mark.png);-webkit-mask-position:50%;mask-position:50%;-webkit-mask-size:contain;mask-size:contain;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.nav-actions{align-self:stretch;align-items:stretch;gap:2px;display:flex}.nav-theme-toggle{width:auto;min-height:56px;color:var(--color-text-nav);cursor:pointer;background:0 0;border:0;border-radius:0;justify-content:center;align-self:stretch;align-items:center;margin-right:0;padding:0 12px;transition:color .14s;display:inline-flex}.nav-theme-toggle:hover{color:var(--color-text-heading);background:0 0}.nav-theme-toggle:focus-visible{outline:2px solid var(--color-primary);outline-offset:-4px}.nav-theme-icon{width:18px;height:18px;display:block}.nav-profile-link{padding:0 12px}.nav-profile-icon{width:18px;height:18px;display:block}.nav-link{min-height:56px;color:var(--color-text-nav);border-bottom:2px solid #0000;border-radius:0;justify-content:center;align-items:center;padding:0 12px;font-size:.92rem;font-weight:600;text-decoration:none;transition:color .14s,border-color .14s;display:inline-flex}.nav-link:hover,.nav-link[aria-current=page]{color:var(--color-text-heading);background:0 0}.nav-link[aria-current=page]{border-bottom-color:var(--color-primary)}.nav-login{border-radius:var(--radius-sm);min-height:36px;box-shadow:none;align-self:center;margin-left:8px;padding-inline:14px;font-size:.88rem;font-weight:600}.card-label,.eyebrow{color:var(--color-primary);letter-spacing:.1em;text-transform:uppercase;margin:0 0 10px;font-size:.75rem;font-weight:700}.hero-copy{max-width:680px;color:var(--color-text-subtle);font-size:1.05rem;line-height:1.7}.hero-actions{flex-wrap:wrap;gap:12px;margin-top:28px;display:flex}@keyframes button-spin{to{transform:rotate(1turn)}}.modal-container.themed-scroll{scrollbar-gutter:stable}@media (prefers-reduced-motion:reduce){.brand.brand-dock-in{animation:none}.app-chrome{transition:none}}@media (width<=760px){.auth-shell{padding-top:max(18px,env(safe-area-inset-top,0px));justify-content:flex-start;gap:12px}.app-chrome,.app-header,.nav.nav-bar{overflow:visible}.auth-brand.brand,.nav.nav-bar .brand{letter-spacing:0;font-size:1.15rem;font-weight:700;line-height:normal}.auth-brand .brand-text,.nav.nav-bar .brand-text{padding:.2em .02em;line-height:normal}}@media (width<=380px){.nav.nav-pill .brand-text{display:none}}.button{border-radius:var(--radius-sm);background:var(--color-primary);min-height:42px;color:var(--color-button-text);cursor:pointer;box-shadow:none;border:0;justify-content:center;align-items:center;gap:8px;padding:0 16px;font-weight:600;display:inline-flex}.button:disabled{cursor:not-allowed;opacity:.65}.button.is-loading{cursor:default;opacity:1;pointer-events:none;position:relative}.button.is-loading:before{content:"";border:2px solid color-mix(in srgb,currentColor 28%,transparent);border-top-color:currentColor;border-radius:50%;flex:none;width:.9em;height:.9em;animation:.65s linear infinite button-spin}.button-secondary{border:1px solid var(--color-border-strong);color:var(--color-primary);box-shadow:none;background:0 0}.button-secondary.is-danger{border-color:color-mix(in srgb,var(--color-danger,#b42318) 45%,var(--color-border-strong));color:var(--color-danger,#b42318)}.button-secondary.is-danger:focus-visible:not(:disabled),.button-secondary.is-danger:hover:not(:disabled){border-color:color-mix(in srgb,var(--color-danger,#b42318) 65%,var(--color-border-strong));background:color-mix(in srgb,var(--color-danger,#b42318) 8%,var(--color-surface));outline:none}.button-compact{padding:.35rem .65rem;font-size:.8rem;font-weight:600}.button-ghost{color:var(--color-primary);box-shadow:none;text-underline-offset:3px;background:0 0;border:0;padding-inline:4px;text-decoration:underline}.guest-browse-banner .button{flex:none}@media (width<=760px){html.has-planner-chrome,html.has-planner-chrome body.has-planner-chrome{overscroll-behavior:none;height:100%;overflow:hidden}}html::-webkit-scrollbar{width:12px}html::-webkit-scrollbar-track{background:var(--color-scrollbar-track)}html::-webkit-scrollbar-thumb{border-radius:var(--radius-pill);background:linear-gradient(180deg,var(--color-scrollbar-thumb-start),var(--color-scrollbar-thumb-end));background-clip:padding-box;border:3px solid #0000}@media (width<=980px){input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=button]):not([type=submit]):not([type=reset]):not([type=image]):not([type=file]):not([type=color]):not([type=hidden]),select,textarea{font-size:16px!important}}.page-enter-active,.page-leave-active{transition:opacity .14s}.page-enter-from,.page-leave-to{opacity:0}.page-shell{width:min(1120px,100% - 32px);margin:0 auto;padding:24px 0 56px}.planner-shell{width:min(1380px,100% - 32px);margin:0 auto;padding:20px 0 56px}.planner-shell.is-landing{width:100%;max-width:none;margin:0;padding:0 0 64px}.planner-shell.is-catalog,.planner-shell.is-scheduler{width:min(1920px,100% - 32px);padding:4px 0 0}.planner-shell.is-catalog,.planner-shell.is-progress,.planner-shell.is-scheduler{height:calc(100dvh - var(--app-header-offset) - 4px);max-height:calc(100dvh - var(--app-header-offset) - 4px);flex-direction:column;display:flex;overflow:hidden}.planner-shell.is-progress{padding:16px 0 12px}.planner-shell.is-quarters{height:calc(100dvh - var(--app-header-offset) - 4px);max-height:calc(100dvh - var(--app-header-offset) - 4px);flex-direction:column;padding:12px 0;display:flex;overflow:hidden}.planner-shell.is-quarters>.guest-browse-banner,.planner-shell.is-quarters>.planner-hero,.planner-shell.is-quarters>.state-banner{flex:none}.planner-shell.is-quarters .planner-content,.planner-shell.is-quarters .planner-layout{flex-direction:column;flex:auto;align-items:stretch;width:100%;min-width:0;min-height:0;display:flex}.planner-shell.is-quarters .planner-layout{gap:0}.planner-shell.is-quarters .planner-content>.state-banner,.planner-shell.is-quarters .planner-content>.toast-notice{flex:none}.planner-shell.is-quarters .quarters-split{flex:auto;grid-template-rows:minmax(0,1fr);align-content:stretch;align-items:stretch;width:100%;min-width:0;min-height:0}.planner-shell.is-quarters .quarters-split:has(>.guest-plan-setup){grid-template-rows:auto minmax(0,1fr)}.planner-shell.is-quarters .quarters-search-rail{height:100%;min-height:0;max-height:none;position:static;overflow:auto}.planner-shell.is-quarters .quarters-board-pane{flex-direction:column;gap:10px;height:100%;min-height:0;display:flex}.planner-shell.is-quarters .quarter-board-toolbar{flex:none}.planner-shell.is-quarters .quarter-board-stage{flex-direction:column;flex:auto;min-height:0;display:flex}.planner-shell.is-quarters .quarter-board-stage>.planner-reveal-enter-active,.planner-shell.is-quarters .quarter-board-stage>.planner-reveal-leave-active,.planner-shell.is-quarters .quarter-board-stage>.quarter-board,.planner-shell.is-quarters .quarter-board-stage>.quarter-board-skeleton{flex:auto;min-height:0}.planner-shell.is-quarters .quarter-board-stage.is-comfortable{overflow:hidden}.planner-shell.is-quarters .quarter-board-stage.is-comfortable>.quarter-board,.planner-shell.is-quarters .quarter-board-stage.is-comfortable>.quarter-board-skeleton{box-sizing:border-box;align-items:stretch;height:100%;padding-bottom:2px}.planner-shell.is-quarters .quarter-board-stage:has(>.quarter-board-skeleton)>.quarter-board-skeleton{box-sizing:border-box;align-items:stretch;height:100%;padding-bottom:2px}.planner-shell.is-quarters .quarter-column:not(.is-compact){box-sizing:border-box;flex-direction:column;align-content:stretch;gap:10px;height:100%;min-height:0;max-height:100%;display:flex;overflow:hidden}.planner-shell.is-quarters .quarter-column:not(.is-compact) .quarter-column-header{flex:none}.planner-shell.is-quarters .quarter-column:not(.is-compact) .quarter-course-list{flex:auto;min-height:0;max-height:none}.planner-shell.is-quarters .quarter-column:not(.is-compact) .quarter-add-search{flex:none}.planner-shell.is-quarters .quarter-board-stage.is-compact{overscroll-behavior-y:contain;-webkit-overflow-scrolling:touch;overflow:hidden auto}.planner-shell.is-quarters .quarter-board-stage.is-compact>.quarter-board{flex:none;align-items:stretch;height:auto;min-height:auto;max-height:none;padding-bottom:8px;overflow:visible}.planner-shell.is-quarters .quarter-column.is-compact:not(.is-ultra){height:auto;max-height:none;overflow:visible}.planner-shell.is-quarters .quarter-board-stage.is-ultra{overflow:hidden}.planner-shell.is-quarters .quarter-board-stage.is-ultra>.quarter-board{box-sizing:border-box;flex:auto;align-items:stretch;height:100%;min-height:0;max-height:none;padding-bottom:2px}.planner-shell.is-quarters .quarter-column.is-ultra{height:auto;max-height:none}.planner-shell.is-progress .planner-content,.planner-shell.is-progress .planner-layout,.planner-shell.is-progress .planner-section,.planner-shell.is-progress .requirement-stack-flat.is-progress-view{flex-direction:column;flex:auto;align-items:stretch;width:100%;min-width:0;min-height:0;display:flex}.planner-shell.is-progress .planner-layout{align-items:stretch;gap:0}.planner-shell.is-progress .planner-section{gap:8px}.planner-shell.is-progress .req-progress-block,.planner-shell.is-progress .req-progress-chrome{flex:none}.planner-shell.is-progress .req-progress-body{-webkit-overflow-scrolling:touch;flex:auto;min-height:0;overflow:hidden auto}.planner-shell.is-progress .progress-grades-panel{flex-direction:column;flex:auto;min-height:0;display:flex}.planner-shell.is-progress.is-grades .progress-grades-panel,.planner-shell.is-progress.is-grades .requirement-stack-flat.is-grades-view{flex-direction:column;flex:auto;align-items:stretch;width:100%;min-width:0;min-height:0;display:flex}.planner-shell.is-progress.is-grades .progress-grades-summary{flex:none}@media (width<=1100px){.app-frame.has-planner-chrome.is-graph-tool .app-body,.app-frame.has-planner-chrome.is-map-tool .app-body{flex-direction:column;display:flex;overflow:hidden}.app-frame.has-planner-chrome:has(.planner-shell.is-catalog) .app-body{flex-direction:column;display:flex;overflow:hidden}.app-frame.has-planner-chrome:has(.planner-shell.is-scheduler) .app-body{flex-direction:column;display:flex;overflow:hidden}.app-frame.has-planner-chrome .planner-shell.is-catalog,.app-frame.has-planner-chrome .planner-shell.is-scheduler,.app-frame.has-planner-chrome.is-graph-tool .prereq-page,.app-frame.has-planner-chrome.is-map-tool .campus-map-page{flex:auto;width:min(1920px,100% - 32px);height:auto;min-height:0;max-height:none;overflow:hidden}.app-frame.has-planner-chrome.is-graph-tool .prereq-layout,.app-frame.has-planner-chrome.is-map-tool .campus-map-layout{flex:auto;height:100%;min-height:0}}.planner-shell.is-catalog>.guest-browse-banner,.planner-shell.is-catalog>.state-banner,.planner-shell.is-scheduler>.guest-browse-banner,.planner-shell.is-scheduler>.state-banner{flex:none;margin-bottom:8px}.planner-shell.is-catalog .catalog-section,.planner-shell.is-catalog .planner-content,.planner-shell.is-catalog .planner-layout,.planner-shell.is-scheduler .planner-content,.planner-shell.is-scheduler .planner-layout,.planner-shell.is-scheduler .scheduler-section{flex-direction:column;flex:auto;gap:0;min-height:0;display:flex}.planner-shell.is-catalog .planner-layout,.planner-shell.is-scheduler .planner-layout{align-items:stretch}.planner-shell.is-catalog .planner-content>.state-banner,.planner-shell.is-catalog .planner-content>.toast-notice,.planner-shell.is-scheduler .planner-content>.state-banner,.planner-shell.is-scheduler .planner-content>.toast-notice{flex:none}@media (width<=760px){.nav-actions .nav-profile-link,.nav-planner-tabs{display:none}.nav-menu-toggle{display:inline-flex}.app-frame.has-planner-chrome{--planner-sticky-top:8px;flex-direction:column;width:100%;height:100dvh;max-height:100dvh;display:flex;position:fixed;inset:0;overflow:hidden}.app-frame.has-planner-chrome .app-body{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;flex:auto;min-height:0;overflow:hidden auto}.app-frame.has-planner-chrome .app-chrome{width:100%;padding-top:0}.app-frame.has-planner-chrome .app-header{margin-bottom:0}.app-frame.has-planner-chrome .page-shell,.app-frame.has-planner-chrome .planner-shell{padding-bottom:16px}}@media (width>=761px) and (width<=1100px){.app-frame.has-planner-chrome{--planner-sticky-top:8px;flex-direction:column;height:100dvh;min-height:100dvh;display:flex;overflow:hidden}.app-frame.has-planner-chrome .app-body{-webkit-overflow-scrolling:touch;flex:auto;min-height:0;overflow:hidden auto}.app-frame.has-planner-chrome .page-shell,.app-frame.has-planner-chrome .planner-shell{padding-bottom:16px}}.user-email{color:var(--color-text-nav);font-size:.9rem}.hero{padding:96px 0 48px}.site-page{width:min(920px,100% - 48px);margin:0 auto;padding:36px 0 72px}.site-page-hero{border-bottom:1px solid var(--color-border);padding-bottom:28px}.site-page-hero h1{max-width:18ch;color:var(--color-text-heading);letter-spacing:-.04em;margin:0 0 14px;font-family:Outfit,"Source Sans 3",sans-serif;font-size:clamp(1.85rem,4vw,2.6rem);font-weight:700;line-height:1.08}.site-page-lede{max-width:38rem;color:var(--color-text-subtle);margin:0;font-size:1.05rem;line-height:1.65}.site-page-panel{padding:40px 0 0}.site-page-panel+.site-page-panel{border-top:1px solid var(--color-border);margin-top:12px;padding-top:36px}.site-page-panel h2{color:var(--color-text-heading);letter-spacing:-.03em;margin:0 0 12px;font-family:Outfit,"Source Sans 3",sans-serif;font-size:clamp(1.25rem,2.4vw,1.55rem);font-weight:600}.site-page-copy p,.site-page-panel p{max-width:40rem;color:var(--color-text-subtle);margin:0 0 14px;font-size:1.02rem;line-height:1.65}.site-page-copy p:last-child,.site-page-panel p:last-child{margin-bottom:0}.site-page-split{grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);align-items:center;gap:28px 40px;display:grid}.site-page-split.is-contact{grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);align-items:start}.site-page-visual{justify-content:center;align-items:center;min-height:240px;display:flex;position:relative}.site-page-visual:before{content:"";background:radial-gradient(ellipse at center,color-mix(in srgb,var(--color-primary) 18%,transparent) 0,transparent 72%);border-radius:50%;position:absolute;inset:10% 16%}.site-page-visual img{z-index:1;-o-object-fit:contain;object-fit:contain;width:min(100%,300px);height:auto;position:relative}.site-page-actions{flex-wrap:wrap;gap:12px;margin-top:24px;display:flex}.site-page-notice{padding:28px 0 0}.site-contact-form{gap:10px;display:grid}.site-contact-form label{color:var(--color-text-heading);margin-top:6px;font-size:.92rem;font-weight:600}.site-contact-form input,.site-contact-form textarea{box-sizing:border-box;border:1px solid var(--color-border);background:var(--color-surface);width:100%;color:var(--color-text);font:inherit;border-radius:10px;padding:11px 12px}.site-contact-form input:focus,.site-contact-form textarea:focus{outline:2px solid color-mix(in srgb,var(--color-primary) 45%,transparent);outline-offset:1px}.site-contact-form textarea{resize:vertical;min-height:140px}.site-contact-form .button{justify-self:start;margin-top:10px}.site-contact-form .button:disabled{opacity:.72;cursor:wait}.site-contact-error{color:var(--color-danger,#b42318);margin:4px 0 0;font-size:.92rem;line-height:1.45}.site-honeypot{opacity:0!important;pointer-events:none!important;width:1px!important;height:1px!important;position:absolute!important;left:-9999px!important;overflow:hidden!important}.site-contact-aside{padding:4px 0 0}.site-contact-list{margin:0;padding:0;list-style:none}.site-contact-list li+li{border-top:1px solid var(--color-border);margin-top:16px;padding-top:16px}.site-contact-label{color:var(--color-text-faint);letter-spacing:.04em;text-transform:uppercase;margin-bottom:4px;font-size:.78rem;font-weight:600;display:block}.site-contact-list a{color:var(--color-text-heading);text-decoration:none}.site-contact-list a:hover{color:var(--color-primary)}.site-contact-legal-sep{color:var(--color-text-faint)}.site-page.is-legal .site-page-hero h1{max-width:22ch}.site-legal-updated{color:var(--color-text-faint);margin:0 0 14px;font-size:.88rem}.site-page.is-legal .site-page-panel h3{color:var(--color-text-heading);letter-spacing:-.02em;margin:18px 0 8px;font-family:Outfit,"Source Sans 3",sans-serif;font-size:1.02rem;font-weight:600}.site-page.is-legal .site-page-panel ol,.site-page.is-legal .site-page-panel ul{max-width:40rem;color:var(--color-text-subtle);margin:0 0 14px;padding-left:1.25rem;font-size:1.02rem;line-height:1.65}.site-page.is-legal .site-page-panel li+li{margin-top:6px}.site-page.is-legal .site-page-panel a{color:var(--color-primary);text-underline-offset:2px;text-decoration:underline}.site-page.is-legal .site-page-panel a:hover{color:var(--color-text-heading)}.site-legal-nav{border-top:1px solid var(--color-border);flex-wrap:wrap;gap:8px 20px;margin-top:36px;padding-top:20px;display:flex}.site-legal-nav a{color:var(--color-text-muted);font-size:.92rem;font-weight:600;text-decoration:none}.site-legal-nav a:hover{color:var(--color-primary)}.planner-hero{grid-template-columns:minmax(0,1fr);align-items:end;gap:12px;padding:12px 0 16px;transition:padding .18s;display:grid}.planner-hero h1{letter-spacing:-.03em;max-width:760px;font-family:Outfit,"Source Sans 3",sans-serif;font-size:clamp(1.25rem,2.2vw,1.5rem);font-weight:600;line-height:1.2;transition:font-size .18s}.planner-hero.is-compact{align-items:center;padding:8px 0 12px}.planner-hero.is-hub{border-bottom:1px solid var(--color-border);grid-template-columns:minmax(0,1fr) auto;gap:16px;margin-bottom:8px;padding:4px 0 10px}.planner-hero.is-hub h1{margin-bottom:4px}.hero-minors-line{color:var(--color-text-muted);margin:0;font-size:.8rem;font-weight:650;line-height:1.3}.planner-hero.is-compact .hero-copy,.planner-hero.is-compact .section-note{display:none}.hub-progress{text-align:right;outline:none;flex-direction:column;align-items:flex-end;gap:1px;min-width:5.5rem;display:flex;position:relative}.hub-progress[data-tooltip]:after{content:attr(data-tooltip);z-index:20;border:1px solid var(--color-border);background:var(--color-surface);width:max-content;max-width:min(16rem,70vw);color:var(--color-text);text-align:left;white-space:normal;box-shadow:0 6px 18px color-mix(in srgb,var(--color-text) 12%,transparent);opacity:0;pointer-events:none;border-radius:8px;padding:7px 9px;font-size:.72rem;font-weight:650;line-height:1.35;transition:opacity .12s,transform .12s;position:absolute;top:calc(100% + 8px);right:0;transform:translateY(-2px)}.hub-progress[data-tooltip]:focus-visible:after,.hub-progress[data-tooltip]:hover:after{opacity:1;transform:translateY(0)}.hub-progress span{color:var(--color-text-muted);letter-spacing:.04em;text-transform:uppercase;font-size:.78rem;font-weight:600}.hub-progress strong{color:var(--color-primary);letter-spacing:-.03em;font-variant-numeric:tabular-nums;font-family:Outfit,"Source Sans 3",sans-serif;font-size:1.55rem;font-weight:700;line-height:1.1}.hub-progress p,.hub-progress-meta{color:var(--color-text-subtle);font-variant-numeric:tabular-nums;margin:0;font-size:.72rem;font-weight:650;line-height:1.3}.full{width:100%}.grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-bottom:24px;display:grid}.planner-layout{grid-template-columns:minmax(0,1fr);align-items:start;gap:20px;display:grid}.planner-content,.planner-section{overflow-anchor:none;min-width:0}.planner-section{gap:20px;display:grid}.auth-card,.card,.panel{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);box-shadow:none}.card{padding:24px}.card strong{color:var(--color-text);letter-spacing:-.03em;margin-bottom:8px;font-size:1.4rem;display:block}.card span,.course-row span{color:var(--color-text-muted)}.panel{padding:20px}.state-banner{border:1px solid var(--color-border);border-radius:var(--radius-lg);align-items:center;gap:10px;margin-bottom:16px;padding:12px 16px;font-weight:800;display:flex}.state-banner,.state-banner-notice,.state-banner-saving{background:var(--color-notice-bg);color:var(--color-primary)}.state-banner-notice,.state-banner-saving{border-color:var(--color-border-strong)}.state-banner-saving:before{content:"";border:2px solid color-mix(in srgb,currentColor 28%,transparent);border-top-color:currentColor;border-radius:50%;flex:none;width:.85em;height:.85em;animation:.65s linear infinite button-spin}.state-banner-error{background:var(--color-error-bg);color:var(--color-error-text);border-color:var(--color-error-border)}.guest-browse-banner{flex-wrap:wrap;justify-content:space-between;margin-bottom:8px;font-weight:600}.guest-sign-in-gate{text-align:center;width:min(420px,100% - 48px);margin:56px auto;padding:32px 28px}.guest-sign-in-gate h2{letter-spacing:-.03em;color:var(--color-text-heading);margin:0 0 18px;font-family:Outfit,"Source Sans 3",sans-serif;font-size:clamp(1.35rem,2.4vw,1.65rem);font-weight:700}.guest-sign-in-actions{justify-content:center;display:flex}.toast-notice{z-index:60;border:1px solid var(--color-border);border-left:3px solid var(--color-success-text);border-radius:var(--radius-md);background:var(--color-surface);max-width:min(340px,100vw - 48px);color:var(--color-success-text);box-shadow:0 10px 28px var(--color-shadow);padding:11px 14px;font-size:.9rem;font-weight:700;line-height:1.35;position:fixed;top:auto;bottom:20px;right:24px}.toast-notice-error{border-left-color:var(--color-error-text);color:var(--color-error-text)}.toast-notice-loading{border-left-color:var(--color-primary);color:var(--color-text)}.toast-enter-active,.toast-leave-active{transition:opacity .18s,transform .18s}.toast-enter-from,.toast-leave-to{opacity:0;transform:translateY(10px)}.compact-heading{align-items:start}.section-note{max-width:340px;color:var(--color-text-muted);margin:0;line-height:1.5}.program-catalog-details{max-width:36rem;color:var(--color-text-faint);margin-top:4px;font-size:.72rem;line-height:1.4}.program-catalog-details summary{cursor:pointer;width:fit-content;color:var(--color-text-muted);text-decoration:underline;-webkit-text-decoration-color:color-mix(in srgb,var(--color-text-muted) 35%,transparent);text-decoration-color:color-mix(in srgb,var(--color-text-muted) 35%,transparent);text-underline-offset:2px;font-weight:600;list-style:none}.program-catalog-details summary::-webkit-details-marker{display:none}.program-catalog-details summary:hover{color:var(--color-text);text-decoration-color:currentColor}.program-catalog-details p{max-width:42rem;color:var(--color-text-faint);margin:8px 0 0}.section-note.advising-disclaimer{max-width:42rem;color:var(--color-text-faint);font-size:.72rem;font-weight:500;line-height:1.35}.section-note.advising-disclaimer a{color:var(--color-primary);text-underline-offset:2px;text-decoration:underline}.section-note.advising-disclaimer a:hover{text-decoration-thickness:2px}.option-chip{border:1px solid var(--color-border-accent);border-radius:var(--radius-md);background:var(--color-primary-soft-strong);color:var(--color-primary);padding:6px 10px;font-size:.82rem;font-weight:900}.option-chip.matched{border-color:var(--color-success-border);background:var(--color-success-bg);color:var(--color-success-text)}.option-chip:disabled{cursor:not-allowed;opacity:.6}.more-chip{background:var(--color-surface);cursor:pointer}.stats-list{grid-template-columns:repeat(3,minmax(0,1fr))}.stats-list div{border-radius:var(--radius-lg);background:var(--color-surface-muted);padding:16px}.stats-list strong{color:var(--color-primary);letter-spacing:-.03em;font-size:1.4rem;display:block}.stats-list span{color:var(--color-text-muted);font-size:.9rem}.import-box,.planner-form{gap:12px;margin-bottom:18px;display:grid}.import-box textarea,.planner-form select{border:1px solid var(--color-border-medium);border-radius:var(--radius-lg);background:var(--color-surface);width:100%;color:var(--color-text);outline:none;padding:12px 14px}.import-box label{color:var(--color-text-subtle);font-size:.9rem;font-weight:900}.import-box textarea{resize:vertical;min-height:110px}.text-button{color:var(--color-error-text);cursor:pointer;background:0 0;border:0;font-weight:900}.text-button:disabled{cursor:not-allowed;opacity:.55}.pdf-style-picker{gap:4px;display:grid}.pdf-style-picker-label{color:var(--color-text-muted);letter-spacing:.03em;text-transform:uppercase;margin:0 4px 2px;font-size:.68rem;font-weight:650}.pdf-style-picker-list{gap:4px;display:grid}.pdf-style-picker-option{width:100%;color:inherit;text-align:left;font:inherit;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:9px;gap:2px;padding:8px 9px;display:grid}.pdf-style-picker-option:focus-visible,.pdf-style-picker-option:hover{border-color:var(--color-border);background:var(--color-surface-muted);outline:none}.pdf-style-picker-option.is-selected{border-color:color-mix(in srgb,var(--color-primary) 35%,var(--color-border));background:var(--color-primary-soft)}.pdf-style-picker-option:disabled{cursor:wait;opacity:.7}.pdf-style-picker-option strong{color:var(--color-text-heading);font-size:.82rem;font-weight:650;line-height:1.25}.pdf-style-picker-option span{color:var(--color-text-subtle);font-size:.68rem;line-height:1.35}.requirement-progress-skeleton .req-progress-track-head .skeleton-line-medium{width:min(55%,160px)}.req-progress-bar-skeleton{border-radius:var(--radius-pill);width:100%;height:7px;margin-top:1px;display:block}.req-legend{color:var(--color-text-muted);flex-wrap:wrap;gap:.35rem 1rem;margin:0;font-size:.84rem;font-weight:650;display:flex}.req-legend-item.is-complete{color:var(--color-success-text)}.req-legend-item.is-progress{color:var(--color-warning-text)}.req-legend-item.is-planned{color:var(--color-planned)}.req-legend-item.is-option{color:var(--color-req-open)}.overlap-banner{align-items:start;gap:12px;display:grid}.overlap-banner-copy{gap:4px;display:grid}.overlap-banner-copy p{margin:0;font-size:.9rem;line-height:1.4}.overlap-scope-list{gap:8px;display:grid}.overlap-scope-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.modal-scope-actions,.overlap-scope-actions{flex-wrap:wrap;gap:6px;display:flex}.modal-scope-row{gap:6px;margin-top:10px;display:grid}.hub-progress-secondary{color:var(--color-text-muted);margin:2px 0 0;font-size:.82rem}.hero-double-major-sep{color:var(--color-text-muted);font-weight:500}.requirement-card-toggle:focus-visible .req-chevron,.requirement-card-toggle:hover .req-chevron{color:var(--color-text-heading)}.req-chevron{width:.95rem;height:.95rem;color:var(--color-text-faint);flex:none;justify-content:center;align-items:center;transition:transform .15s,color .15s;display:inline-flex}.req-chevron svg{width:10px;height:10px;display:block}.requirement-card.is-expanded .req-chevron{color:var(--color-text-muted);transform:rotate(90deg)}.choice-marker,.status-pill{border-radius:var(--radius-sm);background:var(--color-chip-muted-bg);color:var(--color-chip-muted-text);flex:none;padding:4px 8px;font-size:.78rem;font-weight:700}.choice-marker.complete,.status-pill.complete{background:var(--color-success-bg);color:var(--color-success-text)}.choice-marker.in-progress,.status-pill.in-progress{background:var(--color-warning-bg);color:var(--color-warning-text)}.choice-marker.planned,.status-pill.planned{background:var(--color-planned-bg);color:var(--color-planned)}.choice-marker.missing,.status-pill.missing{background:var(--color-chip-muted-bg);color:var(--color-text-faint)}.guest-plan-setup{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-muted,var(--color-surface));grid-column:1/-1;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:10px 14px;margin:0 0 12px;padding:10px 12px;display:grid}.guest-plan-setup-field{letter-spacing:.04em;text-transform:uppercase;min-width:0;color:var(--color-text-muted);gap:4px;margin:0;font-size:.68rem;font-weight:700;display:grid}@media (width<=760px){.guest-plan-setup{grid-template-columns:1fr}}@media (width>=981px){.quarters-board-pane>.quarter-board-toolbar{box-sizing:border-box;align-items:flex-end;min-height:65px}}.export-schedule{position:relative}.export-schedule-panel{z-index:40;border:1px solid var(--color-border-strong);border-radius:var(--radius-md);background:var(--color-surface);width:min(300px,84vw);max-height:min(70vh,520px);box-shadow:0 18px 40px var(--color-shadow-strong);gap:6px;padding:10px;display:grid;position:absolute;top:calc(100% + 8px);right:0;overflow:auto}.export-schedule-label{color:var(--color-text-muted);margin:0 0 2px;font-size:.72rem;font-weight:700}.export-schedule-pdf{border-top:1px solid var(--color-border);margin-top:8px;padding-top:8px}.export-schedule-action{border-radius:var(--radius-md);width:100%;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;gap:2px;padding:8px 10px;display:grid}.export-schedule-action:focus-visible,.export-schedule-action:hover{background:var(--color-surface-muted);outline:none}.export-schedule-action:disabled{opacity:.55;cursor:not-allowed}.export-schedule-action strong{font-size:.86rem}.sync-timetable-empty,.sync-timetable-hint{color:var(--color-text-muted);margin:0;font-size:.72rem;line-height:1.4}.sync-timetable-hint{margin-bottom:4px}.sync-timetable-empty{padding:6px 4px 2px}.school-year-group-header .req-chevron{color:var(--color-text-muted);transform:rotate(90deg)}.school-year-group.is-collapsed .school-year-group-header .req-chevron{transform:none}.school-year-group-header:focus-visible .req-chevron,.school-year-group-header:hover .req-chevron{color:var(--color-text-heading)}.calendar-requirement-label{text-overflow:ellipsis;white-space:nowrap;color:var(--color-text-faint);margin-top:1px;font-size:.62rem;font-weight:600;line-height:1.25;display:block;overflow:hidden}.drag-ghost{opacity:.15}.drag-chosen{opacity:.55}.drag-active,.drag-fallback{z-index:40;cursor:grabbing;border-radius:var(--radius-lg);box-shadow:0 22px 50px var(--color-shadow-strong);box-sizing:border-box;overflow:hidden;transform:rotate(1.5deg);opacity:1!important}.drag-fallback{background:var(--color-surface);border:1px solid var(--color-border-strong)}.drag-active.is-compact,.drag-fallback.is-compact{border-radius:var(--radius-lg);transform:rotate(1deg)}.drag-active.is-ultra,.drag-fallback.is-ultra{background:var(--color-surface);border-radius:5px;padding:2px 6px;transform:rotate(.4deg)}@keyframes skeleton-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@keyframes planner-reveal-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.skeleton-line,.skeleton-pill,.skeleton-shimmer{border-radius:var(--radius-pill);background:linear-gradient(90deg,var(--color-skeleton) 0,var(--color-skeleton-mid) 45%,var(--color-skeleton) 100%);animation:1.45s ease-in-out infinite skeleton-shimmer;animation-delay:var(--skeleton-delay,0s);background-size:200% 100%;display:block}.quarter-board-skeleton{pointer-events:none;min-height:22rem}.quarter-skeleton-column{min-height:300px;animation:.38s both planner-reveal-in;animation-delay:var(--skeleton-delay,0s)}.quarter-skeleton-dates,.quarter-skeleton-header,.quarter-skeleton-title{gap:8px;display:grid}.quarter-skeleton-dates{justify-items:end}.skeleton-line-short{width:42px;height:10px}.skeleton-line-medium{width:72%;max-width:160px;height:18px}.skeleton-line-tiny{width:54px;height:10px}.skeleton-line-date{width:84px;height:10px}.quarter-skeleton-courses{gap:14px;display:grid}.quarter-skeleton-course{border:1px solid var(--color-border-soft);border-radius:var(--radius-lg);background:var(--color-skeleton-surface);animation:.34s both planner-reveal-in;animation-delay:var(--skeleton-delay,0s);gap:10px;padding:16px;display:grid}.skeleton-line-code{width:72px;height:12px}.skeleton-line-title{width:88%;height:12px}.quarter-skeleton-meta{gap:8px;display:flex}.skeleton-pill{width:58px;height:22px}.skeleton-pill-wide{width:72px}.quarter-skeleton-drop{border-radius:var(--radius-lg);border:1px dashed var(--color-border-accent);background:linear-gradient(90deg,var(--color-skeleton-soft) 0,var(--color-skeleton-surface) 45%,var(--color-skeleton-soft) 100%);min-height:56px;animation:1.45s ease-in-out infinite skeleton-shimmer;animation-delay:var(--skeleton-delay,0s);background-size:200% 100%}.quarter-board-toolbar.is-skeleton{opacity:.55;pointer-events:none}.gradplan-search-skeleton{pointer-events:none;animation:.32s both planner-reveal-in}.gradplan-search-skeleton .search-panel-title-copy{gap:8px;width:100%;display:grid}.gradplan-search-skeleton .search-panel-title-copy .skeleton-line-medium{width:min(55%,140px);height:1.05em}.gradplan-search-skeleton .search-panel-title-copy .skeleton-line-long{width:min(92%,240px);height:10px}.skeleton-search-field{border-radius:var(--radius-md);flex:1;min-width:0;height:38px}.gradplan-search-skeleton-actions{flex:none;gap:6px;display:flex}.gradplan-search-skeleton-results{gap:0;display:grid}.gradplan-search-skeleton-row{border-bottom:1px solid var(--color-border-soft);animation:.3s both planner-reveal-in;animation-delay:var(--skeleton-delay,0s);justify-content:space-between;align-items:center;gap:12px;padding:12px 2px;display:flex}.gradplan-search-skeleton-row .course-result-body{flex:1;gap:8px;min-width:0;display:grid}.gradplan-search-skeleton-row .skeleton-line-title{width:78%}.skeleton-add-btn{border-radius:var(--radius-md);flex:none;width:34px;height:34px}.hub-progress-stage,.planner-hero-copy-stage{min-width:0}.hub-progress-stage{justify-self:end}.hero-title-skeleton-block{gap:.55rem;display:grid}.gradplan-search-skeleton-row .skeleton-line-title,.quarter-skeleton-course .skeleton-line-title{width:88%;height:12px}@media (prefers-reduced-motion:reduce){.course-grade-chip.is-pending,.gradplan-search-skeleton,.gradplan-search-skeleton-row,.quarter-skeleton-column,.quarter-skeleton-course,.quarter-skeleton-drop,.skeleton-bar,.skeleton-line,.skeleton-pill,.skeleton-shimmer,.skeleton-tag{animation:none!important}.planner-fade-enter-active,.planner-fade-leave-active,.planner-reveal-enter-active,.planner-reveal-leave-active{transition-duration:.01ms!important}.planner-reveal-enter-from,.planner-reveal-leave-to{transform:none}}.planner-reveal-leave-active{transition-duration:.16s}.planner-reveal-enter-from{transform:translateY(8px)}.planner-reveal-leave-to{transform:translateY(-4px)}.skeleton-bar{border-radius:var(--radius-pill);background:linear-gradient(90deg,var(--color-skeleton) 0,var(--color-skeleton-mid) 45%,var(--color-skeleton) 100%);background-size:200% 100%;width:100%;height:10px;animation:1.45s ease-in-out infinite skeleton-shimmer;display:block}.skeleton-line-long{width:92%;height:12px}.skeleton-line-hero-percent{border-radius:var(--radius-md);width:88px;height:42px}.skeleton-line-title{border-radius:var(--radius-md);width:min(320px,72%);height:1.15em}.planner-hero .hero-title-skeleton{margin:0}.planner-hero .hero-title-skeleton .skeleton-line{display:block}.skeleton-tag{border-radius:var(--radius-md);background:linear-gradient(90deg,var(--color-skeleton) 0,var(--color-skeleton-mid) 45%,var(--color-skeleton) 100%);background-size:200% 100%;width:64px;height:30px;animation:1.45s ease-in-out infinite skeleton-shimmer}.hero-summary-skeleton{align-content:start;gap:12px;display:grid}.panel-skeleton,.requirement-skeleton-card{pointer-events:none}.skeleton-line-percent{border-radius:var(--radius-md);width:48px;height:24px}.mini-row-skeleton{justify-content:space-between;align-items:center;gap:12px;display:flex}.mini-row-skeleton>div{flex:1;gap:8px;display:grid}.requirement-skeleton-card{animation:.3s both planner-reveal-in;animation-delay:var(--skeleton-delay,0s);padding:12px 0 11px;display:block}.requirement-skeleton-header{justify-content:space-between;align-items:center;gap:12px;display:flex}.requirement-skeleton-toggle-main{flex:1;align-items:center;gap:.55rem;min-width:0;display:flex}.requirement-skeleton-toggle-main .skeleton-line-medium{width:min(42%,220px)}.requirement-skeleton-toggle-main .skeleton-line-short{width:72px}.requirement-skeleton-column-title{width:min(55%,180px);margin-bottom:4px;display:block}@media (width<=1100px){.requirement-grid-skeleton .requirement-skeleton-column-title{display:none}}.skeleton-chevron{border-radius:var(--radius-sm);flex:none;width:12px;height:12px}.requirement-skeleton-tags{flex-wrap:wrap;gap:8px;display:flex}.calendar-status-chip,.calendar-units-chip{border-radius:var(--radius-md);white-space:nowrap;padding:2px 6px;font-size:.62rem;font-weight:800;line-height:1.2}.calendar-status-chip{background:var(--color-primary-chip);color:var(--color-primary)}.calendar-units-chip{background:var(--color-chip-muted-bg);color:var(--color-chip-muted-text)}.field-label{margin:0 0 8px;font-size:.84rem;font-weight:900;display:block}.field-hint,.field-label{color:var(--color-text-subtle)}.field-hint{margin:8px 0 0;font-size:.82rem;line-height:1.35}.schedule-option.active{border-color:var(--color-border-strong);background:var(--color-primary-soft-strong)}.section-heading{justify-content:space-between;align-items:end;gap:16px;margin-bottom:22px;display:flex}.section-heading-actions{flex-direction:column;align-items:flex-end;gap:8px;max-width:min(360px,100%);display:flex}.section-heading-actions .section-note{text-align:right;margin:0}.auth-form input,.search{border:1px solid var(--color-border-medium);border-radius:var(--radius-lg);background:var(--color-surface);width:min(420px,100%);color:var(--color-text);outline:none;padding:14px 16px}.auth-form input:focus,.search:focus{border-color:var(--color-primary-bright);box-shadow:0 0 0 4px var(--color-border-accent-soft)}.search::-webkit-search-cancel-button{appearance:none}.search::-webkit-search-decoration{appearance:none}.search-field{width:min(520px,100%);min-width:0;position:relative}.search-field .search{width:100%;padding-right:36px}.search-clear{background:color-mix(in srgb,var(--color-text) 8%,transparent);width:24px;height:24px;color:var(--color-text-muted);cursor:pointer;border:0;border-radius:999px;justify-content:center;align-items:center;padding:0;display:inline-flex;position:absolute;top:50%;right:6px;transform:translateY(-50%)}.search-clear:focus-visible,.search-clear:hover{background:color-mix(in srgb,var(--color-text) 14%,transparent);color:var(--color-text);outline:none}.search-workspace{display:block}.rail-requirement-stack .requirement-column-title{letter-spacing:.02em;margin-bottom:2px;font-size:.84rem;font-weight:800}.rail-requirement-stack .requirement-card-toggle{align-items:flex-start;gap:8px;padding:10px 0}.rail-requirement-stack .requirement-card-toggle-main{-moz-column-gap:.45rem;flex-wrap:nowrap;flex:auto;grid-template-columns:.9rem minmax(0,1fr);grid-template-areas:"chevron title"".units";align-items:start;gap:2px .45rem;min-width:0;display:grid}.rail-requirement-stack .req-chevron{grid-area:chevron;width:.9rem;height:.9rem;margin-top:.18rem}.rail-requirement-stack .requirement-card-toggle h3{white-space:normal;-webkit-line-clamp:2;text-overflow:ellipsis;overflow-wrap:break-word;-webkit-hyphens:auto;hyphens:auto;-webkit-box-orient:vertical;grid-area:title;min-width:0;font-size:.78rem;font-weight:700;line-height:1.25;display:-webkit-box;overflow:hidden}.rail-requirement-stack .req-units{grid-area:units;font-size:.7rem;line-height:1.3}.rail-requirement-stack .req-status{flex:none;margin-top:.15rem;font-size:.7rem;line-height:1.3}.rail-requirement-stack .requirement-card-body{padding-bottom:10px;padding-left:1.35rem}.rail-requirement-stack .req-choice-label,.rail-requirement-stack .req-choice-units{font-size:.74rem}.rail-requirement-stack .req-browse-toggle,.rail-requirement-stack .req-course-line,.rail-requirement-stack .req-course-link{font-size:.78rem;line-height:1.4}.course-search-shell.layout-rail .rail-filter-panel .catalog-department-search{z-index:2;width:100%;min-width:0;position:relative}.course-search-shell.layout-rail .rail-filter-panel .catalog-department-input{box-sizing:border-box;border:1px solid var(--color-border);background:var(--color-surface);width:100%;min-height:36px;color:var(--color-text);font:inherit;box-shadow:none;border-radius:10px;padding:8px 10px;font-size:.84rem;font-weight:500;display:block}.course-search-shell.layout-rail .rail-filter-panel .catalog-department-input:focus{border-color:color-mix(in srgb,var(--color-primary) 45%,var(--color-border));box-shadow:0 0 0 2px color-mix(in srgb,var(--color-primary) 16%,transparent);outline:none}.course-search-shell.layout-rail .rail-filter-panel .catalog-department-empty,.course-search-shell.layout-rail .rail-filter-panel .catalog-department-menu{box-sizing:border-box;width:100%;box-shadow:0 6px 16px color-mix(in srgb,var(--color-text) 8%,transparent);border-radius:10px;left:0;right:0}.course-search-shell.layout-rail .rail-filter-panel .catalog-filter-chips{gap:8px}@media (width<=980px){.planner-shell.is-quarters .quarters-split:has(>.quarters-pane-tabs){grid-template-rows:auto minmax(0,1fr)}.planner-shell.is-quarters .quarters-split:has(>.guest-plan-setup):has(>.quarters-pane-tabs){grid-template-rows:auto auto minmax(0,1fr)}}.catalog-section{flex:auto;gap:0;min-height:0;padding:0}.catalog-browse-root,.catalog-browse-skeleton,.catalog-shell{flex-direction:column;flex:auto;min-width:0;min-height:0;display:flex;position:relative}.catalog-layout{flex:auto;grid-template-columns:minmax(240px,280px) minmax(0,1fr);gap:0;display:grid}.catalog-layout,.catalog-main-pane{min-width:0;min-height:0;overflow:hidden}.catalog-main-pane{flex-direction:column;display:flex}.catalog-content-split{flex:auto;grid-template-columns:minmax(260px,340px) minmax(0,1fr);gap:0;min-width:0;min-height:0;display:grid;overflow:hidden}.catalog-browse-skeleton.is-revealing{animation:.32s both planner-reveal-in}.catalog-browse-skeleton .catalog-side-brand{gap:10px;display:grid}.catalog-skel-kicker{width:7.5rem;height:.65rem}.catalog-skel-term{width:min(70%,11rem);height:1.35rem}.catalog-skel-count{width:6.5rem;height:.85rem}.catalog-skel-search{border-radius:14px;width:100%;height:46px;margin-top:2px;display:block}.catalog-skel-filters{gap:16px;padding:4px 2px 12px 0;display:grid}.catalog-browse-skeleton.is-revealing .catalog-skel-filters{animation:.34s both planner-reveal-in}.catalog-skel-chip-row{flex-wrap:wrap;gap:6px;display:flex}.catalog-skel-chip-row .skeleton-pill{width:4.2rem;height:1.55rem}.catalog-skel-chip-row .skeleton-pill:nth-child(2n){width:5.4rem}.catalog-skel-chip-row .skeleton-pill:nth-child(3n){width:3.6rem}.catalog-skel-results{gap:0;padding-bottom:12px}.catalog-skel-result-row{pointer-events:none;cursor:default}.catalog-browse-skeleton.is-revealing .catalog-skel-result-row{animation:.3s both planner-reveal-in;animation-delay:var(--skeleton-delay,0s)}.catalog-skel-result-row.is-selected,.catalog-skel-result-row:hover{background:0 0}.catalog-skel-top-meta{align-items:center;gap:8px;margin-left:auto;display:inline-flex}.catalog-skel-enroll{width:4.8rem;height:1.2rem}.catalog-skel-grade{width:1.7rem;height:1.2rem}.catalog-skel-units{width:3.4rem;height:.7rem;margin-top:2px}.catalog-skel-detail{display:flex}.catalog-skel-detail-card{align-content:start;gap:12px;padding:14px 8px 18px 0;display:grid}.catalog-browse-skeleton.is-revealing .catalog-skel-detail-card{animation:.36s .12s both planner-reveal-in}.catalog-skel-detail-code{width:7rem;height:1.5rem}.catalog-skel-detail-actions{flex-wrap:wrap;gap:8px;margin-top:8px;display:flex}.catalog-skel-detail-actions .skeleton-pill{height:2rem}@media (width<=960px){.catalog-browse-skeleton .catalog-detail-pane{display:none}}@media (prefers-reduced-motion:reduce){.catalog-browse-skeleton.is-revealing,.catalog-browse-skeleton.is-revealing .catalog-skel-detail-card,.catalog-browse-skeleton.is-revealing .catalog-skel-filters,.catalog-browse-skeleton.is-revealing .catalog-skel-result-row{animation:none!important}}.catalog-side .catalog-department-input{border:1px solid color-mix(in srgb,var(--color-border) 80%,var(--color-primary) 20%);background:linear-gradient(180deg,color-mix(in srgb,var(--color-surface) 92%,var(--color-primary-soft) 8%),var(--color-surface));border-radius:14px;min-height:46px;padding:12px 14px;font-size:.92rem;font-weight:600;box-shadow:inset 0 1px #ffffff59}.catalog-side .catalog-department-input:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--color-primary) 18%,transparent),inset 0 1px 0 #ffffff59;outline:none}.catalog-search{flex:none;display:block;position:relative}.catalog-search-icon{color:var(--color-text-muted);pointer-events:none;position:absolute;top:50%;left:12px;transform:translateY(-50%)}.catalog-search-input::-webkit-search-cancel-button{appearance:none;display:none}.catalog-search-input::-webkit-search-decoration{appearance:none;display:none}.catalog-search-input{border:1px solid color-mix(in srgb,var(--color-border) 80%,var(--color-primary) 20%);background:linear-gradient(180deg,color-mix(in srgb,var(--color-surface) 92%,var(--color-primary-soft) 8%),var(--color-surface));width:100%;color:var(--color-text);font:inherit;border-radius:14px;padding:12px 36px 12px 40px;font-size:.92rem;font-weight:600;transition:border-color .14s,box-shadow .14s;box-shadow:inset 0 1px #ffffff59}.catalog-search-input::placeholder{color:var(--color-text-faint);font-weight:550}.catalog-search-input:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--color-primary) 18%,transparent),inset 0 1px 0 #ffffff59;outline:none}.catalog-search-clear{background:color-mix(in srgb,var(--color-text) 8%,transparent);width:26px;height:26px;color:var(--color-text-muted);cursor:pointer;border:0;border-radius:999px;justify-content:center;align-items:center;padding:0;display:inline-flex;position:absolute;top:50%;right:8px;transform:translateY(-50%)}.catalog-search-clear:hover{background:color-mix(in srgb,var(--color-text) 14%,transparent);color:var(--color-text)}.catalog-search-trailing{z-index:2;align-items:center;display:flex;position:absolute;top:0;bottom:0;right:8px}.catalog-filters-toggle{border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text-subtle);cursor:pointer;border-radius:999px;flex:none;padding:6px 11px;font-size:.78rem;font-weight:750;display:none}.catalog-filters-toggle[aria-pressed=true]{border-color:var(--color-primary);background:var(--color-primary-soft);color:var(--color-primary)}.catalog-filters-wrap{flex-direction:column;flex:auto;min-width:0;min-height:0;display:flex;position:relative}.catalog-filters{scrollbar-width:none;-ms-overflow-style:none;flex:auto;align-content:start;gap:16px;min-width:0;min-height:0;padding:0 2px 12px 0;display:grid;overflow:hidden auto}.catalog-filters::-webkit-scrollbar{width:0;height:0;display:none}.catalog-filter-group{gap:8px;min-width:0;display:grid}.catalog-filter-group h3{color:var(--color-text-muted);letter-spacing:.08em;text-transform:uppercase;margin:0;font-size:.72rem;font-weight:700}.catalog-filter-chips{flex-wrap:wrap;gap:6px;display:flex}.catalog-filter-chips.is-single-line{flex-wrap:nowrap;gap:4px}.catalog-filter-chips.is-single-line .catalog-filter-chip{white-space:nowrap;flex:1 1 0;justify-content:center;min-width:0;padding:5px 6px;font-size:.72rem}.catalog-department-search{z-index:2;width:100%;min-width:0;position:relative}.catalog-department-input{box-sizing:border-box;width:100%;min-height:0;padding:9px 11px;font-size:.84rem;display:block}.catalog-department-input::-webkit-search-cancel-button{appearance:none;display:none}.catalog-department-input::-webkit-search-decoration{appearance:none;display:none}.catalog-department-empty,.catalog-department-menu{z-index:5;position:absolute;top:calc(100% + 4px);left:0;right:0}.catalog-department-menu{overscroll-behavior:contain;gap:2px;max-height:min(320px,45vh);padding:4px;display:grid;overflow:auto}.catalog-department-empty,.catalog-department-menu{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);box-shadow:0 10px 24px color-mix(in srgb,var(--color-text) 10%,transparent)}.catalog-department-empty{color:var(--color-text-muted);margin:0;padding:8px 10px;font-size:.8rem}.catalog-department-option{border-radius:var(--radius-md);width:100%;color:var(--color-text);text-align:left;cursor:pointer;background:0 0;border:0;padding:7px 8px;font-size:.84rem;font-weight:600}.catalog-department-option:focus-visible,.catalog-department-option:hover{background:var(--color-primary-soft);color:var(--color-primary);outline:none}.catalog-filter-chip{border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text-subtle);cursor:pointer;border-radius:8px;align-items:center;padding:5px 10px;font-size:.78rem;font-weight:600;display:inline-flex}.catalog-filter-chip[aria-pressed=true],.catalog-filter-chip[aria-selected=true]{border-color:var(--color-primary);background:var(--color-primary-soft);color:var(--color-primary)}.catalog-filter-chip[data-grade-tone=a][aria-pressed=true]{border-color:color-mix(in srgb,var(--color-grade-a-text) 45%,var(--color-border));background:var(--color-grade-a-bg);color:var(--color-grade-a-text)}.catalog-filter-chip[data-grade-tone=b][aria-pressed=true]{border-color:color-mix(in srgb,var(--color-grade-b-text) 45%,var(--color-border));background:var(--color-grade-b-bg);color:var(--color-grade-b-text)}.catalog-filter-chip[data-grade-tone=c][aria-pressed=true]{border-color:color-mix(in srgb,var(--color-grade-c-text) 45%,var(--color-border));background:var(--color-grade-c-bg);color:var(--color-grade-c-text)}.catalog-filter-chip[data-enroll-tone=open][aria-pressed=true]{border-color:color-mix(in srgb,var(--color-enroll-open-text) 45%,var(--color-border));background:var(--color-enroll-open-bg);color:var(--color-enroll-open-text)}.catalog-filter-chip[data-enroll-tone=busy][aria-pressed=true]{border-color:color-mix(in srgb,var(--color-enroll-busy-text) 45%,var(--color-border));background:var(--color-enroll-busy-bg);color:var(--color-enroll-busy-text)}.catalog-filter-chip[data-enroll-tone=full][aria-pressed=true]{border-color:color-mix(in srgb,var(--color-enroll-full-text) 45%,var(--color-border));background:var(--color-enroll-full-bg);color:var(--color-enroll-full-text)}.catalog-check{min-width:0;color:var(--color-text);cursor:pointer;align-items:flex-start;gap:8px;font-size:.86rem;line-height:1.35;display:flex}.catalog-check input{flex:none;margin-top:.2rem}.catalog-check>span{overflow-wrap:anywhere;min-width:0}.catalog-filter-list{gap:4px;min-width:0;max-height:180px;display:grid;overflow:hidden auto}.catalog-filter-row{box-sizing:border-box;border-radius:var(--radius-sm);width:100%;min-width:0;max-width:100%;color:var(--color-text);text-align:left;cursor:pointer;background:0 0;border:1px solid #0000;justify-content:space-between;align-items:flex-start;gap:8px;padding:7px 8px;font-size:.82rem;display:flex}.catalog-filter-row[aria-pressed=true]{border-color:var(--color-border-accent);background:var(--color-primary-soft);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--color-primary) 28%,transparent)}.catalog-filter-row[aria-pressed=true] .catalog-filter-row-label{color:var(--color-primary)}.catalog-filter-row.is-complete:not([aria-pressed=true]){border-color:color-mix(in srgb,var(--color-success-border) 55%,transparent);background:color-mix(in srgb,var(--color-success-bg) 35%,transparent)}.catalog-filter-row.is-complete:not([aria-pressed=true]) .catalog-filter-row-label{color:var(--color-success-text)}.catalog-filter-row-label{overflow-wrap:anywhere;word-break:break-word;flex:auto;min-width:0;line-height:1.25}.catalog-filter-row-meta{flex:none;align-items:center;gap:6px;margin-top:1px;display:inline-flex}.catalog-filter-status{color:var(--color-text-faint);background:color-mix(in srgb,var(--color-border) 55%,transparent);letter-spacing:.03em;text-transform:uppercase;white-space:nowrap;border-radius:999px;align-items:center;padding:1px 7px;font-size:.66rem;font-weight:780;display:inline-flex}.catalog-filter-status[data-status=complete],.catalog-filter-status[data-status=waived]{color:var(--color-success-text);background:var(--color-success-bg);border:1px solid var(--color-success-border)}.catalog-filter-status[data-status=in-progress]{color:var(--color-warning-text);background:color-mix(in srgb,var(--color-warning-text) 12%,transparent)}.catalog-filter-status[data-status=planned]{color:var(--color-planned);background:color-mix(in srgb,var(--color-planned) 12%,transparent)}.catalog-filter-source{color:var(--color-text-faint);letter-spacing:.04em;text-transform:uppercase;flex:none;font-size:.7rem;font-weight:700}.catalog-detail-empty,.catalog-empty,.catalog-filter-empty{color:var(--color-text-muted);margin:0;font-size:.88rem;line-height:1.5}.catalog-enroll-chip{white-space:nowrap;border-radius:999px;align-items:center;padding:2px 7px;font-size:.72rem;font-weight:750;line-height:1.2;display:inline-flex}.catalog-enroll-chip[data-tone=full]{color:var(--color-enroll-full-text);background:var(--color-enroll-full-bg)}.catalog-enroll-chip[data-tone=busy]{color:var(--color-enroll-busy-text);background:var(--color-enroll-busy-bg)}.catalog-enroll-chip[data-tone=open]{color:var(--color-enroll-open-text);background:var(--color-enroll-open-bg)}.catalog-enroll-chip[data-tone=muted]{color:var(--color-text-muted);background:var(--color-surface-muted)}.course-grade-chip{letter-spacing:-.02em;white-space:nowrap;border-radius:999px;flex:none;justify-content:center;align-items:center;min-width:1.55rem;padding:2px 7px;font-size:.72rem;font-weight:800;line-height:1.2;display:inline-flex}.course-grade-chip.is-pending{pointer-events:none;background:linear-gradient(90deg,var(--color-skeleton) 0,var(--color-skeleton-mid) 45%,var(--color-skeleton) 100%);background-size:200% 100%;width:1.7rem;min-width:1.7rem;height:1.2rem;padding:0;animation:1.45s ease-in-out infinite skeleton-shimmer}.course-grade-chip[data-tone=a]{color:var(--color-grade-a-text);background:var(--color-grade-a-bg)}.course-grade-chip[data-tone=b]{color:var(--color-grade-b-text);background:var(--color-grade-b-bg)}.course-grade-chip[data-tone=c]{color:var(--color-grade-c-text);background:var(--color-grade-c-bg)}.catalog-requirement-row .requirement-chip{flex:none;padding:3px 8px;font-size:.72rem;font-weight:750;line-height:1.25}@media (width<=980px){.catalog-layout{grid-template-rows:auto minmax(0,1fr)}.catalog-content-split,.catalog-layout{grid-template-columns:1fr}.catalog-layout.filters-open .catalog-main-pane,.catalog-side .catalog-filters{display:none}.catalog-layout.filters-open .catalog-side .catalog-filters{flex:auto;padding-bottom:20px;display:grid}.catalog-layout.filters-open .catalog-filters-wrap{flex:auto;min-height:0}.catalog-layout.filters-open .catalog-filters{flex:auto;padding-bottom:20px}.catalog-filters-toggle,.catalog-mobile-filters{min-height:var(--catalog-control-height);border-radius:var(--catalog-chip-radius);align-items:center;padding:0 10px;font-size:.74rem;font-weight:700}.catalog-search-input,.catalog-side .catalog-department-input,.catalog-side .themed-select-compact .themed-select-trigger{min-height:var(--catalog-control-height);border-radius:var(--catalog-control-radius);font-size:var(--catalog-control-font);box-shadow:none;padding:0 32px 0 34px;font-weight:600}.catalog-side .catalog-department-input,.catalog-side .themed-select-compact .themed-select-trigger{padding:0 12px}.catalog-search-icon{width:15px;height:15px;left:10px}.catalog-search-clear{width:22px;height:22px;right:6px}.catalog-filters{gap:12px;padding-bottom:8px}.catalog-filter-group{gap:6px}.catalog-filter-group h3{font-size:.66rem}.catalog-filter-chip{border-radius:var(--catalog-chip-radius);padding:4px 8px;font-size:.72rem}.catalog-filters-wrap{display:none}.catalog-layout.filters-open .catalog-filters-wrap{display:flex}.catalog-filters-toggle,.catalog-mobile-filters{display:inline-flex}.catalog-enroll-chip,.course-grade-chip{font-size:.66rem}}@media (width<=760px){.planner-shell.is-catalog{width:calc(100% - 32px);padding-bottom:0}.catalog-layout.filters-open .catalog-search{display:none}.planner-shell.is-catalog>.guest-browse-banner,.planner-shell.is-scheduler>.guest-browse-banner{padding-inline:12px}}.import-panel{max-width:560px}.search-wide{width:min(520px,100%)}.course-presence.stacked-presence,.planner-presence-list{gap:8px;min-width:0;display:grid}.planner-presence-row{flex-wrap:wrap;align-items:center;gap:8px;min-width:0;display:flex}.presence-term{overflow-wrap:anywhere;min-width:0;font-size:.78rem;line-height:1.35}.presence-empty,.presence-term{color:var(--color-text-muted);font-weight:800}.presence-empty{font-size:.82rem}.course-presence{flex-wrap:wrap;gap:8px;display:flex}.compact-presence span:not(.status-pill){color:var(--color-text-muted);font-weight:800}.small-button{min-height:38px;padding:0 14px}.course-code{color:var(--color-primary);margin-bottom:6px;font-weight:900}.course-description,.course-prerequisites{color:var(--color-chip-muted-text);margin-bottom:8px;font-size:.9rem;line-height:1.5}.course-prerequisites{color:var(--color-text-faint);font-size:.92rem}.clamp-copy{-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.course-detail-list,.modal-course-facts,.requirement-chip-list{flex-wrap:wrap;gap:8px;min-width:0;margin-top:12px;display:flex}.course-detail-list span:not(.requirement-chip),.course-meta-chip,.modal-course-facts span:not(.requirement-chip){border-radius:var(--radius-md);background:var(--color-primary-soft-strong);max-width:100%;color:var(--color-text-subtle);overflow-wrap:anywhere;padding:6px 11px;font-size:.78rem;font-weight:800;line-height:1.45}.course-meta-chip.muted-chip{background:var(--color-chip-muted-bg);color:var(--color-text-muted)}.requirement-chip{border-radius:var(--radius-md);text-overflow:ellipsis;white-space:nowrap;max-width:100%;padding:6px 11px;font-size:.74rem;font-weight:900;line-height:1.25;overflow:hidden}.requirement-chip.tone-core{background:var(--color-primary-soft);color:var(--color-primary)}.requirement-chip.tone-math{background:var(--color-tone-math-bg);color:var(--color-tone-math-text)}.requirement-chip.tone-science{background:var(--color-success-bg);color:var(--color-success-text)}.requirement-chip.tone-systems{background:var(--color-warning-bg);color:var(--color-warning-text)}.requirement-chip.tone-theory{background:var(--color-tone-theory-bg);color:var(--color-tone-theory-text)}.requirement-chip.tone-applications{background:var(--color-tone-applications-bg);color:var(--color-tone-applications-text)}.requirement-chip.tone-cse{background:var(--color-primary-chip);color:var(--color-primary)}.requirement-chip.tone-college{background:var(--color-tone-college-bg);color:var(--color-tone-college-text)}.requirement-chip.tone-default{background:var(--color-primary-soft-strong);color:var(--color-text-subtle)}.wide-note{max-width:760px}.import-simple{gap:12px;max-width:520px;display:grid}.import-simple-head h2{letter-spacing:-.02em;margin:0;font-size:1.15rem;font-weight:700}.import-simple-head p{color:var(--color-text-muted);margin:4px 0 0;font-size:.9rem;line-height:1.4}.import-simple-head .import-disclaimer{color:var(--color-text-faint);margin-top:10px;font-size:.78rem;font-weight:500;line-height:1.4}.import-simple-head .import-disclaimer a{color:var(--color-primary);text-underline-offset:2px;text-decoration:underline}.import-simple-head .import-disclaimer a:hover{text-decoration-thickness:2px}.import-file{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-muted);cursor:pointer;justify-items:start;gap:4px;padding:16px 18px;transition:border-color .14s,background .14s;display:grid;position:relative}.import-file:hover{border-color:var(--color-border-medium);background:var(--color-surface)}.import-file .file-input{clip:rect(0 0 0 0);width:1px;height:1px;min-height:0;position:absolute;overflow:hidden}.import-file-pick{cursor:pointer;gap:6px;width:100%;min-width:0;display:grid}.import-file-label{color:var(--color-text-heading);word-break:break-word;font-size:.95rem;font-weight:700;line-height:1.35}.import-file-clear{background:color-mix(in srgb,var(--color-surface) 80%,transparent);width:28px;height:28px;color:var(--color-text-muted);cursor:pointer;border:0;border-radius:999px;font-size:1.15rem;line-height:1;position:absolute;top:8px;right:8px}.import-file-clear:hover{color:var(--color-text-heading);background:var(--color-surface)}.import-file-hint{color:var(--color-text-muted);font-size:.8rem}.import-paste-label{color:var(--color-text-subtle);margin-top:4px;font-size:.85rem;font-weight:600}.import-simple textarea{border:1px solid var(--color-border-medium);border-radius:var(--radius-md);background:var(--color-surface);width:100%;min-height:120px;color:var(--color-text);resize:vertical;outline:none;padding:12px 14px}.import-simple-actions{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.file-input,.full-input,.modal-grid input,.modal-grid select{border:1px solid var(--color-border-medium);border-radius:var(--radius-lg);background:var(--color-surface);width:100%;color:var(--color-text);outline:none;padding:12px 14px}.file-input{min-height:48px}.error-message{color:var(--color-error-text);font-weight:800}.transfer-review-panel{width:min(520px,100%);max-height:min(88vh,720px);overflow-y:auto}.transfer-review{gap:14px;display:grid}.transfer-review h2{letter-spacing:-.02em;margin:0;font-size:1.2rem;font-weight:700}.transfer-review-lead{color:var(--color-text-muted);margin:0;font-size:.92rem;line-height:1.4}.transfer-review-list{gap:6px;display:grid}.transfer-review-row{border:1px solid var(--color-border-soft);border-radius:var(--radius-md);background:var(--color-surface-muted);cursor:pointer;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;padding:10px 12px;display:grid}.transfer-review-row.already-added{opacity:.55}.transfer-review-row input{margin:0}.transfer-review-main{gap:2px;min-width:0;display:grid}.transfer-review-main strong{color:var(--color-text-heading);font-size:.9rem}.transfer-review-main span{color:var(--color-text-muted);text-overflow:ellipsis;white-space:nowrap;font-size:.8rem;overflow:hidden}.transfer-review-status{color:var(--color-text-faint);white-space:nowrap;font-size:.75rem;font-weight:600}.transfer-review-skipped{color:var(--color-text-faint);margin:0;font-size:.82rem}.transfer-review-diagnostics{color:var(--color-text-muted);margin:0;font-size:.82rem;line-height:1.4}.transfer-review-preview{color:var(--color-text-faint);margin:0;font-size:.8rem}.transfer-review-preview summary{cursor:pointer;-webkit-user-select:none;user-select:none}.transfer-review-preview pre{border:1px solid var(--color-border-soft);background:var(--color-surface-muted,#00000008);max-height:160px;color:var(--color-text-muted);white-space:pre-wrap;word-break:break-word;border-radius:8px;margin:8px 0 0;padding:10px 12px;font-size:.72rem;line-height:1.35;overflow:auto}.modal-root{z-index:70;position:relative}.modal-backdrop{background:var(--color-overlay);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);position:fixed;inset:0}.modal-container{place-items:center;padding:24px;display:grid;position:fixed;inset:0;overflow-y:auto}.modal-panel{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);width:min(760px,100%);box-shadow:0 34px 90px var(--color-overlay);padding:26px}.modal-panel-course{padding:32px 34px 30px}.modal-panel-course .modal-course-title{gap:8px;margin-bottom:16px}.modal-panel-course .modal-course-subtitle{font-size:1rem;line-height:1.4}.modal-panel-course .modal-course-facts,.modal-panel-course .modal-course-facts.tight{margin-bottom:16px}.modal-panel-course .modal-copy-compact{margin-bottom:18px;font-size:.98rem;line-height:1.55}.modal-panel-course .modal-prereq-link-row{margin:0 0 20px}.modal-panel-course .modal-detail-block{margin-top:20px;margin-bottom:4px}.modal-panel-course .modal-term-row{margin-top:18px}.modal-panel-course .modal-actions{gap:12px;margin-top:28px}.modal-copy{margin-bottom:20px}.modal-course-title{gap:4px;margin-bottom:10px;font-size:clamp(1.35rem,2.4vw,1.85rem);line-height:1.15;display:grid}.modal-course-subtitle{color:var(--color-text-subtle);letter-spacing:-.01em;font-size:.92rem;font-weight:700;line-height:1.35;display:block}.modal-copy-compact{color:var(--color-text-subtle);margin:0 0 12px;font-size:.9rem;line-height:1.45}.modal-actions-simple{align-items:center}.modal-actions-simple .text-button{margin-right:auto}.modal-course-facts{margin-bottom:18px}.modal-course-facts.tight{margin-bottom:0}.modal-prereq-link-row{margin:-6px 0 16px}.modal-prereq-link{color:var(--color-primary);font-size:.86rem;font-weight:800;text-decoration:none}.modal-prereq-link:hover{text-decoration:underline}.modal-detail-block{margin-top:16px}.detail-label{color:var(--color-primary-bright);letter-spacing:.1em;text-transform:uppercase;margin:0 0 6px;font-size:.76rem;font-weight:900}.detail-text{color:var(--color-text-subtle);margin:0;line-height:1.55}.modal-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.modal-grid-single{grid-template-columns:1fr}.modal-term-row{grid-template-columns:minmax(140px,220px);margin-top:8px}.modal-add-block{border-top:1px solid var(--color-border);margin-top:20px;padding-top:18px}.modal-field,.modal-grid label{color:var(--color-text-subtle);gap:8px;font-size:.88rem;font-weight:900;display:grid}.field-help{border:1px dashed var(--color-border-dashed);border-radius:var(--radius-lg);color:var(--color-text-faint);padding:12px 14px;font-weight:800}.modal-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;margin-top:22px;display:flex}.modal-error{flex:100%;margin:0 0 4px}.modal-enter,.modal-leave{transition:opacity .18s,transform .18s}.modal-enter-from,.modal-leave-to{opacity:0}.modal-enter-to,.modal-leave-from{opacity:1}.modal-panel-from{opacity:0;transform:translateY(10px)scale(.98)}.modal-panel-to{opacity:1;transform:translateY(0)scale(1)}.status{border-radius:var(--radius-md);background:var(--color-primary-soft);color:var(--color-primary);margin:0;padding:8px 12px;font-size:.85rem;font-weight:900}.auth-shell{min-height:100dvh;padding:max(24px,env(safe-area-inset-top,0px)) max(24px,env(safe-area-inset-right,0px)) max(24px,env(safe-area-inset-bottom,0px)) max(24px,env(safe-area-inset-left,0px));flex-direction:column;justify-content:center;align-items:center;gap:16px;display:flex}.auth-brand{width:min(420px,100%);padding:2px 0}.auth-card{width:min(420px,100%);padding:28px}.auth-card h1{max-width:none;margin-bottom:12px;font-size:clamp(1.6rem,3vw,2rem);line-height:1.15}.divider{color:var(--color-text-faint);align-items:center;gap:12px;margin:22px 0;font-size:.9rem;display:flex}.divider:after,.divider:before{content:"";background:var(--color-border-medium);flex:1;height:1px}.auth-form{gap:10px;display:grid}.auth-form label{color:var(--color-text-subtle);font-size:.9rem;font-weight:800}.auth-form input{width:100%}.auth-toggle{color:var(--color-primary);cursor:pointer;background:0 0;border:0;justify-self:start;margin-top:4px;font-weight:900}.local-auth-note{border-radius:var(--radius-md);background:var(--color-primary-soft-strong);color:var(--color-text-subtle);margin-top:16px;padding:12px 14px;line-height:1.5}.local-auth-note strong{color:var(--color-primary)}.message{color:var(--color-text-subtle);margin:16px 0 0}@media (width<=760px){.hero{padding-top:54px}.grid,.planner-hero,.planner-hero.is-hub,.planner-layout,.section-heading{grid-template-columns:1fr}.site-page{width:min(920px,100% - 32px);padding-top:40px}.site-page-split,.site-page-split.is-contact{grid-template-columns:1fr;gap:20px}.site-page-visual{order:-1;min-height:160px}.site-page-visual img{width:min(64vw,200px)}.site-page-actions .button{text-align:center;flex:auto}.site-page-hero h1{max-width:none}.site-contact-form .button{justify-self:stretch;width:100%}.hub-progress{text-align:left;align-items:flex-start}.course-result-list,.requirement-accordion,.requirement-grid,.stats-list{grid-template-columns:1fr}.grid{display:grid}.course-row,.section-heading{flex-direction:column;align-items:stretch}.section-heading-actions{align-items:stretch;max-width:none}.section-heading-actions .section-note{text-align:left}.app-frame{--app-header-sticky-top:8px;--app-header-offset:44px}.app-chrome{width:100%;padding-top:0}.app-header{margin-bottom:0}.nav.nav-pill,.nav.nav-pill.has-planner-tabs{gap:4px;width:min(420px,100%);padding:4px 6px 4px 10px}.nav.nav-pill .brand{gap:.3rem;font-size:.9rem}.nav.nav-pill .brand-mark{width:1.45rem;height:1.45rem}.nav-actions{gap:0}.nav-menu-toggle{min-height:44px;padding:0 10px}.nav-theme-toggle{width:auto;height:auto;min-height:44px;margin-right:0;padding:0 8px}.nav-profile-icon,.nav-theme-icon{width:16px;height:16px}.nav-actions .nav-link{min-height:44px;padding:0 8px;font-size:.72rem}.nav-actions .nav-profile-link{padding:0 8px}.nav-home-unit{gap:.3rem;min-height:28px;padding:1px 8px 1px 3px;font-size:.9rem}.nav-home-label{font-size:.66rem}.nav-login{min-height:28px;padding-inline:10px;font-size:.72rem}.planner-hero.is-compact{grid-template-columns:1fr auto;gap:12px;padding:4px 0 10px}.search{width:100%}.import-result-row,.modal-actions{flex-direction:column;align-items:stretch}.section-note.advising-disclaimer{max-width:none;font-size:.66rem;line-height:1.3}.req-legend{gap:.3rem .85rem;font-size:.77rem}.req-chevron{grid-area:chevron;margin-top:.12rem}.modal-backdrop{background:var(--color-overlay);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.modal-container{align-content:center;place-items:center;padding:16px 12px}.modal-panel{border-radius:var(--radius-lg);width:min(100%,520px);max-height:min(88dvh,100%);box-shadow:0 24px 60px var(--color-overlay);padding:18px 16px;overflow-y:auto}.modal-course-title{margin-bottom:10px;font-size:1.2rem}.modal-course-subtitle{font-size:.86rem}.modal-copy-compact{-webkit-line-clamp:5;line-clamp:5;-webkit-box-orient:vertical;margin-bottom:10px;font-size:.86rem;line-height:1.4;display:-webkit-box;overflow:hidden}.modal-course-facts{gap:6px;margin-top:0;margin-bottom:10px}.modal-course-facts .course-meta-chip,.modal-course-facts .requirement-chip,.modal-course-facts span:not(.requirement-chip){border-radius:var(--radius-lg);padding:4px 8px;font-size:.7rem}.modal-prereq-link-row{margin:0 0 10px}.modal-prereq-link{font-size:.8rem}.modal-detail-block{margin-top:10px}.modal-actions{flex-direction:row;align-items:center;gap:8px;margin-top:16px}.modal-actions-simple .button{flex:auto;width:auto;min-height:40px}.modal-actions-simple .text-button{flex:none;width:auto;min-height:40px}}.profile-shell{gap:12px;max-width:760px;display:grid}.profile-auth-pending{gap:8px;min-width:0;display:grid}.profile-auth-pending-copy{color:var(--color-text-muted);margin:0;font-size:.95rem}.profile-layout{gap:12px;display:grid}.profile-identity,.profile-identity-copy{gap:2px;min-width:0;display:grid}.profile-identity-title{max-width:none;color:var(--color-text-heading);letter-spacing:-.03em;overflow-wrap:anywhere;margin:0;font-family:Outfit,"Source Sans 3",sans-serif;font-size:clamp(1.15rem,2.4vw,1.35rem);font-weight:600;line-height:1.2}.profile-identity-email,.profile-identity-meta{color:var(--color-text-muted);margin:0;font-size:.8rem;font-weight:600;line-height:1.3}.profile-identity-meta{color:var(--color-text);overflow-wrap:anywhere;font-size:.82rem;font-weight:700}.profile-panel{box-shadow:none;gap:0;padding:0;display:grid;overflow:hidden}.profile-block{gap:10px;padding:14px 16px;display:grid}.profile-block+.profile-block{border-top:1px solid var(--color-border)}.profile-block-label{color:var(--color-text-muted);letter-spacing:.08em;text-transform:uppercase;margin:0;font-family:Outfit,"Source Sans 3",sans-serif;font-size:.68rem;font-weight:800;line-height:1.2}.profile-block-tools{gap:10px;display:grid}.profile-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 12px;display:grid}.profile-form-grid-compact{grid-template-columns:repeat(3,minmax(0,1fr))}.profile-form-grid-pair,.profile-majors-row{grid-template-columns:repeat(2,minmax(0,1fr))}.profile-majors-row{align-items:start;gap:10px 12px;display:grid}.profile-majors-notes{gap:2px;margin-top:-2px;display:grid}.profile-field{align-content:start;gap:4px;min-width:0;display:grid}.profile-field-college{max-width:420px}.profile-field .campus-place-picker-field.has-clear input{padding-right:52px}.profile-field-interests{margin-top:2px}.profile-field-label-row{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.profile-field-label-row label,.profile-field>label:not(.profile-checkbox-label){color:var(--color-text-muted);letter-spacing:.04em;text-transform:uppercase;font-size:.68rem;font-weight:800}.profile-field input,.profile-field select{padding:0 10px;font-size:.88rem}.profile-checkbox-label,.profile-field input,.profile-field select{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);min-height:34px;color:var(--color-text)}.profile-checkbox-label{text-transform:none;letter-spacing:0;cursor:pointer;align-items:flex-start;gap:8px;padding:5px 10px;font-size:.84rem;font-weight:600;display:flex}.profile-checkbox-label input[type=checkbox]{cursor:pointer;flex-shrink:0;width:.95rem;height:.95rem;min-height:0;margin-top:.15rem;padding:0}.profile-checkbox-label strong{font-size:.84rem;font-weight:800;line-height:1.25;display:block}.profile-checkbox-label .profile-inline-tool-hint{margin-top:1px;font-size:.72rem;font-weight:600;line-height:1.3;display:block}.profile-meta{color:var(--color-text-muted);white-space:nowrap;font-size:.72rem;font-weight:700}.profile-note{color:var(--color-text-subtle);margin:0;font-size:.74rem;line-height:1.35}.profile-note-warning{color:var(--color-warning,#9a6700)}.visually-hidden{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.profile-inline-tool{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-muted);width:100%;color:inherit;font:inherit;text-align:left;cursor:pointer;justify-content:space-between;align-items:center;gap:10px;padding:9px 12px;text-decoration:none;transition:border-color .14s,background .14s;display:flex}.profile-inline-tool:hover{border-color:var(--color-border-strong,var(--color-border-medium));background:var(--color-surface)}.profile-inline-tool>span:first-child{gap:1px;min-width:0;display:grid}.profile-inline-tool strong{color:var(--color-text-heading);font-size:.84rem;font-weight:700}.profile-inline-tool-hint{color:var(--color-text-muted);font-size:.74rem;font-weight:600;line-height:1.3}.profile-inline-tool-arrow{color:var(--color-primary);flex:none;font-size:.92rem;font-weight:700}.profile-inline-tool-signal{opacity:.88;border-style:dashed}.profile-inline-tool-signal:focus-visible,.profile-inline-tool-signal:hover{opacity:1;border-color:color-mix(in srgb,var(--color-primary) 40%,var(--color-border));outline:none}.profile-footer-actions{border-top:1px solid var(--color-border);background:color-mix(in srgb,var(--color-surface-muted) 55%,transparent);flex-wrap:wrap;align-items:center;gap:10px;padding:12px 16px 14px;display:flex}.profile-footer-actions .button{min-height:34px;padding:0 14px;font-size:.86rem}.profile-footer-links{flex-wrap:wrap;align-items:center;gap:4px 14px;margin-left:auto;display:flex}.profile-sign-out{color:var(--color-error-text);flex:none;font-size:.78rem}.profile-sign-out:hover{color:color-mix(in srgb,var(--color-error-text) 82%,#000)}.profile-delete-account{color:var(--color-text-subtle);flex:none;font-size:.78rem}.profile-delete-account:focus-visible,.profile-delete-account:hover{color:var(--color-error-text)}.profile-delete-panel{border-top:1px solid var(--color-border);background:color-mix(in srgb,var(--color-error-text) 6%,var(--color-surface-muted));gap:10px;padding:12px 16px 16px;display:grid}.profile-delete-warning{color:var(--color-text-muted);margin:0;font-size:.82rem;line-height:1.45}.profile-delete-label{color:var(--color-text-subtle);letter-spacing:.04em;text-transform:uppercase;margin:0;font-size:.72rem;font-weight:700}.profile-delete-label strong{color:var(--color-text);letter-spacing:.06em;font-weight:800}.profile-delete-input{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);max-width:14rem;min-height:34px;color:var(--color-text);font:inherit;padding:0 10px;font-size:.86rem}.profile-delete-input:focus{outline:2px solid var(--color-primary);outline-offset:1px}.profile-delete-error{color:var(--color-error-text);margin:0;font-size:.8rem;line-height:1.4}.profile-delete-actions{flex-wrap:wrap;align-items:center;gap:10px 14px;display:flex}.profile-delete-confirm-btn{background:color-mix(in srgb,var(--color-error-text) 88%,#000);color:#fff;min-height:34px;padding:0 14px;font-size:.86rem}.profile-delete-confirm-btn:disabled{opacity:.45}.profile-actions{flex-wrap:wrap;gap:12px;display:flex}.profile-settings-section{gap:8px}.profile-settings-section .school-filter-row{margin-bottom:6px}.themed-select-shell{width:100%;min-width:0}.themed-select{width:100%;position:relative}.themed-select-compact{max-width:220px}.themed-select-trigger{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);width:100%;min-height:34px;color:var(--color-text);text-align:left;cursor:pointer;outline:none;justify-content:space-between;align-items:center;gap:8px;padding:0 10px;font-size:.84rem;font-weight:700;line-height:1.2;transition:border-color .16s,background .16s;display:flex}.themed-select-compact .themed-select-trigger{border-radius:var(--radius-md);min-height:30px;padding:0 8px;font-size:.78rem}.themed-select-label{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.profile-field .themed-combobox-trigger,.profile-field .themed-select-trigger{border-radius:var(--radius-md);min-height:34px;padding:0 10px;font-size:.84rem}.themed-select-trigger.is-placeholder{color:var(--color-text-muted)}.themed-select-trigger.is-open,.themed-select-trigger:hover,.themed-select-trigger[data-headlessui-state~=open]{border-color:var(--color-border-strong);background:var(--color-surface-muted)}.themed-select-chevron{border-right:1.5px solid var(--color-text-muted);border-bottom:1.5px solid var(--color-text-muted);flex:none;width:6px;height:6px;transition:transform .16s;transform:translateY(-1px)rotate(45deg)}.themed-select-trigger.is-open .themed-select-chevron,.themed-select-trigger[data-headlessui-state~=open] .themed-select-chevron{transform:translateY(1px)rotate(225deg)}.themed-select-menu{z-index:80;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);max-height:200px;box-shadow:0 2px 8px color-mix(in srgb,var(--color-text-heading) 10%,transparent);outline:none;margin:0;padding:4px;list-style:none;position:absolute;top:calc(100% + 4px);left:0;right:0;overflow-y:auto}.themed-select-compact .themed-select-menu{border-radius:var(--radius-md);max-height:168px;padding:3px}.themed-select-option{border-radius:var(--radius-lg);min-height:30px;color:var(--color-text);cursor:pointer;align-items:center;padding:5px 9px;font-size:.8rem;font-weight:600;line-height:1.25;display:flex}.themed-select-compact .themed-select-option{border-radius:var(--radius-md);min-height:26px;padding:4px 8px;font-size:.74rem}.themed-select-option.is-active{background:var(--color-surface-muted)}.themed-select-option.is-selected{background:var(--color-primary-soft);color:var(--color-primary)}.themed-select-option.is-selected.is-active{background:var(--color-primary-soft-strong)}.themed-select-leave{transition:opacity .12s,transform .12s}.themed-select-leave-from{opacity:1;transform:translateY(0)}.themed-select-leave-to{opacity:0;transform:translateY(-4px)}.themed-combobox-search{z-index:1;background:var(--color-surface);border-bottom:1px solid var(--color-border);margin:-4px -4px 4px;padding:6px;position:sticky;top:0}.themed-combobox-input{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface-muted);width:100%;min-height:32px;color:var(--color-text);outline:none;padding:0 10px;font-size:.84rem;font-weight:600;line-height:1.2}.themed-combobox-input:focus{border-color:var(--color-border-strong);background:var(--color-surface)}.themed-combobox-input::placeholder{color:var(--color-text-muted);font-weight:600}.themed-combobox-menu{max-height:280px;padding-top:0}.themed-combobox-option{flex-direction:column;align-items:flex-start;gap:1px;min-height:36px;padding:6px 9px}.themed-select-label-row{flex:auto;align-items:center;gap:6px;min-width:0;display:inline-flex}.themed-select-label-row .themed-select-label{min-width:0}.themed-combobox-option-head{align-items:center;gap:8px;width:100%;min-width:0;display:flex}.themed-combobox-option-label{text-overflow:ellipsis;white-space:nowrap;flex:auto;max-width:100%;overflow:hidden}.themed-combobox-option-chip{background:var(--color-primary-soft);color:var(--color-primary);letter-spacing:.04em;text-transform:uppercase;font-size:.62rem}.themed-combobox-option-chip,.themed-combobox-rmp-chip{border-radius:999px;flex:none;align-items:center;padding:1px 6px;font-weight:800;line-height:1.3;display:inline-flex}.themed-combobox-rmp-chip{border:1px solid color-mix(in srgb,var(--color-border) 80%,transparent);background:var(--color-surface-soft);min-width:2.1rem;color:var(--color-text);letter-spacing:-.01em;justify-content:center;font-size:.68rem;text-decoration:none}a.themed-combobox-rmp-chip:focus-visible,a.themed-combobox-rmp-chip:hover{border-color:color-mix(in srgb,var(--color-primary) 45%,var(--color-border));outline:none}.themed-combobox-rmp-chip[data-tone=high]{color:var(--color-rmp-high-text);background:var(--color-rmp-high-bg);border-color:var(--color-rmp-high-border)}.themed-combobox-rmp-chip[data-tone=mid]{color:var(--color-rmp-mid-text);background:var(--color-rmp-mid-bg);border-color:var(--color-rmp-mid-border)}.themed-combobox-rmp-chip[data-tone=low]{color:var(--color-rmp-low-text);background:var(--color-rmp-low-bg);border-color:var(--color-rmp-low-border)}.themed-combobox-option-hint{color:var(--color-text-muted);font-size:.72rem;font-weight:600;line-height:1.2}.themed-combobox-option.is-selected .themed-combobox-option-hint{color:color-mix(in srgb,var(--color-primary) 72%,var(--color-text-muted))}.themed-combobox-empty{color:var(--color-text-muted);padding:10px 9px;font-size:.8rem;font-weight:600}html.themed-combobox-sheet-open,html.themed-combobox-sheet-open body{overscroll-behavior:none;overflow:hidden}.themed-combobox-sheet-root{z-index:420;flex-direction:column;justify-content:flex-end;display:flex;position:fixed;inset:0}.themed-combobox-sheet-backdrop{background:color-mix(in srgb,var(--color-text-heading) 42%,transparent);cursor:pointer;border:0;margin:0;padding:0;position:absolute;inset:0}.themed-combobox-sheet{z-index:1;border:1px solid var(--color-border);background:var(--color-surface);width:100%;max-height:min(88dvh,100%);box-shadow:0 -12px 40px color-mix(in srgb,var(--color-text-heading) 18%,transparent);padding-bottom:env(safe-area-inset-bottom,0);border-bottom:0;border-radius:18px 18px 0 0;flex-direction:column;display:flex;position:relative}.themed-combobox-sheet-head{justify-content:space-between;align-items:center;gap:12px;padding:14px 16px 8px;display:flex}.themed-combobox-sheet-title{color:var(--color-text-heading);margin:0;font-size:1rem;font-weight:750;line-height:1.2}.themed-combobox-sheet-close{border:1px solid var(--color-border);background:var(--color-surface-muted);min-height:34px;color:var(--color-text-heading);font:inherit;cursor:pointer;border-radius:999px;flex:none;margin:0;padding:0 12px;font-size:.82rem;font-weight:700}.themed-combobox-sheet-search{border-bottom:1px solid var(--color-border);background:var(--color-surface);margin:0;padding:0 12px 10px;position:static}.themed-combobox-sheet-search .themed-combobox-input{min-height:42px;font-size:1rem}.themed-combobox-sheet-list{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;flex:auto;min-height:0;padding:6px;overflow:hidden auto}.themed-combobox-sheet-list .themed-combobox-option{text-align:left;width:100%;min-height:44px;font:inherit;background:0 0;border:0}.profile-field-readonly{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-muted);min-height:38px;color:var(--color-text-subtle);align-items:center;padding:0 12px;display:flex}.interest-chip-grid,.program-chip-grid,.school-chip-grid{flex-wrap:wrap;gap:8px;display:flex}.school-filter-row{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:12px;display:flex}.school-filter-label{color:var(--color-text-muted);font-size:.82rem;font-weight:700}.interest-chip,.program-chip,.school-chip{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text);cursor:pointer;text-align:left;align-items:center;gap:6px;padding:6px 10px;display:inline-flex}.interest-chip.active,.program-chip.active,.school-chip.active{border-color:var(--color-primary);background:var(--color-primary-soft);box-shadow:0 0 0 1px var(--color-primary)}.interest-chip.active{color:var(--color-primary)}.interest-chip span,.program-chip span{color:var(--color-text-muted);font-size:.78rem}.school-chip{font-size:.82rem;font-weight:600}.college-chip-grid .school-chip{gap:4px}.college-chip-soon{color:var(--color-text-muted);font-size:.72rem;font-weight:600}.interest-chip,.program-chip{border-radius:var(--radius-md);flex-direction:column;align-items:flex-start;gap:2px;min-width:0;padding:8px 10px}.program-chip{flex:160px}.interest-chip{flex:180px;max-width:260px}.interest-chip-grid-compact{gap:6px}.interest-chip-compact{flex-direction:row;flex:0 auto;align-items:center;gap:0;max-width:none;padding:4px 8px;font-size:.74rem;font-weight:700;line-height:1.2}.interest-chip strong,.program-chip strong{font-size:.86rem}.interest-chip:disabled{opacity:.45;cursor:not-allowed}@media (width<=760px){.profile-shell{gap:10px;max-width:none}.profile-layout{gap:10px}.profile-block{padding:12px 14px}.profile-footer-actions{flex-direction:column;align-items:stretch;padding:12px 14px}.profile-footer-actions .button{width:100%}.profile-footer-links{justify-content:center;margin-left:0}.profile-delete-account,.profile-sign-out{margin-left:0;padding:6px 0}.profile-delete-panel{padding:12px 14px 16px}.profile-delete-input{width:100%;max-width:none}.profile-form-grid,.profile-form-grid-compact,.profile-majors-row{grid-template-columns:1fr}.profile-field-college{max-width:none}}.scheduler-section{min-width:0;min-height:0;padding:0}.scheduler-shell{flex-direction:column;flex:auto;min-height:0;display:flex;position:relative}.scheduler-skeleton{pointer-events:none;animation:.3s both planner-reveal-in}.scheduler-skel-cart{gap:14px}.scheduler-skel-draft{width:min(70%,11rem);height:1.15rem}.scheduler-skel-meta{width:7rem;height:.75rem}.scheduler-skel-actions{flex-wrap:wrap;gap:8px;display:flex}.scheduler-skel-actions .skeleton-pill{min-width:4.5rem;height:2rem}.scheduler-skel-actions .skeleton-pill-wide{min-width:6.5rem}.scheduler-skel-cart-list{gap:10px;padding-top:4px;display:grid}.scheduler-skel-cart-card{min-height:72px;animation:.28s both planner-reveal-in;animation-delay:var(--skeleton-delay,0s);border-radius:10px;align-items:stretch;gap:10px;padding:10px 8px 10px 0;display:flex}.scheduler-skel-rail{border-radius:10px;flex:none;align-self:stretch;width:4px}.scheduler-skel-cart-body{flex:1;align-content:start;gap:8px;min-width:0;display:grid}.scheduler-skel-chip{width:4.5rem;height:1.15rem}.scheduler-skel-week{flex-direction:column;gap:10px;min-width:0;min-height:0;padding:10px 12px 12px;display:flex}.scheduler-skel-week-head{grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;padding-left:42px;display:grid}.scheduler-skel-week-head .skeleton-line{justify-self:center;width:60%;height:.7rem}.scheduler-skel-week-body{flex:1;grid-template-columns:36px minmax(0,1fr);gap:8px;min-height:18rem;display:grid}.scheduler-skel-time-rail{grid-template-rows:repeat(6,minmax(0,1fr));gap:18px;padding-top:6px;display:grid}.scheduler-skel-time-rail .skeleton-line{width:100%;height:.55rem}.scheduler-skel-day-grid{border:1px solid color-mix(in srgb,var(--color-border) 55%,transparent);background:color-mix(in srgb,var(--color-surface) 70%,transparent);border-radius:12px;grid-template-columns:repeat(6,minmax(0,1fr));grid-auto-rows:minmax(42px,1fr);align-content:start;gap:10px 8px;padding:12px;display:grid}.scheduler-skel-block{opacity:.55;border-radius:8px;height:42px;display:block}.scheduler-skel-block:nth-child(3n){grid-column:span 1;height:64px}.scheduler-skel-block:nth-child(5n){opacity:.35;height:28px}@media (width<=960px){.scheduler-skeleton .scheduler-layout{grid-template-columns:1fr}.scheduler-skel-cart{border-right:0;border-bottom:1px solid color-mix(in srgb,var(--color-border) 65%,transparent);max-height:220px}.scheduler-skel-week-head{grid-template-columns:repeat(5,minmax(0,1fr));padding-left:32px}.scheduler-skel-week-head .skeleton-line:nth-child(n+6){display:none}.scheduler-skel-day-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (prefers-reduced-motion:reduce){.scheduler-skel-cart-card,.scheduler-skeleton{animation:none!important}}.scheduler-skeleton .scheduler-layout{flex:auto;grid-template-columns:minmax(280px,340px) minmax(0,1fr);gap:0;min-height:0;display:grid;overflow:hidden}.scheduler-skeleton .scheduler-cart{border-right:1px solid color-mix(in srgb,var(--color-border) 65%,transparent);flex-direction:column;gap:12px;min-width:0;min-height:0;padding:10px 16px 8px 20px;display:flex;overflow:hidden}.scheduler-skeleton .scheduler-side-head{flex-direction:column;flex:none;align-items:stretch;gap:8px;display:flex}.prereq-path-panel{align-content:start;gap:10px;display:grid}.prereq-path-panel[data-compact=true]{gap:6px}.prereq-simple-status{color:var(--color-text);margin:0;font-size:.95rem;font-weight:800}.prereq-path-panel[data-compact=true] .prereq-simple-status{font-size:.82rem}.prereq-simple-status[data-tone=ready]{color:color-mix(in srgb,#1f6f4a 75%,var(--color-text))}.prereq-simple-status[data-tone=missing]{color:color-mix(in srgb,#8a4f12 75%,var(--color-text))}.prereq-simple-status[data-tone=none]{color:var(--color-text-muted)}.prereq-simple-clauses{gap:6px;display:grid}.prereq-path-panel[data-compact=true] .prereq-simple-clauses{gap:4px}.prereq-simple-list{color:var(--color-text);flex-wrap:wrap;align-items:baseline;gap:.35em .45em;margin:0;font-size:.9rem;line-height:1.55;display:flex}.prereq-path-panel[data-compact=true] .prereq-simple-list{font-size:.84rem;line-height:1.4}.prereq-simple-item{align-items:baseline;gap:.3em;font-weight:650;display:inline-flex}.prereq-simple-item.is-met .prereq-simple-state{color:color-mix(in srgb,#1f6f4a 70%,var(--color-text-muted))}.prereq-simple-item.is-missing .prereq-simple-state{color:color-mix(in srgb,#8a4f12 70%,var(--color-text-muted))}.prereq-path-panel[data-compact=true] .prereq-simple-item.is-met .prereq-simple-code{color:color-mix(in srgb,#1f6f4a 70%,var(--color-text))}.prereq-path-panel[data-compact=true] .prereq-simple-item.is-missing .prereq-simple-code{color:color-mix(in srgb,#8a4f12 75%,var(--color-text))}.prereq-simple-item.is-alt{color:var(--color-text-muted);font-weight:550}.prereq-simple-state{font-weight:550}.prereq-simple-op{color:var(--color-text-muted);font-weight:700}.prereq-simple-op.is-or{color:color-mix(in srgb,var(--color-primary) 55%,var(--color-text-muted));font-style:italic}.prereq-simple-sep{color:var(--color-text-muted);font-weight:500}.prereq-simple-empty,.prereq-simple-hint{color:var(--color-text-muted);margin:0;font-size:.8rem;line-height:1.45}.prereq-path-panel[data-compact=true] .prereq-simple-hint{font-size:.76rem}.prereq-simple-hint .prereq-path-graph-link{color:var(--color-primary);margin-left:.35em;font-weight:700;text-decoration:none}.prereq-path-panel[data-compact=true] .prereq-simple-hint .prereq-path-graph-link{margin-left:0}.prereq-simple-hint .prereq-path-graph-link:focus-visible,.prereq-simple-hint .prereq-path-graph-link:hover{outline:none;text-decoration:underline}.signal-shell{gap:12px;max-width:560px;display:grid}.signal-panel{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:radial-gradient(circle at top right,var(--color-primary-soft),transparent 48%),var(--color-surface-glass);gap:12px;padding:18px 18px 16px;display:grid}.signal-title{color:var(--color-text-heading);letter-spacing:-.04em;margin:0;font-family:Outfit,"Source Sans 3",sans-serif;font-size:clamp(1.4rem,3vw,1.75rem);font-weight:700;line-height:1.15}.signal-copy{color:var(--color-text-muted);margin:0;font-size:.92rem;line-height:1.5}.signal-copy code{font-size:.86em}.signal-hint{gap:8px;display:grid}.signal-hint-toggle{color:var(--color-text-subtle);font:inherit;cursor:pointer;text-underline-offset:2px;background:0 0;border:0;justify-self:start;margin:0;padding:0;font-size:.82rem;font-weight:650;text-decoration:underline}.signal-hint-toggle:focus-visible,.signal-hint-toggle:hover{color:var(--color-text)}.signal-hint-body{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-muted);color:var(--color-text-muted);margin:0;padding:10px 12px;font-size:.84rem;line-height:1.45}.signal-form{gap:6px;display:grid}.signal-label{color:var(--color-text-muted);letter-spacing:.05em;text-transform:uppercase;font-size:.68rem;font-weight:800}.signal-row{flex-wrap:wrap;gap:8px;display:flex}.signal-input{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);min-height:38px;color:var(--color-text);flex:220px;padding:0 12px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.88rem}.signal-input:focus{border-color:color-mix(in srgb,var(--color-primary) 50%,var(--color-border));box-shadow:0 0 0 3px var(--color-primary-soft);outline:none}.signal-message{margin:0;font-size:.86rem;font-weight:650;line-height:1.4}.signal-message.is-ok{color:var(--color-success-text)}.signal-message.is-err{color:var(--color-error-text)}.signal-back{margin:4px 0 0;font-size:.84rem;font-weight:650}.signal-back a{color:var(--color-primary);text-decoration:none}.signal-back a:focus-visible,.signal-back a:hover{outline:none;text-decoration:underline}.import-kind-toggle{background:color-mix(in srgb,var(--color-surface-muted,#f2f4f7) 88%,transparent);border-radius:999px;gap:4px;margin-top:10px;padding:3px;display:inline-flex}.import-kind-chip{appearance:none;color:var(--color-text-muted,#667085);font:inherit;cursor:pointer;background:0 0;border:none;border-radius:999px;padding:.35rem .75rem;font-size:.78rem;font-weight:650}.import-kind-chip.active,.import-kind-chip[aria-selected=true]{background:var(--color-surface,#fff);color:inherit;box-shadow:0 1px 2px #00000014}.audit-diff-block,.audit-req-block{gap:8px;margin:12px 0;display:grid}.audit-diff-title{margin:0;font-size:.85rem;font-weight:700}.audit-diff-list,.audit-req-list{gap:6px;margin:0;padding:0;list-style:none;display:grid}.audit-diff-row,.audit-req-row{border:1px solid var(--color-border,#d0d5dd);background:var(--color-surface,#fff);border-radius:10px;gap:2px;padding:8px 10px;font-size:.8rem;display:grid}.audit-diff-row[data-kind=audit_done_triton_open]{border-color:color-mix(in srgb,var(--color-warning,#9a6700) 45%,var(--color-border,#d0d5dd))}.audit-diff-note,.audit-req-needs{color:var(--color-text-muted,#667085);font-size:.74rem}.audit-req-status{text-transform:uppercase;letter-spacing:.03em;font-size:.72rem;font-weight:700}.audit-req-row[data-status=ok] .audit-req-status{color:color-mix(in srgb,var(--color-success,#067647) 85%,#111)}.audit-req-row[data-status=no] .audit-req-status{color:color-mix(in srgb,var(--color-danger,#b42318) 85%,#111)}.audit-req-row[data-status=ip] .audit-req-status{color:color-mix(in srgb,var(--color-primary) 75%,#111)}.student-tools-modal-panel{flex-direction:column;gap:14px;width:min(640px,100vw - 28px);max-height:min(860px,100vh - 36px);display:flex;overflow:hidden}.student-tools-modal-head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.student-tools-modal-head h2{margin:0;font-size:1.15rem}.student-tools-modal-close{color:#c0392b;cursor:pointer;background:0 0;border:0;border-radius:0;flex:none;width:auto;height:auto;padding:2px 4px;font-size:1.35rem;line-height:1}.student-tools-modal-close:hover{color:#8b1e14;background:0 0;border:0}.student-tools-body{gap:14px;min-height:0;padding-right:2px;display:grid;overflow:auto}.student-import-panel{gap:12px;display:grid}.student-import-panel.is-compact{gap:10px}.student-import-help{margin:0}.student-import-stable{gap:8px;display:grid}.student-import-textarea{border:1px solid var(--color-border-medium);border-radius:var(--radius-md);background:linear-gradient(180deg,color-mix(in srgb,var(--color-surface) 92%,var(--color-surface-muted)) 0,var(--color-surface) 100%);width:100%;min-height:96px;color:var(--color-text);font:inherit;resize:none;outline:none;padding:11px 13px;font-size:.88rem;line-height:1.45;transition:border-color .14s,box-shadow .14s;box-shadow:inset 0 1px #ffffff59}.student-import-textarea::placeholder{color:var(--color-text-subtle)}.student-import-textarea:hover{border-color:color-mix(in srgb,var(--color-border-medium) 70%,var(--color-text-heading))}.student-import-textarea:focus{border-color:var(--color-text-heading);box-shadow:inset 0 1px 0 #ffffff59,0 0 0 3px color-mix(in srgb,var(--color-text-heading) 12%,transparent)}.student-import-panel.is-compact .student-import-textarea{min-height:72px;padding:8px 10px;font-size:.82rem}.student-import-stable.is-ap{gap:10px}.student-import-ap-manual{gap:6px;display:grid}.student-import-ap-add{grid-template-columns:minmax(0,1fr) 56px auto;align-items:center;gap:6px 8px;display:grid}@media (width<=720px){.student-import-ap-add{grid-template-columns:minmax(0,1fr) auto}.student-import-ap-exam{grid-column:1/-1}.student-import-ap-score{min-width:0}.student-import-ap-score .themed-select-trigger{min-height:40px}.student-import-ap-add-btn{min-height:40px;padding:0 14px}.student-tools-modal-panel{width:min(100vw - 16px,640px);max-height:min(92dvh,100%)}}.student-import-ap-score .themed-select-trigger{min-height:34px;padding:0 8px;font-size:.84rem}.student-import-ap-add-btn{border:1px solid var(--color-border-medium);border-radius:var(--radius-md);background:var(--color-surface);min-height:34px;color:var(--color-text-heading);font:inherit;cursor:pointer;padding:0 12px;font-size:.78rem;font-weight:700}.student-import-ap-add-btn:hover:not(:disabled){border-color:var(--color-text-heading);background:var(--color-surface-muted)}.student-import-ap-add-btn:disabled{opacity:.45;cursor:not-allowed}.student-import-ap-draft{flex-wrap:wrap;gap:6px;display:flex}.student-import-ap-chip{border:1px solid var(--color-border);background:var(--color-surface-muted);border-radius:999px;align-items:center;gap:5px;max-width:100%;min-height:26px;padding:3px 4px 3px 8px;font-size:.72rem;line-height:1.2;display:inline-flex}.student-import-ap-chip-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--color-text-heading);font-weight:650;overflow:hidden}.student-import-ap-chip-score{color:var(--color-text-muted);font-variant-numeric:tabular-nums;flex:none;font-weight:750}.student-import-ap-chip-remove{width:18px;height:18px;color:var(--color-text-subtle);cursor:pointer;background:0 0;border:0;border-radius:999px;flex:none;margin:0;padding:0;font-size:.95rem;line-height:1}.student-import-ap-chip-remove:hover{color:var(--color-error-text,#b42318);background:color-mix(in srgb,var(--color-error-text,#b42318) 10%,transparent)}.student-import-ap-paste{border-top:1px solid var(--color-border);padding-top:6px}.student-import-ap-paste>summary{cursor:pointer;color:var(--color-text-muted);font-size:.76rem;font-weight:700;list-style:none}.student-import-ap-paste>summary::-webkit-details-marker{display:none}.student-import-ap-paste>summary:before{content:"▸";color:var(--color-text-subtle);margin-right:6px;display:inline-block}.student-import-ap-paste[open]>summary:before{content:"▾"}.student-import-ap-paste-body{gap:8px;margin-top:8px;display:grid}.student-import-ap-paste-body .import-file{padding:8px 10px}.student-import-ap-paste-body .import-file-label{font-size:.84rem}.profile-field-credits{margin-top:4px}.profile-credits-shell{gap:8px;display:grid}.profile-ap-chip-grid{flex-wrap:wrap;gap:6px;display:flex}.profile-ap-chip{border:1px solid var(--color-border);background:var(--color-surface-muted);border-radius:999px;align-items:center;gap:5px;min-width:0;max-width:calc(25% - 5px);min-height:26px;padding:3px 4px 3px 8px;font-size:.72rem;line-height:1.2;display:inline-flex}@media (width<=720px){.profile-ap-chip{max-width:calc(33.333% - 4px)}}@media (width<=520px){.profile-ap-chip{max-width:calc(50% - 3px)}}.profile-ap-chip-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--color-text-heading);font-weight:650;overflow:hidden}.profile-ap-chip-score{color:var(--color-text-muted);font-variant-numeric:tabular-nums;flex:none;font-weight:750}.profile-ap-chip-remove{width:18px;height:18px;color:var(--color-text-subtle);cursor:pointer;background:0 0;border:0;border-radius:999px;flex:none;margin:0;padding:0;font-size:.95rem;line-height:1}.profile-ap-chip-remove:hover:not(:disabled){color:var(--color-error-text,#b42318);background:color-mix(in srgb,var(--color-error-text,#b42318) 10%,transparent)}.profile-ap-chip-remove:disabled{opacity:.45;cursor:not-allowed}.profile-credits-details{gap:10px;display:grid}.profile-ap-detail-list{gap:6px;margin:0;padding:0;list-style:none;display:grid}.profile-ap-detail-row{gap:1px;font-size:.76rem;line-height:1.35;display:grid}.profile-ap-detail-row strong{color:var(--color-text-heading);font-size:.82rem;font-weight:700}.profile-ap-detail-row span{color:var(--color-text-muted)}.profile-ap-detail-muted{color:var(--color-text-subtle)!important}.profile-docs-block{gap:6px;padding-top:2px;display:grid}.profile-docs-label{color:var(--color-text-subtle);letter-spacing:.04em;text-transform:uppercase;margin:0;font-size:.68rem;font-weight:800}.profile-docs-list{gap:8px;margin:0;padding:0;list-style:none;display:grid}.profile-docs-row{gap:1px;min-width:0;display:grid}.profile-docs-kind{color:var(--color-text-subtle);letter-spacing:.02em;text-transform:uppercase;font-size:.7rem;font-weight:700}.profile-docs-title{color:var(--color-text-heading);font-size:.84rem;font-weight:650;line-height:1.3}.profile-docs-meta{color:var(--color-text-subtle);font-size:.74rem;font-weight:550}.profile-credits-footer{flex-wrap:wrap;align-items:center;gap:12px;padding-top:2px;display:flex}.profile-credits-link{color:var(--color-text-muted);font:inherit;text-underline-offset:2px;cursor:pointer;background:0 0;border:0;margin:0;padding:0;font-size:.76rem;font-weight:700;text-decoration:underline}.profile-credits-link:hover{color:var(--color-text-heading)}.profile-credits-empty{flex-wrap:wrap;align-items:baseline;gap:6px;display:flex}.profile-credits-warnings{gap:4px;margin:0;padding:0;list-style:none;display:grid}.profile-credits-warnings li{color:var(--color-warning,#9a6700);font-size:.76rem;line-height:1.35}.student-import-college{gap:4px;display:grid}.student-credits-library{gap:8px;display:grid}.student-ap-chips{flex-wrap:wrap;gap:5px;display:flex}.student-ap-chip{border:1px solid var(--color-border);background:var(--color-surface-muted);border-radius:999px;align-items:center;gap:6px;max-width:100%;min-height:26px;padding:3px 6px 3px 9px;font-size:.72rem;line-height:1.2;display:inline-flex}.student-ap-chip-name{color:var(--color-text-heading);white-space:nowrap;font-weight:650}.student-ap-chip-score{color:var(--color-text-muted);font-variant-numeric:tabular-nums;flex:none;font-weight:750}.student-ap-chip-courses{color:var(--color-text-subtle);white-space:nowrap;text-overflow:ellipsis;max-width:9.5rem;font-weight:550;overflow:hidden}.student-ap-chip-remove{width:auto;height:auto;margin-left:2px;padding:0 4px;font-size:.95rem}.student-credits-compact-list{gap:2px;margin:0;padding:0;list-style:none;display:grid}.student-credits-compact-row{justify-content:space-between;align-items:center;gap:8px;min-height:24px;padding:1px 0;display:flex}.student-credits-compact-main{flex-wrap:wrap;align-items:baseline;gap:2px 6px;min-width:0;font-size:.74rem;line-height:1.2;display:flex}.student-credits-compact-main strong{color:var(--color-text-heading);font-weight:650}.student-credits-compact-meta{color:var(--color-text-subtle);font-size:.7rem;font-weight:550}.student-credits-remove{color:#c0392b;cursor:pointer;background:0 0;border:0;border-radius:0;flex:none;width:auto;height:auto;padding:0;font-size:.95rem;line-height:1}.student-credits-remove:hover:not(:disabled){color:#8b1e14;background:0 0}.student-credits-remove:disabled{opacity:.45;cursor:not-allowed}@media (width<=520px){.student-ap-chip-courses{display:none}}.student-import-college .themed-select-compact{max-width:none}.themed-select-menu.is-portal{z-index:320;position:fixed;right:auto;overflow-y:auto}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.student-import-panel.is-compact .import-file{padding:10px 12px}.student-import-panel.is-compact .import-file.has-file{padding-right:36px}.student-import-modes{flex-wrap:wrap;gap:6px;display:flex}.student-import-mode-chip{border:1px solid var(--color-border);background:var(--color-surface);min-height:30px;color:var(--color-text-muted);font:inherit;cursor:pointer;border-radius:999px;padding:0 11px;font-size:.78rem;font-weight:650}.student-import-mode-chip.active{border-color:var(--color-text-heading);color:var(--color-text-heading);background:var(--color-surface-muted)}.student-import-detect{color:var(--color-text-muted);margin:0;font-size:.78rem}.student-import-mismatch{border:1px solid var(--color-warning,#d4a017);border-radius:var(--radius-md);background:color-mix(in srgb,var(--color-warning,#d4a017) 10%,var(--color-surface));gap:8px;padding:10px 12px;display:grid}.student-import-mismatch p{margin:0;font-size:.84rem;line-height:1.4}.student-import-mismatch-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.student-import-actions{justify-items:start;gap:8px;display:grid}.student-import-review-title{color:var(--color-text-heading);margin:0;font-size:.92rem}.student-import-review{gap:12px;display:grid}.student-tools-about{gap:16px;display:grid}.student-tools-about-block{gap:8px;display:grid}.student-tools-about-title{color:var(--color-text-heading);letter-spacing:.02em;margin:0;font-size:.82rem;font-weight:750}.student-tools-ap-list{gap:6px;margin:0;padding:0;list-style:none;display:grid}.student-tools-ap-row{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);justify-content:space-between;align-items:center;gap:8px;padding:7px 10px;display:flex}.student-tools-ap-main{flex-wrap:wrap;align-items:baseline;gap:6px 8px;min-width:0;font-size:.84rem;display:flex}.student-tools-ap-main strong{color:var(--color-text-heading);font-weight:650}.student-tools-ap-score{color:var(--color-text-muted);font-weight:700}.student-tools-ap-courses{color:var(--color-text-subtle);font-size:.74rem}.student-tools-ap-remove{border-radius:var(--radius-md);width:28px;height:28px;color:var(--color-text-muted);cursor:pointer;background:0 0;border:0;flex:none;font-size:1.1rem;line-height:1}.student-tools-ap-remove:hover{color:var(--color-text-heading);background:var(--color-surface-muted)}.planner-shell.is-progress .progress-page-heading{margin:0 0 8px}
