
:root{color-scheme:dark;--bg:#17191c;--surface:#1c1f23;--surface2:#22262b;--line:#373b42;--soft-line:#2b2f35;--text:#eeeee9;--muted:#aaadb5;--accent:#d1b1e8;--accent-bg:#2e2637;--green:#a6c9b3;--amber:#e3c18c;--danger:#edaaa8;--sans:'Helvetica Neue',Helvetica,Arial,sans-serif;--serif:var(--sans)}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font-family:var(--sans);font-size:14px;line-height:1.5;-webkit-font-smoothing:antialiased}button,input,select,textarea{font:inherit}button,a,input,select{touch-action:manipulation}button{color:inherit;cursor:pointer}button:disabled{opacity:.4;cursor:not-allowed}button,a,input,select,textarea{outline-offset:4px}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--accent)}button{background:none;border:0}a{color:var(--accent);text-underline-offset:3px}svg{height:20px;width:20px;stroke:currentColor;stroke-width:1.65;fill:none;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}h1,h2,h3,p{margin:0}h1,h2,.serif{font-family:var(--serif);font-weight:400;line-height:1.12}h1{font-size:clamp(34px,3.4vw,47px)}h2{font-size:34px}h3{font-size:17px;font-weight:550}small{font-size:12px}.muted{color:var(--muted)}.purple{color:var(--accent)}.tabular{font-variant-numeric:tabular-nums;font-feature-settings:'tnum'}
.skip-link{position:fixed;top:-70px;left:20px;z-index:20;padding:12px;background:var(--accent-bg)}.skip-link:focus{top:8px}.topbar{height:86px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 clamp(24px,4vw,64px);gap:24px}.brand{display:flex;align-items:center;gap:17px;color:var(--text);text-decoration:none}.brand>svg{height:37px;width:37px;stroke-width:1.4}.brand-copy{padding-left:18px;border-left:1px solid var(--line)}.brand strong{display:block;font-size:19px;font-weight:650;letter-spacing:.085em;line-height:1.4}.brand small{color:var(--muted);font-size:12px;letter-spacing:.02em}.nav{display:flex;align-self:stretch;gap:36px;margin-right:auto;margin-left:clamp(24px,7vw,112px)}.nav-button{position:relative;font-size:15px;color:var(--muted);padding:0 3px;display:flex;align-items:center;gap:8px}.nav-button:hover{color:var(--text)}.nav-button.active{font-weight:600;color:var(--text)}.nav-button.active:after{position:absolute;content:'';bottom:18px;left:0;right:0;height:2px;background:var(--accent)}.top-tools{display:flex;align-items:center;gap:21px}.save-state{display:flex;gap:7px;align-items:center;color:var(--muted);font-size:12px;white-space:nowrap}.save-state svg{width:15px;height:15px}.save-state.error{color:var(--danger)}.icon-btn{height:34px;width:34px;display:inline-flex;align-items:center;justify-content:center;border-radius:4px}.icon-btn:hover{background:var(--surface2)}.tools-divider{height:23px;width:1px;background:var(--line)}
.shell{max-width:1600px;margin:auto;padding:34px clamp(24px,4vw,64px) 24px}.page-heading{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:28px}.eyebrow{text-transform:uppercase;font-size:10px;letter-spacing:.17em;font-weight:550;margin-bottom:9px;color:var(--muted)}.title-row{display:flex;align-items:center;gap:18px}.sample-badge{border:1px solid var(--line);color:var(--accent);font-size:11px;line-height:1;padding:6px 8px;border-radius:3px;font-family:var(--sans);letter-spacing:.01em;white-space:nowrap}.term-tools{display:flex;align-items:center;gap:22px}.term-tabs{display:flex;align-items:center;gap:21px}.term-tabs button{color:var(--muted);font-size:14px;padding:8px 0;border-bottom:2px solid transparent}.term-tabs button.active{color:var(--text);border-color:var(--accent)}select{appearance:none;background:var(--bg) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23aaadb5' stroke-width='1.6'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") no-repeat right 11px center;border:1px solid var(--line);border-radius:4px;color:var(--text);padding:8px 34px 8px 12px;min-height:37px}input,textarea{color:var(--text);border:1px solid #494d55;border-radius:3px;padding:7px 10px;background:var(--bg);min-width:0}input[type=number]{font-variant-numeric:tabular-nums}input::placeholder{color:#858991}textarea{resize:vertical}input:disabled{opacity:.45}input[aria-invalid=true]{border-color:var(--danger)}input[type=checkbox]{accent-color:var(--accent)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid #62646c;padding:8px 15px;border-radius:4px;font-size:12px;font-weight:500;min-height:36px;text-decoration:none;white-space:nowrap}.btn svg{width:15px;height:15px}.btn:hover{background:var(--surface2);border-color:#88878f}.btn.primary{color:var(--accent);border-color:var(--accent)}.btn.primary:hover{background:var(--accent-bg)}.btn.solid{color:#1c1720;background:var(--accent);border-color:var(--accent);font-weight:600}.btn.danger{color:var(--danger);border-color:#8e5c5b}.text-btn{font-size:12px;color:var(--accent);padding:5px 0;display:inline-flex;align-items:center;gap:5px}.text-btn:hover{text-decoration:underline;text-underline-offset:4px}.text-btn svg{width:14px;height:14px}.subtle-btn{color:var(--muted)}
.summary{display:flex;align-items:center;gap:32px;padding:24px 2px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-bottom:0;min-height:116px}.summary-number{font-size:clamp(40px,4.9vw,62px);font-weight:550;letter-spacing:-.035em;line-height:1.05;white-space:nowrap}.summary-description{min-width:220px}.summary-label{font-size:14px;font-weight:500;margin-bottom:3px}.summary-detail{font-size:12px;color:var(--muted)}.summary-extra{padding-left:32px;border-left:1px solid var(--line)}.summary-extra .goal-line{display:flex;align-items:center;gap:10px;margin-bottom:5px}.goal-input{width:59px;padding:3px 5px;background:transparent;border-color:transparent;font-size:16px;font-weight:550}.goal-input:hover,.goal-input:focus{border-color:var(--line)}.summary-actions{margin-left:auto;display:flex;align-items:center;gap:14px}.sample-notice,.notice{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:11px 14px;border-bottom:1px solid var(--line);font-size:12px;color:var(--muted);background:#232629}.sample-notice strong{font-weight:500;color:var(--text)}.sample-notice .text-btn{white-space:nowrap}.notice.warning{border:1px solid #6e5d42;background:#2a251e;color:var(--amber);margin:16px 0;border-radius:3px;align-items:flex-start}.notice.error{border:1px solid #76504f;background:#2b2021;color:var(--danger);margin:16px 0;border-radius:3px;align-items:flex-start}.notice.info{background:var(--surface);border:1px solid var(--line);border-radius:4px;margin:14px 0;align-items:flex-start}
.workspace{display:grid;grid-template-columns:minmax(245px,.78fr) minmax(0,1.72fr);min-height:555px}.course-list{border-right:1px solid var(--line);padding:25px 24px 20px 0}.section-label{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px;gap:15px}.section-label h2{font-size:30px}.course-row{position:relative;display:flex;justify-content:space-between;text-align:left;width:100%;border-bottom:1px solid var(--line);padding:17px 14px 17px 10px;gap:13px;min-height:91px;border-radius:0}.course-row:hover{background:var(--surface)}.course-row.selected{background:#292d30}.course-row.selected:before{content:'';position:absolute;width:3px;background:var(--accent);left:0;top:10px;bottom:10px;border-radius:2px}.course-code{display:block;font-size:14px;font-weight:600;letter-spacing:.025em}.course-name{display:block;color:#c6c8cf;font-size:12px;margin-top:4px;line-height:1.5;max-width:240px}.course-row-value{text-align:right;flex-shrink:0;min-width:65px}.course-row-value strong{display:block;font-size:19px;font-weight:550;letter-spacing:-.025em}.course-row-value small{display:block;margin-top:4px;font-size:10px;color:var(--muted)}.setup-label{color:var(--amber)!important;font-size:10px!important}.course-list-footer{font-size:11px;line-height:1.7;color:var(--muted);padding:18px 10px 0}.course-detail{padding:25px 0 20px 32px;min-width:0}.course-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:16px}.course-heading .eyebrow{color:var(--muted);font-size:11px;margin-bottom:5px}.course-heading h2{font-size:34px;max-width:610px;letter-spacing:-.015em}.course-heading .credits{display:block;color:var(--muted);font-size:12px;margin-top:7px}.course-heading .text-btn{white-space:nowrap;flex-shrink:0}.mobile-back{display:none}.course-metrics{display:flex;gap:24px;align-items:center;font-size:12px;margin-bottom:17px;flex-wrap:wrap}.course-metrics>span{display:flex;align-items:center;gap:12px}.course-metrics>span+span{border-left:1px solid var(--line);padding-left:24px}.course-metrics strong{font-size:19px;font-weight:550}.info-icon{display:inline-flex;color:var(--muted);vertical-align:middle}.info-icon svg{width:13px;height:13px}.detail-tabs{display:flex;gap:30px;border-bottom:1px solid var(--line);margin-bottom:0}.detail-tabs button{padding:8px 8px 12px;position:relative;color:var(--muted);font-size:14px}.detail-tabs button.active{color:var(--text);font-weight:600}.detail-tabs button.active:after{position:absolute;content:'';bottom:-1px;left:0;right:0;height:2px;background:var(--accent)}.grade-table{width:100%;border-collapse:collapse;table-layout:fixed;font-size:12px}.grade-table th{color:var(--muted);font-size:10px;letter-spacing:.03em;font-weight:500;text-align:left;padding:12px 10px 10px;border-bottom:1px solid var(--line)}.grade-table td{padding:11px 10px;border-bottom:1px solid var(--line);vertical-align:middle}.grade-table th:first-child,.grade-table td:first-child{padding-left:8px;width:37%}.grade-table th:nth-child(2){width:13%}.grade-table th:nth-child(3){width:34%}.grade-table th:last-child{width:16%;text-align:right}.grade-table td:last-child{text-align:right;font-variant-numeric:tabular-nums}.category-name{display:flex;align-items:center;gap:7px;font-size:12px;font-weight:500;text-align:left;width:100%;padding:0}.category-name svg{height:13px;width:13px;color:var(--muted)}.group-meta{font-size:9px;color:var(--muted);margin:3px 0 0 20px;font-weight:400}.group-value{color:var(--muted);font-size:12px;font-variant-numeric:tabular-nums;display:flex;gap:7px;align-items:center}.group-value .text-btn{font-size:11px}.score-pair{display:flex;align-items:center;gap:6px}.score-pair input{width:67px;padding:5px 6px;font-size:12px;min-height:31px}.score-pair input.max-input{width:54px;color:var(--muted);border-color:var(--soft-line)}.score-pair .slash{color:var(--muted)}input[type=number]::-webkit-inner-spin-button{opacity:0}input[type=number]:hover::-webkit-inner-spin-button,input[type=number]:focus::-webkit-inner-spin-button{opacity:1}.item-row{background:var(--surface)}.item-row td{font-size:11px;padding-top:8px;padding-bottom:8px;border-color:var(--soft-line)}.item-row td:first-child{padding-left:28px;color:#bfc2c9}.item-row.dropped td:first-child,.item-row.dropped td:last-child{opacity:.55}.dropped-badge{font-size:8px;text-transform:uppercase;letter-spacing:.04em;padding:2px 4px;background:var(--accent-bg);color:var(--accent);margin-left:6px;border-radius:2px;white-space:nowrap}.item-actions td{padding:4px 10px 9px 28px}.entry-footer{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-top:8px;font-size:10px;color:var(--muted)}.completion-line{font-size:11px;color:var(--muted);margin-top:10px}.course-goal{border-top:1px solid var(--line);margin-top:26px;padding-top:20px}.course-goal h3{font-family:var(--serif);font-size:27px;font-weight:400;margin-bottom:14px}.goal-workspace{display:flex;gap:24px;align-items:center;flex-wrap:wrap}.goal-control{display:flex;align-items:center;gap:10px}.target-input{width:72px;font-size:15px;padding:6px 8px}.percent-wrap{position:relative}.percent-wrap:after{content:'%';position:absolute;right:10px;top:50%;transform:translateY(-50%);color:var(--muted);font-size:12px;pointer-events:none}.percent-wrap input{padding-right:24px}.goal-explanation{border-left:1px solid var(--line);padding-left:24px;flex:1;min-width:190px}.goal-result{font-size:13px}.goal-result strong{font-size:27px;font-weight:500;margin-right:5px;letter-spacing:-.025em}.goal-caption{font-size:11px;color:var(--muted);margin-top:3px}.goal-workspace .btn{margin-left:auto}.tiny-note{font-size:10px;color:var(--muted);margin-top:12px;line-height:1.7}.requirement-list{margin-top:12px;display:grid;gap:8px}.requirement{padding:10px 12px;border:1px solid var(--line);font-size:12px;border-radius:3px;display:flex;justify-content:space-between;gap:15px}.requirement.watch,.requirement.below{border-color:#6e5d42;color:var(--amber)}.rules-content{padding-top:20px;display:grid;gap:18px}.rules-section h3{font-size:13px;font-weight:600;margin-bottom:7px}.rules-section p,.rules-section li{color:var(--muted);font-size:12px;line-height:1.8}.rules-section ul{margin:0;padding-left:18px}.rules-section a{font-size:12px}.rule-tags{display:flex;gap:7px;flex-wrap:wrap;margin-top:10px}.rule-tag{border:1px solid var(--line);font-size:10px;padding:4px 8px;border-radius:3px;color:var(--muted)}.empty-state{padding:55px 24px;text-align:center;border-bottom:1px solid var(--line)}.empty-state svg{height:31px;width:31px;color:var(--muted);margin-bottom:15px}.empty-state h3{font-family:var(--serif);font-size:28px;margin-bottom:10px;font-weight:400}.empty-state p{font-size:12px;color:var(--muted);max-width:380px;margin:0 auto 20px;line-height:1.8}.empty-list{padding:28px 12px;color:var(--muted);font-size:12px}
.planner-layout{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(260px,.8fr);gap:40px;border-top:1px solid var(--line);padding-top:28px}.planner-title{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-bottom:20px}.planner-title select{min-width:260px;max-width:100%}.planner-description{font-size:12px;color:var(--muted);line-height:1.8;margin-bottom:20px;max-width:650px}.scenario-table th:first-child{width:37%}.scenario-table th:nth-child(2){width:17%}.scenario-table th:nth-child(3){width:23%}.scenario-table th:nth-child(4){width:23%}.scenario-table td:last-child{text-align:right}.scenario-input{width:78px}.scenario-table .group-label td{color:var(--muted);font-weight:500;font-size:10px;background:var(--surface);padding-top:9px;padding-bottom:9px}.planner-aside{padding-left:28px;border-left:1px solid var(--line)}.planner-aside h3{font-family:var(--serif);font-size:29px;font-weight:400;margin-bottom:14px}.projection-number{font-size:38px;line-height:1.2;margin:13px 0 6px;font-weight:500;letter-spacing:-.035em}.projection-number.range{font-size:30px}.planner-aside .block{padding-bottom:23px;border-bottom:1px solid var(--line);margin-bottom:22px}.planner-aside .goal-control{margin:12px 0}.quick-fill{display:flex;align-items:center;gap:12px;margin:15px 0}.quick-fill input[type=range]{width:100%;padding:0;accent-color:var(--accent)}.quick-fill output{min-width:37px;font-size:15px;font-variant-numeric:tabular-nums}.planner-aside .btn{width:100%;margin-top:5px}.planner-aside .text-btn{margin-top:7px}.small-label{font-size:11px;color:var(--muted)}
dialog{background:var(--surface);color:var(--text);border:1px solid #4a4a52;border-radius:6px;padding:0;max-width:min(860px,calc(100vw - 32px));width:800px;max-height:calc(100dvh - 70px);box-shadow:0 25px 90px #0006}dialog::backdrop{background:#0a0b0dbb;backdrop-filter:blur(3px)}.dialog-header{display:flex;justify-content:space-between;gap:20px;align-items:center;padding:23px 26px;border-bottom:1px solid var(--line);position:sticky;top:0;background:var(--surface);z-index:1}.dialog-header h2{font-size:29px}.dialog-body{padding:23px 26px}.dialog-footer{display:flex;align-items:center;justify-content:flex-end;gap:10px;padding:17px 26px;border-top:1px solid var(--line);position:sticky;bottom:0;background:var(--surface);z-index:1}.dialog-footer .text-btn{margin-right:auto}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:25px}.form-field{display:flex;flex-direction:column;gap:6px;font-size:11px;color:var(--muted)}.form-field.full{grid-column:1/-1}.form-field input,.form-field select{font-size:13px;color:var(--text);width:100%;min-height:37px}.form-section-title{font-size:13px;font-weight:550;margin:0 0 7px}.form-help{font-size:11px;color:var(--muted);line-height:1.8;margin-bottom:17px}.setup-table{width:100%;border-collapse:collapse;table-layout:fixed;font-size:11px}.setup-table th{font-weight:400;color:var(--muted);text-align:left;padding:7px 4px;font-size:10px}.setup-table th:first-child{width:30%}.setup-table th:nth-child(2){width:13%}.setup-table th:nth-child(3){width:12%}.setup-table th:nth-child(4){width:12%}.setup-table th:nth-child(5){width:15%}.setup-table th:nth-child(6){width:10%}.setup-table th:last-child{width:8%}.setup-table td{padding:6px 4px}.setup-table input{width:100%;font-size:11px;padding:6px;min-height:33px}.setup-table input[type=checkbox]{width:16px;min-height:16px;display:block;margin:auto}.setup-table .icon-btn{width:27px;height:29px}.setup-table .icon-btn svg{height:14px;width:14px}.weight-total{text-align:right;color:var(--muted);font-size:12px;margin-top:13px}.weight-total.invalid{color:var(--amber)}.manual-section{border-top:1px solid var(--line);margin-top:22px;padding-top:18px;display:flex;align-items:center;justify-content:space-between;gap:20px}.manual-section input{width:100px}.field-error{font-size:12px;color:var(--danger);margin-top:15px;line-height:1.6}.settings-group{border-bottom:1px solid var(--line);padding:0 0 22px;margin-bottom:22px}.settings-group:last-child{border:0;margin-bottom:0}.settings-group h3{font-size:15px;margin-bottom:7px}.settings-group p{font-size:12px;color:var(--muted);line-height:1.8;margin-bottom:15px}.button-row{display:flex;gap:10px;flex-wrap:wrap}.confirm-body{font-size:13px;line-height:1.8;color:var(--muted)}.confirm-body strong{color:var(--text)}#toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%) translateY(120px);transition:transform .2s ease;background:#2e3038;border:1px solid #55525c;box-shadow:0 3px 20px #0005;color:var(--text);font-size:12px;padding:11px 18px;border-radius:4px;z-index:30;max-width:calc(100vw - 30px);display:flex;align-items:center;gap:20px}#toast.show{transform:translateX(-50%) translateY(0)}#toast button{color:var(--accent);text-decoration:underline;font-size:12px}.inline-error{color:var(--danger);font-size:11px;margin-top:8px}
input[type=number]{appearance:textfield;-moz-appearance:textfield}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0;display:none}
.item-name{width:100%;padding:3px 4px;background:transparent;border-color:transparent;font-size:11px;min-height:27px}.item-name:hover,.item-name:focus{border-color:var(--line)}
@media(min-width:1550px){.workspace{grid-template-columns:360px minmax(0,1fr)}.course-detail{padding-left:38px}.course-list{padding-right:30px}.course-row{padding-top:20px;padding-bottom:20px}}
@media(max-width:1150px){.topbar{padding:0 25px;gap:18px}.nav{margin-left:25px;gap:25px}.brand strong{font-size:16px}.brand>svg{width:28px;height:28px}.brand-copy{padding-left:13px}.shell{padding-left:25px;padding-right:25px}.summary{gap:23px}.summary-description{min-width:180px}.summary-extra{padding-left:23px}.summary-actions{display:none}.workspace{grid-template-columns:270px minmax(0,1fr)}.course-detail{padding-left:25px}.course-list{padding-right:20px}.course-metrics{gap:15px}.course-metrics>span+span{padding-left:15px}.course-heading{gap:10px}.course-heading h2{font-size:29px}.course-heading .text-btn{font-size:10px}.grade-table td{padding-left:6px;padding-right:6px}.score-pair input{width:55px}.score-pair input.max-input{width:45px}.goal-workspace{gap:15px}.goal-explanation{padding-left:15px}.goal-workspace .btn{margin-left:0}.planner-layout{gap:25px}.planner-aside{padding-left:23px}}
@media(max-width:850px){.topbar{height:73px;gap:14px}.brand small{display:none}.brand-copy{border:0;padding:0}.brand>svg{width:25px;height:25px}.brand{gap:10px}.brand strong{font-size:14px}.nav{margin-left:auto;margin-right:10px;gap:23px}.nav-button{font-size:13px}.nav-button.active:after{bottom:13px}.save-state span{display:none}.top-tools{gap:6px}.tools-divider{display:none}.workspace{grid-template-columns:230px minmax(0,1fr)}.course-list{padding-right:13px}.course-detail{padding-left:20px}.course-row{padding-right:7px;gap:7px}.course-name{font-size:11px}.course-code{font-size:12px}.course-row-value strong{font-size:16px}.course-row-value{min-width:53px}.course-heading{display:block}.course-heading .text-btn{margin-top:10px}.grade-table{font-size:11px}.grade-table th:first-child{width:32%}.grade-table th:nth-child(3){width:39%}.score-pair{gap:4px}.score-pair input{width:48px}.score-pair input.max-input{width:39px}.summary-number{font-size:44px}.summary-description{min-width:150px}.summary-label{font-size:12px}.summary-detail{font-size:10px}.summary-extra{padding-left:20px}.summary-extra .goal-line{font-size:12px}.goal-explanation{min-width:180px}.course-metrics{font-size:10px;gap:13px}.course-metrics strong{font-size:17px}.planner-layout{grid-template-columns:1fr}.planner-aside{border-left:0;padding-left:0;display:grid;grid-template-columns:1fr 1fr;gap:25px}.planner-aside .block{margin-bottom:0}.planner-title select{min-width:220px}}
@media(max-width:650px){.topbar{padding:0 17px;height:66px;gap:6px}.brand strong{font-size:12px;letter-spacing:.04em}.brand>svg{width:22px;height:22px}.nav{gap:16px;margin-right:7px;margin-left:auto}.nav-button{font-size:12px}.top-tools{gap:0}.save-state{display:none}.icon-btn{width:28px}.shell{padding:24px 18px 15px}.page-heading{gap:12px;align-items:flex-start;flex-wrap:wrap;margin-bottom:22px}.eyebrow{font-size:8px;letter-spacing:.14em}.title-row{gap:12px}h1{font-size:36px}.sample-badge{font-size:9px}.term-tools{gap:16px;margin-top:2px}.term-tools select{min-height:31px;font-size:11px;padding:5px 28px 5px 9px;background-position:right 7px center}.term-tabs{gap:16px}.term-tabs button{font-size:12px;padding:5px 0}.summary{gap:15px;flex-wrap:wrap;padding:20px 0;min-height:104px}.summary-number{font-size:46px}.summary-description{min-width:0;flex:1}.summary-label{font-size:12px}.summary-detail{font-size:10px;max-width:200px}.summary-extra{flex-basis:100%;border-left:0;padding-left:0;display:flex;align-items:center;justify-content:space-between;padding-top:7px}.summary-extra .goal-line{margin-bottom:0;font-size:11px}.goal-input{font-size:13px;width:53px}.summary-extra .summary-detail{font-size:10px}.sample-notice{padding:10px 0;background:none;font-size:10px;align-items:flex-start}.sample-notice .text-btn{font-size:10px}.workspace{display:block;min-height:0}.course-list{padding:22px 0 0;border-right:0}.section-label{margin-bottom:12px}.section-label h2{font-size:29px}.course-row{padding:16px 11px;min-height:85px}.course-code{font-size:14px}.course-name{font-size:12px;max-width:230px}.course-row-value{min-width:60px}.course-row-value strong{font-size:20px}.course-row-value small{font-size:10px}.course-detail{display:none;padding:20px 0 0}.detail-open .course-detail{display:block}.detail-open .course-list{display:none}.mobile-back{display:flex;font-size:11px;align-items:center;gap:7px;color:var(--muted);padding:0;margin-bottom:21px}.mobile-back svg{height:15px;width:15px}.course-heading{display:flex}.course-heading h2{font-size:31px}.course-heading .text-btn{font-size:9px;margin-top:0;white-space:normal;max-width:72px;text-align:right}.course-metrics{font-size:10px;gap:14px;margin-top:18px}.course-metrics>span{gap:8px}.course-metrics>span+span{padding-left:14px}.course-metrics strong{font-size:17px}.detail-tabs button{font-size:13px}.grade-table th{font-size:9px;padding-left:5px;padding-right:5px}.grade-table th:first-child{width:33%}.grade-table th:nth-child(2){width:12%}.grade-table th:nth-child(3){width:39%}.grade-table th:last-child{width:16%}.grade-table td{font-size:11px;padding-left:5px;padding-right:5px}.category-name{font-size:11px;gap:4px}.category-name svg{width:11px;height:11px}.group-meta{margin-left:15px;font-size:8px}.group-value{font-size:11px;gap:4px;flex-wrap:wrap}.group-value .text-btn{font-size:9px}.score-pair input{width:48px;font-size:11px;padding:6px 4px}.score-pair input.max-input{width:40px}.item-row td:first-child{padding-left:18px}.item-row td{font-size:10px}.item-actions td{padding-left:18px}.goal-workspace{gap:20px}.goal-control{gap:10px}.goal-explanation{min-width:150px;padding-left:16px}.goal-result{font-size:12px}.goal-result strong{font-size:26px}.goal-workspace .btn{width:100%;margin-left:0}.goal-caption{font-size:10px}.planner-layout{padding-top:22px;gap:23px}.planner-title{display:block}.planner-title h2{font-size:29px;margin-bottom:16px}.planner-title select{width:100%}.planner-aside{display:block}.planner-aside .block{padding-bottom:20px;margin-bottom:20px}.scenario-table th:first-child{width:38%}.scenario-table th:nth-child(2){width:14%}.scenario-table th:nth-child(3){width:22%}.scenario-table th:last-child{width:26%}.scenario-input{width:67px;font-size:12px}.scenario-table .percent-wrap:after{right:9px}.planner-description{font-size:11px}.dialog-header{padding:18px}.dialog-body{padding:18px}.dialog-footer{padding:14px 18px;gap:7px}.dialog-footer .btn{font-size:11px;padding:8px 11px}.dialog-header h2{font-size:27px}.form-grid{gap:12px}.form-field{font-size:10px}.form-field input,.form-field select{font-size:12px}.setup-table{min-width:620px}.setup-scroll{overflow-x:auto;padding-bottom:8px;margin-right:-4px}.manual-section{font-size:11px}.manual-section .form-help{margin-bottom:0}.notice{font-size:11px}.empty-state{padding:35px 16px}.group-meta .dropped-badge{font-size:7px}.requirement{font-size:11px}.entry-footer{font-size:9px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important}}
