:root{--ink:#172e2c;--muted:#647673;--green:#143c37;--lime:#d5f579;--line:#e0e8e5;--paper:#f6f8f7;--white:#fff;--teal:#21887b;--blue:#688fbc;--orange:#bf7439;--radius:17px}*{box-sizing:border-box}body{margin:0;color:var(--ink);background:var(--paper);font:16px/1.5 'DM Sans',sans-serif}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{opacity:.5;cursor:default}a{color:var(--teal)}button{color:inherit}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #64a69a;outline-offset:3px}h1,h2,h3,p{margin:0}h1,h2,h3,.brand{font-family:Manrope,sans-serif}button{transition:background .15s,transform .15s}.app-shell{display:flex;min-height:100vh}.sidebar{width:248px;flex:none;position:fixed;inset:0 auto 0 0;background:var(--green);color:white;padding:35px 23px 20px;display:flex;flex-direction:column}.brand{display:flex;gap:9px;align-items:center;color:white;text-decoration:none;font-size:31px;font-weight:800;letter-spacing:-1.5px}.brand-period{color:var(--lime);margin-left:-8px}.brand-mark{position:relative;display:flex;align-items:center;justify-content:center;width:39px;height:39px;background:var(--lime);border-radius:12px;font:800 28px Manrope,sans-serif;color:var(--green);letter-spacing:-3px}.brand-mark span{font-size:14px;position:absolute;right:3px;top:0;background:var(--lime)}.workspace-label{color:#95b7af;letter-spacing:1.65px;font-size:12px;font-weight:650;margin:57px 10px 18px}nav{display:grid;gap:7px}.nav-item{border:0;background:transparent;color:#c4d7d2;text-align:left;padding:13px 12px;border-radius:9px;font-size:14px;font-weight:550;display:flex;align-items:center;gap:11px}.nav-item span{font-size:21px;line-height:1;width:23px}.nav-item.active{background:#2b514a;color:#e6f6c2}.nav-item:hover{background:#315950}.sidebar-note{margin:auto 7px 38px;padding-top:65px}.mini-orbit{font-size:39px;color:var(--lime);margin-bottom:14px}.sidebar-note h3{font-size:21px;line-height:1.4;font-weight:600}.sidebar-note p{font-size:14px;color:#a9c4bc;margin:12px 0 22px;max-width:150px}.text-button{padding:0;background:none;border:0;font-size:14px;font-weight:650;color:var(--green);white-space:nowrap}.text-button:hover{text-decoration:underline}.text-button.light{color:var(--lime)}.text-button span{margin-left:25px}.sidebar-bottom{border-top:1px solid #396159;padding-top:21px;display:flex;gap:10px;align-items:center}.avatar{background:#355c52;border:1px solid #52776b;border-radius:50%;width:35px;height:35px;display:grid;place-items:center;font-size:12px;font-weight:600}.sidebar-bottom strong,.sidebar-bottom div span{display:block;font-size:12px}.sidebar-bottom strong{font-size:13px;font-weight:500}.sidebar-bottom div span{color:#a9c4bc;margin-top:3px}.main-shell{margin-left:248px;flex:1;min-width:0}.topbar{height:79px;border-bottom:1px solid var(--line);background:#fff;display:flex;align-items:center;justify-content:space-between;padding:0 42px}.breadcrumb{font-size:14px;color:var(--muted)}.breadcrumb span{margin:0 16px;color:#acb9b5}.breadcrumb strong{font-weight:500;color:var(--ink)}.topbar-right{display:flex;gap:18px;align-items:center}.demo-pill{border:1px solid #dce6d1;color:#5c7142;background:#f4f8ec;border-radius:6px;font-size:11px;letter-spacing:.9px;padding:5px 9px;font-weight:650}.icon-button{width:30px;height:30px;border-radius:50%;background:transparent;border:1px solid var(--line);font-size:15px}main{padding:38px 42px 36px;max-width:1580px;margin:auto}.page-heading{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:29px}.eyebrow,.card-label{font-size:11px;font-weight:700;letter-spacing:1.7px;color:var(--teal)}h1{font-size:clamp(27px,2.65vw,39px);letter-spacing:-1.6px;font-weight:750;margin:8px 0 9px;line-height:1.2}h1>span{color:var(--teal)}.page-heading p{color:var(--muted);font-size:15px}.button{display:inline-flex;align-items:center;justify-content:center;gap:13px;border-radius:8px;min-height:43px;padding:10px 16px;font-size:14px;font-weight:600;border:1px solid transparent;white-space:nowrap}.primary{background:var(--green);color:white}.primary:hover{background:#245b51}.primary span{color:var(--lime);font-size:20px}.secondary{background:white;border-color:#dce5e1}.secondary:hover{background:#edf3ef}.sample-notice{display:flex;align-items:center;gap:12px;border:1px solid #dce7db;background:#f0f5ed;border-radius:9px;padding:11px 15px;font-size:13px;color:#537050;margin-bottom:26px}.sample-notice>span{font-size:18px}.sample-notice p{flex:1}.sample-notice strong{font-weight:650}.sample-notice .text-button{font-size:12px;text-decoration:underline}.summary-grid{display:grid;grid-template-columns:1.15fr .85fr 1fr;gap:15px;margin-bottom:30px}.summary-card{padding:21px 23px;background:white;border:1px solid var(--line);border-radius:var(--radius)}.card-label{color:var(--muted);font-size:10px;letter-spacing:1.6px;margin-bottom:11px}.summary-card strong{font-family:Manrope,sans-serif;font-size:20px;font-weight:750;display:block;letter-spacing:-.6px}.summary-card>span{font-size:13px;color:var(--muted);display:block;margin-top:5px}.plan-layout{display:grid;grid-template-columns:minmax(0,1fr) 250px;gap:24px}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:16px}.section-heading h2{font-size:20px;letter-spacing:-.5px}.section-heading p{color:var(--muted);font-size:13px;margin-top:3px}.semester-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:17px;align-items:start}.semester-card{background:white;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}.semester-head{padding:18px 19px 15px;display:flex;align-items:center;justify-content:space-between;gap:6px;border-bottom:1px solid var(--line);background:#fcfdfc}.term-number{font-size:10px;color:var(--muted);letter-spacing:1.4px;font-weight:600}.semester-head h3{font-size:18px;letter-spacing:-.6px;margin-top:4px}.credit-badge{font-size:11px;border:1px solid var(--line);padding:3px 7px;border-radius:5px;white-space:nowrap;color:var(--muted)}.course{padding:14px 15px;display:flex;align-items:center;gap:9px;border-bottom:1px solid #edf1ef;min-height:78px;cursor:pointer}.course:hover{background:#f6f9f6}.course:last-child{border-bottom:0}.course>div:nth-child(2){flex:1;min-width:0}.course strong{display:block;font-size:13px;font-weight:550;line-height:1.5}.course span{display:block;font-size:11px;color:var(--muted);margin-top:4px}.course-type{width:4px;height:31px;border-radius:3px;flex:none;background:var(--teal)}.course-type.foundation{background:#668fba}.course-type.general{background:#c5ad7c}.course-type.focus{background:#9c85bf}.course-type.experience{background:#cf8466}.insights{padding-top:1px}.direction-card{margin-top:59px;background:#e6eee8;position:relative;overflow:hidden;padding:25px;border-radius:var(--radius);min-height:244px}.direction-card .eyebrow{font-size:10px;letter-spacing:1.4px}.direction-card h2{font-size:26px;letter-spacing:-1px;line-height:1.28;margin:16px 0 12px}.direction-card p{max-width:175px;color:#587165;font-size:13px}.direction-line{font-family:Manrope,sans-serif;position:absolute;font-size:145px;right:-9px;bottom:-67px;line-height:1;color:#c4d8c8}.progress-card,.check-card{background:white;border:1px solid var(--line);border-radius:var(--radius);padding:22px;margin-top:17px}.progress-card h3,.check-card h3{font-size:15px;font-weight:700}.progress-stat{display:flex;align-items:baseline;gap:7px;margin:12px 0 10px}.progress-stat strong{font-size:30px;letter-spacing:-1px;font-family:Manrope,sans-serif}.progress-stat span,.progress-card p{font-size:12px;color:var(--muted)}.progress-track{height:6px;border-radius:4px;background:#e9f0ed;overflow:hidden;margin-bottom:12px}.progress-track>span{display:block;height:100%;background:var(--teal);border-radius:4px}.check-list{padding-left:17px;font-size:12px;color:var(--muted);margin:13px 0 0}.check-list li{margin:10px 0}.legend{display:flex;gap:13px;flex-wrap:wrap;margin:20px 0;color:var(--muted);font-size:11px}.legend span{display:flex;gap:5px;align-items:center}.legend i{width:7px;height:7px;border-radius:2px;background:var(--teal)}footer{margin:0 42px;padding:22px 0;border-top:1px solid var(--line);font-weight:650;font-size:12px;display:flex;gap:17px;color:var(--muted)}footer>span{font-weight:400}footer>span:last-child{margin-left:auto}dialog{border:0;border-radius:20px;padding:0;width:min(600px,calc(100% - 30px));max-height:90vh;color:var(--ink);box-shadow:0 20px 90px #113f3440}dialog::backdrop{background:#082c2580;backdrop-filter:blur(3px)}.modal-inner{padding:29px}.modal-head{display:flex;align-items:start;justify-content:space-between;gap:15px;margin-bottom:20px}.modal-head h2{font-size:24px;letter-spacing:-.7px}.modal-head p{font-size:14px;color:var(--muted);margin-top:5px}.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:17px}.field{display:grid;gap:6px;font-size:14px;font-weight:550}.field.full{grid-column:1/-1}.field small{font-size:12px;font-weight:400;color:var(--muted)}input,select,textarea{background:white;color:var(--ink);border:1px solid #cbd8d2;border-radius:8px;padding:10px 11px;width:100%;min-width:0;font-size:14px}textarea{resize:vertical}.checkbox-row{display:flex;gap:10px;align-items:center;font-size:14px;padding:8px 0}.checkbox-row input{width:17px;height:17px;accent-color:var(--green)}.modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:24px;flex-wrap:wrap}.small-note{font-size:12px;color:var(--muted);margin-top:13px}.tag{display:inline-block;border-radius:5px;padding:3px 7px;font-size:11px;background:#e9f2ed;color:#407254}.term-flag{padding:9px 18px;font-size:11px;color:#42795e;background:#ecf5ee;border-bottom:1px solid var(--line)}.term-flag.exchange{color:#6264a7;background:#f1f0f8}.course.done strong{text-decoration:line-through;color:#6b8077}.course.done .course-type{background:#a4c8b4}.course-check{font-size:14px!important;color:var(--teal)!important}.empty-term{font-size:13px;padding:23px;color:var(--muted)}.warning{background:#fff4e7;color:#875b25;padding:12px 15px;border-radius:8px;font-size:13px;margin:12px 0}.info-box{background:#edf4f0;border:1px solid #dbe8df;padding:16px;border-radius:10px;font-size:14px;line-height:1.65}.about-content{font-size:14px;color:var(--muted)}.about-content h3{color:var(--ink);font-size:16px;margin:20px 0 7px}.about-content p{margin-bottom:10px}.about-content ul{padding-left:20px}.about-content a{overflow-wrap:anywhere}#toast{position:fixed;bottom:24px;left:50%;transform:translate(-50%,20px);background:var(--green);color:white;box-shadow:0 5px 24px #1c3a3430;border:1px solid #3f655a;border-radius:10px;padding:12px 21px;font-size:14px;opacity:0;pointer-events:none;transition:.2s;z-index:5;max-width:calc(100% - 30px)}#toast.show{opacity:1;transform:translate(-50%,0)}.view-intro{margin:8px 0 25px}.view-intro h2{font-size:25px;letter-spacing:-.8px;margin-bottom:6px}.view-intro p{color:var(--muted);font-size:15px;max-width:650px}.explore-layout{display:grid;grid-template-columns:1fr 1fr;gap:24px}.panel{background:white;border:1px solid var(--line);border-radius:var(--radius);padding:25px}.panel h3{font-size:20px;margin-bottom:15px}.choice-grid{display:grid;grid-template-columns:1fr 1fr;gap:11px}.choice{background:#fff;border:1px solid var(--line);border-radius:10px;padding:17px;text-align:left;font-size:14px;min-height:105px}.choice span{display:block;font-size:24px;margin-bottom:6px}.choice.selected{background:#f1f7e9;border-color:#8caa65;box-shadow:inset 0 0 0 1px #8caa65}.result-title{font-size:29px!important;letter-spacing:-1px;line-height:1.3;margin:14px 0!important}.reason-list{padding-left:20px;color:var(--muted);font-size:14px}.reason-list li{margin:12px 0}.opportunity-tabs{display:flex;gap:10px;flex-wrap:wrap;margin:20px 0}.opportunity-tabs button{background:white;border:1px solid var(--line);padding:10px 16px;border-radius:8px;font-size:14px}.opportunity-tabs button.active{background:var(--green);color:white}.opportunity-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:17px}.opportunity-card{border:1px solid var(--line);background:#fff;padding:23px;border-radius:var(--radius);display:flex;flex-direction:column;gap:12px}.opportunity-card h3{font-size:19px;letter-spacing:-.5px}.opportunity-card p{font-size:14px;color:var(--muted);flex:1}.opportunity-card a{font-size:14px;font-weight:550}.steps{margin:12px 0 0;padding-left:20px;color:var(--muted);font-size:14px}.steps li{margin:10px 0}.subtle-button{border:0;background:transparent;font-size:12px;color:var(--muted);text-decoration:underline;padding:8px 0}.alert-list{padding-left:18px;font-size:12px;color:#916130;max-height:220px;overflow:auto}.alert-list li{margin:8px 0}.save-switch{margin-top:15px;padding-top:15px;border-top:1px solid var(--line)}
@media(min-width:1500px){.plan-layout{grid-template-columns:minmax(0,1fr) 275px}.course strong{font-size:14px}.course span{font-size:12px}.course{padding:16px 19px}.card-label,.eyebrow{font-size:12px}.term-number,.tag,.credit-badge{font-size:12px}}
@media(max-width:1200px){.sidebar{width:210px;padding:30px 15px 20px}.main-shell{margin-left:210px}.topbar{padding:0 27px}main{padding:30px 27px}.plan-layout{grid-template-columns:minmax(0,1fr)}.insights{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.direction-card,.progress-card,.check-card{margin-top:0;min-height:0;padding:20px}.direction-card h2{font-size:23px}.summary-card{padding:19px}.summary-card strong{font-size:18px}.page-heading{align-items:start}.page-heading .button{margin-top:26px}footer{margin:0 27px}}
@media(max-width:850px){.sidebar{position:static;width:auto;padding:17px 20px;display:block}.app-shell{display:block}.brand{font-size:27px}.brand-mark{width:33px;height:33px;font-size:25px}.workspace-label,.sidebar-note,.sidebar-bottom{display:none}.sidebar nav{display:flex;gap:5px;margin-top:19px;overflow:auto}.nav-item{font-size:13px;white-space:nowrap;padding:10px}.nav-item span{font-size:18px;width:auto}.main-shell{margin:0}.topbar{height:60px}.summary-card strong{font-size:17px}.page-heading{flex-wrap:wrap;gap:15px}.page-heading .button{margin:0}.sample-notice{align-items:start}.sample-notice .text-button{white-space:normal}.opportunity-grid{grid-template-columns:1fr 1fr}.explore-layout{grid-template-columns:1fr}.insights{grid-template-columns:1fr 1fr}.direction-card{display:none}}
@media(max-width:560px){main{padding:26px 17px}.topbar{padding:0 17px}.breadcrumb{font-size:12px}.breadcrumb span{margin:0 8px}.demo-pill{font-size:9px}.topbar-right{gap:9px}h1{font-size:30px;letter-spacing:-1.2px}.page-heading p{font-size:14px}.page-heading .button{width:100%}.sample-notice{font-size:12px;gap:8px;flex-wrap:wrap}.sample-notice .text-button{margin-left:26px}.summary-grid{grid-template-columns:1fr;gap:10px}.summary-card{padding:16px;display:grid;grid-template-columns:1fr auto}.summary-card .card-label{grid-column:1/-1;margin-bottom:7px}.summary-card strong{font-size:17px}.summary-card>span{font-size:11px;margin:0;max-width:128px;text-align:right;align-self:center}.semester-grid{grid-template-columns:1fr}.course strong{font-size:14px}.course span{font-size:12px}.course{min-height:73px;padding:14px 17px}.term-number,.credit-badge,.tag{font-size:12px}.section-heading h2{font-size:18px}.section-heading .button{padding:8px 10px;font-size:12px}.insights{grid-template-columns:1fr}.field-grid{grid-template-columns:1fr}.modal-inner{padding:23px}.opportunity-grid{grid-template-columns:1fr}.choice-grid{grid-template-columns:1fr 1fr}footer{margin:0 17px;flex-wrap:wrap;gap:7px}footer>span:last-child{margin-left:0;flex-basis:100%}.nav-item{font-size:12px}.nav-item span{display:none}.sidebar nav{justify-content:space-between}.modal-head h2{font-size:22px}}
.course{width:100%;text-align:left;background:white;border:0;border-bottom:1px solid #edf1ef;border-radius:0}.course strong{font-size:14px}.course span{font-size:12px}.pace-icon{font-size:23px;color:var(--teal);margin-left:7px}.year-arrow{font-weight:400;color:#9daea6;padding:0 7px}.check-symbol{float:right;color:var(--teal)}.plan-tools{display:flex;justify-content:space-between;gap:16px;padding:5px}.wide-card{grid-column:span 2}.discovery-result{background:#f1f6ed}.exchange-card{border-color:#cfcfe4}.opportunity-card a{text-decoration:none}.opportunity-card a:hover{text-decoration:underline}.about-content,.info-box,.reason-list,.steps,.opportunity-card p{font-size:16px}.card-label,.eyebrow,.workspace-label,.term-number{font-size:12px}.nav-item,.legend,.progress-card p,.check-list,.small-note{font-size:14px}.course-type{margin-right:2px}.direction-card p{font-size:14px}.summary-card>span{font-size:14px}.tag,.credit-badge{font-size:12px}a.button{text-decoration:none}.plan-layout{align-items:start}.insights .direction-card{margin-top:89px}
@media(max-width:1200px){.insights .direction-card{margin-top:0}.insights .plan-tools{grid-column:1/-1}}
@media(max-width:560px){.wide-card{grid-column:auto}.summary-card{display:block}.summary-card>span{text-align:left;max-width:none;font-size:13px;margin-top:4px}.summary-card strong{font-size:19px}.course{min-height:79px}.sample-notice .text-button{font-size:13px}.section-heading{align-items:start}.section-heading>div{min-width:0}.section-heading p{font-size:12px}.opportunity-tabs button{flex:1;padding:10px 9px}}
@media(max-width:560px){.sidebar nav{overflow:visible;gap:3px}.nav-item{font-size:12px;white-space:normal;flex:1;min-width:0;justify-content:center;text-align:center}.sample-notice{display:grid;grid-template-columns:18px minmax(0,1fr);gap:8px}.sample-notice .text-button{grid-column:2;margin-left:0;justify-self:start}.breadcrumb{max-width:58%}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}
.source-link{border:0;background:none;text-align:left;color:var(--teal);padding:7px 0;font-size:13px;cursor:pointer;text-decoration:underline;text-underline-offset:3px;max-width:100%;overflow-wrap:anywhere}.plan-subtitle{display:flex;flex-wrap:wrap;gap:8px 20px;font-size:13px;color:var(--muted);align-items:center;margin-bottom:16px}.program-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px;margin-bottom:24px}.card-actions{display:flex;flex-wrap:wrap;align-items:center;gap:14px;margin-top:22px}.source-list>div{display:grid;grid-template-columns:minmax(0,1fr) 80px 150px;gap:12px;align-items:center;border-bottom:1px solid var(--line);padding:16px 0;overflow-wrap:anywhere}.source-list{margin-bottom:22px}.source-text{white-space:pre-wrap;overflow-wrap:anywhere;font:14px/1.65 ui-monospace,monospace;background:#f6f8f7;padding:18px;border-radius:10px;max-height:55vh;overflow:auto}.source-toolbar{display:flex;align-items:end;gap:10px;flex-wrap:wrap;margin-bottom:16px}.source-toolbar input{width:90px}.review-item{border-left:3px solid #d5bc74;padding:10px 16px;margin-bottom:18px;background:#fafbf7}.review-item.conflict{border-color:#c96c52}.review-item p{margin:8px 0!important}.review-item.source{border-color:#8b84b5}.pending-card{border:1px solid #cb917d}.unresolved{background:#fcfcf7}.unresolved .course-check{color:#877041}.add-term{margin:18px 0}.summary-card strong{overflow-wrap:anywhere}.view-intro{margin-bottom:26px}.view-intro h2{margin:10px 0;font-size:30px}.view-intro p{color:var(--muted)}.field textarea{width:100%;border:1px solid #d2ded8;border-radius:8px;padding:10px;color:var(--ink);background:#fff;resize:vertical}.field small{color:var(--muted);font-size:12px}.source-toolbar .field{margin:0}.topbar .demo-pill{cursor:pointer}.small-note{overflow-wrap:anywhere}.info-box{overflow-wrap:anywhere}.modal-inner{max-height:88dvh;overflow-y:auto}body{padding-bottom:env(safe-area-inset-bottom)}
@media(max-width:560px){.program-grid{grid-template-columns:1fr}.source-list>div{grid-template-columns:1fr}.source-list>div span{font-size:12px}.source-list>div .source-link{padding:0}.source-text{font-size:12px;padding:12px}.topbar-right{gap:8px}.topbar .demo-pill{font-size:10px;padding:5px}.sidebar nav{display:grid;grid-template-columns:1fr 1fr}.nav-item{padding:9px 6px}.view-intro h2{font-size:26px}.plan-subtitle{gap:0}.modal-inner{max-height:89dvh}.summary-card strong{font-size:20px}}
[hidden]{display:none!important}.journey{background:#fff;border:1px solid var(--line);border-radius:18px;overflow:hidden}.journey-top{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:22px 30px;background:#f2f6ec}.journey-steps{list-style:none;display:grid;grid-template-columns:repeat(8,1fr);padding:26px 30px;margin:0;border-bottom:1px solid var(--line);gap:9px}.journey-steps li{display:flex;flex-direction:column;gap:10px;color:var(--muted)}.journey-steps li>span{width:29px;height:29px;border:1px solid #d5dfd8;border-radius:50%;display:grid;place-items:center;font-size:14px}.journey-steps small{font-size:12px;line-height:1.4}.journey-steps .current{color:var(--green);font-weight:700}.journey-steps .current>span{background:var(--green);color:var(--lime);border-color:var(--green)}.journey-steps .passed>span{background:#e8f3dc;border-color:#d0e4b5;color:#3f702d}.journey-body{padding:34px 36px;display:grid;gap:22px}.journey-body h2{font-size:29px;letter-spacing:-.8px;line-height:1.25}.journey-body h3{font-size:21px;margin-top:10px}.journey-body p{line-height:1.6}.journey-intro{display:flex;gap:22px;align-items:center;margin-bottom:12px}.journey-intro p,.intro-copy{color:var(--muted);font-size:16px;max-width:770px}.journey-intro p{margin-top:10px}.journey-symbol{display:grid;place-items:center;width:80px;height:80px;flex:none;background:var(--lime);border-radius:21px;color:var(--green);font-size:50px}.journey-actions{padding:23px 36px;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:15px;background:#fcfdfb;position:sticky;bottom:0}.journey-body .field-grid{gap:22px}.journey-body .field{font-size:15px;gap:10px}.journey-body input,.journey-body select,.journey-body textarea{font-size:16px;padding:13px}.interest-grid{display:grid;grid-template-columns:1fr 1fr;gap:13px}.interest{display:flex;align-items:center;text-align:left;gap:14px;padding:18px;background:#fff;border:1px solid var(--line);border-radius:11px;color:var(--green);font-size:16px}.interest>span{font-size:25px;width:28px}.interest>b{margin-left:auto;font-weight:400}.interest.selected,.recommend-card.selected,.target-card.selected{background:#f1f7e8;border-color:#8ea95f;box-shadow:inset 0 0 0 1px #8ea95f}.recommend-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:4px 0 12px}.recommend-card{display:flex;flex-direction:column;gap:13px;align-items:start;text-align:left;padding:22px;border:1px solid var(--line);border-radius:13px;background:white;font-size:15px;line-height:1.5;min-width:0}.recommend-card strong{font-size:18px;line-height:1.35}.recommend-card p{color:var(--muted);flex:1}.recommend-card>span:last-child{font-size:14px;color:var(--teal)}.target-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:17px}.target-card{border:1px solid var(--line);padding:23px;border-radius:12px;min-width:0;display:flex;flex-direction:column;gap:12px}.target-toggle{display:flex;gap:12px;align-items:start;cursor:pointer}.target-toggle input{width:20px;height:20px;margin-top:3px;accent-color:var(--green);flex:none}.target-toggle strong{font-size:19px;line-height:1.4}.target-toggle small{display:block;color:var(--muted);font-size:14px}.target-card p{font-size:15px;color:var(--muted);line-height:1.6}.target-card .tag{align-self:start}.target-links{display:flex;flex-wrap:wrap;gap:14px;margin-top:auto;align-items:center}.target-links a{font-size:14px;color:var(--teal);overflow-wrap:anywhere}.choice-group{border:1px solid var(--line);border-radius:11px;padding:19px}.choice-group summary{font-size:17px;font-weight:650;cursor:pointer;display:list-item}.choice-group summary>span{float:right;color:var(--muted);font-size:14px;font-weight:400}.choice-group>.field-grid{display:block;margin-top:20px}.choice-field{margin-top:20px}.choice-group>p{margin-top:10px}.decision-summary{padding:24px;background:#f1f6ed;border-radius:12px;display:grid;gap:10px}.decision-summary>strong{font-size:23px}.decision-summary>span{font-size:14px;color:var(--muted)}.plan-banner{display:flex;justify-content:space-between;gap:24px;align-items:center;padding:28px 0;margin-bottom:20px}.plan-banner h2{font-size:31px;letter-spacing:-1px;margin:10px 0}.plan-banner p{color:var(--muted);line-height:1.6}.plan-banner .card-actions{margin:0;justify-content:flex-end;max-width:420px}.plan-banner.draft{background:#f1f6ed;padding:26px;border-radius:14px}.plan-tools{justify-content:flex-start;margin:0 0 20px;gap:10px}.plan-subtitle{margin-bottom:20px}.policy-card{margin-bottom:20px}.policy-card p{font-size:16px;line-height:1.6}.modal-inner>h3{margin:24px 0 12px}.modal-inner>p{font-size:16px;line-height:1.65}.modal-inner form{display:grid;gap:17px;margin-top:20px}.modal-inner .field{font-size:15px}.modal-inner .source-toolbar{display:flex}.review-item p{font-size:15px;line-height:1.6}.source-link{font-size:14px}.button{white-space:normal;text-align:center;min-height:44px}.field small{font-size:13px;line-height:1.5}.small-note{font-size:14px;line-height:1.6}
@media(max-width:1050px){.recommend-grid{grid-template-columns:1fr}.recommend-card{gap:9px}.journey-body{padding:28px}.journey-steps{padding:22px}.journey-steps small{display:none}.plan-banner{align-items:start;flex-direction:column}.plan-banner .card-actions{justify-content:flex-start;max-width:none}}
@media(max-width:560px){.journey-top{padding:18px;flex-wrap:wrap}.journey-top .button{font-size:12px;padding:7px 11px}.journey-body{padding:23px 18px;gap:20px}.journey-intro{gap:13px;align-items:start}.journey-intro h2,.journey-body h2{font-size:25px}.journey-symbol{width:47px;height:47px;border-radius:13px;font-size:34px}.journey-intro p{font-size:15px}.journey-steps{padding:17px 15px;gap:5px}.journey-steps li>span{width:25px;height:25px;font-size:12px}.journey-actions{padding:18px}.interest-grid,.target-grid{grid-template-columns:1fr}.interest{font-size:15px;padding:15px}.target-card{padding:18px}.plan-banner h2{font-size:28px}.plan-banner.draft{padding:20px}.choice-group{padding:14px}.choice-group summary>span{float:none;display:block;margin-top:5px}.journey-body .field{font-size:14px}.plan-tools{display:grid;grid-template-columns:1fr 1fr}.plan-tools .button{font-size:13px;padding:9px}.decision-summary{padding:18px}.journey-top .eyebrow{font-size:12px}}

.journey-steps{grid-template-columns:repeat(6,minmax(0,1fr))}.advisor-response{padding:24px;border-left:3px solid var(--teal);background:#f3f7f4;display:grid;gap:16px}.theme-list{display:flex;flex-wrap:wrap;gap:8px}.goal-field textarea{font-size:17px;line-height:1.7}.goal-examples{font-size:14px;color:var(--muted)}.goal-examples span{font-weight:650}.goal-examples p{margin-top:8px}.ai-working{border-radius:8px;background:#edf4f0;padding:15px}.target-card h3{font-size:19px;margin:12px 0 4px}.target-card details{margin-top:16px;font-size:14px}.tier-reach{background:#eee7f5;color:#75548a}.tier-safety{background:#eef3dc;color:#586839}.choice-group .field-grid{padding-top:12px}.decision-summary h3{font-size:18px;margin-top:12px}

.brand{background:#f7f7f7;border-radius:10px;padding:10px 8px;letter-spacing:normal}.brand img{display:block;width:100%;height:auto}.journey-body{border:0;margin:0;min-width:0}.questionnaire{display:grid;grid-template-columns:1fr 1fr;gap:22px}.questionnaire textarea{min-height:135px}.questionnaire .field>b{color:var(--teal)}.access-field{padding:18px;background:#f1f6ed;border-radius:10px}.reasoning-panel{padding:20px;border:1px solid var(--line);border-radius:12px}.reasoning-panel>summary{font-weight:700;cursor:pointer}.reasoning-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:20px 0}.reasoning-grid article{border-top:1px solid var(--line);padding-top:12px}.reasoning-grid h4{margin:0 0 8px;color:var(--green)}.reasoning-grid small{display:block;margin-top:10px;color:var(--muted)}.evidence-links{font-size:12px;display:flex;flex-wrap:wrap;gap:7px;margin-top:10px}.roadmap-direction{margin:25px 0}.roadmap-direction>h2{font-size:25px;margin-bottom:12px}.roadmap-direction>.reasoning-panel{margin:20px 0;background:white}.roadmap-targets{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:20px 0}.roadmap-targets h3{margin:12px 0}.roadmap-target{padding:16px 0;border-top:1px solid var(--line)}.roadmap-target h4{margin:0 0 8px}.roadmap-target p{font-size:14px;line-height:1.6}.roadmap-target details{font-size:13px;margin-top:8px}.roadmap-target .tag{font-size:10px}.semester-title{margin:25px 0 18px}.replan-result{display:grid;gap:14px}.replan-moves{max-height:260px;overflow:auto}.replan-moves li{margin:8px 0}.agent-terminal textarea{min-height:110px}.agent-terminal .field-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}@media(max-width:720px){.questionnaire,.reasoning-grid,.roadmap-targets,.agent-terminal .field-grid{grid-template-columns:1fr}.brand{max-width:210px}.reasoning-panel{padding:15px}}

/* A calm, mobile-first workspace. Detailed evidence is opt-in. */
body{font-family:system-ui,-apple-system,'Segoe UI',sans-serif;background:#f6f8f5}.app-shell{display:block}.main-shell{margin:0}.topbar{height:82px;padding:0 max(22px,calc((100vw - 1050px)/2));background:#f6f8f5;border:0}.brand{background:none;padding:0;color:var(--green);max-width:none}.brand-mark{background:var(--green);color:var(--lime)}.brand-mark span{background:var(--green)}main{max-width:1050px;padding:24px 26px 56px}footer{max-width:998px;margin:0 auto;padding:22px 0;border-top:1px solid var(--line);font-size:12px;color:var(--muted)}.welcome{padding:42px 0}.welcome h1{font-size:clamp(34px,5vw,52px);max-width:720px;line-height:1.12;letter-spacing:-2px;margin:20px 0}.welcome-lead{font-size:18px;color:var(--muted);line-height:1.7;max-width:610px}.welcome-options{display:grid;grid-template-columns:1.3fr 1fr;gap:20px;margin-top:38px}.welcome-card{background:#fff;border:1px solid var(--line);border-radius:20px;padding:32px;display:flex;flex-direction:column;gap:20px;align-items:start}.welcome-card h2{font-size:23px;line-height:1.3}.welcome-card p{color:var(--muted)}.welcome-card.quiet{background:transparent}.welcome-card.first-start{grid-column:1/-1;max-width:680px}.welcome-card .card-actions{margin:0;margin-top:auto}.welcome-note{margin-top:25px;color:var(--muted);font-size:13px}.welcome-note .button{border:0;background:none;font-size:13px;text-decoration:underline}.journey{max-width:850px;margin:auto;border-radius:20px}.journey-steps{display:flex;padding:0 30px 22px;border:0;gap:7px;background:#f2f6ec}.journey-steps li{height:4px;background:#dde7d8;flex:1;border-radius:4px}.journey-steps li.current,.journey-steps li.passed{background:var(--green)}.journey-steps li span,.journey-steps li small{display:none}.journey-body{padding:32px;gap:24px}.journey-body h2{font-size:28px}.journey-top{padding-bottom:16px}.questionnaire{grid-template-columns:1fr}.questionnaire textarea{min-height:94px}.quiet-details{border-top:1px solid var(--line);padding:18px 0;margin-top:10px}.quiet-details>summary{cursor:pointer;color:var(--teal);font-weight:600;min-height:30px}.quiet-details[open]>summary{margin-bottom:18px}.optional-questions{grid-column:1/-1}.optional-questions .questionnaire{padding-top:14px}.advisor-response{padding:20px;gap:10px}.advisor-response p{font-size:16px}.reasoning-grid{grid-template-columns:1fr}.decision-summary{background:#f3f6ef}.change-context{background:#f1f6ed;border-radius:10px;padding:14px;font-size:14px}.change-context summary{cursor:pointer}.change-context p{margin-top:12px}.plan-at-a-glance{background:var(--green);color:white;display:flex;justify-content:space-between;gap:30px;padding:28px;border-radius:16px}.plan-at-a-glance .eyebrow{color:var(--lime)}.plan-at-a-glance strong{font-size:24px}.plan-at-a-glance p{margin-top:8px;max-width:600px}.check-summary{display:flex;align-items:center;gap:14px;margin-top:20px;font-size:13px;color:var(--muted)}.semester-grid{margin-top:18px;align-items:start}.semester-head{cursor:pointer;min-height:72px;list-style:none}.semester-card:not([open]) .semester-head{border:0}.semester-card .course{display:flex;justify-content:space-between;align-items:center;gap:12px}.semester-card .course strong,.semester-card .course span{display:block}.compact-target{padding:15px 0;border-bottom:1px solid var(--line)}.compact-target summary{cursor:pointer;font-weight:600}.compact-target p{font-size:14px;line-height:1.6;margin:12px 0}.roadmap-direction{margin-top:38px}.roadmap-targets{margin:18px 0}.target-card h3{margin:0}.target-card{gap:10px}.target-card p{font-size:15px}.target-card .small-note{font-size:13px}.field textarea{line-height:1.6}.field select,.field input{min-height:46px}.modal-inner .quiet-details p{margin:12px 0}.plan-banner .card-actions{flex-wrap:wrap}.section-heading .button{font-size:13px}
@media(max-width:650px){.topbar{height:72px;padding:0 20px}.brand{font-size:28px}.brand-mark{width:34px;height:34px;font-size:25px}main{padding:15px 16px 38px}.welcome{padding:30px 3px}.welcome h1{letter-spacing:-1.2px;font-size:36px}.welcome-lead{font-size:16px}.welcome-options{grid-template-columns:1fr;gap:16px;margin-top:26px}.welcome-card{padding:24px}.welcome-card h2{font-size:22px}.welcome-card .button{width:100%}.welcome-card .card-actions{width:100%}.journey-body{padding:24px 19px}.journey-body h2{font-size:25px}.journey-top{padding:18px 19px 14px}.journey-steps{padding:0 19px 18px}.journey-actions{padding:17px 19px}.journey-actions .button{font-size:14px}.plan-at-a-glance{flex-direction:column;padding:23px;gap:18px}.plan-banner{padding:15px 0;margin-bottom:12px}.plan-banner h2{font-size:28px}.check-summary{align-items:start;flex-direction:column;gap:8px}.semester-grid{grid-template-columns:1fr}.roadmap-targets{grid-template-columns:1fr}.roadmap-direction .section-heading{align-items:center}.roadmap-direction h2{font-size:21px}.target-grid{grid-template-columns:1fr}footer{margin:0 20px;padding:20px 0}.modal-inner{padding:24px 20px}.topbar-right .icon-button{width:36px;height:36px}.field-grid{grid-template-columns:1fr}.journey-actions{position:static}.quiet-details .card-actions{flex-direction:column;align-items:stretch}}

/* A complete minor remains legible without exposing the source catalogue. */
.minor-checklist{margin:20px 0}.minor-checklist>summary{flex-wrap:wrap;gap:8px}.minor-checklist>summary span{font-weight:400;font-size:.85rem}.minor-requirements{padding:0 0 0 24px;margin:16px 0}.minor-requirements li{padding:12px 8px;border-top:1px solid var(--line,#dce5e1)}.minor-requirements li>small{display:block;color:#526965;margin-top:6px}.minor-requirements .field{margin:0}.ask-adviser-row{margin:24px 0 0}.adviser-answer>p{white-space:pre-wrap;line-height:1.7}.adviser-answer .minor-checklist summary{display:block}

.minor-requirements .text-button{white-space:normal;text-align:left;max-width:100%;overflow-wrap:anywhere;line-height:1.5;height:auto}
