:root{--bg:#f6f7f8;--white:#fff;--ink:#25262b;--muted:#74777f;--line:#e4e5e9;--accent:#773248;--accent-bg:#f7f0f2;--success:#25745c;--warn:#95651e;--shadow:0 20px 70px #24263120;font-family:Arial,'Apple SD Gothic Neo','Malgun Gothic',sans-serif;font-size:13px;color:var(--ink);background:var(--bg)}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button,a,input,select,textarea{outline-offset:3px}button,a{touch-action:manipulation}button{border:1px solid var(--line);background:#fff;border-radius:5px;padding:8px 12px;cursor:pointer;color:var(--ink);line-height:1.2}button:hover{border-color:#b5b5bd;background:#fafafa}button:disabled{opacity:.5;cursor:default}button.primary{background:var(--accent);border-color:var(--accent);color:#fff}button.primary:hover{background:#61263a}button.small{padding:5px 9px;font-size:12px}button.text{border:0;background:none;padding:4px 0;color:var(--accent)}button.danger{color:#a23434}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}input,select,textarea{border:1px solid #d9dbe1;border-radius:4px;background:#fff;padding:8px 9px;color:var(--ink);min-width:0}input:focus,select:focus,textarea:focus{border-color:var(--accent);outline:2px solid #77324818}textarea{resize:vertical;min-height:80px;line-height:1.65}label{display:flex;flex-direction:column;gap:7px;font-size:12px;color:#5c5e65}label.check{flex-direction:row;align-items:center;gap:7px;color:var(--ink)}input[type=checkbox]{accent-color:var(--accent);width:15px;height:15px;padding:0}h1,h2,h3,p{margin:0}h1{font-size:23px;letter-spacing:-.7px;font-weight:650}h2{font-size:16px;font-weight:650}h3{font-size:13px;font-weight:650}p{line-height:1.7}.muted{color:var(--muted)}.tiny{font-size:11px}.mono{font-variant-numeric:tabular-nums}.badge{display:inline-block;border:1px solid var(--line);border-radius:3px;font-size:11px;padding:3px 6px;line-height:1.2;white-space:nowrap;color:#656770;background:#fafafa}.badge.accent{background:var(--accent-bg);color:var(--accent);border-color:#e9d4db}.badge.green{background:#edf6f2;color:var(--success);border-color:#d7eae1}.badge.amber{background:#fcf7ed;color:var(--warn);border-color:#efe2c8}.sidebar{position:fixed;inset:0 auto 0 0;width:222px;background:#fff;border-right:1px solid var(--line);padding:29px 17px;display:flex;flex-direction:column;z-index:10}.brand{padding:0 11px 30px}.brand strong{font-size:18px;letter-spacing:-1px}.brand small{display:block;font-size:11px;letter-spacing:1.8px;margin-top:10px;color:var(--muted)}.nav-label{font-size:10px;color:#999ca4;padding:12px 12px 8px;letter-spacing:1.3px}.nav-item{display:flex;align-items:center;gap:11px;padding:12px;border-radius:5px;margin:3px 0;color:#666a73;font-size:13px;cursor:pointer;text-decoration:none}.nav-item:hover{text-decoration:none;background:#f6f6f8}.nav-item.active{background:var(--accent-bg);color:var(--accent);font-weight:650}.nav-number{font-size:10px;font-variant-numeric:tabular-nums;color:#92959d;min-width:15px}.nav-item.active .nav-number{color:var(--accent)}.sidebar-footer{margin-top:auto;padding:20px 11px 0;border-top:1px solid var(--line);font-size:11px;color:var(--muted);line-height:1.8}.workspace{margin-left:222px;min-height:100vh}.topbar{height:61px;border-bottom:1px solid var(--line);background:#fff;padding:0 32px;display:flex;align-items:center;justify-content:space-between;gap:12px}.topbar .crumb{font-size:12px;color:var(--muted)}.topbar-actions{display:flex;align-items:center;gap:15px}.page{max-width:1540px;margin:0 auto;padding:32px}.page-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:25px}.page-heading p{font-size:12px;color:var(--muted);margin-top:8px}.actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.student-bar{border:1px solid var(--line);background:#fff;padding:17px 20px;border-radius:6px;margin-bottom:20px;display:flex;align-items:center;justify-content:space-between;gap:15px}.student-bar .identity{display:flex;align-items:center;gap:14px}.student-bar .avatar{width:34px;height:34px;background:var(--accent-bg);color:var(--accent);border-radius:50%;display:grid;place-items:center;font-weight:bold}.student-bar .name{font-weight:bold;font-size:14px}.panel{background:#fff;border:1px solid var(--line);border-radius:6px;margin-bottom:20px;overflow:hidden}.panel-title{padding:16px 20px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:10px}.panel-body{padding:20px}.panel-title small{font-size:11px;font-weight:normal;color:var(--muted)}.notice{border-left:3px solid #c8c9cf;background:#f5f6f8;padding:12px 14px;line-height:1.7;color:#62666e;font-size:12px;margin-bottom:18px}.notice.accent{border-color:var(--accent);background:var(--accent-bg)}.score-strip{display:grid;grid-template-columns:repeat(6,1fr)}.score-cell{padding:17px 20px;border-right:1px solid var(--line)}.score-cell:last-child{border:0}.score-cell .label{font-size:11px;color:var(--muted);margin-bottom:9px}.score-cell .score{font-size:23px;font-weight:600;letter-spacing:-.8px}.score-cell .foot{font-size:10px;color:var(--muted);margin-top:8px}.filters{display:grid;grid-template-columns:2fr 2fr 1fr 1fr auto;gap:10px;padding:18px 20px;border-bottom:1px solid var(--line)}.filters input,.filters select{width:100%}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;text-align:left;font-variant-numeric:tabular-nums}th{font-size:11px;font-weight:normal;color:var(--muted);background:#fafafb;border-bottom:1px solid var(--line);padding:12px 14px;white-space:nowrap}td{font-size:12px;padding:15px 14px;border-bottom:1px solid #eeeff2;vertical-align:middle;line-height:1.5}tbody tr:last-child td{border-bottom:0}tbody tr:hover{background:#fcfcfd}.num{text-align:right}.unit strong{font-size:13px;display:block;font-weight:600}.unit small{display:block;font-size:11px;color:var(--muted);margin-top:4px}.empty{padding:50px 25px;text-align:center;color:var(--muted);line-height:1.9;font-size:12px}.empty strong{display:block;color:#52565f;font-size:14px;margin-bottom:5px}.table-foot{padding:13px 20px;border-top:1px solid var(--line);font-size:11px;color:var(--muted);display:flex;justify-content:space-between;gap:12px}.two-col{display:grid;grid-template-columns:1.5fr 1fr;gap:20px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.form-grid .full{grid-column:1/-1}.form-row{display:flex;align-items:flex-end;gap:10px;flex-wrap:wrap}.form-row label{flex:1;min-width:100px}.metrics{display:flex;gap:28px}.metric strong{display:block;font-size:22px;font-weight:600;margin:6px 0}.metric span{font-size:11px;color:var(--muted)}.status-tabs{display:flex;gap:4px;border-bottom:1px solid var(--line);padding:0 20px}.status-tabs :is(button,a){border:0;border-radius:0;padding:14px 12px;color:var(--muted);background:none}.status-tabs :is(button,a).active{color:var(--accent);border-bottom:2px solid var(--accent);font-weight:600}.inline-list{display:flex;gap:8px;flex-wrap:wrap}.detail-grid{display:grid;grid-template-columns:120px 1fr;gap:13px;font-size:12px;line-height:1.6}.detail-grid dt{color:var(--muted)}.detail-grid dd{margin:0}.rule-steps{background:#f7f7f9;padding:12px 15px;border-radius:4px}.rule-steps div{display:flex;justify-content:space-between;gap:20px;padding:5px 0;font-size:12px}.modal-backdrop{position:fixed;inset:0;background:#14172055;z-index:100;display:flex;align-items:center;justify-content:center;padding:25px}.modal{background:#fff;box-shadow:var(--shadow);border-radius:8px;width:min(840px,100%);max-height:92vh;display:flex;flex-direction:column;overflow:hidden}.modal.wide{width:min(1150px,100%)}.modal-header{padding:20px 24px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between}.modal-content{padding:24px;overflow:auto}.modal-footer{padding:15px 24px;border-top:1px solid var(--line);display:flex;justify-content:flex-end;gap:8px}.modal iframe{width:100%;height:65vh;border:1px solid var(--line)}.modal img.preview{display:block;max-width:100%;max-height:70vh;margin:auto}.login-wrap{min-height:100vh;display:grid;place-items:center;padding:25px;background:#f6f7f8}.login-box{background:#fff;border:1px solid var(--line);border-radius:8px;width:420px;max-width:100%;padding:38px}.login-box .brand{padding:0 0 30px}.login-box h1{font-size:21px}.login-box label{margin:22px 0 12px}.login-box button{width:100%;padding:12px}.login-box .login-links{margin-top:22px;padding-top:20px;border-top:1px solid var(--line);text-align:center;font-size:12px}.error{color:#a13939;font-size:12px;line-height:1.6;margin:10px 0}.reservation{max-width:840px;margin:auto;padding:40px 24px}.reservation header{border-bottom:1px solid var(--line);padding-bottom:28px;margin-bottom:26px}.reservation header .brand{padding:0 0 25px}.reservation h1{font-size:25px}.reserve-step{font-size:10px;letter-spacing:1px;color:var(--accent);margin-bottom:10px}.slot-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:15px}.slot-grid button.selected{background:var(--accent-bg);border-color:var(--accent);color:var(--accent);font-weight:bold}.exam-table input,.exam-table select{width:100%;min-width:64px}.exam-table th{padding:8px}.exam-table td{padding:8px}.exam-table td:first-child{font-weight:bold;min-width:65px}.file-drop{border:1px dashed #c7c9d1;border-radius:5px;padding:24px;text-align:center;background:#fbfbfc}.file-drop input{max-width:100%;border:0;background:none;margin-top:12px}.import-summary{display:flex;gap:18px;flex-wrap:wrap;padding:14px 20px;font-size:12px;background:#fafafb}.log-item{padding:14px 0;border-bottom:1px solid var(--line)}.log-item:last-child{border:0}.log-item p{font-size:12px}.hint{font-size:11px;color:var(--muted);line-height:1.7;margin-top:8px}.selected-row{background:#fbf6f8!important}.heading-rule{display:flex;align-items:center;gap:10px;margin:25px 0 13px}.heading-rule:after{content:'';height:1px;background:var(--line);flex:1}.group-card{border:1px solid var(--line);padding:15px;border-radius:5px;flex:1;min-width:180px}.group-card .group{font-size:11px;color:var(--accent);margin-bottom:10px}.group-card p{font-size:12px}.group-card small{color:var(--muted)}#toast{position:fixed;left:50%;bottom:28px;transform:translateX(-50%);padding:12px 18px;border-radius:5px;background:#292c34;color:white;z-index:300;font-size:12px;box-shadow:var(--shadow);display:none;max-width:85vw}#print-root{display:none}.shared .admin-only{display:none!important}.shared .page{max-width:1400px}.shared .topbar{border-top:3px solid var(--accent)}.busy{opacity:.65;pointer-events:none}.report-preview{background:#f1f2f5;padding:15px}.print-page{background:#fff;margin:0 auto 20px;padding:15mm 14mm;max-width:210mm;min-height:260mm;color:#222}.print-brand{font-size:12px;font-weight:bold;border-bottom:2px solid #5c283b;padding-bottom:10px;margin-bottom:18px}.print-page h1{font-size:23px;margin-bottom:8px}.print-meta{font-size:10px;color:#666;line-height:1.8;margin-bottom:20px}.print-page h2{font-size:13px;margin:18px 0 8px}.print-page table th,.print-page table td{font-size:10px;padding:8px;border:1px solid #ddd;background:white}.print-page .opinion{border:1px solid #ddd;padding:12px;white-space:pre-wrap;font-size:11px;line-height:1.8}.print-page .disclosure{font-size:9px;color:#666;line-height:1.7;margin-top:16px}.print-page .source{font-size:9px;word-break:break-all;margin:5px 0}.page-num{text-align:right;color:#999;font-size:9px;margin-top:20px}@media(max-width:1050px){.sidebar{width:190px}.workspace{margin-left:190px}.page{padding:24px 20px}.topbar{padding:0 20px}.filters{grid-template-columns:1fr 1fr 1fr}.two-col{grid-template-columns:1fr}.score-cell{padding:14px 12px}.student-bar{flex-wrap:wrap}.score-cell .score{font-size:20px}}@media(max-width:760px){.sidebar{display:none}.workspace{margin-left:0}.topbar{height:auto;min-height:58px;padding:12px 16px;align-items:flex-start}.topbar-actions{gap:9px;flex-wrap:wrap;justify-content:flex-end}.topbar-actions .muted{display:none}.page{padding:23px 14px}.page-heading{margin-bottom:18px;flex-wrap:wrap}h1{font-size:21px}.panel-body{padding:16px}.panel-title{padding:14px 16px}.filters{padding:15px;grid-template-columns:1fr 1fr}.score-strip{grid-template-columns:repeat(3,1fr)}.score-cell:nth-child(-n+3){border-bottom:1px solid var(--line)}.score-cell:nth-child(3){border-right:0}.student-bar{padding:14px}.student-bar .identity{gap:9px}.form-grid{grid-template-columns:1fr}.slot-grid{grid-template-columns:repeat(3,1fr)}.modal-backdrop{padding:8px}.modal{max-height:96vh}.modal-content{padding:16px}.modal-header{padding:16px}.reservation{padding:25px 14px}.metrics{gap:17px}.detail-grid{grid-template-columns:90px 1fr}.print-page{padding:20px}.group-card{min-width:120px}.form-row{gap:8px}td{padding:12px 10px}.actions{gap:6px}.exam-table td{padding:6px}.exam-table input,.exam-table select{font-size:11px;padding:7px 4px}.exam-table select{min-width:90px}}@page{size:A4;margin:12mm}@media print{body{background:#fff!important;color:#000!important;font-size:10pt}#app,#overlay,#toast{display:none!important}#print-root{display:block!important}.print-page{padding:0;max-width:none;min-height:0;margin:0;page-break-after:always;break-after:page}.print-page:last-child{page-break-after:auto;break-after:auto}.print-page table{width:100%;table-layout:fixed}.print-page th,.print-page td{word-wrap:break-word;font-size:9pt!important;padding:6px!important}.print-page thead{display:table-header-group}.print-page tr{break-inside:avoid;page-break-inside:avoid}.print-page h2{break-after:avoid}.print-page .opinion{break-inside:avoid}.print-page .source{font-size:8pt}.print-page a{color:#000;text-decoration:none}.no-print{display:none!important}.print-page .print-meta{font-size:9pt}.print-page .disclosure{font-size:8pt}.print-page .score-strip{display:table;width:100%}.print-page .score-cell{display:table-cell;border:1px solid #ddd;padding:8px}.print-page .score-cell .score{font-size:16px}.print-page .score-cell .label,.print-page .score-cell .foot{font-size:8pt}}

.print-page .score-cell{padding:10px 8px}.print-page .score-cell .label{font-size:10px;margin-bottom:6px;line-height:1.35}.print-page .score-cell .foot{font-size:9px;line-height:1.45;margin-top:6px}.print-page .score-cell .score{font-size:20px}@media print{.print-page .score-cell{padding:7px 6px}.print-page .score-cell .label,.print-page .score-cell .foot{font-size:7pt}.print-page .score-cell .score{font-size:16px}}
.table-wrap button{white-space:nowrap}

/* v0.2 university coverage: data-derived counts and source status. */
.coverage-intro{padding:17px 20px;border-bottom:1px solid var(--line);font-size:12px;color:#62666e;line-height:1.75}.coverage-scope{margin-top:9px}.coverage-scope summary{cursor:pointer;color:var(--accent);font-size:11px}.coverage-scope ol{padding-left:20px;margin:9px 0}.coverage-scope li{padding:2px 0}.coverage-scope p{font-size:11px;color:var(--muted)}.coverage-table{min-width:850px}.coverage-table .university-filter{text-align:left;line-height:1.5;font-weight:600;font-size:12px}.coverage-source{max-width:320px;font-size:11px;line-height:1.7;overflow-wrap:anywhere}.coverage-sources{padding-top:6px}.coverage-sources>div+div{margin-top:7px}.pending-count{color:var(--warn);font-weight:600}.pending-reason{font-size:11px;color:var(--warn);line-height:1.65;margin:5px 0}.rule-status{max-width:240px}.database-filters{display:flex;align-items:flex-end;gap:12px;flex-wrap:wrap;padding:16px 20px;border-bottom:1px solid var(--line)}.database-filters label{min-width:150px}.database-filters label:first-child{min-width:220px}.database-filters .hint{margin:0;align-self:center}@media(max-width:760px){.coverage-intro{padding:14px 16px}.database-filters{padding:14px 16px;gap:9px}.database-filters label{min-width:110px;flex:1}.database-filters label:first-child{min-width:160px}.database-filters .hint{width:100%}.coverage-source{min-width:190px}}

/* v0.3 consultation tools */
.visit-banner{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:13px 17px;margin:-7px 0 20px;border:1px solid #dedcda;border-left:3px solid #713b48;background:#faf9f8}.visit-banner>div:first-child{display:flex;align-items:center;gap:14px}.plan-intro{padding-top:14px;padding-bottom:14px;color:#6c6868;font-size:12px;line-height:1.7}.plans-table th,.plans-table td{vertical-align:top}.plans-table td:nth-child(2){min-width:105px}.plans-table td:nth-child(n+3):nth-child(-n+5){min-width:130px}.plans-table td:nth-child(6){min-width:190px}.plan-note{max-width:170px;margin-top:7px;white-space:pre-wrap;color:#777}.compact-issues{padding-left:14px;margin:0;font-size:11px;line-height:1.65}.compact-issues li+li{margin-top:4px}.plan-select-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:20px 0}.plan-select-grid select{max-width:100%}.plan-comparison th,.plan-comparison td{vertical-align:top;min-width:180px}.plan-comparison th:first-child{min-width:100px}.plan-score{border-top:1px solid #ebe7e7;margin-top:12px;padding-top:9px;font-size:12px;line-height:1.6}.preserve-lines{white-space:pre-wrap;line-height:1.8}.report-plan-option{padding:10px 0;border-bottom:1px solid #eee}.history-controls{display:flex;gap:24px;align-items:flex-start;justify-content:space-between;margin:20px 0}.history-controls>label{min-width:145px}.history-exams{display:flex;flex-wrap:wrap;gap:12px;margin-top:10px}.history-exams .check{font-size:11px}.history-calculations td{vertical-align:top;min-width:150px}.history-calculations td:first-child{min-width:210px}.history-calculations td:last-child{min-width:60px}.history-calculations .tiny{margin-top:5px;max-width:230px;line-height:1.5}.eligibility-detail{max-width:470px;min-width:240px;white-space:pre-wrap;line-height:1.7}.forecast-note{margin-top:16px}.forecast-excluded{margin-top:14px}.import-impact{padding:18px 22px;background:#faf8f8;border-bottom:1px solid #e9e5e5;font-size:12px}.import-impact details{margin-top:12px}.student-directory-heading{display:flex;justify-content:space-between;gap:18px;align-items:flex-start}.student-search{max-width:670px;margin-top:18px}.student-search input{flex:1;min-width:190px}.student-name{font-weight:650;font-size:13px}.student-directory td{vertical-align:middle}.student-directory td:first-child{min-width:135px}.student-directory td:last-child{min-width:230px}.student-directory .badge{margin-left:3px}.student-directory .tiny{line-height:1.8}.report-preview .print-page table{table-layout:fixed}.print-page .source{overflow-wrap:anywhere}.print-page .opinion{overflow-wrap:anywhere}
@media(max-width:760px){.visit-banner,.visit-banner>div:first-child{align-items:flex-start;flex-direction:column;gap:9px}.plan-select-grid{grid-template-columns:1fr}.history-controls{flex-direction:column}.history-exams{flex-direction:column}.student-directory-heading{flex-direction:column}.student-search{flex-wrap:wrap}.plan-comparison td{min-width:180px}}
@media print{.print-page .plan-note{max-width:none}.print-page .compact-issues{font-size:8px}}
.pagination{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:12px 20px;border-top:1px solid #ececef}.student-row{cursor:pointer}.student-row:hover{background:#fbf8f9}.print-page .forecast-note,.print-page .notice{font-size:10px}.print-page .heading-rule{margin-top:18px}.print-page .forecast-excluded{font-size:10px}

/* v0.3.1 date-specific booking closures */
.settings-form{max-width:1100px}.settings-section+.settings-section{border-top:1px solid var(--line);margin-top:28px;padding-top:26px}.settings-section-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:17px}.settings-section-heading .hint{margin-top:5px}.settings-weekdays{gap:8px;margin-top:2px}.settings-weekdays .check{border:1px solid var(--line);border-radius:4px;padding:7px 12px}.closure-editor{background:#f9f9fb;border:1px solid #e5e5e9;border-radius:6px;padding:18px}.closure-time-grid{display:grid;grid-template-columns:minmax(170px,1.2fr) minmax(110px,.75fr) 15px minmax(110px,.75fr) auto;align-items:end;gap:12px}.closure-time-divider{align-self:end;padding-bottom:10px;color:#999;text-align:center}.closure-whole{align-self:end;white-space:nowrap;min-height:36px;padding-left:9px}.closure-note-row{display:flex;align-items:flex-end;gap:15px;margin-top:17px}.closure-note-row>label{display:block;flex:1;font-size:12px}.closure-note-row input{display:block;width:100%;margin-top:7px}.closure-note-row>button{min-height:36px;white-space:nowrap}.closure-editor input:disabled{background:#eeeff2;color:#92949c}.closure-editor .error{margin-bottom:0}.closure-boundary-note{font-size:11px;line-height:1.8;color:var(--muted);margin:13px 0 19px;max-width:850px}.closure-table{border:1px solid var(--line)}.closure-table th:first-child,.closure-table td:first-child{width:170px}.closure-table th:nth-child(2),.closure-table td:nth-child(2){width:200px}.closure-table th:last-child,.closure-table td:last-child{width:70px;text-align:right}.closure-memo{white-space:pre-wrap;overflow-wrap:anywhere;font-size:12px;max-width:450px}.closure-draft-mark{display:inline-block;color:var(--warn);font-size:10px;margin-left:8px}.closure-no-conflicts{font-size:11px;color:var(--muted);margin-top:13px}.closure-conflict-warning{margin-top:20px;padding:17px;border:1px solid #ead6b3;border-radius:5px;background:#fffcf7}.closure-conflict-warning .settings-section-heading{margin-bottom:13px}.closure-conflict-warning h3{color:#8b5e21}.closure-conflict-warning table{background:#fff}.closure-conflict-warning td{font-size:12px}.closure-conflict-warning .table-wrap{border:1px solid #eee6d8}.settings-save{display:flex;justify-content:space-between;align-items:center;gap:18px;margin-top:25px;padding-top:20px;border-top:1px solid var(--line)}.settings-save .hint{margin-top:4px}.settings-save button{white-space:nowrap}.closure-editor .error[hidden]{display:none}
@media(max-width:1050px){.closure-time-grid{grid-template-columns:minmax(150px,1fr) minmax(100px,.7fr) 15px minmax(100px,.7fr)}.closure-whole{grid-column:1/-1;padding-left:0}.closure-note-row{gap:10px}}
@media(max-width:760px){.closure-editor{padding:14px}.closure-time-grid{grid-template-columns:1fr 15px 1fr;gap:9px}.closure-time-grid>label:first-child{grid-column:1/-1}.closure-time-grid>label:nth-child(2){grid-column:1}.closure-note-row{flex-direction:column;align-items:stretch}.closure-note-row>label{width:100%}.closure-note-row>button{align-self:flex-end}.closure-table{min-width:570px}.closure-conflict-warning{padding:12px}.closure-conflict-warning table{min-width:570px}.settings-save{align-items:flex-start;flex-direction:column}.settings-save>button{align-self:flex-end}.settings-weekdays{gap:6px}.settings-weekdays .check{padding:6px 9px}}
button.demo-launch{border-color:#cdb6be;background:#f9f1f4;color:var(--accent);font-weight:600}button.demo-launch:hover{background:#f2e4e9}

/* Each score belongs to the program and scale printed in the same row. */
.candidate-heading .actions{flex-wrap:wrap}
.candidate-matrix{table-layout:fixed}
.candidate-matrix th:first-child{width:25%}
.candidate-matrix th:nth-child(2){width:16%}
.candidate-matrix th:nth-child(3){width:20%}
@media(min-width:761px){
 .candidate-matrix th.candidate-remove-cell{width:80px}
 .candidate-matrix td.candidate-remove-cell{padding-right:20px}
}
.candidate-matrix td.candidate-remove-cell{text-align:right;vertical-align:middle}
.candidate-matrix td{vertical-align:top;overflow-wrap:anywhere}
.candidate-matrix small,.archive-row small{display:block;margin-top:4px;font-size:11px;line-height:1.5;color:#62666e}
.candidate-group{display:inline-block;margin-right:5px;padding:1px 5px;color:var(--accent);border:1px solid #dfd3d7;border-radius:3px;font-size:11px;font-weight:normal}
.candidate-matrix button.candidate-unit{display:block;margin:2px 0 0;padding:1px 0;text-align:left;white-space:normal;text-decoration:underline;text-underline-offset:3px}
.candidate-score{font-size:17px;line-height:1.2;font-variant-numeric:tabular-nums}
.candidate-empty,.candidate-unavailable,.admin-calculation,.legacy-records{padding:16px 20px}
.candidate-empty p{margin:5px 0 0;color:var(--muted);font-size:12px}
.candidate-unavailable,.admin-calculation,.legacy-records{border-top:1px solid var(--line)}
.candidate-unavailable summary,.legacy-records summary{cursor:pointer}
.legacy-records{margin-top:17px;padding:12px 0 0}
.legacy-records button{margin-top:8px}
.empty-actions{justify-content:center;margin-top:14px}
.admin-calculation,.archive-row{display:flex;justify-content:space-between;align-items:center;gap:12px}
.archive-row+.archive-row{border-top:1px solid var(--line)}
.archive-row{padding:10px 0}
.admin-calculation .hint{margin:4px 0 0}
#student-opinion{width:100%;box-sizing:border-box}
#candidate-comparison,#application-plans,#admission-search{scroll-margin-top:16px}
@media(max-width:760px){
 .candidate-heading{align-items:flex-start;flex-wrap:wrap}
 .candidate-matrix,.candidate-matrix tbody{display:block}
 .candidate-matrix thead{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
 .candidate-matrix tr{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);padding:12px 14px;gap:10px 14px}
 .candidate-matrix tr+tr{border-top:1px solid var(--line)}
 .candidate-matrix td{display:block;padding:0;border:none}
 .candidate-matrix td:first-child{grid-column:1/-1}
 .candidate-matrix td[data-label]::before{content:attr(data-label);display:block;font-size:10px;color:var(--muted);margin-bottom:3px}
 .candidate-matrix-editable tr{grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto}
 .candidate-matrix-editable td:first-child{grid-column:1/3}
 .candidate-matrix-editable td:nth-child(2){grid-column:1;grid-row:2}
 .candidate-matrix-editable td:nth-child(3){grid-column:2/4;grid-row:2}
 .candidate-matrix-editable td.candidate-remove-cell{grid-column:3;grid-row:1;align-self:start}
 .candidate-matrix small{margin-top:2px}
}
.past-result-detail,.search-recommendations{margin:15px 0}
.past-result-detail small,.search-recommendations small{display:block;color:#62666e;line-height:1.5}
.past-result-detail h3{margin:0 0 6px}
.search-guidance{margin:0;padding:9px 16px;color:#646971;border-top:1px solid var(--line);font-size:11px}
.search-recommendations{padding:0 17px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.search-recommendations h3{grid-column:1/-1}
.search-recommendations h4,.search-recommendations ul{margin:0 0 4px}
.search-recommendations ul{padding-left:15px}
@media(max-width:760px){.search-recommendations{grid-template-columns:1fr}}

/* The three application choices are also printable and archived per student. */
.catalog-overview{display:grid;grid-template-columns:.9fr 1.5fr}
.catalog-overview>div{padding:18px 21px;display:flex;flex-wrap:wrap;align-items:center;gap:8px 15px}
.catalog-overview>div+div{border-left:1px solid var(--line)}
.catalog-overview h3{width:100%}.catalog-overview small{font-size:11px;color:var(--muted)}
.catalog-overview .actions{flex-wrap:wrap}
.atlas-filters,.packet-filters{display:flex;flex-wrap:wrap;align-items:flex-end;gap:8px 12px;background:#f6f6f8;padding:12px;border:1px solid var(--line);border-radius:5px}
.atlas-filters label,.packet-filters label,.packet-save>label{display:flex;flex-direction:column;gap:4px;font-size:11px}
.atlas-filters input,.packet-filters input:not([type=checkbox]),.packet-save input:not([type=checkbox]),.packet-save textarea,.atlas-filters select,.packet-filters select{border:1px solid #d8d9de;background:#fff;font:inherit;padding:8px;border-radius:4px;max-width:100%}
.packet-filters .wb-check,.packet-save .wb-check{display:flex;flex-direction:row;align-items:center}
.atlas-summary,.atlas-empty{margin:14px 0;color:#5c6068}
.atlas-row,.health-row{border-top:1px solid var(--line);padding:10px 0}
.atlas-row>summary{display:grid;grid-template-columns:1.25fr 1.35fr 1.2fr;gap:12px;align-items:center;cursor:pointer}
.atlas-row>summary strong::before{content:'▸ ';color:var(--accent)}.atlas-row[open]>summary strong::before{content:'▾ '}
.atlas-row summary small,.health-row span,.health-row small,.history-observation small{display:block;color:#62666e;font-size:11px}
.health-row p{margin:5px 0}
.atlas-pager,.packet-result-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:9px 0;font-size:11px}
.atlas-history{margin:12px 0}.history-observation{padding:9px 0}.history-observation+.history-observation{border-top:1px solid var(--line)}
/* Admission history tables stay inside the modal on phone and print layouts. */
.history-observation .history-detail-table{
 width:100%;max-width:44rem;min-width:0;table-layout:fixed;border-collapse:collapse;
 margin:0 0 .85rem;color:#263643;font-size:12px;font-variant-numeric:tabular-nums
}
.history-detail-table caption{
 padding:.15rem 0 .35rem;font-size:12px;font-weight:650;text-align:left;color:#273b4a;caption-side:top
}
.history-detail-table th,.history-detail-table td{
 position:static;line-height:1.45;padding:5px 10px;border:0;border-bottom:1px solid var(--line);
 font-size:inherit;vertical-align:middle;white-space:normal;overflow-wrap:anywhere
}
.history-detail-table thead th{background:#f1f4f6;color:#485865;font-size:11px;font-weight:600}
.history-detail-table th:first-child{width:56%;text-align:left}
.history-detail-table th:not(:first-child),.history-detail-table td{text-align:right}
.history-detail-table tbody th{background:transparent;color:inherit;font-weight:400}
.history-detail-table tbody td{font-weight:550;white-space:nowrap}
.history-detail-disclosure>summary{display:list-item;padding-block:4px}
.history-disclosure,.history-table-scope{font-size:12px;line-height:1.45;color:#535d65;margin:5px 0 8px}
@media(max-width:560px){
 .history-observation .history-detail-table{width:100%;min-width:0}
 .history-detail-table td,.history-detail-table th{padding:5px 6px}
 .history-detail-table th:first-child{width:48%}
 .history-detail-cols-3 th:first-child{width:40%}
 .history-detail-cols-4 th:first-child{width:30%}
}
@media print{
 .history-detail-table tr{break-inside:avoid}
 .history-detail-table caption{break-after:avoid}
}
.matched-basis,.subject-reference{margin:5px 0;font-size:11px}.subject-reference>div{display:flex;flex-wrap:wrap;gap:3px 12px}
.packet-header{margin-bottom:11px;font-size:12px}.packet-slots{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-bottom:13px}
.packet-slot{padding:12px;border:1px solid #dcdde2;border-top:2px solid var(--accent);border-radius:4px;overflow-wrap:anywhere}
.packet-slot h3{font-size:13px;color:var(--accent);margin:0 0 8px}.packet-slot>strong{display:block}.packet-slot small,.packet-match small{display:block;font-size:11px;color:#62666e;line-height:1.5}.packet-slot p,.packet-opinion{margin:6px 0}
.slot-head{display:flex;justify-content:space-between;align-items:baseline}.slot-judgment{border-top:1px solid var(--line);margin-top:7px;padding-top:6px}
.packet-match{display:grid;grid-template-columns:minmax(0,1fr) minmax(70px,120px) auto;gap:9px;align-items:center;padding:7px 9px;border-top:1px solid var(--line)}
.packet-match.is-selected{background:#faf4f6}.packet-match button[aria-pressed=true]{border-color:var(--accent);color:var(--accent)}.packet-save{display:grid;gap:9px;margin-top:10px}.packet-save>.primary{justify-self:end}
.packet-message{margin:0;color:var(--accent)}.packet-exam{display:grid;grid-template-columns:1fr 1fr;gap:4px 12px;border-block:1px solid #d8d9de;padding:9px 0;font-size:11px}
.printed-choice{padding:9px 0;border-bottom:1px solid #e1e2e5;break-inside:avoid}.printed-choice h2{margin:0 0 5px;color:var(--accent)}.printed-choice h2 span{color:#26282b;margin-left:8px}
.printed-choice p,.printed-choice>div,.packet-print .packet-opinion{margin:4px 0;font-size:11px;line-height:1.46;overflow-wrap:anywhere}
.printed-choice small,.printed-choice a{font-size:9px}.packet-opinion{white-space:pre-wrap}.quiet{color:var(--muted)}
@media(max-width:760px){.catalog-overview,.packet-slots{grid-template-columns:1fr}.catalog-overview>div+div{border-left:0;border-top:1px solid var(--line)}.atlas-row>summary{grid-template-columns:1fr;gap:3px}
 .packet-slot{padding:9px}.packet-slot h3{margin-bottom:3px}.packet-match{grid-template-columns:minmax(0,1fr) auto}.packet-match>div:nth-child(2){grid-column:1;grid-row:auto}.packet-match button{grid-column:2;grid-row:span 2}.candidate-heading .actions{gap:4px}}
@media print{.packet-print .print-brand{margin-bottom:8px}.packet-print h1{font-size:20pt;margin:5px 0}.packet-print h2{font-size:11pt}.packet-print .printed-choice{padding:7px 0}.packet-print .subject-reference{margin:3px 0}.packet-print a{overflow-wrap:anywhere}}

.directory-route{display:grid;grid-template-columns:32px 1fr auto;align-items:center;gap:9px;border-top:1px solid var(--line);padding:9px 4px}
.directory-route strong{font-weight:550}.directory-route small,.directory-source{font-size:11px;color:#63656c}.directory-route a{font-size:11px;margin-right:8px}
.health-row summary{cursor:pointer}.health-row summary span{justify-self:end}.directory-source{margin:8px 0;overflow-wrap:anywhere}
@media(max-width:560px){.directory-route{grid-template-columns:30px 1fr}.directory-route>div:last-child{grid-column:2}.atlas-row>summary{grid-template-columns:1fr}.health-row summary span{justify-self:start}}

.college-entry{display:flex;align-items:center;gap:9px;flex-wrap:wrap;border-top:1px solid var(--line);padding-top:8px;margin-top:8px}

.special-note{display:block;color:var(--muted);font-size:11px;line-height:1.45;margin-top:4px}
.special-detail-head{display:flex;flex-wrap:wrap;align-items:flex-start;gap:12px 32px;margin-bottom:18px}
#eligibility-checks form .primary{margin-top:12px}
.fit-tools .wish-scope{max-width:19rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.fit-tools .wish-scope[aria-pressed="true"]{background:#edf5f2;border-color:#adcac1;color:#135e51}
.print-fit{display:block;margin-top:.25rem}
@media(max-width:660px){.fit-tools form{flex-wrap:wrap}.fit-tools .wish-scope{max-width:100%}}

.practical-scores{margin:16px 0;padding:12px 0;border-block:1px solid #d7e2e0}.practical-scores h3{font-size:15px;margin:0 0 8px}.practical-scores p{margin:6px 0}.practical-scores small,.practical-scores .quiet{font-size:12px}.practical-scores a{font-size:11px}.practical-scores table{width:100%;margin-top:8px}.practical-scores td,.practical-scores th{padding:6px 8px;text-align:start}.practical-scores td:not(:first-child){font-variant-numeric:tabular-nums;white-space:nowrap}
