:root{--page:#faf9f6;--surface:#fff;--ink:#252b40;--primary:#4859bf;--muted:#63697c;--line:#e3e4ec;--tint:#f0eff8;--amber:#965b19;--amber-bg:#fcf2e3;--red:#a23731;--radius:14px;--font:"Microsoft YaHei","PingFang SC","Noto Sans CJK SC",system-ui,sans-serif;font-family:var(--font);color:var(--ink);background:var(--page);font-size:16px;line-height:1.6;font-synthesis:none;color-scheme:light}
*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button,a,input,select{touch-action:manipulation;-webkit-tap-highlight-color:#e1e3f9}button{cursor:pointer}button:disabled{cursor:default;opacity:.55}a{color:var(--primary)}button,input,select,a,summary,[tabindex]{scroll-margin-block:95px}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:3px solid #7863a7;outline-offset:4px}button:disabled:hover{transform:none}input,select{background:#fff;color:var(--ink);border:1px solid #c4c9de;border-radius:8px;min-height:44px;padding:9px 12px;min-width:0}input[type=checkbox]{width:18px;height:18px;min-height:18px;accent-color:var(--primary)}input[type=file]{width:100%;font-size:14px}p{margin:0 0 14px}h1,h2,h3{margin:0;line-height:1.35;text-wrap:balance}h1{font-size:30px;letter-spacing:-.6px}h2{font-size:20px}h3{font-size:16px}small,.muted{color:var(--muted)}strong{font-weight:600}[hidden]{display:none!important}.num{font-variant-numeric:tabular-nums}.small-label{font-size:13px;font-weight:500;color:var(--muted);margin-bottom:9px}.skip-link{position:absolute;top:-80px;left:16px;background:var(--ink);color:#fff;padding:12px;z-index:100}.skip-link:focus{top:8px}.button{display:inline-flex;justify-content:center;align-items:center;gap:8px;min-height:44px;padding:9px 17px;border-radius:8px;border:1px solid transparent;font-size:14px;font-weight:600;line-height:1.5;white-space:nowrap;transition:background-color .15s,color .15s,border-color .15s}.button-primary{background:var(--primary);color:#fff}.button-primary:hover{background:#3948a5}.button-quiet{background:var(--surface);border-color:var(--line);color:var(--ink)}.button-quiet:hover{background:var(--tint);border-color:#a5add3}.button-wide{width:100%}.text-button{background:none;border:0;color:var(--primary);padding:10px 4px;min-height:44px;line-height:1.4;font-weight:600;font-size:14px}.text-button:hover{text-decoration:underline}.icon-button{width:44px;height:44px;border:0;border-radius:8px;background:transparent;font-size:28px;color:var(--muted);flex-shrink:0}.icon-button:hover{background:var(--tint)}.site-header{display:flex;align-items:center;gap:38px;padding:15px max(24px,calc((100vw - 1320px)/2));background:#fff;border-bottom:1px solid var(--line);min-height:80px}.brand{display:flex;gap:11px;align-items:center;text-decoration:none;font-size:23px;font-weight:700;letter-spacing:2px;flex-shrink:0}.site-header nav{display:flex;gap:25px}.site-header nav a{text-decoration:none;font-size:14px;padding:12px 0;border-bottom:2px solid transparent;color:var(--muted);white-space:nowrap}.site-header nav a:hover{color:var(--primary)}.site-header nav a[aria-current=page]{color:var(--primary);border-bottom-color:var(--primary);font-weight:600}.header-actions{margin-left:auto;display:flex;align-items:center;gap:10px}.session-label{font-size:12px;color:var(--muted);white-space:nowrap}.nav-count{display:inline-flex;min-width:18px;justify-content:center;margin-left:6px;font-size:11px;color:var(--amber);background:var(--amber-bg);border-radius:5px}.nav-count:empty{display:none}main{max-width:1320px;margin:auto;padding:34px 24px 0;min-height:calc(100vh - 80px)}main:focus{outline:0}.welcome{display:grid;grid-template-columns:1.1fr 1fr;gap:48px 90px;max-width:1100px;margin:48px auto 0}.welcome-copy>.small-label{display:block;color:var(--primary);font-size:14px;margin-bottom:17px}.welcome h1{font-size:56px;line-height:1.3;letter-spacing:-2px;margin-bottom:20px}.welcome-copy>p{color:var(--muted);font-size:16px;line-height:1.9}.welcome-steps{list-style:none;padding:16px 0 0;margin:0;display:grid;gap:20px}.welcome-steps li{display:flex;gap:15px}.welcome-steps li>span{width:28px;height:28px;border:1px solid #c9cce2;display:flex;align-items:center;justify-content:center;border-radius:50%;font-size:13px;flex-shrink:0}.welcome-steps strong{font-size:15px}.welcome-steps p{font-size:13px;color:var(--muted);margin:3px 0 0}.welcome-import{align-self:center;background:#fff;padding:35px;border:1px solid var(--line);border-radius:18px;box-shadow:0 12px 45px #252b4006}.import-top{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:30px}.file-symbol{width:48px;height:52px;border:1px solid #c1c6e0;border-radius:7px;background:var(--tint);font-size:30px;display:flex;align-items:center;justify-content:center}.local-pill{font-size:11px;padding:5px 8px;background:var(--tint);border-radius:5px;color:var(--primary)}.welcome-import h2{font-size:23px;margin-bottom:12px}.welcome-import>p{font-size:14px;color:var(--muted)}.welcome-import>.button{margin:12px 0}.file-hint{font-size:12px!important;color:var(--muted);line-height:1.7}.sample-line{display:flex;justify-content:space-between;align-items:center;font-size:13px;border-top:1px solid var(--line);padding-top:13px;margin-top:20px}.import-help{font-size:13px;margin-top:13px}.import-help summary{cursor:pointer;min-height:34px;display:list-item}.import-help p{margin-top:10px;color:var(--muted)}.welcome-note{grid-column:1/-1;border-top:1px solid var(--line);padding:22px 0;color:var(--muted);font-size:12px;text-align:center}.welcome-note>span{color:var(--primary);margin-right:8px}.demo-banner{display:flex;justify-content:space-between;align-items:center;background:#f0eff8;padding:5px 15px;border-radius:8px;color:#5c537b;font-size:12px;margin-bottom:24px;gap:15px}.workspace-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:28px}.workspace-heading h1{font-size:28px}.workspace-heading .small-label{margin-bottom:6px}.page-description{font-size:14px;color:var(--muted);margin:9px 0 0}.workspace-tools{display:flex;gap:10px;align-self:flex-start;margin-top:25px}.workspace-footer{display:flex;justify-content:space-between;gap:20px;padding:24px 0;color:var(--muted);font-size:12px;border-top:1px solid var(--line);margin-top:30px}.panel{border:1px solid var(--line);border-radius:var(--radius);background:#fff;padding:25px}.panel-heading{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:18px}.panel-heading p{margin:5px 0 0;font-size:12px;color:var(--muted)}.panel-heading .text-button{font-size:12px;flex-shrink:0}.summary-strip{background:#f0eff8;border:1px solid #ddddec;border-radius:var(--radius);display:grid;grid-template-columns:1.15fr 1fr 1fr;gap:22px;padding:25px 30px;margin-bottom:24px}.summary-label{font-size:13px;color:var(--muted);margin:0 0 9px}.summary-value{font-size:35px;font-weight:600;letter-spacing:-1px;line-height:1.15;font-variant-numeric:tabular-nums}.summary-value small{font-size:14px;font-weight:400;letter-spacing:0;margin-left:5px}.summary-note{font-size:11px;color:var(--muted);margin:8px 0 0}.summary-cell+.summary-cell{border-left:1px solid #ddd8e8;padding-left:30px}.overview-columns{display:grid;grid-template-columns:1fr 1fr;gap:24px}.module-row{padding:17px 0;border-top:1px solid #edf1ef}.module-row:first-child{padding-top:2px;border-top:0}.module-row-head{display:flex;gap:12px;align-items:center;justify-content:space-between;margin-bottom:10px}.module-row-head .name{font-size:14px;font-weight:600}.module-row-head .value{font-size:13px;flex-shrink:0;font-variant-numeric:tabular-nums}.meter{height:7px;background:#eeecf1;border-radius:5px;display:flex;overflow:hidden}.meter>span{display:block;background:var(--primary);height:100%}.meter .projected{background:#b9acd2}.module-caption{display:flex;justify-content:space-between;gap:10px;margin-top:7px;font-size:11px;color:var(--muted)}.chip{display:inline-flex;align-items:center;gap:4px;border-radius:4px;padding:3px 6px;font-size:11px;font-weight:500;line-height:1.4;background:var(--tint);color:var(--primary);white-space:normal}.chip-amber{background:var(--amber-bg);color:var(--amber)}.chip-neutral{background:#eef1f3;color:#52646b}.attention-line{padding:13px 16px;display:flex;align-items:center;justify-content:space-between;gap:15px;background:var(--amber-bg);border:1px solid #eadcc6;border-radius:8px;font-size:13px;color:var(--amber);margin-bottom:24px}.attention-line p{margin:0}.attention-line a{color:var(--amber);font-weight:600;white-space:nowrap}.section-bottom{margin-top:24px}.task-list{display:grid;gap:0}.task-row{padding:16px 0;display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line);gap:20px}.task-row:first-child{border:0;padding-top:0}.task-row p{font-size:12px;color:var(--muted);margin:4px 0 0}.task-row strong{font-size:14px}.task-meta{font-size:12px;text-align:right;flex-shrink:0}.subtle-note{font-size:12px;color:var(--muted);background:#f5f4f8;border-radius:6px;padding:11px 13px;margin:15px 0 0}.school-details{margin-top:24px;font-size:13px}.school-details summary{cursor:pointer;padding:10px 0;min-height:44px}.table-scroll{overflow:auto}.data-table{width:100%;border-collapse:collapse;font-size:13px;text-align:left;margin-top:15px}.data-table th,.data-table td{padding:12px;border-bottom:1px solid var(--line)}.data-table th{color:var(--muted);font-size:12px;font-weight:500}.data-table td:not(:first-child){font-variant-numeric:tabular-nums}.semester-tabs{display:flex;gap:10px;margin-bottom:22px;align-items:stretch;flex-wrap:wrap}.semester-tab{flex:1;min-width:130px;border:1px solid var(--line);background:#fff;border-radius:10px;padding:13px 18px;text-align:left;color:var(--muted);min-height:86px}.semester-tab strong{display:block;font-size:17px;color:var(--ink);margin:3px 0}.semester-tab small{font-size:11px}.semester-tab[aria-pressed=true]{border:2px solid var(--primary);padding:12px 17px;background:#eef1fd}.semester-tab[aria-pressed=true] strong{color:var(--primary)}.semester-tab:hover{border-color:var(--primary)}.add-semester{border:1px dashed #8b90a4;background:transparent;border-radius:10px;color:var(--primary);min-width:110px;font-size:13px;padding:13px;min-height:86px}.planner-grid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(330px,1fr);gap:24px;align-items:start}.plan-main,.candidate-panel{min-width:0}.candidate-panel{padding:22px}.candidate-panel h2{font-size:18px}.selected-semester-info{font-size:12px;color:var(--muted);margin-top:4px}.empty-plan{padding:45px 20px;text-align:center;border:1px dashed #c9cbda;border-radius:9px;background:#faf9fc}.empty-plan .empty-symbol{display:inline-block;color:#6d72a3;font-size:33px;margin-bottom:8px}.empty-plan h3{font-size:16px;margin-bottom:8px}.empty-plan p{font-size:13px;color:var(--muted);margin:0}.planned-row{border-top:1px solid var(--line);padding:18px 0}.planned-row:first-child{border:0}.planned-top{display:flex;justify-content:space-between;align-items:flex-start;gap:15px}.planned-top h3{font-size:15px;margin:7px 0 4px;overflow-wrap:anywhere}.planned-top .credit{font-size:15px;white-space:nowrap;font-weight:600;margin-top:6px}.planned-description{font-size:11px;color:var(--muted)}.row-actions{display:flex;gap:8px;align-items:center;margin-top:10px;flex-wrap:wrap}.move-label{font-size:11px;color:var(--muted);display:flex;align-items:center;gap:6px}.move-select{font-size:12px;min-height:36px;padding:5px 8px;max-width:140px}.row-actions .text-button{font-size:12px}.warning-text{font-size:11px;color:var(--amber);margin:8px 0 0;line-height:1.7}.forecast-panel{margin-top:24px}.forecast-panel .check-label{font-size:12px;margin-bottom:15px}.compact-modules{display:grid;grid-template-columns:1fr 1fr;gap:0 24px}.compact-modules .module-row{padding-top:12px}.search-label{display:block;font-size:12px;color:var(--muted);margin:15px 0 7px}.candidate-search{width:100%;font-size:13px;min-height:42px}.filter-row{display:flex;gap:7px;flex-wrap:wrap;margin:14px 0 10px}.filter-button{border:1px solid transparent;border-radius:5px;color:var(--muted);background:#f3f2f6;padding:7px 10px;font-size:12px;min-height:36px}.filter-button[aria-pressed=true]{background:var(--ink);color:#fff}.filter-button:hover{border-color:#8b90a4}.filter-help{font-size:11px;color:var(--muted);display:flex;justify-content:space-between;gap:10px;align-items:center;margin:7px 0 10px}.filter-help label{display:flex;gap:6px;align-items:center}.filter-help input{width:15px;height:15px;min-height:15px}.candidate-list{max-height:690px;overflow-y:auto;overscroll-behavior:contain;padding-right:3px}.candidate-row{padding:17px 0;border-top:1px solid var(--line);}.candidate-row h3{font-size:14px;line-height:1.6;overflow-wrap:anywhere}.candidate-row .course-subtitle{font-size:11px;color:var(--muted);margin:5px 0 6px}.candidate-row .course-actions{display:flex;align-items:center;justify-content:space-between;margin-top:8px;gap:8px}.candidate-row .button{padding:7px 11px;min-height:38px;font-size:12px}.candidate-row .text-button{font-size:12px}.target-row{padding:16px 0;border-top:1px solid var(--line)}.target-row h3{font-size:14px}.target-row p{font-size:12px;color:var(--muted);margin:5px 0}.target-controls{display:flex;gap:8px;align-items:center;margin-top:10px}.target-controls select{font-size:12px;min-height:38px;padding:5px 8px}.target-controls .button{font-size:12px;min-height:38px}.result-empty{font-size:13px;color:var(--muted);padding:30px 8px;text-align:center}.questions-layout{max-width:950px;display:grid;gap:18px}.question-block{padding:24px;background:#fff;border:1px solid var(--line);border-radius:12px}.question-block h2{font-size:17px;margin-bottom:8px}.question-block>p{font-size:13px;color:var(--muted)}.pending-course{padding:15px 0;border-top:1px solid var(--line)}.pending-course strong{font-size:14px}.category-form{display:flex;align-items:end;gap:10px;flex-wrap:wrap;margin-top:12px}.category-form label{display:flex;flex-direction:column;gap:5px;font-size:11px;color:var(--muted);flex:1;min-width:130px}.category-form input,.category-form select{font-size:12px;width:100%;min-height:40px}.category-form .button{min-height:40px;font-size:12px}.conditional-banner{background:var(--amber-bg);color:var(--amber);border-radius:6px;padding:10px 13px;font-size:12px;margin:15px 0 0}.dialog-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:16px}.dialog-heading h2{font-size:22px}.dialog-heading .small-label{margin-bottom:5px}dialog{width:min(620px,calc(100vw - 32px));padding:28px;border-radius:15px;border:1px solid var(--line);color:var(--ink);box-shadow:0 20px 100px #252b402f;max-height:calc(100dvh - 48px);overflow:auto;overscroll-behavior:contain}dialog::backdrop{background:#252b4059;backdrop-filter:blur(3px)}dialog p{font-size:14px;overflow-wrap:anywhere}dialog h3{margin-top:20px;margin-bottom:9px}dialog .muted{font-size:13px}.setup-summary{padding:12px 14px;background:var(--tint);border-radius:8px;font-size:13px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:17px;margin:20px 0}.form-grid>label{display:flex;flex-direction:column;gap:7px;font-size:13px}.full-width{grid-column:1/-1}.check-label{display:flex;align-items:flex-start;gap:10px;cursor:pointer;font-size:13px;line-height:1.8;min-height:44px}.check-label input{flex-shrink:0;margin:5px 0 0}.setup-advanced{font-size:12px;color:var(--muted);margin-top:15px}.setup-advanced summary{cursor:pointer;padding:8px 0;min-height:36px}.config-label{display:flex;flex-direction:column;gap:8px}.dialog-actions{display:flex;justify-content:flex-end;gap:10px;border-top:1px solid var(--line);padding-top:20px;margin-top:22px;flex-wrap:wrap}.inline-error{color:var(--red);font-size:13px;border:1px solid #eac9c6;background:#fff6f4;padding:10px;border-radius:7px;margin-top:16px}.toast{position:fixed;bottom:26px;left:50%;transform:translateX(-50%);padding:12px 20px;border-radius:9px;background:var(--ink);color:#fff;font-size:13px;max-width:min(600px,calc(100vw - 32px));z-index:30;box-shadow:0 5px 25px #0002}.toast:empty{display:none}.global-error{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);max-width:calc(100vw - 32px);width:600px;background:#fff5f3;border:1px solid #e1b7b1;color:var(--red);padding:14px 18px;border-radius:10px;z-index:40;display:flex;align-items:center;gap:15px;font-size:13px}.global-error .text-button{color:var(--red);flex-shrink:0}.evidence-block{font-size:13px;padding:12px 14px;border-left:3px solid #939bcb;background:#f6f5fb;margin-top:15px;line-height:1.9}.evidence-block p{font-size:13px;margin:5px 0}.evidence-block a{font-size:12px;text-underline-offset:3px}.key-values{display:grid;grid-template-columns:110px 1fr;gap:10px;font-size:13px}.key-values dt{color:var(--muted)}.key-values dd{margin:0}.busy{opacity:.65;pointer-events:none}
@media(max-width:1050px){.site-header{gap:25px;padding-inline:24px}.site-header nav{gap:20px}.session-label{display:none}.welcome{gap:40px;margin-top:25px}.welcome h1{font-size:48px}.welcome-import{padding:28px}.planner-grid{grid-template-columns:minmax(0,1.25fr) minmax(300px,1fr)}.summary-strip{padding:24px}.summary-value{font-size:30px}.summary-cell+.summary-cell{padding-left:20px}.compact-modules{grid-template-columns:1fr}.desktop-only{display:none}}
@media(max-width:767px){.site-header{gap:15px;flex-wrap:wrap;padding:12px 18px}.brand{font-size:20px;gap:9px}.brand img{width:30px;height:30px}.header-actions{gap:7px}.header-actions .button{font-size:12px;padding:7px 10px;min-height:40px}.site-header nav{order:3;width:100%;justify-content:flex-start;gap:28px}.site-header nav a{font-size:13px;padding:7px 0 5px}main{padding:25px 18px 0}.welcome{display:block;margin:8px auto;max-width:520px}.welcome h1{font-size:43px;margin-bottom:15px}.welcome-copy>p{font-size:14px}.welcome-steps{gap:16px;padding-top:10px}.welcome-import{margin-top:30px;padding:25px}.welcome-note{margin-top:25px;text-align:left;padding-top:20px}.workspace-heading{display:block;margin-bottom:22px}.workspace-heading h1{font-size:25px}.workspace-tools{margin-top:17px;justify-content:flex-end}.page-description{font-size:13px}.summary-strip{gap:12px;padding:20px 18px;grid-template-columns:1fr 1fr}.summary-cell:first-child{grid-column:1/-1;padding-bottom:17px;border-bottom:1px solid #ddd8e8}.summary-cell+.summary-cell{border:0;padding-left:0}.summary-label{font-size:11px;margin-bottom:6px}.summary-value{font-size:30px}.summary-value small{font-size:12px}.overview-columns{grid-template-columns:1fr;gap:18px}.panel{padding:20px}.panel-heading h2{font-size:18px}.panel-heading{margin-bottom:15px}.attention-line{font-size:12px;padding:12px;align-items:flex-start}.attention-line a{font-size:12px}.planner-grid{grid-template-columns:1fr;gap:18px}.candidate-panel{padding:20px}.semester-tabs{gap:7px}.semester-tab{min-width:95px;padding:10px;min-height:80px}.semester-tab[aria-pressed=true]{padding:9px}.semester-tab strong{font-size:15px}.semester-tab small{font-size:10px}.add-semester{min-width:86px;font-size:11px;min-height:80px}.compact-modules{grid-template-columns:1fr 1fr;gap:0 16px}.module-row-head .name{font-size:13px}.module-row-head .value{font-size:12px}.module-caption{font-size:10px}.task-row{gap:15px}.task-meta{font-size:11px;max-width:95px}.demo-banner{padding:9px 12px;align-items:flex-start;font-size:11px}.demo-banner .text-button{font-size:11px;min-height:32px;padding-top:3px}.workspace-footer{display:block;line-height:1.9}.workspace-footer>span{display:block}.candidate-list{max-height:none}.filter-button{min-height:40px}.row-actions .move-select,.row-actions .text-button{min-height:44px}.question-block{padding:20px}.form-grid{grid-template-columns:1fr}.form-grid .full-width{grid-column:auto}dialog{padding:23px 20px}.dialog-heading h2{font-size:20px}.global-error{padding:12px;font-size:12px}.toast{bottom:18px;font-size:12px}.conditional-banner{font-size:11px}.section-bottom{margin-top:18px}.empty-plan{padding:32px 10px}.welcome-import h2{font-size:21px}.local-pill{font-size:10px}.small-label{font-size:11px}.import-top{margin-bottom:25px}}
@media(max-width:360px){main{padding-inline:12px}.site-header{padding-inline:12px}.brand{font-size:18px}.brand img{width:27px;height:27px}.site-header nav{gap:23px}.compact-modules{grid-template-columns:1fr}.planned-top h3{font-size:13px}.welcome h1{font-size:39px}.header-actions .button{padding-inline:8px;font-size:11px}.panel{padding:17px}.summary-strip{padding:18px 15px}.summary-value{font-size:27px}.target-controls{flex-wrap:wrap}.task-meta{max-width:80px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}.inline-link{display:inline-flex;text-decoration:none}.meter svg{display:block}.meter-current{fill:var(--primary)}.meter-projected{fill:#b9acd2}

@media(max-width:767px){.candidate-row h3{font-size:15px}.candidate-row .button,.filter-button,.target-controls .button,.target-controls select,.header-actions .button{min-height:44px}.module-caption{font-size:11px}.filter-help,.course-subtitle,.selected-semester-info{font-size:12px}.demo-banner .text-button{white-space:nowrap;flex-shrink:0}}
.ledger-label{font-size:13px;display:flex;gap:12px;align-items:center;margin:18px 0}.ledger-label select{font-size:13px}.ledger-code{display:block;font-size:11px;font-weight:400;margin-top:4px}.data-table th[scope=row]{font-weight:500}.candidate-list>[data-action=more-candidates]{margin-top:12px}
:root{--plan:#7863a7;--blue-soft:#eef1fd;--violet-soft:#f1edf8}
.welcome{gap:48px 64px;margin-top:38px}.welcome h1{font-size:44px;letter-spacing:-1px}.welcome-import{border-top:4px solid var(--primary);box-shadow:0 12px 35px #4859bf08}.welcome-import .button-wide{margin-top:14px}.welcome-steps{gap:14px}.welcome-steps li:nth-child(2)>span{background:var(--violet-soft);border-color:#d7cee9}.welcome-steps li:nth-child(3)>span{background:#fcf2e3;border-color:#ead9b9}.brand{color:var(--ink)}.welcome-note{font-size:13px}.workspace-heading{margin-bottom:24px}.panel{box-shadow:none}.page-description{font-size:15px}.panel-heading p,.subtle-note,.module-caption{font-size:13px}.step-intro{font-size:15px;color:var(--muted);line-height:1.8;margin-bottom:22px}.start-focus{display:grid;grid-template-columns:1fr 1.15fr;gap:44px;border-block:1px solid var(--line);padding:34px 0}.current-number{padding:16px 24px 16px 0}.current-number>p:first-child{font-size:16px;color:var(--ink)}.current-number>strong{font-size:64px;line-height:1.25;color:var(--primary);font-weight:600;font-variant-numeric:tabular-nums}.current-number strong small{font-size:22px;color:var(--muted);font-weight:400}.current-number>p:last-child{font-size:14px;color:var(--muted);margin:18px 0 0}.next-action{border-radius:12px;background:var(--blue-soft);padding:28px 32px;align-self:center}.next-action h2{font-size:25px;margin:12px 0}.next-action p{font-size:15px;color:var(--muted);max-width:33em}.quiet-status{font-size:14px;color:var(--muted);padding:20px 0;line-height:1.9}.quiet-status a{margin-left:8px}.progressive-detail{margin-top:20px;border-top:1px solid var(--line);padding-top:16px}.progressive-detail>summary,.in-progress-detail>summary{cursor:pointer;min-height:44px;font-size:16px;font-weight:600;padding:8px 0;color:var(--primary)}.progressive-detail[open]>summary{margin-bottom:18px}.in-progress-detail{padding:14px 18px;background:var(--violet-soft);border-radius:8px;margin:0 0 20px}.in-progress-detail>summary{font-size:15px}.in-progress-detail p{font-size:14px;line-height:1.8;margin-top:10px}.overview-columns{align-items:start}.school-details{margin-top:20px}.school-details>summary{min-height:44px;cursor:pointer}.help-button{display:inline-flex;justify-content:center;align-items:center;min-height:30px;min-width:30px;margin-left:5px;border:1px solid #c4c9de;color:var(--primary);background:var(--blue-soft);font-size:14px;border-radius:50%;vertical-align:middle}.module-row-head .name{display:flex;align-items:center;flex-wrap:wrap}.module-row-head{gap:12px}.value{flex-shrink:0}.flow-steps{display:flex;gap:8px;margin:24px 0}.flow-steps button{display:flex;align-items:center;justify-content:center;gap:10px;flex:1;border:0;border-bottom:3px solid var(--line);padding:14px 8px;min-height:54px;background:transparent;color:var(--muted);font-size:15px}.flow-steps button span{width:27px;height:27px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--line);border-radius:50%;flex-shrink:0}.flow-steps button[aria-current=step]{color:var(--primary);border-color:var(--primary);font-weight:600}.flow-steps button[aria-current=step] span{background:var(--primary);border-color:var(--primary);color:white}.term-heading{display:flex;gap:16px;justify-content:space-between;align-items:center;margin-bottom:18px}.term-heading h2{font-size:23px}.term-heading p{font-size:14px;margin:8px 0 0}.fixed-panel{max-width:900px;margin-inline:auto;padding:30px}.fixed-panel #planned-list{border-block:1px solid var(--line)}.fixed-panel .subtle-note{margin-top:20px}.fixed-panel summary{cursor:pointer;min-height:36px}.step-actions{display:flex;gap:12px;justify-content:flex-end;flex-wrap:wrap;margin-top:26px;padding-top:22px;border-top:1px solid var(--line)}.plan-main{align-self:start}.plan-main .step-actions{justify-content:flex-start}.planner-grid{grid-template-columns:minmax(0,1fr) minmax(320px,.9fr);align-items:start}.candidate-panel>h2{margin-bottom:10px}.candidate-panel>.step-intro{font-size:14px;margin-bottom:16px}.candidate-panel input[type=search]{width:100%;font-size:16px;min-height:48px}.candidate-list{max-height:none;overflow:visible}.candidate-row{padding-block:22px}.candidate-row h3{font-size:17px}.course-subtitle{font-size:13px}.timing-note{font-size:13px;color:var(--muted);line-height:1.7;margin:10px 0 0}.timing-key{padding:12px;background:var(--violet-soft);border-radius:6px;font-size:13px}.filter-row{gap:6px;flex-wrap:wrap}.filter-button{font-size:14px;min-height:42px}.chip{font-size:12px;line-height:1.5}.chip:not(.chip-neutral):not(.chip-amber){background:var(--blue-soft);color:var(--primary)}.chip-neutral{background:var(--violet-soft);color:#61527c}.chip-amber{background:var(--amber-bg);color:var(--amber)}.result-comparison{display:grid;grid-template-columns:1fr 1.3fr;gap:24px;padding:24px;background:var(--violet-soft);border-radius:10px;margin:22px 0}.result-comparison p{font-size:14px;margin-bottom:12px;color:var(--muted)}.result-comparison strong{font-size:38px;font-weight:600;color:var(--plan);font-variant-numeric:tabular-nums}.result-comparison strong small{font-size:15px;font-weight:400}.review-panel{max-width:950px;margin-inline:auto}.review-panel .compact-modules{margin-top:0}.review-panel h3{font-size:18px}.meter-current{fill:var(--primary)}.meter-projected{fill:#ad9dcc}.demo-banner{background:var(--violet-soft);color:#61527c}.question-block{border-radius:10px}.question-block summary{cursor:pointer;color:var(--primary);font-size:16px;min-height:44px;padding:8px 0;font-weight:600}.question-block>p{font-size:14px}.category-form label{font-size:13px}.category-form input,.category-form select,.category-form .button{font-size:14px;min-height:44px}.install-steps{display:flex;gap:5px;border-bottom:1px solid var(--line);padding-bottom:14px;margin-bottom:22px}.install-steps button{background:var(--blue-soft);color:var(--primary);border:0;border-radius:6px;flex:1;padding:10px 4px;min-height:44px;font-size:13px}.instruction-list{padding-left:23px;font-size:15px;line-height:1.9}.instruction-list li{padding-left:5px;margin-bottom:12px}.questions-layout{gap:20px}.toast{background:#343952}.global-error{overflow-wrap:anywhere}.global-error-text{min-width:0}.panel .compact-modules{grid-template-columns:1fr 1fr}.empty-plan{padding:28px 12px}.empty-plan h3{font-size:18px}.empty-plan p{font-size:14px;margin-top:12px}.planned-row{padding:20px 0}.planned-row h3{font-size:17px}
@media(max-width:1050px){.welcome h1{font-size:38px}.start-focus{gap:28px}.next-action{padding:26px}.planner-grid{grid-template-columns:minmax(0,1fr) minmax(300px,.9fr)}.panel .compact-modules{grid-template-columns:1fr}.flow-steps{gap:4px}.flow-steps button{font-size:14px}}
@media(max-width:767px){.welcome{gap:28px}.welcome h1{font-size:34px}.welcome-import{padding:24px}.start-focus{grid-template-columns:1fr;gap:20px;padding:24px 0}.current-number{padding:0}.current-number>strong{font-size:52px}.current-number>p:last-child{margin-top:10px}.next-action{padding:22px}.next-action h2{font-size:22px}.progressive-detail>summary{font-size:15px}.overview-columns,.planner-grid{grid-template-columns:1fr}.flow-steps{gap:0}.flow-steps button{flex-direction:column;gap:7px;padding:12px 3px;font-size:13px}.fixed-panel,.review-panel{padding:20px}.term-heading{align-items:flex-start;flex-wrap:wrap}.term-heading h2{font-size:21px}.step-intro{font-size:14px}.result-comparison{grid-template-columns:1fr;padding:20px;gap:20px}.result-comparison>div+div{border-top:1px solid #dcd7e8;padding-top:16px}.result-comparison strong{font-size:33px}.result-comparison strong small{font-size:13px}.help-button{min-width:36px;min-height:36px}.install-steps{flex-direction:column}.candidate-panel{padding:20px}.step-actions .button{white-space:normal;flex:1;min-width:120px}.quiet-status a{margin-left:0;display:inline-block}.value{font-size:14px}.welcome-steps p{font-size:14px}.workspace-footer{font-size:13px}.brand{font-size:21px}.school-details summary{font-size:14px}}

/* V0.4-E: color carries actions, categories and wayfinding; labels remain the source of meaning. */
:root{
  --page:#faf8f4;--ink:#283045;--muted:#626679;--line:#dfdfe8;
  --primary:#4455b5;--primary-hover:#34449b;--plan:#7452a0;
  --blue:#4455b5;--blue-bg:#edf0fc;--blue-mid:#aaaee0;
  --violet:#7452a0;--violet-bg:#f1eaf8;--violet-mid:#bca5d1;
  --rose:#a04368;--rose-bg:#fbeef3;--rose-mid:#d5a5b8;
  --coral:#a34d33;--coral-bg:#fcf0e8;--coral-mid:#d6aa93;
  --teal:#226c65;--teal-bg:#e8f3ef;--teal-mid:#92bbb1;
  --amber:#8b591b;--amber-bg:#fbf1df;--red:#a23731;
  --tint:var(--blue-bg);--blue-soft:var(--blue-bg);--violet-soft:var(--violet-bg);
  --tone:var(--blue);--tone-bg:var(--blue-bg);--tone-mid:var(--blue-mid);
}
[data-tone=blue]{--tone:var(--blue);--tone-bg:var(--blue-bg);--tone-mid:var(--blue-mid)}
[data-tone=violet]{--tone:var(--violet);--tone-bg:var(--violet-bg);--tone-mid:var(--violet-mid)}
[data-tone=rose]{--tone:var(--rose);--tone-bg:var(--rose-bg);--tone-mid:var(--rose-mid)}
[data-tone=coral]{--tone:var(--coral);--tone-bg:var(--coral-bg);--tone-mid:var(--coral-mid)}
[data-tone=teal]{--tone:var(--teal);--tone-bg:var(--teal-bg);--tone-mid:var(--teal-mid)}
::selection{background:#ddd5f0;color:#302944}
input,select{caret-color:var(--primary);border-color:#8c91a6}
input::placeholder{color:#6a6e80;opacity:1}
a{text-underline-offset:4px}
.button-primary:hover{background:var(--primary-hover)}
.button-primary:active{background:#2e3d8e}
.button-quiet:hover{background:var(--blue-bg);border-color:#8c91a6}
button:disabled{opacity:1;color:#73788b;background:#f1f0f4;border-color:#d9dbe3}
.button:disabled:hover{background:#f1f0f4}
.site-header{background:#fffefc}
.site-header nav a[data-page=planner][aria-current=page]{color:var(--violet);border-color:var(--violet)}
.site-header nav a[data-page=questions][aria-current=page]{color:var(--amber);border-color:var(--amber)}
.welcome{margin-top:40px;align-items:center}
.welcome h1{font-size:44px;line-height:1.4;letter-spacing:-1px}
.welcome h1>span{color:var(--coral)}
.welcome-copy>p{color:#5f6171}
.welcome-steps{gap:0;padding-top:12px}
.welcome-steps li{padding:15px 0;border-top:1px solid #e5e0da;gap:16px}
.welcome-steps li:first-child{border-top:0}
.welcome-steps li>span{width:34px;height:34px;border:0;border-radius:10px;background:var(--blue-bg);color:var(--blue);font-weight:600}
.welcome-steps li:nth-child(2)>span{background:var(--violet-bg);color:var(--violet);border:0}
.welcome-steps li:nth-child(3)>span{background:var(--coral-bg);color:var(--coral);border:0}
.welcome-steps li:nth-child(1) strong{color:var(--blue)}
.welcome-steps li:nth-child(2) strong{color:var(--violet)}
.welcome-steps li:nth-child(3) strong{color:var(--coral)}
.welcome-steps p{font-size:14px}
.welcome-import{background:#f0ecf7;border:0;border-radius:16px;padding:34px 36px;box-shadow:none;align-self:stretch}
.welcome-import h2{font-size:25px;color:#3b3152}
.welcome-import>p{color:#665674}
.welcome-import .import-top{margin-bottom:24px}
.file-symbol{background:#e0d7ef;border:0;color:var(--violet);width:48px;height:48px;border-radius:12px}
.local-pill{color:var(--teal);background:var(--teal-bg);font-size:12px;border-radius:6px;padding:6px 9px}
.welcome-import .button-primary{min-height:50px;font-size:15px}
.welcome-import .demo-invitation{font-size:13px;color:#665674;margin:0 0 18px;text-align:center}
.sample-line{border-color:#d7cde3;padding-top:18px;margin-top:20px;gap:12px}
.sample-line>span{color:#665674}
.plugin-entry{background:#fff5ea;color:#844627;border-color:#bc8b6c;min-height:46px}
.plugin-entry:hover{background:#f9e7d7;border-color:#a26545}
.welcome-import .file-hint{color:#665674}
.welcome-note{color:#636777;display:flex;align-items:flex-start;justify-content:center;gap:8px;text-align:left;margin-top:0}
.welcome-note svg{color:var(--teal);flex-shrink:0;margin-top:2px}
.demo-banner{background:var(--coral-bg);color:#87452e}
.demo-banner .text-button{color:#87452e}
.start-focus{gap:0;padding:0;border:0;border-radius:16px;overflow:hidden;background:var(--teal-bg);margin-top:8px}
.current-number{padding:32px 36px;align-self:center}
.current-number>strong{color:var(--teal)}
.current-number>p:first-child{color:#315b56}
.current-number>p:last-child{color:#4e6c66}
.current-number strong small{color:#4e6c66}
.next-action{background:var(--violet-bg);border-radius:0;padding:34px 36px;align-self:stretch;display:flex;flex-direction:column;align-items:flex-start;justify-content:center}
.next-action h2{color:#4f3769;margin:0 0 12px}
.next-action p{color:#6a577e;margin-bottom:20px}
.quiet-status{font-size:14px}
.in-progress-detail{background:var(--blue-bg)}
.in-progress-detail p,.in-progress-detail>summary{color:#46558e}
.general-panel{background:#fffcfa;border-color:#e5d7d3}
.professional-panel{background:#faf7fd;border-color:#dfd4e9}
.professional-panel h2{color:#593e79}
.module-row{--tone:var(--blue);--tone-bg:var(--blue-bg);--tone-mid:var(--blue-mid);border-color:#e5e0e5}
.module-row[data-tone=rose]{--tone:var(--rose);--tone-bg:var(--rose-bg);--tone-mid:var(--rose-mid)}
.module-row[data-tone=coral]{--tone:var(--coral);--tone-bg:var(--coral-bg);--tone-mid:var(--coral-mid)}
.module-row[data-tone=teal]{--tone:var(--teal);--tone-bg:var(--teal-bg);--tone-mid:var(--teal-mid)}
.module-row[data-tone=violet]{--tone:var(--violet);--tone-bg:var(--violet-bg);--tone-mid:var(--violet-mid)}
.module-row-head .name{color:var(--tone)}
.meter{background:var(--tone-bg)}
.meter-current{fill:var(--tone)}
.meter-projected{fill:var(--tone-mid)}
.chip.chip-blue:not(.chip-neutral){background:var(--blue-bg);color:var(--blue)}
.chip.chip-violet:not(.chip-neutral){background:var(--violet-bg);color:var(--violet)}
.chip.chip-rose:not(.chip-neutral){background:var(--rose-bg);color:var(--rose)}
.chip.chip-coral:not(.chip-neutral){background:var(--coral-bg);color:var(--coral)}
.chip.chip-teal:not(.chip-neutral){background:var(--teal-bg);color:var(--teal)}
.chip-neutral{background:#efedf2;color:#625b71}
.help-button{border-color:#aaa0bf;color:var(--violet);background:#f6f0fc}
.semester-tab{background:#fffefc}
.semester-tab[aria-pressed=true]{background:var(--blue-bg)}
.flow-steps{gap:10px}
.flow-steps button{border:1px solid #d7d8e2;border-bottom:3px solid #d7d8e2;border-radius:10px;background:#fffefc;color:#626679}
.flow-steps button>span{background:var(--tone-bg);color:var(--tone);border:1px solid var(--tone-mid)}
.flow-steps button:hover{background:var(--tone-bg);border-color:var(--tone-mid)}
.flow-steps button[aria-current=step]{background:var(--tone-bg);border-color:var(--tone);color:var(--tone)}
.flow-steps button[aria-current=step]>span{background:var(--tone);border-color:var(--tone);color:#fff}
.fixed-panel{background:#f8f9fe;border-color:#cfd4e8}
.plan-main{background:#fffdfa;border-color:#e5ded4}
.candidate-panel{background:#f7f3fb;border-color:#d9cee6;--candidate-color:var(--violet);--candidate-bg:var(--violet-bg)}
.candidate-panel[data-category=general]{--candidate-color:var(--rose);--candidate-bg:var(--rose-bg);background:#fff8f8;border-color:#e6d5d9}
.candidate-panel[data-category=sport]{--candidate-color:var(--teal);--candidate-bg:var(--teal-bg);background:#f4faf7;border-color:#ccdfd8}
.candidate-panel>h2{color:var(--candidate-color)}
.filter-button{background:#fff;border-color:#9a93a8;color:#60586e}
.filter-button[aria-pressed=true]{background:var(--candidate-color);border-color:var(--candidate-color);color:#fff}
.filter-button:hover{background:var(--candidate-bg);border-color:var(--candidate-color);color:var(--candidate-color)}
.filter-button[aria-pressed=true]:hover{background:var(--candidate-color);color:#fff}
.timing-key{background:#ede7f4;color:#665176}
.candidate-panel[data-category=general] .timing-key{background:var(--rose-bg);color:#874863}
.candidate-row,.target-row{border-color:#ded4e7}
.target-row h3{color:var(--tone);display:flex;align-items:center;gap:9px}
.target-row h3::before{content:"";width:10px;height:10px;flex-shrink:0;border-radius:3px;background:var(--tone)}
.target-row .button-primary{background:var(--tone)}
.target-row .button-primary:hover{filter:brightness(.9)}
.planned-top .credit{color:var(--tone)}
.result-comparison{background:var(--teal-bg);color:#315b56}
.result-comparison p,.result-comparison strong small{color:#4e6c66}
.result-comparison strong{color:var(--teal)}
.result-comparison>div:first-child strong{color:#4f586f}
.review-panel{background:#fbfdfb;border-color:#cddfd7}
.attention-line,.conditional-banner{background:var(--amber-bg);color:var(--amber)}
.question-block:first-child{background:#fffaf1;border-color:#e6d6b9}
.question-block:first-child h2{color:var(--amber)}
.install-steps{gap:8px}
.install-steps button{background:#f3f1f6;color:#625b71;border:1px solid #9a93a8;border-radius:8px}
.install-steps button:hover{background:var(--violet-bg);color:var(--violet)}
.install-steps button[aria-current=step]{background:var(--primary);border-color:var(--primary);color:#fff;font-weight:600}
.instruction-list li::marker{color:var(--violet);font-weight:600}
.evidence-block{border-left:1px solid #a99aba;background:#f3edf8}
.toast{background:#354a46}
.professional-modules{margin:16px 0;padding:14px 0;border-block:1px solid #d6c9e3}
.professional-modules>p:first-child{font-size:13px;color:#665176;margin-bottom:10px}
.professional-modules [role=group]{display:flex;gap:7px;flex-wrap:wrap}
.module-filter{border:1px solid #9a8aaa;border-radius:6px;color:#62457e;background:#fff;min-height:44px;padding:8px 11px;font-size:13px}
.module-filter[aria-pressed=true]{color:#fff;background:var(--violet);border-color:var(--violet);box-shadow:inset 0 -3px #50346f}
.module-filter:hover{border-color:#62457e;background:#e8dff1;color:#50346f}
.module-filter[aria-pressed=true]:hover{background:#62457e;color:#fff}
.professional-modules .module-filter-note{color:#665176;font-size:12px;line-height:1.8;margin:12px 0 0}
.internship-entry{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:17px 22px;background:var(--teal-bg);border-radius:12px;margin:-4px 0 24px;color:#315b56}
.internship-entry strong{font-size:15px}
.internship-entry p{font-size:13px;color:#4e6c66;margin:4px 0 0}
.internship-entry .button{color:var(--teal);border-color:#6c9b8e;background:#fff;flex-shrink:0}
.internship-entry .button:hover{background:#f3faf6}
.internship-layout{max-width:900px;margin:auto}
.internship-panel{padding:30px;background:#fffdf8;border-color:#dfdcd3}
.internship-panel>h2{font-size:24px;margin-bottom:14px;color:#315b56}
.internship-experience{background:var(--teal-bg);padding:22px;border-radius:12px;color:#315b56}
.internship-experience h3{font-size:17px;margin-bottom:12px}
.internship-experience p{font-size:15px;line-height:1.9}
.internship-experience .source-note{font-size:13px;color:#4e6c66;margin:0}
.internship-checklist{margin:0}
.internship-checklist>div{border-top:1px solid var(--line);padding:19px 0}
.internship-checklist dt{font-weight:600;display:flex;align-items:center;justify-content:space-between;gap:14px}
.internship-checklist dd{color:var(--muted);font-size:14px;margin:9px 0 0}
.internship-status{background:var(--blue-bg);padding:20px;border-radius:10px;color:#46558e;margin-bottom:22px}
.internship-status p{font-size:14px;line-height:1.9}
.internship-status p:last-child{margin:0}
.internship-select-label{display:block;font-size:14px;margin-bottom:8px}
#internship-semester{width:100%;max-width:460px}
.internship-return{margin:22px 0 0;font-size:14px}
.site-header nav a[data-page=internship][aria-current=page]{color:var(--teal);border-color:var(--teal)}
.internship-source-note,.guide-version{font-size:13px;color:#625b71;line-height:1.8}
.internship-window{padding:24px;background:var(--teal-bg);border:1px solid #abc9c2;border-radius:5px;margin:22px 0 30px;color:#315b56}
.internship-window>strong{display:block;font-size:24px;line-height:1.6;margin:9px 0}
.internship-window>p{font-size:14px;line-height:1.9;margin:8px 0}
.material-heading{font-size:19px;margin:30px 0 12px}
.internship-facts,.internship-materials{list-style:none;padding:0;margin:0}
.internship-facts>li{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;padding:18px 0;border-bottom:1px solid var(--line)}
.internship-facts strong{font-size:16px}.internship-facts p,.internship-materials p{font-size:14px;line-height:1.9;color:var(--muted);margin:7px 0 0}
.internship-facts .text-button{flex-shrink:0;white-space:nowrap}
.internship-materials>li{padding:22px 0;border-bottom:1px solid var(--line)}
.internship-materials h4{font-size:17px;margin:0;color:#62457e}.internship-materials .material-when{font-weight:600;color:#62457e}
.material-actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin-top:12px}
.material-actions .button{font-size:14px;padding:10px 15px}
.guide-entry{display:flex;gap:20px;justify-content:space-between;align-items:center;padding:22px;background:var(--violet-bg);border-radius:10px;margin:24px 0;color:#62457e}
.guide-entry h3{font-size:18px;margin:0}.guide-entry p{font-size:14px;margin:8px 0 0;line-height:1.8;color:#665176}.guide-entry .button{flex-shrink:0}
.internship-questions article{padding:16px 0;border-top:1px solid var(--line)}.internship-questions h3{font-size:16px;color:var(--amber)}
.internship-guide-layout{max-width:1120px;margin:auto}.guide-back{font-size:14px;margin:0 0 24px}
.guide-selectors{display:flex;gap:36px;justify-content:space-between;flex-wrap:wrap;padding-bottom:22px;border-bottom:1px solid var(--line)}
.guide-selectors h2{font-size:15px;margin:0 0 12px;color:#625b71}.guide-selectors [role=group]{display:flex;gap:8px;flex-wrap:wrap}
.guide-phase-buttons .module-filter{min-width:100px}.guide-selectors .module-filter{font-size:14px;padding:10px 16px}
.guide-version{max-width:850px;margin:16px 0 26px}.guide-grid{display:grid;grid-template-columns:220px minmax(0,1fr);gap:28px;align-items:start}
.guide-tasks{padding:8px 0}.guide-tasks h2{font-size:15px;color:#625b71;margin:0 0 16px}
.guide-tasks button{display:flex;gap:11px;align-items:baseline;text-align:left;width:100%;background:transparent;color:#625b71;border:1px solid transparent;border-radius:7px;padding:13px 12px;margin:0 0 6px;font-size:14px;line-height:1.7}
.guide-tasks button span{font-size:12px}.guide-tasks button[aria-current=step]{color:var(--blue);background:var(--blue-bg);border-color:#b3bce0;font-weight:600}.guide-tasks button:hover{background:var(--violet-bg);color:#62457e}
.guide-content{padding:30px;min-width:0;background:#fffefa}.guide-content>h2{font-size:13px;color:var(--teal);margin:0 0 12px;font-weight:500}.guide-content>h3{font-size:24px;margin:0 0 24px}
.guide-instructions{padding-left:26px;margin:0 0 22px}.guide-instructions li{padding-left:7px;margin:15px 0;line-height:1.9;color:#41465b}.guide-instructions li::marker{color:var(--blue);font-weight:600}
.guide-tip{background:var(--blue-bg);color:#46558e;font-size:14px;line-height:1.9;border-radius:6px;padding:16px;margin:20px 0}
.guide-figure{margin:24px 0 0}.guide-figure img,.guide-overview img{display:block;width:100%;height:auto;border:1px solid #dfdce6;border-radius:5px;background:#fff}.guide-figure figcaption{font-size:12px;line-height:1.8;color:#625b71;margin-top:10px}
.guide-college-note{margin-top:30px;padding-top:22px;border-top:1px solid var(--line)}.guide-college-note>strong{color:var(--teal);font-size:14px}.guide-college-note p{font-size:14px;color:#4e6c66;line-height:1.9;margin:8px 0}
.guide-empty p{font-size:15px;color:var(--muted);line-height:1.9}.guide-empty h3{font-size:21px}
.guide-platform-link{font-size:13px;color:var(--muted);line-height:1.9;margin-top:24px}.guide-overview{margin-top:30px}
.evidence-block blockquote{white-space:pre-line;margin:14px 0;font-size:14px;line-height:1.9;overflow-wrap:anywhere}.evidence-block h3{font-size:17px;line-height:1.8}
/* V0.4-H: source emphasis, numbered operations and per-step illustrations. */
.important-requirement>div>strong,.important-requirement>div>p,.guide-emphasis{color:var(--red)}
.important-label{display:inline-block;font-size:12px;padding:1px 7px;border:1px solid #d4a19d;border-radius:4px;margin-right:6px;vertical-align:middle}
.guide-entry-actions{display:flex;flex-direction:column;gap:10px;flex-shrink:0;align-items:stretch}.guide-entry-actions .button{text-align:center}
.guide-entry .guide-download-note{font-size:12px;max-width:520px}.download-help{font-size:13px;line-height:1.9;color:var(--muted)}
a[aria-busy=true]{cursor:progress}.download-error{flex-basis:100%;font-size:14px;line-height:1.8;color:var(--red);margin:12px 0 0;max-width:65ch}
.notice-original{margin-top:24px;padding-top:22px;border-top:1px solid var(--line)}.notice-original h3{font-size:16px;color:var(--ink);margin:0 0 12px}
.notice-original blockquote{margin:16px 0;padding:0;border:0}.notice-original blockquote p{font-size:17px;font-weight:600;line-height:1.9;color:var(--ink);margin:0 0 8px}
.notice-original footer{font-size:12px;line-height:1.8;color:var(--muted)}.notice-original .text-button{font-size:13px}
.guide-flow-description{font-size:14px;color:var(--muted);line-height:1.9;margin:0 0 28px;max-width:75ch}
.guide-task-group{margin:0 0 22px;min-width:0}.guide-task-group h3{font-size:12px;color:var(--muted);font-weight:500;margin:0 0 6px;padding:0 12px}
.guide-tasks button span{min-width:24px;flex-shrink:0}.guide-content>h2{font-size:24px;line-height:1.5;font-weight:700;color:var(--ink);margin:0 0 8px}
.guide-location{font-size:13px;color:var(--muted);margin:0 0 30px;line-height:1.8}
.guide-instructions{padding-left:25px}.guide-instructions>li{margin:0 0 32px;padding-bottom:26px;border-bottom:1px solid var(--line)}.guide-instructions>li:last-child{border-bottom:0;padding-bottom:0}
.guide-instructions>li>p{margin:0 0 14px;line-height:1.9}.guide-emphasis{font-weight:700}
.guide-step-figure{margin:14px 0 0}.guide-step-figure>a{display:block;width:fit-content;max-width:100%;border:1px solid #dfdce6;border-radius:6px;background:#fff;overflow:hidden}
.guide-step-figure svg{display:block;width:auto;height:auto;max-width:100%;max-height:350px}
.guide-step-figure figcaption,.guide-step-source{font-size:12px;line-height:1.8;color:var(--muted);margin:9px 0 0}
.guide-full-page{margin-top:24px;font-size:14px;border-top:1px solid var(--line);padding-top:20px}.guide-full-page summary{cursor:pointer;color:var(--blue);font-weight:600;line-height:1.8}
.guide-full-page .guide-figure{margin-top:16px}.guide-task-pagination{display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;margin-top:28px;padding-top:22px;border-top:1px solid var(--line)}
.guide-task-pagination .button{white-space:normal;text-align:left;line-height:1.6;max-width:100%;font-size:14px}
.guide-download-footer{margin-top:28px;padding-top:24px;border-top:1px solid var(--line);display:flex;align-items:center;flex-wrap:wrap;gap:12px 20px}.guide-download-footer>p{font-size:13px;line-height:1.8;color:var(--muted);max-width:60ch;margin:0}
.local-access-help{max-width:1120px;margin:32px auto 20px;padding:18px 24px;border-top:1px solid var(--line);color:var(--muted);font-size:13px;line-height:1.9}
.local-access-help summary{cursor:pointer;color:var(--blue)}.local-access-help p{max-width:75ch;margin-bottom:0}
@media(max-width:767px){
  .guide-entry-actions{width:100%;align-items:flex-start}.guide-entry-actions .button{white-space:normal;line-height:1.7}
  .guide-tasks{display:block}.guide-task-group{margin-bottom:14px;display:flex;gap:6px;flex-wrap:wrap}.guide-task-group h3{width:100%;padding:0;margin-bottom:2px}.guide-task-group button{width:auto;max-width:100%}
  .guide-tasks button span{display:inline;min-width:auto}.guide-content>h2{font-size:21px}.guide-location{margin-bottom:24px}
  .guide-instructions{padding-left:20px}.guide-instructions>li{padding-left:3px}.guide-step-figure svg{max-height:300px}.guide-task-pagination{flex-direction:column;align-items:flex-start}
  .notice-original blockquote p{font-size:16px}.guide-download-footer .button{white-space:normal;line-height:1.7}.local-access-help{margin-inline:20px;padding-inline:0}
}
@media(max-width:767px){
  .internship-window{padding:18px}.internship-window>strong{font-size:20px}.internship-facts>li{display:block}.internship-facts .text-button{margin-top:4px;padding-left:0}
  .guide-entry{align-items:flex-start;flex-direction:column;padding:18px}.guide-entry .button{align-self:flex-start}
  .guide-grid{grid-template-columns:minmax(0,1fr);gap:16px}.guide-tasks{display:flex;flex-wrap:wrap;gap:6px;padding:0}.guide-tasks h2{width:100%;margin-bottom:6px}.guide-tasks button{width:auto;font-size:13px;margin:0;padding:10px;border-color:#cbc5d7}.guide-tasks button span{display:inline}
  .guide-content{padding:24px 20px}.guide-content>h3{font-size:21px}.guide-selectors{gap:20px}.guide-phase-buttons .module-filter{min-width:74px}.guide-selectors .module-filter{font-size:13px;padding:10px 12px}
}
@media(max-width:1050px){.welcome h1{font-size:38px}.welcome-import{padding:30px}.current-number,.next-action{padding:30px}}
@media(max-width:767px){
  .welcome{margin-top:12px}.welcome h1{font-size:34px}.welcome-import{padding:26px 24px;margin-top:24px}
  .welcome-steps li{padding:13px 0}.welcome-note{margin-top:24px;justify-content:flex-start}
  .start-focus{gap:0;padding:0}.current-number{padding:26px 24px}.next-action{padding:26px 24px}
  .flow-steps{gap:6px}.flow-steps button{font-size:12px;padding-inline:2px}.flow-steps button>span{width:25px;height:25px}
  .sample-line{flex-wrap:wrap;gap:2px}.sample-line .text-button{padding-left:0}
  .result-comparison>div+div{border-top-color:#b4cfc6}
  .site-header nav{gap:18px}.internship-entry{align-items:flex-start;flex-direction:column;gap:12px;padding:18px}
  .internship-entry .button{align-self:flex-start}.internship-panel{padding:22px 20px}.internship-panel>h2{font-size:21px}
  .internship-experience{padding:18px}.internship-experience p{font-size:14px}.module-filter{font-size:12px;padding:8px 9px}
}
/* V0.5-A: a readable selection guide, accessible before academic import. */
.selection-layout{max-width:1000px;margin:24px auto 0}.selection-heading{display:flex;align-items:baseline;gap:20px;justify-content:space-between;margin-bottom:28px}
.selection-heading h1{font-size:30px;line-height:1.5}.selection-heading p{margin:12px 0 0;color:var(--muted);font-size:15px;line-height:1.9}.selection-heading>a{flex-shrink:0;font-size:13px}
.selection-notice{padding:20px 24px;background:var(--amber-bg);color:var(--amber);border-radius:8px;margin-bottom:28px}.selection-notice strong{font-size:16px}.selection-notice p{font-size:14px;line-height:1.9;max-width:72ch;margin:8px 0}.selection-notice a{font-size:13px;color:var(--amber);font-weight:600}
.selection-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:24px}.selection-stage{padding:32px 36px;background:#fffefa}.selection-stage>h2{font-size:24px;line-height:1.5}
.selection-intro{font-size:15px;line-height:1.9;color:var(--muted);margin:12px 0 26px;max-width:70ch}
.selection-actions{padding:0 0 0 25px;margin:0}.selection-actions>li{padding:0 0 24px 8px;margin-bottom:24px;border-bottom:1px solid var(--line);line-height:1.9}.selection-actions>li:last-child{border:0;margin-bottom:4px;padding-bottom:8px}.selection-actions>li::marker{font-weight:600;color:var(--blue)}
.selection-actions h3{font-size:18px;line-height:1.6;margin:0 0 8px}.selection-actions p{font-size:15px;color:#41465b;max-width:70ch;line-height:1.9;margin-bottom:8px}
.selection-action-source{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap}.selection-action-source>span{font-size:12px;color:var(--muted)}.selection-action-source .text-button{font-size:12px;min-height:32px}
.selection-detail{border-top:1px solid var(--line);padding-top:20px;margin-top:24px;font-size:14px;line-height:1.9}.selection-detail>summary{color:var(--blue);font-weight:600;cursor:pointer;min-height:32px;line-height:1.8}
.selection-detail p{line-height:1.9;max-width:72ch;margin:14px 0;color:var(--muted)}.selection-detail h2{font-size:20px;margin-top:32px;margin-bottom:16px}.selection-detail article{margin:20px 0;padding-bottom:18px;border-bottom:1px solid var(--line)}.selection-detail h3{font-size:16px;line-height:1.7}.selection-detail li{margin:10px 0}.selection-research{padding:24px 6px 0;margin-top:30px}.selection-research>p{max-width:80ch}
.selection-self-check{margin-top:28px;padding-top:24px;border-top:1px solid var(--line)}.selection-self-check h3{margin-bottom:12px;font-size:17px}.selection-self-check .check-label{font-size:14px;line-height:1.9}.selection-small-note{font-size:12px;color:var(--muted);line-height:1.9;margin:12px 0 0}
.selection-rounds{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:26px}.selection-rounds .module-filter{min-height:44px}.selection-round-body>h3{font-size:18px;color:var(--coral);line-height:1.7;margin-bottom:12px}.selection-round-body>p,.selection-round-body li{font-size:15px;line-height:1.9;max-width:70ch}.selection-round-body>p{color:#41465b}.selection-round-body ol{padding-left:24px}.selection-round-body li{padding-left:5px;margin:14px 0}.selection-round-body .selection-round-note{padding:16px 20px;background:var(--coral-bg);border-radius:6px;color:var(--coral);font-size:14px;line-height:1.9}
.selection-system-link{display:flex;flex-wrap:wrap;gap:8px 16px;margin:24px 0 0}.selection-system-link a{font-size:14px}.selection-system-link span{font-size:12px;color:var(--muted)}
.selection-source{padding-top:8px;border-bottom:1px solid var(--line);padding-bottom:18px;margin-bottom:20px}.selection-source h3{font-size:17px}.selection-source-caution{color:var(--amber)}
.selection-step-actions .button{white-space:normal;line-height:1.6}.site-header nav a[data-page=selection][aria-current=page]{color:var(--coral);border-color:var(--coral)}
@media(max-width:1100px){.site-header{flex-wrap:wrap}.site-header nav{order:3;width:100%;flex-wrap:wrap}.header-actions{margin-left:auto}}
@media(max-width:767px){
  .site-header nav{gap:4px 18px;flex-wrap:wrap}.selection-layout{margin-top:8px}.selection-heading{display:block;margin-bottom:22px}.selection-heading h1{font-size:25px}.selection-heading p{font-size:14px}.selection-heading>a{display:inline-block;margin-top:12px}
  .selection-notice{padding:18px}.selection-notice strong{font-size:15px}.selection-notice p{font-size:13px}.selection-steps{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.selection-steps button{font-size:13px;padding:10px 8px;justify-content:flex-start}.selection-stage{padding:24px 20px}.selection-stage>h2{font-size:21px}
  .selection-actions h3{font-size:17px}.selection-actions{padding-left:20px}.selection-actions>li{padding-left:3px}.selection-action-source{gap:4px 10px}.selection-rounds{gap:6px}.selection-rounds .module-filter{font-size:13px;padding:10px 12px}.selection-round-body>h3{font-size:17px}.selection-stage .step-actions{flex-wrap:wrap}.selection-research{padding-inline:2px}
}
