:root{color-scheme:light;--page-bg: #f5f6f8;--page-bg-soft: #fafbfc;--surface: rgba(255, 255, 255, .97);--surface-solid: #ffffff;--surface-muted: #f1f3f5;--surface-raised: #fbfdfe;--surface-subtle: #f9fbfc;--text: #303743;--text-strong: #17212e;--text-muted: #697382;--border: #e1e5eb;--border-strong: #c5cdd7;--primary: #087f83;--primary-hover: #076b70;--primary-soft: #e3f1ee;--primary-strong: #0f5f58;--primary-contrast: #ffffff;--focus-ring: rgba(20, 122, 115, .16);--hover-shadow: 0 12px 30px rgba(20, 122, 115, .14);--login-accent-a: rgba(27, 103, 111, .08);--login-accent-b: rgba(175, 112, 63, .08);--sidebar-divider: #e1e5eb;--sidebar-bg: #f8f9fb;--sidebar-text: #303743;--sidebar-muted: #707a88;--sidebar-hover: #e9edf2;--info-bg: #edf3fd;--info-text: #365c90;--success-bg: #def2e9;--success-text: #176540;--warning-bg: #fff0d6;--warning-text: #845817;--danger-bg: #ffe4de;--danger-text: #99382e;--overlay: rgba(10, 24, 29, .68);--shadow: 0 22px 70px rgba(31, 42, 51, .12);--collection-card-bg: #ffffff;--collection-card-border: #b8d9d8;--collection-meta-bg: #e9f3f2;--collection-meta-text: #2a5960;--collection-chip-bg: #def2e9;--collection-chip-text: #176540;--visual-report-bg: #fbfdfe;--visual-callout-bg: #eaf4f6;--visual-callout-text: #2a5960;--chart-green: #1d7c74;--chart-amber: #cb8243;--chart-red: #c85d4b;--chart-blue: #4d7898;--chart-neutral: #697b86;--chart-grid: #e5edf0;--chart-cursor: rgba(29, 124, 116, .08);font-family:Inter,Microsoft YaHei,PingFang SC,Segoe UI,system-ui,-apple-system,sans-serif;background:var(--page-bg);color:var(--text);line-height:1.5}:root[data-theme=dark]{color-scheme:dark;--page-bg: #17191d;--page-bg-soft: #1b1e23;--surface: #202329;--surface-solid: #202329;--surface-muted: #282d34;--surface-raised: #272b32;--surface-subtle: #1d2026;--text: #e7eff0;--text-strong: #f5faf9;--text-muted: #a4b2b7;--border: #373d46;--border-strong: #555f6d;--primary: #3bb7aa;--primary-hover: #55c9bd;--primary-soft: #173d3d;--primary-strong: #8ee3da;--primary-contrast: #061718;--focus-ring: rgba(59, 183, 170, .22);--hover-shadow: 0 12px 30px rgba(0, 0, 0, .26);--login-accent-a: rgba(59, 183, 170, .1);--login-accent-b: rgba(242, 202, 120, .08);--sidebar-divider: rgba(255, 255, 255, .1);--sidebar-bg: #1c1f24;--sidebar-text: #f1fbfb;--sidebar-muted: #a0a8b4;--sidebar-hover: rgba(79, 189, 178, .16);--info-bg: #23334b;--info-text: #b1cbed;--success-bg: #173728;--success-text: #9de3bc;--warning-bg: #3a2d17;--warning-text: #f2ca78;--danger-bg: #3f211f;--danger-text: #ffb1a7;--overlay: rgba(3, 10, 12, .76);--shadow: 0 22px 70px rgba(0, 0, 0, .34);--collection-card-bg: #202329;--collection-card-border: #526970;--collection-meta-bg: #173d3d;--collection-meta-text: #8ee3da;--collection-chip-bg: #173728;--collection-chip-text: #9de3bc;--visual-report-bg: #1e2b31;--visual-callout-bg: #19313a;--visual-callout-text: #a8dce4;--chart-green: #3bb7aa;--chart-amber: #f2ca78;--chart-red: #ff8f82;--chart-blue: #8bb8d4;--chart-neutral: #a4b2b7;--chart-grid: #34464d;--chart-cursor: rgba(59, 183, 170, .14)}*{box-sizing:border-box}body{margin:0;min-width:0;min-height:100vh;background:var(--page-bg);color:var(--text)}button,input,textarea,select{font:inherit}button{cursor:pointer}textarea{min-height:88px;resize:vertical}input,textarea,select{width:100%;border:1px solid var(--border);border-radius:8px;padding:10px 12px;background:var(--surface-solid);color:var(--text);outline:none}input[type=checkbox],input[type=radio]{width:auto}input:focus,textarea:focus,select:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--focus-ring)}.center-screen,.login-screen{min-height:100vh;display:grid;place-items:center;padding:24px}.connection-recovery{display:flex;flex-direction:column;justify-content:center;gap:12px;text-align:center}.connection-recovery>span{max-width:560px;color:var(--muted)}.login-screen{background:linear-gradient(135deg,var(--login-accent-a),var(--login-accent-b)),var(--page-bg)}.login-card{width:min(430px,100%);display:grid;gap:16px;padding:28px;border:1px solid var(--border);border-radius:8px;background:var(--surface);box-shadow:var(--shadow)}.app-shell{min-height:100vh;display:grid;grid-template-columns:260px minmax(0,1fr)}.sidebar{position:sticky;top:0;height:100vh;display:flex;flex-direction:column;gap:22px;padding:22px;overflow-y:auto;background:var(--sidebar-bg);color:var(--sidebar-text)}.brand{display:flex;align-items:center;gap:12px}.brand.large{margin-bottom:8px}.brand-mark{width:42px;height:42px;display:grid;place-items:center;border-radius:8px;background:var(--primary);color:var(--surface-solid);font-weight:800}.brand strong{display:block;font-size:18px}.brand span,.profile-box span,.card-head span,.user-row span,.hint,.muted,.project-row span{color:var(--text-muted);font-size:13px}.sidebar .brand span,.sidebar .profile-box span{color:var(--sidebar-muted)}nav{display:grid;gap:8px}.nav-item,.ghost-button,.icon-button,.primary-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:0;border-radius:8px;min-height:40px;padding:9px 12px;text-decoration:none;white-space:nowrap}.nav-item{justify-content:flex-start;color:var(--sidebar-text);background:transparent}.nav-item.active,.nav-item:hover{background:var(--sidebar-hover);color:var(--sidebar-text)}.profile-box{margin-top:auto;display:grid;gap:8px;padding-top:18px;border-top:1px solid var(--sidebar-divider)}.main-panel{min-width:0;padding:28px}.topbar{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:22px}.topbar h1{margin:0;font-size:34px;line-height:1.15}.topbar h1:focus-visible{outline:2px solid var(--primary);outline-offset:4px}.topbar p{margin:6px 0 0;color:var(--text-muted)}.role-tags,.chips,.action-row{display:flex;flex-wrap:wrap;gap:8px}.action-row.end{justify-content:flex-end}.role-tags span,.chips span,.badge{display:inline-flex;align-items:center;min-height:26px;border-radius:999px;padding:4px 10px;font-size:12px;background:var(--surface-muted);color:var(--text)}.badge.green{background:var(--success-bg);color:var(--success-text)}.badge.amber{background:var(--warning-bg);color:var(--warning-text)}.badge.red{background:var(--danger-bg);color:var(--danger-text)}.badge.neutral{background:var(--surface-muted);color:var(--text-muted)}.content-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.metric-card,.home-action-card,.panel,.record-card,.user-row,.wide-panel{border:1px solid var(--border);border-radius:8px;background:var(--surface)}.metric-card{display:grid;gap:6px;padding:18px}.home-action-card{min-height:132px;display:grid;align-content:start;justify-items:start;gap:8px;padding:18px;color:var(--text);text-align:left}.home-action-card:hover,.home-action-card:focus-visible{border-color:var(--primary);box-shadow:var(--hover-shadow)}.home-action-icon{width:34px;height:34px;display:grid;place-items:center;border-radius:8px;background:var(--primary-soft);color:var(--primary-strong)}.metric-card strong{color:var(--primary-strong);font-size:34px;line-height:1}.metric-card small{color:var(--text-muted)}.dashboard-chart-panel{display:grid;gap:12px}.dashboard-chart-panel .section-title{margin-bottom:0}.dashboard-chart-panel .section-title>div{min-width:0}.dashboard-chart-panel .section-title span{color:var(--text-muted);font-size:12px}.dashboard-chart{width:100%;height:220px;min-width:0}.chart-legend{display:flex;flex-wrap:wrap;gap:8px 12px;color:var(--text);font-size:12px}.chart-legend span{display:inline-flex;align-items:center;gap:6px}.chart-legend i{width:10px;height:10px;border-radius:999px}.research-axis-panel{display:grid;gap:14px;overflow:hidden}.research-axis-panel .section-title{margin-bottom:0}.research-axis-panel .section-title>div:first-child{min-width:0}.research-axis-panel .section-title span{color:var(--text-muted);font-size:12px}.research-axis-summary,.research-axis-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;min-width:0}.research-axis-summary{padding:10px 12px;border:1px solid var(--border);border-radius:8px;background:var(--surface-muted)}.research-axis-summary strong,.research-axis-summary span{overflow-wrap:anywhere}.research-axis-summary span{color:var(--text-muted);font-size:12px}.research-axis{position:relative;display:grid;grid-template-columns:repeat(6,minmax(150px,1fr));gap:10px;min-width:0;overflow-x:auto;padding:4px 2px 8px}.research-axis:before{content:"";position:absolute;top:22px;left:28px;right:28px;height:2px;background:var(--border)}.research-stage{position:relative;z-index:1;min-width:150px;display:grid;grid-template-rows:42px 1fr;gap:8px}.research-stage-marker{display:flex;align-items:center;justify-content:center}.research-stage-marker span{width:32px;height:32px;display:grid;place-items:center;border:2px solid var(--border-strong);border-radius:999px;background:var(--surface-solid);color:var(--text);font-size:13px;font-weight:800}.research-stage.done .research-stage-marker span{border-color:var(--success-text);background:var(--success-bg);color:var(--success-text)}.research-stage.current .research-stage-marker span{border-color:var(--warning-text);background:var(--warning-bg);color:var(--warning-text)}.research-stage.blocked .research-stage-marker span{border-color:var(--danger-text);background:var(--danger-bg);color:var(--danger-text)}.research-stage-body{min-height:150px;display:grid;align-content:start;gap:8px;padding:12px;border:1px solid var(--border);border-radius:8px;background:var(--surface-raised)}.research-stage-title{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;min-width:0}.research-stage-title strong{overflow-wrap:anywhere}.research-stage-body p{margin:0;color:var(--text-muted);font-size:12px;line-height:1.45;overflow-wrap:anywhere}.research-stage-milestones,.compact-report-meta{display:flex;flex-wrap:wrap;gap:6px;min-width:0}.research-stage-milestones span,.compact-report-meta span{max-width:100%;border:1px solid var(--border);border-radius:999px;padding:4px 8px;background:var(--surface-muted);color:var(--text);font-size:11px;font-weight:700;overflow-wrap:anywhere}.research-axis-footer .compact-report-meta{flex:1}.student-status-panel,.tutor-status-panel,.admin-status-panel{display:grid;gap:12px}.student-status-panel .section-title,.tutor-status-panel .section-title,.admin-status-panel .section-title{margin-bottom:0}.student-status-panel .section-title>div,.tutor-status-panel .section-title>div,.admin-status-panel .section-title>div{min-width:0}.student-status-panel .section-title span,.tutor-status-panel .section-title span,.admin-status-panel .section-title span{color:var(--text-muted);font-size:12px}.student-status-grid,.tutor-status-grid,.admin-status-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}.student-status-card,.tutor-status-card,.admin-status-card{min-width:0;min-height:210px;display:grid;align-content:start;gap:10px;padding:14px;border:1px solid var(--border);border-radius:8px;background:var(--surface-raised)}.student-status-head,.student-status-footer,.tutor-status-head,.tutor-status-footer,.admin-status-head,.admin-status-footer{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;min-width:0}.student-status-head>div:first-child,.tutor-status-head>div:first-child,.admin-status-head>div:first-child{min-width:0}.student-status-head span,.student-status-card p,.student-status-meta,.tutor-status-head span,.tutor-status-card p,.tutor-status-meta,.admin-status-head span,.admin-status-card p,.admin-status-meta{color:var(--text-muted);font-size:12px}.student-status-head span,.student-status-card strong,.student-status-meta span,.tutor-status-head span,.tutor-status-card strong,.tutor-status-meta span,.admin-status-head span,.admin-status-card strong,.admin-status-meta span{display:block;overflow-wrap:anywhere}.student-status-card strong,.tutor-status-card strong,.admin-status-card strong{margin-top:4px;color:var(--primary-strong);font-size:28px;line-height:1}.student-status-card p,.tutor-status-card p,.admin-status-card p{min-height:34px;margin:0;line-height:1.4}.student-status-icon,.tutor-status-icon,.admin-status-icon{flex:0 0 auto;width:34px;height:34px;display:grid;place-items:center;border-radius:8px;background:var(--primary-soft);color:var(--primary-strong)}.student-status-progress{height:8px;overflow:hidden;border-radius:999px;background:var(--surface-muted)}.student-status-progress span{display:block;height:100%;border-radius:inherit;background:var(--primary)}.student-status-meta,.tutor-status-meta,.admin-status-meta{min-height:32px;line-height:1.35}.student-status-footer,.tutor-status-footer,.admin-status-footer{align-items:center;align-self:end}.student-status-footer .ghost-button,.tutor-status-footer .ghost-button,.admin-status-footer .ghost-button{min-height:32px;padding:6px 8px;white-space:nowrap}.admin-group-distribution{display:flex;flex-wrap:wrap;gap:6px;min-height:32px}.admin-group-distribution span{width:auto;border:1px solid var(--border);border-radius:999px;padding:3px 7px;background:var(--surface-solid);color:var(--text);font-size:11px;font-weight:700}.wide-panel{grid-column:1 / -1;padding:18px}.security-panel{padding:12px 16px}.security-panel .section-title{margin-bottom:8px}.security-panel .section-title h2{font-size:16px}.security-panel .inline-form{grid-template-columns:minmax(160px,1fr) minmax(180px,1fr) auto;gap:8px}.security-panel input{min-height:36px;padding:8px 10px}.security-panel .primary-button{min-height:36px;padding:7px 12px}.emphasis-panel{border-color:var(--border);background:var(--surface-muted)}.split-layout{display:grid;grid-template-columns:minmax(320px,430px) minmax(0,1fr);gap:18px;align-items:start}.split-layout.wide{grid-template-columns:repeat(2,minmax(0,1fr))}.split-layout>.panel{min-width:0}.single-page{display:grid;gap:18px}.panel{padding:18px}.list-panel,.stack-panel{display:grid;gap:14px}.subpanel{display:grid;gap:10px;padding-top:14px;border-top:1px dashed var(--border)}.subpanel.soft{padding:12px;border:1px solid var(--border);border-radius:8px;background:var(--page-bg-soft)}.subpanel h3{margin:0;font-size:16px}.section-title{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}.section-title.compact{margin-bottom:4px}.section-title h2{margin:0;font-size:18px}.stack-form,.review-form{display:grid;gap:12px}.form-section{min-width:0;margin:0;padding:12px;border:1px solid var(--border);border-radius:8px;background:var(--surface-raised)}.form-section legend{padding:0 6px;color:var(--primary-strong);font-size:13px;font-weight:800}.form-section-body{display:grid;gap:10px}.form-section.compact{padding:10px}.form-section.compact .form-section-body{grid-template-columns:minmax(150px,1fr) minmax(120px,1fr) auto;align-items:center;gap:8px}.draft-status{justify-self:start;border:1px solid var(--border);border-radius:8px;padding:7px 10px;background:var(--surface-muted);color:var(--info-text);font-size:12px;font-weight:700}.inline-form{display:grid;grid-template-columns:minmax(160px,1fr) minmax(180px,1fr) auto;gap:10px}.inline-form.wrap{grid-template-columns:minmax(150px,1fr) minmax(130px,.8fr) minmax(180px,1fr) auto}.compact-form .form-section.compact .form-section-body{grid-template-columns:minmax(160px,1fr) minmax(130px,.7fr)}.compact-form .form-section.compact textarea,.compact-form .form-section.compact button{grid-column:1 / -1}.field-label{display:grid;gap:6px;color:var(--text);font-size:13px;font-weight:700}.field-label input,.field-label textarea,.field-label select{font-weight:400}.form-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.segmented,.check-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.segmented.two{grid-template-columns:repeat(2,minmax(0,1fr))}.segmented label,.check-grid label,.check-list label,.checkbox-line{display:flex;align-items:center;gap:8px;min-height:40px;border:1px solid var(--border);border-radius:8px;padding:8px 10px;background:var(--surface-subtle)}.check-list{display:grid;gap:8px;max-height:180px;overflow:auto;padding:2px}.search-box{display:flex;align-items:center;gap:8px;min-height:40px;border:1px solid var(--border);border-radius:8px;padding:0 10px;background:var(--surface-solid)}.search-box input{border:0;box-shadow:none;padding:8px 0}.search-box input:focus{box-shadow:none}.selected-chip-list{display:flex;flex-wrap:wrap;gap:8px}.selected-chip-list button{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--border);border-radius:999px;padding:5px 9px;background:var(--info-bg);color:var(--info-text);font-size:12px;font-weight:700}.admin-filters{display:grid;grid-template-columns:minmax(180px,1.4fr) repeat(3,minmax(112px,1fr));gap:8px}.admin-filters>*{min-width:0}.user-summary{display:flex;align-items:baseline;gap:8px;padding:8px 10px;border-radius:8px;background:var(--surface-muted);color:var(--text)}.user-summary strong{color:var(--primary-strong);font-size:24px}.system-status-grid{align-items:start}.status-summary-row{display:flex;align-items:center;flex-wrap:wrap;gap:10px;padding:10px;border:1px solid var(--border);border-radius:8px;background:var(--page-bg-soft)}.status-summary-row span{color:var(--text-muted);font-size:13px}.operations-overview .section-title>div{display:grid;gap:2px}.operations-overview .section-title>div>span{color:var(--text-muted);font-size:13px}.operations-issue-list{display:grid;border-top:1px solid var(--border)}.operations-issue{display:grid;grid-template-columns:28px minmax(0,1fr) minmax(130px,auto);gap:12px;align-items:start;padding:14px 4px;border-bottom:1px solid var(--border)}.operations-issue-icon{display:grid;width:28px;height:28px;place-items:center;border-radius:6px;color:var(--warning-text);background:var(--warning-bg)}.operations-issue.critical .operations-issue-icon{color:var(--danger-text);background:var(--danger-bg)}.operations-issue-main{display:grid;gap:6px;min-width:0}.operations-issue-title,.operations-issue-action,.operations-issue-owner{display:flex;gap:8px;align-items:center;min-width:0}.operations-issue-title{flex-wrap:wrap}.operations-issue-title strong{color:var(--text-strong)}.operations-issue-title span,.operations-issue-owner>span{color:var(--text-muted);font-size:12px;overflow-wrap:anywhere}.operations-issue-main p{margin:0;color:var(--text);font-size:13px}.operations-issue-action{align-items:baseline;color:var(--text-muted);font-size:13px}.operations-issue-action span{min-width:0;overflow-wrap:anywhere}.operations-issue-action strong{color:var(--primary-strong);font-size:12px}.operations-issue-owner{display:grid;justify-items:end;text-align:right}.operations-issue-owner strong{display:inline-flex;gap:5px;align-items:center;color:var(--text);font-size:12px}.operations-clear-state{display:flex;gap:10px;align-items:flex-start;padding:14px 0;color:var(--success-text)}.operations-clear-state>div{display:grid;gap:2px}.operations-clear-state span{color:var(--text-muted);font-size:13px}.admin-activity-panel .section-title>div{display:grid;gap:2px;min-width:0}.admin-activity-panel .section-title h2{display:inline-flex;align-items:center;gap:8px}.admin-activity-panel .section-title span{color:var(--text-muted);font-size:13px}.admin-activity-filters{display:grid;grid-template-columns:minmax(250px,2fr) minmax(140px,.7fr) minmax(160px,.8fr) auto;gap:10px;align-items:end;padding:12px;border:1px solid var(--border);border-radius:8px;background:var(--surface-muted)}.admin-activity-filters>label{display:grid;gap:6px;min-width:0;color:var(--text-muted);font-size:12px;font-weight:700}.admin-activity-filters select,.admin-activity-search-control{width:100%;min-width:0;height:40px}.admin-activity-search-control{display:grid;grid-template-columns:18px minmax(0,1fr);gap:7px;align-items:center;padding:0 10px;border:1px solid var(--border);border-radius:8px;background:var(--surface);color:var(--text-muted)}.admin-activity-search-control:focus-within{border-color:var(--primary);box-shadow:0 0 0 2px var(--primary-soft)}.admin-activity-search-control input{width:100%;min-width:0;padding:0;border:0;outline:0;background:transparent;color:var(--text)}.admin-activity-filter-actions{display:grid;grid-template-columns:repeat(2,auto);gap:8px}.admin-activity-list{display:grid;border-top:1px solid var(--border)}.admin-activity-row{display:grid;grid-template-columns:minmax(120px,.55fr) minmax(0,2fr) minmax(130px,.7fr);gap:14px;align-items:start;min-width:0;padding:13px 4px;border-bottom:1px solid var(--border)}.admin-activity-reference,.admin-activity-main,.admin-activity-correlation,.admin-activity-title{min-width:0}.admin-activity-reference{display:flex;flex-wrap:wrap;gap:7px;align-items:center}.admin-activity-reference code,.admin-activity-correlation code{color:var(--primary-strong);font-size:12px;overflow-wrap:anywhere}.admin-activity-main,.admin-activity-title,.admin-activity-correlation{display:grid;gap:5px}.admin-activity-title strong,.admin-activity-title span{overflow-wrap:anywhere}.admin-activity-title strong{color:var(--text-strong)}.admin-activity-title span,.admin-activity-meta,.admin-activity-correlation>span,.admin-activity-end{color:var(--text-muted);font-size:12px}.admin-activity-meta{display:flex;flex-wrap:wrap;gap:5px 12px}.admin-activity-meta span{min-width:0;overflow-wrap:anywhere}.admin-activity-correlation{justify-items:end;text-align:right}.admin-activity-more,.admin-activity-end{display:flex;justify-content:center}.admin-activity-end{padding-top:3px}.system-status-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.status-detail-card{display:grid;gap:10px;min-width:0;padding:14px;border:1px solid var(--border);border-radius:8px;background:var(--surface-raised)}.status-detail-card h3{display:inline-flex;align-items:center;gap:7px;margin:0;font-size:16px}.status-card-icon{display:inline-grid;color:var(--primary-strong)}.backup-evidence-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.status-detail-list{display:grid;gap:8px;margin:0}.status-detail-list div{display:grid;gap:3px;min-width:0}.status-detail-list dt{color:var(--text-muted);font-size:12px}.status-detail-list dd{margin:0;color:var(--text);font-size:13px;overflow-wrap:anywhere}.workspace-reconciliation-detail{display:grid;gap:12px;min-width:0;margin-top:4px;padding-top:16px;border-top:1px solid var(--border)}.workspace-reconciliation-detail .section-title>div{display:grid;gap:3px;min-width:0}.workspace-reconciliation-detail .section-title span{color:var(--text-muted);font-size:12px;overflow-wrap:anywhere}.workspace-reconciliation-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:0}.workspace-reconciliation-summary div{display:grid;gap:3px;min-width:0;padding:10px;border-left:3px solid var(--border-strong);background:var(--page-bg-soft)}.workspace-reconciliation-summary dt{color:var(--text-muted);font-size:12px}.workspace-reconciliation-summary dd{margin:0;color:var(--text-strong);font-weight:700;overflow-wrap:anywhere}.workspace-reconciliation-issues{display:grid;border-top:1px solid var(--border)}.workspace-reconciliation-row{display:grid;grid-template-columns:74px minmax(0,1fr);gap:10px;align-items:start;min-width:0;padding:11px 0;border-bottom:1px solid var(--border)}.workspace-reconciliation-row>div{display:grid;gap:4px;min-width:0}.workspace-reconciliation-row strong,.workspace-reconciliation-row span,.workspace-reconciliation-row p,.workspace-reconciliation-row code{overflow-wrap:anywhere}.workspace-reconciliation-row span,.workspace-reconciliation-row code,.workspace-reconciliation-more{color:var(--text-muted);font-size:12px}.workspace-reconciliation-row p{margin:0;color:var(--text);font-size:13px}.workspace-reconciliation-more{padding:10px 0}.workspace-reconciliation-actions{display:flex;flex-wrap:wrap;gap:6px 12px;align-items:baseline;min-width:0;padding:10px;border-left:3px solid var(--warning-text);background:var(--warning-bg);color:var(--warning-text);font-size:13px}.workspace-reconciliation-actions span{min-width:0;overflow-wrap:anywhere}.tutor-picker{display:grid;gap:8px;max-height:220px;overflow:auto}.tutor-picker label{display:grid;grid-template-columns:auto minmax(0,1fr);gap:8px;align-items:center;padding:10px;border:1px solid var(--border);border-radius:8px;background:var(--surface-solid)}.tutor-picker strong,.tutor-picker small{display:block}.tutor-picker small{color:var(--text-muted)}.group-admin-list{gap:10px}.group-admin-row{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;padding:10px;border:1px solid var(--border);border-radius:8px;background:var(--surface-solid)}.group-admin-row strong,.group-admin-row small{display:block}.group-admin-row small{margin-top:3px;color:var(--text-muted)}.primary-button{background:var(--primary);color:var(--surface-solid);font-weight:700}.primary-button:disabled,.icon-button:disabled{opacity:.6;cursor:not-allowed}.ghost-button,.icon-button{background:var(--surface-muted);color:var(--text)}.icon-button.text{min-height:34px;padding:7px 10px}.icon-button.danger{background:var(--danger-bg);color:var(--danger-text)}.danger-action-button,.danger-action-button:hover{background:var(--danger-text)}.compact-select{width:auto;min-width:120px}.record-card{display:grid;gap:12px;padding:16px}.record-card p{margin:0;color:var(--text-muted)}.card-head,.user-row{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.card-head strong,.user-row strong{display:block}.record-detail{display:grid;grid-template-columns:72px minmax(0,1fr);gap:7px 12px;margin:0}.record-detail dt{color:var(--text-muted)}.record-detail dd{margin:0;overflow-wrap:anywhere}.review-note,.notice,.success-banner,.error-banner,.next-step{border-radius:8px;padding:10px 12px}.next-step{background:var(--surface-muted);color:var(--text);font-size:13px}.review-note{background:var(--surface-muted);border:1px solid var(--border)}.review-note strong{margin-right:8px}.review-note span{color:var(--text-muted);font-size:12px}.detail-panel{display:grid;gap:12px;padding-top:12px;border-top:1px dashed var(--border)}.timeline-list{display:grid;gap:10px;margin:0;padding:0;list-style:none}.dataset-summary{display:grid;gap:8px;padding:10px;border:1px solid var(--border);border-radius:8px;background:var(--surface-raised)}.student-stage-reports{display:grid;gap:10px;padding:10px;border:1px solid var(--border);border-radius:8px;background:var(--surface-raised)}.stage-report-list{display:grid;gap:10px}.stage-report-row{display:grid;gap:10px;padding:10px;border:1px solid var(--border);border-radius:8px;background:var(--surface-solid)}.stage-metric-line{display:flex;flex-wrap:wrap;gap:8px}.stage-metric-line span{padding:6px 8px;border:1px solid var(--border);border-radius:8px;color:var(--text);background:var(--page-bg-soft);font-size:12px}.dataset-list{display:grid;gap:8px}.dataset-row{width:100%;display:flex;gap:10px;align-items:flex-start;justify-content:space-between;padding:8px;border:1px solid var(--border);border-radius:8px;color:var(--text);text-align:left;background:var(--surface-solid);-webkit-appearance:none;-moz-appearance:none;appearance:none}.dataset-row>input[type=checkbox]{flex:0 0 auto;margin-top:4px}.dataset-row:hover,.dataset-row:focus-within,.dataset-row.active{border-color:var(--primary);box-shadow:var(--hover-shadow)}.dataset-row-select{flex:1 1 auto;min-width:0;padding:0;border:0;color:inherit;text-align:left;background:transparent;cursor:pointer}.dataset-row-select:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.dataset-row-content{display:grid;gap:3px;min-width:0}.dataset-row .dataset-row-content{color:var(--text);font-size:inherit}.dataset-row span,.dataset-row small{color:var(--text-muted);font-size:12px}.dataset-summary-line{display:-webkit-box;overflow:hidden;-webkit-line-clamp:2;-webkit-box-orient:vertical}.bulk-action-box,.registered-summary{display:grid;gap:10px;padding:12px;border:1px solid var(--border);border-radius:8px;background:var(--page-bg-soft)}.bulk-action-box>div:first-child,.registered-summary{min-width:0}.registered-summary strong,.registered-summary span{overflow-wrap:anywhere}.collection-chip-row{display:flex;flex-wrap:wrap;gap:6px}.collection-chip{display:inline-flex;align-items:center;width:auto;max-width:100%;min-height:22px;border-radius:999px;padding:3px 8px;color:var(--text);background:var(--surface-muted);font-size:11px;font-weight:700;overflow-wrap:anywhere}.collection-chip.paper{background:var(--info-bg);color:var(--info-text)}.collection-chip.routine{background:var(--success-bg);color:var(--success-text)}.collection-chip.enterprise{background:var(--warning-bg);color:var(--warning-text)}.collection-chip.stage{background:var(--info-bg);color:var(--info-text)}.collection-chip.other{background:var(--surface-muted);color:var(--text-muted)}.dataset-create-box,.dataset-detail,.metric-list{display:grid;gap:12px}.metric-row{display:grid;grid-template-columns:minmax(120px,1fr) auto;gap:3px 12px;padding:10px;border:1px solid var(--border);border-radius:8px;background:var(--surface-raised)}.metric-row small{grid-column:1 / -1;color:var(--text-muted);font-size:12px}.ai-report-status{gap:12px}.ai-status-body{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:10px;border:1px solid var(--border);border-radius:8px;background:var(--surface-raised)}.ai-status-body>div:first-child{min-width:0}.ai-status-body p{margin:4px 0 0;color:var(--text)}.ai-status-meta{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:6px;max-width:360px}.ai-status-meta span{flex:0 0 auto;color:var(--text-muted);font-size:12px}.ai-report-list,.ai-job-list,.ai-report-card,.ai-report-section,.ai-report-metric-grid,.collection-list,.collection-card,.group-report-list{display:grid;gap:10px}.group-ai-report-panel{align-content:start}.ai-report-card,.collection-card{padding:12px;border:1px solid var(--border);border-radius:8px;background:var(--surface)}.collection-card.prominent{padding:14px;border-color:var(--collection-card-border);border-left:5px solid var(--primary);background:var(--collection-card-bg)}.collection-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.collection-name{display:block;color:var(--text-strong);font-size:20px;line-height:1.25;overflow-wrap:anywhere}.collection-meta-row{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}.collection-meta-row span{min-height:24px;border-radius:999px;padding:3px 9px;background:var(--collection-meta-bg);color:var(--collection-meta-text);font-size:12px;font-weight:700}.collection-action-strip,.collection-create-fields,.dataset-list-actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.collection-action-strip{padding-top:10px;border-top:1px solid var(--border)}.collection-action-strip select{width:auto;min-width:190px;flex:1 1 190px}.collection-action-strip button{flex:0 0 auto}.collection-create-panel{display:grid;gap:10px;padding:12px;border:1px solid var(--collection-card-border);border-radius:8px;background:var(--surface-raised)}.collection-create-fields>input,.collection-create-fields>select,.collection-create-fields>textarea{flex:1 1 220px}.collection-create-fields>button{flex:0 0 auto}.dataset-pick-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:8px}.dataset-pick-list.compact{grid-template-columns:repeat(auto-fit,minmax(190px,1fr))}.dataset-pick-item{display:grid;grid-template-columns:auto minmax(0,1fr);gap:2px 8px;align-items:start;padding:8px;border:1px solid var(--border);border-radius:8px;background:var(--surface)}.dataset-pick-item input{grid-row:1 / span 2;margin-top:4px}.dataset-pick-item span,.dataset-pick-item small{min-width:0;overflow-wrap:anywhere}.dataset-pick-item small{color:var(--text-muted);font-size:12px}.unassigned-dataset-panel,.source-item-stack,.collection-membership-editor{display:grid;gap:10px}.unassigned-dataset-panel{padding:12px;border:1px solid var(--border);border-radius:8px;background:var(--surface-raised)}.source-item-stack{padding:8px;border:1px solid var(--border);border-radius:8px;background:var(--surface)}.collection-membership-editor{padding:10px;border:1px dashed var(--border-strong);border-radius:8px;background:var(--surface-muted)}.check-list.compact{gap:6px}.collection-card p,.writing-collection-box p{margin:0;color:var(--text)}.ai-report-head,.ai-report-section-title,.ai-job-row{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.ai-report-head>div,.ai-job-row>div{min-width:0}.ai-report-head strong,.ai-job-row strong{display:block;overflow-wrap:anywhere}.ai-report-head span,.ai-report-section-title span,.ai-job-row span{color:var(--text-muted);font-size:12px}.ai-report-fields{display:grid;grid-template-columns:72px minmax(0,1fr);gap:7px 10px;margin:0}.ai-report-fields dt{color:var(--text-muted)}.ai-report-fields dd{margin:0;color:var(--text);overflow-wrap:anywhere}.ai-report-section{padding-top:8px;border-top:1px dashed var(--border)}.metric-row.compact{grid-template-columns:minmax(100px,1fr) auto;padding:8px}.artifact-list,.ai-report-actions{display:flex;flex-wrap:wrap;gap:8px}.compact-report-card{gap:8px;padding:8px 10px}.compact-report-card p{display:-webkit-box;margin:0;overflow:hidden;color:var(--text);-webkit-box-orient:vertical;-webkit-line-clamp:2}.compact-report-meta{display:flex;flex-wrap:wrap;gap:6px}.compact-report-meta span{min-height:22px;padding:2px 7px;border-radius:999px;background:var(--surface-muted);color:var(--text-muted);font-size:12px}.codex-command-box{display:grid;gap:8px;padding:10px;border:1px solid var(--border);border-radius:8px;background:var(--surface-raised)}.codex-command-box>div{display:flex;align-items:center;justify-content:space-between;gap:8px}.codex-command-box code{display:block;padding:8px;overflow-x:auto;border-radius:6px;color:var(--text);background:var(--surface-muted);font-size:12px}.codex-command-box span{color:var(--text-muted);font-size:12px}.review-comment-box{flex:1 1 100%;min-height:72px;resize:vertical}.artifact-list span{padding:6px 8px;border:1px solid var(--border);border-radius:8px;color:var(--text);background:var(--surface-raised);font-size:12px}.review-note-box{display:grid;gap:4px;padding:10px;border:1px solid var(--border);border-radius:8px;background:var(--info-bg)}.review-note-box p,.ai-job-row p{margin:0;color:var(--text);overflow-wrap:anywhere}.ai-job-row .ai-job-error,.ai-report-card .ai-job-error{margin:6px 0 0;padding:8px 10px;border:1px solid var(--danger-bg);border-radius:8px;background:var(--danger-bg);color:var(--danger-text);font-size:12px;overflow-wrap:anywhere}.ai-job-row{padding:10px;border:1px solid var(--border);border-radius:8px;background:var(--surface-raised)}.report-detail-panel{display:grid;gap:12px;padding:12px;border:1px solid var(--border);border-radius:8px;background:var(--surface-raised)}.report-detail-body,.report-detail-section,.source-list,.tool-info-block{display:grid;gap:10px}.source-list.compact{gap:6px}.report-detail-summary{padding:10px;border:1px solid var(--border);border-radius:8px;background:var(--surface)}.report-detail-section{padding-top:10px;border-top:1px dashed var(--border)}.report-markdown{display:grid;gap:8px;padding:12px;border:1px solid var(--border);border-radius:8px;background:var(--surface);color:var(--text);line-height:1.65;overflow-wrap:anywhere}.visual-report{display:grid;gap:12px;padding:14px;border:1px solid var(--border);border-radius:8px;background:var(--visual-report-bg)}.visual-report h2,.visual-report h3,.visual-report h4,.visual-report p{margin:0}.visual-report h2,.visual-report h3{color:var(--text-strong)}.visual-report p{color:var(--text);line-height:1.7}.visual-callout{display:grid;gap:4px;padding:10px 12px;border:1px solid var(--border);border-radius:8px;background:var(--visual-callout-bg);color:var(--visual-callout-text)}.visual-callout p{color:inherit}.visual-image-block{display:grid;gap:6px;margin:0}.visual-image-block img{width:100%;max-height:520px;object-fit:contain;border:1px solid var(--border);border-radius:8px;background:var(--surface-solid)}.report-artifact-image{display:grid;gap:8px}.report-artifact-image .ghost-button{justify-self:start}.visual-image-block figcaption{color:var(--text-muted);font-size:12px}.visual-table-wrap{overflow-x:auto}.visual-table{width:100%;border-collapse:collapse;min-width:420px;color:var(--text)}.visual-table th,.visual-table td{padding:8px 10px;border:1px solid var(--border);text-align:left;vertical-align:top}.visual-table th{background:var(--surface-muted);color:var(--text-strong)}.report-markdown h3,.report-markdown h4,.report-markdown h5,.report-markdown p,.report-markdown ul,.report-markdown pre{margin:0}.report-markdown .markdown-block{display:grid;gap:6px}.report-markdown h3{font-size:18px}.report-markdown h4{font-size:15px}.report-markdown h5{font-size:14px}.report-markdown ul{padding-left:18px}.report-markdown pre{padding:10px;border-radius:8px;background:var(--surface-muted);overflow-x:auto;white-space:pre-wrap}.source-row{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;padding:10px;border:1px solid var(--border);border-radius:8px;background:var(--surface);color:var(--text)}.source-row.link{text-decoration:none}.source-row>div{display:grid;gap:3px;min-width:0}.source-row>.action-row{flex:0 0 auto;justify-content:flex-end}.source-row strong{overflow-wrap:anywhere}.source-row span,.source-row small{color:var(--text-muted);font-size:12px;overflow-wrap:anywhere}.tool-info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px}.tool-info-grid>div{display:grid;gap:3px;padding:9px;border:1px solid var(--border);border-radius:8px;background:var(--surface);min-width:0}.tool-info-grid span{color:var(--text-muted);font-size:12px}.tool-info-grid strong{color:var(--text);font-size:13px;overflow-wrap:anywhere}.timeline-entry{display:grid;grid-template-columns:12px minmax(0,1fr);gap:10px;align-items:start}.timeline-dot{width:10px;height:10px;margin-top:7px;border:2px solid var(--primary);border-radius:999px;background:var(--surface-solid)}.timeline-head,.timeline-meta{display:flex;align-items:center;flex-wrap:wrap;gap:8px}.timeline-head span,.timeline-meta span{color:var(--text-muted);font-size:12px}.notice{border:1px solid var(--border);background:var(--info-bg);color:var(--info-text)}.notice.small{padding:8px 10px}.success-banner{background:var(--success-bg);color:var(--success-text)}.error-banner{background:var(--danger-bg);color:var(--danger-text)}.error-boundary-panel{border-color:var(--border);background:var(--danger-bg)}.error-boundary-panel p{margin:0;color:var(--text)}.error-boundary-panel code{display:block;max-width:100%;padding:10px;overflow-x:auto;border:1px solid var(--border);border-radius:8px;background:var(--surface-solid);color:var(--danger-text);white-space:pre-wrap;overflow-wrap:anywhere}.announcement-grid,.dashboard-item-list,.tutor-edit-box,.review-block{display:grid;gap:12px}.worklist-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.dashboard-list-card{display:grid;gap:12px;align-content:start;min-width:0;padding:14px;border:1px solid var(--border);border-radius:8px;background:var(--surface-raised)}.dashboard-list-card h3{margin:0;font-size:16px}.dashboard-list-card .ghost-button{justify-self:start}.dashboard-list-item{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;min-width:0;padding:10px;border:1px solid var(--border);border-radius:8px;background:var(--surface-solid)}.dashboard-list-item>div{min-width:0}.dashboard-list-item strong,.dashboard-list-item span{display:block}.dashboard-list-item strong{overflow-wrap:anywhere}.dashboard-list-item span{color:var(--text-muted);font-size:12px}.announcement{display:grid;gap:8px;padding:14px;border:1px solid var(--border);border-left:4px solid var(--primary);border-radius:8px;background:var(--surface-raised)}.announcement.pinned{border-left-color:var(--warning-text);background:var(--warning-bg)}.announcement strong{display:block}.announcement span{color:var(--text-muted);font-size:12px}.announcement p{margin:0;color:var(--text)}.project-table{display:grid;gap:8px}.project-row{display:grid;grid-template-columns:minmax(160px,1fr) 100px 90px 90px 70px;gap:10px;align-items:center;padding:10px 0;border-bottom:1px solid var(--border)}.project-row:last-child{border-bottom:0}.project-row strong,.project-row span{min-width:0;overflow-wrap:anywhere}.tutor-edit-box{padding:14px;border:1px solid var(--border);border-radius:8px;background:var(--surface-muted)}.attachments{display:grid;gap:10px;padding-top:8px;border-top:1px dashed var(--border)}.attachments.compact{gap:8px}.upload-form{display:grid;gap:8px}.upload-form.drag-active .form-section{border-color:var(--primary);background:var(--primary-soft);box-shadow:0 0 0 3px var(--focus-ring)}.upload-drop-hint{color:var(--text-muted);font-size:12px;font-weight:700}.upload-preview-list{display:grid;gap:8px}.upload-preview{display:grid;grid-template-columns:92px minmax(0,1fr);gap:10px;align-items:center;padding:8px;border:1px solid var(--border);border-radius:8px;background:var(--page-bg-soft)}.upload-preview img{width:92px;aspect-ratio:4 / 3;object-fit:cover;border-radius:6px}.upload-file-icon{width:92px;aspect-ratio:4 / 3;display:grid;place-items:center;border-radius:6px;background:var(--surface-muted);color:var(--info-text)}.upload-preview strong,.upload-preview span,.upload-preview small{display:block}.upload-preview span,.upload-preview small{color:var(--text-muted);font-size:12px}.file-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:8px}.file-tile{display:grid;gap:6px;min-height:96px;align-content:center;justify-items:center;padding:8px;border:1px solid var(--border);border-radius:8px;color:var(--text);text-decoration:none;background:var(--surface-raised);-webkit-appearance:none;-moz-appearance:none;appearance:none}.file-tile img{width:100%;aspect-ratio:4 / 3;object-fit:cover;border-radius:6px}.file-tile.image{align-content:start}.file-tile.image:hover img{outline:2px solid var(--primary)}.file-tile.document{align-content:start;justify-items:stretch;text-align:left}.file-tile.document>svg{justify-self:center;color:var(--info-text)}.file-tile span,.file-tile small{width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:center}.file-tile span{font-size:12px}.file-tile small{color:var(--text-muted);font-size:11px}.file-meta-list{display:grid;gap:4px;margin:0;font-size:11px}.file-meta-list div{display:grid;grid-template-columns:36px minmax(0,1fr);gap:6px}.file-meta-list dt{color:var(--text-muted)}.file-meta-list dd{margin:0;min-width:0;overflow-wrap:anywhere}.file-download-button{width:100%;min-height:34px;margin-top:2px}.image-preview-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:40;display:grid;place-items:center;padding:24px;background:var(--overlay)}.image-preview-panel{width:min(920px,100%);max-height:min(760px,92vh);display:grid;gap:12px;padding:16px;border-radius:8px;background:var(--surface-solid);box-shadow:var(--shadow)}.image-preview-panel img{width:100%;max-height:60vh;object-fit:contain;border-radius:8px;background:var(--surface-muted)}.image-preview-panel .ghost-button{justify-self:end}.danger-confirm-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;display:grid;place-items:center;padding:24px;background:var(--overlay)}.danger-confirm-panel{display:grid;gap:12px;width:min(480px,100%);padding:18px;border-radius:8px;background:var(--surface-solid);box-shadow:var(--shadow)}.danger-confirm-panel p{margin:0;color:var(--text)}.user-row{padding:14px}.user-row small{display:block;color:var(--text-muted);margin-top:3px}.empty-state{display:grid;place-items:center;min-height:120px;border:1px dashed var(--border);border-radius:8px;color:var(--text-muted);background:var(--surface-subtle)}.empty-state.small{min-height:64px}.main-panel{background:var(--page-bg)}.brand span,.profile-box span,.card-head span,.user-row span,.hint,.muted,.project-row span,.topbar p,.metric-card small,.record-detail dt,.dashboard-list-item span,.announcement span,.upload-drop-hint,.upload-preview span,.upload-preview small,.file-tile small,.file-meta-list dt,.timeline-head span,.timeline-meta span,.ai-status-meta span,.codex-command-box span{color:var(--text-muted)}.metric-card,.home-action-card,.panel,.record-card,.user-row,.wide-panel,.student-status-card,.tutor-status-card,.admin-status-card,.dashboard-list-card,.dashboard-list-item,.dataset-summary,.student-stage-reports,.stage-report-row,.dataset-row,.metric-row,.ai-status-body,.ai-report-card,.collection-card,.bulk-action-box,.registered-summary,.codex-command-box,.form-section,.subpanel.soft,.upload-preview,.file-tile,.group-admin-row,.tutor-picker label,.tool-info-grid>div,.announcement,.empty-state{border-color:var(--border);background:var(--surface);color:var(--text)}.student-status-card,.tutor-status-card,.admin-status-card,.dashboard-list-card,.dataset-summary,.student-stage-reports,.metric-row,.ai-status-body,.bulk-action-box,.registered-summary,.codex-command-box,.form-section,.subpanel.soft,.upload-preview,.empty-state{background:var(--surface-raised)}.home-action-card,.dataset-row,.codex-command-box code,.tool-info-grid strong,.record-card p,.announcement p,.ai-status-body p,.group-admin-row small,.danger-confirm-panel p{color:var(--text)}.codex-command-box code{background:var(--surface-raised)}.home-action-icon,.student-status-icon,.tutor-status-icon,.admin-status-icon,.upload-file-icon{background:var(--primary-soft);color:var(--primary-strong)}.metric-card strong,.student-status-card strong,.tutor-status-card strong,.admin-status-card strong,.form-section legend{color:var(--primary-strong)}.primary-button{background:var(--primary);color:var(--surface-solid)}.ghost-button,.icon-button{background:var(--surface-muted);color:var(--text);border:1px solid var(--border)}.ghost-button:hover,.icon-button:hover{border-color:var(--border-strong)}.role-tags span,.chips span,.badge{background:var(--surface-muted);color:var(--text)}.badge.green,.success-banner{background:var(--success-bg);color:var(--success-text)}.badge.amber,.notice,.next-step{background:var(--warning-bg);color:var(--warning-text)}.badge.red,.error-banner,.ai-job-error,.icon-button.danger{background:var(--danger-bg);color:var(--danger-text)}.badge.neutral,.draft-status{background:var(--surface-muted);color:var(--text)}.security-card{min-height:96px}.security-form{gap:10px}.theme-toggle{justify-content:flex-start;width:100%}.modal-overlay,.danger-confirm-overlay,.action-dialog-overlay,.image-preview-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;display:grid;place-items:center;padding:24px;background:var(--overlay)}.modal-panel,.danger-confirm-panel,.action-dialog-panel,.image-preview-panel{display:grid;gap:12px;width:min(480px,100%);padding:18px;border:1px solid var(--border);border-radius:8px;background:var(--surface-solid);box-shadow:var(--shadow)}.action-dialog-panel{max-height:min(720px,calc(100vh - 48px));overflow-y:auto}.account-editor-panel{width:min(720px,100%)}.account-editor-panel>.section-title>div{display:grid;gap:3px;min-width:0}.account-editor-panel>.section-title span{color:var(--text-muted);font-size:12px;overflow-wrap:anywhere}.account-editor-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.account-editor-email{grid-column:1 / -1}.account-role-fieldset{min-width:0;display:grid;gap:8px;margin:0;padding:0;border:0}.account-role-fieldset legend{margin-bottom:6px;color:var(--text);font-size:13px;font-weight:700}.account-role-fieldset>small{color:var(--text-muted);font-size:12px}.account-tutor-fields{display:grid;gap:10px;min-width:0}.account-tutor-fields .hint{margin:0}.account-editor-error{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px;border:1px solid var(--danger-text);border-radius:8px;background:var(--danger-bg);color:var(--danger-text)}.account-editor-error span{min-width:0;overflow-wrap:anywhere}.account-editor-error .ghost-button{flex:0 0 auto;background:var(--surface-solid)}.action-dialog-panel.danger{border-top:3px solid var(--danger-text)}.action-dialog-panel p{margin:0;color:var(--text);line-height:1.6}.action-dialog-panel textarea{min-height:120px;max-height:300px;resize:vertical}.action-dialog-count{justify-self:end;color:var(--text-muted);font-weight:400}.image-preview-panel{width:min(920px,100%)}.upload-progress{display:grid;gap:8px;padding:10px;border:1px solid var(--border);border-radius:8px;background:var(--surface-raised)}.upload-progress>div{display:flex;align-items:center;justify-content:space-between;gap:12px}.upload-progress span,.upload-progress small{color:var(--text-muted);font-size:12px}.upload-progress progress{width:100%;height:10px;overflow:hidden;border:0;border-radius:999px;background:var(--surface-muted)}.upload-progress progress::-webkit-progress-bar{background:var(--surface-muted)}.upload-progress progress::-webkit-progress-value{background:var(--primary)}.upload-progress progress::-moz-progress-bar{background:var(--primary)}.file-image-placeholder{width:100%;aspect-ratio:4 / 3;display:grid;place-items:center;gap:4px;border-radius:6px;background:var(--surface-muted);color:var(--text-muted)}.file-image-placeholder small{width:auto;white-space:normal}.ai-direct-action{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px;border:1px solid var(--border);border-radius:8px;background:var(--surface-raised)}.ai-direct-action>div{min-width:0;flex:1;display:grid;gap:3px}.ai-direct-action span{color:var(--text-muted);font-size:12px}.ai-direct-action textarea{width:100%;min-height:72px;margin-top:6px;resize:vertical}:root[data-theme=dark] img{filter:none}@media(max-width:1080px){.app-shell{grid-template-columns:1fr}.sidebar{position:static;height:auto}nav{grid-template-columns:repeat(3,minmax(0,1fr))}.split-layout,.split-layout.wide,.content-grid{grid-template-columns:1fr}.project-row{grid-template-columns:minmax(160px,1fr) repeat(2,auto)}.project-row span:nth-last-child(-n+2){display:none}.worklist-grid{grid-template-columns:1fr}.student-status-grid,.tutor-status-grid,.admin-status-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.system-status-cards{grid-template-columns:1fr}.operations-issue{grid-template-columns:28px minmax(0,1fr)}.operations-issue-owner{grid-column:2;grid-template-columns:auto auto;justify-content:start;justify-items:start;text-align:left}.admin-activity-filters{grid-template-columns:minmax(220px,1fr) repeat(2,minmax(140px,.6fr))}.admin-activity-filter-actions{grid-column:1 / -1;justify-content:end}.admin-activity-row{grid-template-columns:minmax(120px,.55fr) minmax(0,1.8fr)}.admin-activity-correlation{grid-column:2;justify-items:start;text-align:left}}@media(max-width:1280px)and (min-width:1081px){.admin-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.student-status-grid,.tutor-status-grid,.admin-status-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:680px){.main-panel{padding:18px}.topbar,.card-head,.user-row{flex-direction:column}.topbar h1{font-size:28px}nav,.form-row,.segmented,.segmented.two,.check-grid,.upload-form,.form-section.compact .form-section-body,.inline-form,.admin-filters{grid-template-columns:1fr}.record-detail,.student-status-grid,.tutor-status-grid,.admin-status-grid{grid-template-columns:1fr}.project-table{gap:12px}.project-row{grid-template-columns:1fr;gap:8px;padding:12px;border:1px solid var(--border);border-radius:8px;background:var(--surface-raised)}.project-row:last-child{border-bottom:1px solid var(--border)}.project-row span,.project-row span:nth-last-child(-n+2){display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.project-row span:before{content:attr(data-label);flex:0 0 auto;color:var(--text);font-weight:700}.upload-preview{grid-template-columns:1fr}.upload-preview img,.upload-file-icon{width:100%}.ai-direct-action{flex-direction:column;align-items:stretch}.image-preview-overlay{padding:12px}.action-dialog-overlay{align-items:end;padding:12px}.action-dialog-panel{width:100%;max-height:calc(100vh - 24px);padding:16px}.account-editor-grid{grid-template-columns:1fr}.account-editor-email{grid-column:auto}.account-editor-error{align-items:stretch;flex-direction:column}.account-editor-error .ghost-button{width:100%}.action-dialog-panel .action-row{display:grid;grid-template-columns:1fr 1fr}.action-dialog-panel .action-row>button{width:100%}.record-detail dt{font-weight:700}.action-row{width:100%}.action-row>button{flex:1 1 130px}.collection-card.prominent{padding:12px;border-left-width:4px}.collection-card-head{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}.collection-meta-row{gap:5px}.source-row{flex-direction:column;align-items:stretch}.source-row>div,.source-row>.action-row{width:100%}.source-row>.action-row{justify-content:flex-start}.source-row strong{word-break:normal;overflow-wrap:anywhere}.collection-action-strip{display:grid;grid-template-columns:1fr}.collection-action-strip select,.collection-action-strip button{width:100%;min-width:0}.dataset-list-actions{display:grid;grid-template-columns:1fr}.admin-activity-filters,.admin-activity-row{grid-template-columns:1fr}.admin-activity-filter-actions{grid-column:auto;grid-template-columns:1fr 1fr}.admin-activity-filter-actions button{width:100%}.admin-activity-correlation{grid-column:auto;justify-items:start;text-align:left}.workspace-reconciliation-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.workspace-reconciliation-row{grid-template-columns:1fr}}@media(max-width:920px){.research-axis{grid-template-columns:repeat(6,minmax(180px,72vw))}.research-axis-summary,.research-axis-footer{align-items:flex-start;flex-direction:column}.research-axis-footer .ghost-button{width:100%}}.brand span,.profile-box span,.card-head span,.user-row span,.topbar p,.hint,.muted,.project-row span,.metric-card small,.record-detail dt,.dashboard-list-item span,.announcement span,.upload-drop-hint,.upload-preview span,.upload-preview small,.file-tile small,.file-meta-list dt,.timeline-head span,.timeline-meta span,.ai-status-meta span,.codex-command-box span,.status-detail-list dt,.status-summary-row span,.student-status-head span,.student-status-card p,.student-status-meta,.tutor-status-head span,.tutor-status-card p,.tutor-status-meta,.admin-status-head span,.admin-status-card p,.admin-status-meta,.dashboard-chart-panel .section-title span,.research-axis-panel .section-title span,.research-axis-summary span,.research-stage-body p,.chart-legend,.tutor-picker small,.dataset-row span,.dataset-row small,.ai-report-head span,.ai-report-section-title span,.ai-job-row span,.ai-report-fields dt,.source-row span,.source-row small,.tool-info-grid span,.review-note span,.group-admin-row small,.field-label small{color:var(--text-muted)}.metric-card,.home-action-card,.panel,.record-card,.user-row,.wide-panel,.student-status-card,.tutor-status-card,.admin-status-card,.dashboard-list-card,.dashboard-list-item,.dataset-summary,.student-stage-reports,.stage-report-row,.dataset-row,.metric-row,.ai-status-body,.ai-report-card,.ai-report-section,.collection-card,.writing-collection-box,.bulk-action-box,.registered-summary,.codex-command-box,.form-section,.subpanel,.subpanel.soft,.emphasis-panel,.attachments,.detail-panel,.report-detail-section,.report-detail-panel,.report-detail-summary,.report-markdown,.source-row,.tool-info-grid>div,.announcement,.project-row,.project-table,.status-summary-row,.status-detail-card,.file-tile,.image-preview-panel,.dashboard-chart-panel,.research-axis-panel,.research-stage-body,.ai-job-row,.tutor-edit-box,.review-note,.review-note-box,.danger-confirm-panel,.error-boundary-panel,.empty-state{border-color:var(--border);background:var(--surface);color:var(--text)}.student-status-card,.tutor-status-card,.admin-status-card,.dashboard-list-card,.dataset-summary,.student-stage-reports,.stage-report-row,.metric-row,.ai-status-body,.bulk-action-box,.registered-summary,.codex-command-box,.form-section,.subpanel,.subpanel.soft,.emphasis-panel,.attachments,.detail-panel,.report-detail-section,.report-detail-panel,.report-detail-summary,.report-markdown,.source-row,.tool-info-grid>div,.project-row,.status-summary-row,.status-detail-card,.file-tile,.image-preview-panel,.dashboard-chart-panel,.research-stage-body,.ai-job-row,.tutor-edit-box,.review-note,.review-note-box,.empty-state{background:var(--surface-raised)}.home-action-card,.dataset-row,.record-card p,.announcement p,.ai-status-body p,.danger-confirm-panel p,.collection-card p,.writing-collection-box p,.status-detail-list dd,.ai-report-fields dd,.review-note-box p,.ai-job-row p,.source-row,.tool-info-grid strong,.field-label,.error-boundary-panel p,.error-boundary-panel code,.report-markdown,.project-row span:before{color:var(--text)}.primary-button{background:var(--primary);color:var(--primary-contrast)}.primary-button:hover{background:var(--primary-hover)}.home-action-card:hover,.home-action-card:focus-visible,.dataset-row:hover,.dataset-row:focus-visible,.dataset-row.active{border-color:var(--primary);box-shadow:var(--hover-shadow)}.ghost-button,.icon-button,.segmented label,.check-grid label,.check-list label,.checkbox-line,.selected-chip-list button,.search-box{border-color:var(--border);background:var(--surface-muted);color:var(--text)}.ghost-button:hover,.icon-button:hover,.segmented label:hover,.check-grid label:hover,.check-list label:hover,.checkbox-line:hover,.selected-chip-list button:hover{border-color:var(--border-strong)}.segmented input:checked+span,.check-grid input:checked+span,.check-list input:checked+span{color:var(--primary-strong)}.notice,.next-step,.announcement.pinned{border-color:var(--border);background:var(--info-bg);color:var(--info-text)}.danger-action-button{background:var(--danger-bg);color:var(--danger-text)}.danger-action-button:hover{background:var(--danger-text);color:var(--surface-solid)}.codex-command-box code,.error-boundary-panel code,.file-image-placeholder,.role-tags span,.chips span,.draft-status,.badge.neutral,.admin-group-distribution span,.stage-metric-line span,.artifact-list span,.research-stage-milestones span,.compact-report-meta span,.collection-color-chip{background:var(--surface-muted);color:var(--text)}.upload-form.drag-active .form-section{border-color:var(--primary);background:var(--primary-soft)}:root[data-theme=dark] .image-preview-panel img{background:var(--surface-muted)}@media(max-width:680px){.sidebar{gap:12px;padding:14px;overflow:visible}.sidebar nav{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.sidebar .nav-item{min-width:0;min-height:40px;gap:6px;padding:7px 8px;font-size:12px}.sidebar .nav-item svg{width:16px;height:16px;flex:0 0 auto}.profile-box{margin-top:0;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:6px;padding-top:12px}.profile-box>strong{grid-column:1;grid-row:1;min-width:0;overflow-wrap:anywhere}.profile-box>span{grid-column:1;grid-row:2;min-width:0;overflow-wrap:anywhere}.profile-box>button{grid-row:1 / 3;min-height:40px;padding:7px 9px;font-size:12px}}@media(max-width:360px){.sidebar nav{grid-template-columns:repeat(2,minmax(0,1fr))}.profile-box{grid-template-columns:minmax(0,1fr) auto}.profile-box>button{grid-row:auto}.profile-box>.theme-toggle{grid-column:2;grid-row:1}}.app-shell{grid-template-columns:240px minmax(0,1fr);font-size:14px;letter-spacing:0}.workspace-sidebar{gap:24px;padding:24px 14px 18px;overflow:hidden;border-right:1px solid var(--border)}.workspace-sidebar .brand{padding:0 8px}.workspace-sidebar .brand strong{font-size:19px}.workspace-sidebar .brand span{font-size:11px;margin-top:3px}.workspace-sidebar .brand-mark{width:34px;height:38px;border-radius:6px;background:transparent;color:var(--primary);font-size:19px}.sidebar-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.mobile-navigation-toggle{display:none}.workspace-sidebar>nav{min-height:0;overflow-y:auto;overflow-x:hidden;gap:24px;flex:1;align-content:start;scrollbar-gutter:stable}.navigation-group{display:grid;gap:3px}.navigation-group h2{margin:0 0 5px;padding:0 10px;font-size:12px;font-weight:600;color:var(--sidebar-muted);letter-spacing:0}.navigation-group .nav-item{min-height:40px;padding:9px 12px;font-size:14px;white-space:normal;text-align:left;border-radius:6px;gap:12px}.workspace-sidebar .nav-item.active{background:var(--primary-soft);color:var(--primary-strong);font-weight:600}.navigation-group .nav-item svg{flex:0 0 18px}.navigation-group .nav-item>span{min-width:0;overflow-wrap:anywhere}.knowledge-navigation-group{min-width:0}.knowledge-navigation-toggle{width:100%}.workspace-sidebar .nav-item.parent-active{color:var(--primary-strong);font-weight:600}.knowledge-navigation-toggle .disclosure-icon{margin-left:auto;flex-basis:16px;transform:rotate(-90deg)}.knowledge-navigation-toggle .disclosure-icon.expanded{transform:rotate(0)}.workspace-sidebar .knowledge-sidebar-nav{display:grid;grid-template-columns:minmax(0,1fr);gap:2px;padding:4px 0 6px 10px;margin:0 0 0 20px;border-left:1px solid var(--border-strong);overflow:visible}.knowledge-sidebar-nav a{display:flex;align-items:center;gap:9px;min-height:36px;padding:8px 10px;border-radius:6px;color:var(--sidebar-muted);text-decoration:none;font-size:13px;line-height:1.4}.knowledge-sidebar-nav a svg{flex:0 0 16px}.knowledge-sidebar-nav a span{min-width:0;overflow-wrap:anywhere}.knowledge-sidebar-nav a:hover{background:var(--sidebar-hover);color:var(--sidebar-text)}.knowledge-sidebar-nav a[aria-current=page]{background:var(--primary-soft);color:var(--primary-strong);font-weight:600}.workspace-sidebar .profile-box{margin-top:0;padding:18px 6px 0;grid-template-columns:minmax(0,1fr);gap:14px}.profile-identity{display:flex;align-items:center;gap:10px;min-width:0}.profile-identity>div{min-width:0;display:grid;gap:3px}.profile-identity strong{overflow-wrap:anywhere;font-size:13px}.profile-identity>div>span{font-size:11px;color:var(--sidebar-muted)}.profile-avatar{width:34px;height:34px;display:grid;place-items:center;flex-shrink:0;border-radius:50%;background:var(--info-bg);color:var(--info-text);font-weight:600}.profile-actions{display:flex;align-items:center;gap:10px}.profile-actions .icon-button{width:34px;height:34px;min-height:34px;color:var(--sidebar-muted);background:transparent;border:1px solid transparent;border-radius:6px}.profile-actions .icon-button:hover{color:var(--sidebar-text);background:var(--sidebar-hover)}.profile-security{display:contents}.profile-security>.success-banner,.profile-security>.error-banner{position:fixed;bottom:20px;left:240px;z-index:20;max-width:calc(100vw - 260px)}.app-shell .main-panel{min-width:0;padding:0 32px 32px}.app-shell .main-panel.knowledge-surface{background:var(--surface-solid)}.app-shell .topbar{min-height:92px;margin:0 -32px 26px;padding:20px 32px;border-bottom:1px solid var(--border);background:var(--surface-solid);align-items:center}.app-shell .topbar h1{font-size:24px;line-height:1.4;margin:0;letter-spacing:0}.app-shell .topbar p{margin:5px 0 0;font-size:12px;color:var(--text-muted)}.app-shell .topbar h1:focus:not(:focus-visible){outline:none}.app-shell .topbar h1:focus-visible{outline:none}.topbar-title{min-width:0;flex:1}.app-shell .topbar h1,.app-shell .topbar p{overflow-wrap:anywhere}.workspace-navigation-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:90;background:#0000006b}.workspace-navigation-drawer{width:min(300px,calc(100vw - 32px));height:100vh;height:100dvh;outline:none}.workspace-navigation-drawer .workspace-sidebar{position:relative;height:100%;width:100%;box-shadow:8px 0 28px #0000002e}.workspace-section-nav{display:flex;flex-wrap:wrap;gap:24px;border-bottom:1px solid var(--border);margin:-8px 0 24px}.workspace-section-nav a{padding:12px 0;color:var(--text-muted);text-decoration:none;border-bottom:2px solid transparent;font-weight:500}.workspace-section-nav a[aria-current=page]{color:var(--primary);border-bottom-color:var(--primary)}.app-shell .primary-button,.app-shell .ghost-button{min-height:36px;border-radius:6px;font-size:13px;gap:7px;padding:8px 12px}.app-shell .primary-button:disabled,.app-shell .ghost-button:disabled,.app-shell .icon-button:disabled{opacity:.45;cursor:not-allowed;box-shadow:none}.app-shell .section-title h2{font-size:19px;line-height:1.5}.app-shell .empty-state{padding:24px 16px;min-height:0;font-size:13px}.app-shell input,.app-shell select,.app-shell textarea{border-radius:6px;font-size:14px}.app-shell .wide-panel,.app-shell .panel{box-shadow:none}.app-shell .goal-editor,.app-shell .goal-history{border:0;border-radius:0;padding:24px}.goal-editor .section-title h2{display:flex;align-items:center;gap:9px}.goal-editor .stack-form{max-width:880px}.goal-current-status{display:flex;flex-wrap:wrap;align-items:center;gap:14px;font-size:12px;color:var(--text-muted)}.goal-current-status a{color:var(--primary);margin-left:auto}.goal-progress-field{max-width:240px}.goal-lifecycle-actions{margin-top:30px;padding-top:18px;border-top:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px}.goal-lifecycle-actions>span{color:var(--text-muted);font-size:12px}.goal-history .record-card{border-width:0 0 1px;border-radius:0;padding:22px 0}.goal-history .record-card:last-child{border-bottom:0}.goal-description{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.7}.goal-description-summary{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.app-shell :is(a,button,input,select,textarea):focus-visible{outline:2px solid var(--primary);outline-offset:3px}.workspace-sidebar .profile-box>strong,.workspace-sidebar .profile-box>span{grid-column:1 / -1}.workspace-sidebar .profile-box>button{min-width:0;padding:7px;font-size:12px}.laboratory-home{display:grid;gap:30px}.lab-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-block:1px solid var(--border);padding:18px 0}.lab-metrics>div{padding:4px 20px;border-right:1px solid var(--border);display:grid;gap:8px;grid-template-columns:24px minmax(0,1fr);align-items:center}.lab-metrics>div:last-child{border-right:none}.lab-metrics svg{color:var(--primary)}.lab-metrics span{color:var(--text-muted);font-size:13px}.lab-metrics strong{grid-column:2;font-size:28px;line-height:1}.lab-notices,.lab-featured,.feedback-workspace{min-width:0}.lab-notices .section-title h2{display:flex;align-items:center;gap:8px}.home-notice{padding:16px 0;border-bottom:1px solid var(--border)}.home-entry-meta{display:flex;flex-wrap:wrap;align-items:center;gap:8px;color:var(--text-muted);font-size:12px;margin:0 0 8px}.home-entry-meta time{margin-left:auto}.home-notice h3,.home-featured-entry h3,.feedback-entry h3{margin:6px 0 10px;font-size:18px;line-height:1.5;overflow-wrap:anywhere}.home-notice h3 a,.home-featured-entry h3 a,.feedback-entry h3 a{color:var(--text);text-decoration:none}.home-notice h3 a:hover,.home-featured-entry h3 a:hover,.feedback-entry h3 a:hover{text-decoration:underline}.home-excerpt{color:var(--text-muted);font-size:14px;line-height:1.7;max-height:5.1em;overflow:hidden;overflow-wrap:anywhere}.home-excerpt p{margin:0;font-size:inherit}.home-featured-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.home-featured-entry{border:1px solid var(--border);border-radius:8px;overflow:hidden;background:var(--surface-solid)}.home-featured-entry>div{padding:18px}.home-featured-image{display:block;width:100%;height:180px;object-fit:contain;background:var(--surface)}.feedback-entry{border-bottom:1px solid var(--border);padding:20px 0;overflow-wrap:anywhere}.segmented-control{display:inline-flex;border-bottom:1px solid var(--border);gap:16px}.segmented-control [role=tab]{border:0;border-bottom:2px solid transparent;background:transparent;color:var(--text-muted);padding:10px 2px;cursor:pointer}.segmented-control [aria-selected=true]{color:var(--primary);border-bottom-color:var(--primary)}@media(max-width:1080px){.app-shell{grid-template-columns:minmax(0,1fr)}.app-shell .main-panel{padding:0 24px 24px}.app-shell .topbar{margin:0 -24px 24px;padding:18px 24px}.workspace-sidebar{padding:20px 14px 16px;gap:24px}.mobile-navigation-toggle{display:inline-flex;flex:0 0 40px;width:40px;height:40px;color:var(--sidebar-text);background:var(--sidebar-hover)}.app-shell .workspace-sidebar>nav{display:grid;grid-template-columns:minmax(0,1fr);gap:24px;flex-wrap:nowrap}.app-shell .workspace-sidebar .profile-box{display:grid}.lab-metrics>div{padding:2px 10px}}@media(max-width:680px){.app-shell .main-panel{padding:0 16px 24px}.app-shell .topbar{margin:0 -16px 20px;padding:16px;min-height:80px;flex-direction:row;justify-content:space-between}.app-shell .topbar h1{font-size:22px}.workspace-section-nav{gap:20px;margin-bottom:20px}.profile-security>.success-banner,.profile-security>.error-banner{left:16px;max-width:calc(100vw - 32px)}.lab-metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 0}.lab-metrics>div:nth-child(2){border-right:0}.home-featured-grid{grid-template-columns:1fr}.lab-notices .section-title,.lab-featured .section-title{gap:8px;flex-wrap:wrap}.lab-notices .section-title h2,.lab-featured .section-title h2{font-size:20px}}.experiment-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));padding:20px 0;gap:20px}.daily-workspace{min-width:0}.app-shell .daily-workspace{padding:24px;background:var(--surface-solid)}.daily-workspace-filters{align-items:end;margin-bottom:12px}.daily-results-summary{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 0 14px;border-bottom:1px solid var(--border);font-size:12px;color:var(--text-muted)}.daily-record-row-wrapper{display:grid;grid-template-columns:22px minmax(0,1fr);gap:12px;border-bottom:1px solid var(--border)}.daily-record-selection{display:flex;flex-direction:column;align-items:center;gap:10px;padding-top:26px}.daily-record-selection input{width:16px;height:16px;margin:0;accent-color:var(--primary)}.daily-record-row-wrapper>.record-card{border:0;border-radius:0;padding:20px 0;margin:0;box-shadow:none}.daily-record-selection .icon-button{width:24px;min-height:24px;height:24px;padding:3px}.daily-workspace-toolbar{flex-wrap:wrap;gap:12px}.daily-workspace-toolbar h2{font-size:20px}.daily-workspace-toolbar>.action-row{display:flex;flex-wrap:wrap;gap:8px}.daily-workspace-toolbar>.action-row>button{flex:0 0 auto;width:auto}.daily-workspace-toolbar>.action-row>.icon-button{width:40px;height:40px}.daily-record-excerpt{white-space:pre-wrap;overflow-wrap:anywhere;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;line-height:1.65}.daily-change-history{margin-top:16px}.daily-change-history>summary{cursor:pointer;padding:8px 0;color:var(--text-muted)}.experiment-stats>div{display:grid;gap:8px}.experiment-stats span{color:var(--text-muted);font-size:13px}.experiment-stats strong{font-size:28px;line-height:1.2}.experiment-home-section{padding:24px 0;border-top:1px solid var(--border)}.experiment-goal-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(180px,240px);gap:24px;align-items:center;padding:16px 0}.experiment-goal-row p{white-space:pre-wrap;overflow-wrap:anywhere;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.experiment-goal-row progress{width:100%}.experiment-diary-row{display:grid;grid-template-columns:110px minmax(0,1fr) auto;align-items:center;gap:12px;padding:16px 0;border-bottom:1px solid var(--border)}.experiment-diary-row strong{overflow-wrap:anywhere}.experiment-diary-row time,.experiment-diary-row span{color:var(--text-muted);font-size:13px}@media(max-width:600px){.app-shell .daily-workspace,.app-shell .goal-editor,.app-shell .goal-history{padding:16px}.daily-record-row-wrapper{grid-template-columns:18px minmax(0,1fr);gap:8px}.experiment-goal-row,.experiment-diary-row{grid-template-columns:minmax(0,1fr);gap:8px}.experiment-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}}.daily-editor{min-width:0}.daily-editor>.section-title{align-items:flex-start}.daily-editor-date{margin:5px 0 0;color:var(--text-muted);font-size:12px}.daily-goal-context{display:grid;grid-template-columns:minmax(0,1fr) minmax(190px,250px);gap:28px;align-items:center;padding:18px 0 22px;margin-bottom:8px;border-block:1px solid var(--border)}.daily-goal-context>div{min-width:0}.daily-goal-context>div:first-child>span{display:flex;align-items:center;gap:6px;color:var(--text-muted);font-size:12px;margin-bottom:7px}.daily-goal-context>div:first-child>strong{display:block;font-size:18px;line-height:1.55;overflow-wrap:anywhere}.daily-goal-progress>span{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:8px;font-size:12px;color:var(--text-muted)}.daily-goal-progress>span strong{color:var(--primary);font-size:16px}.daily-goal-progress progress{display:block;margin-top:10px;width:100%;height:7px;accent-color:var(--primary)}.daily-no-goal{display:grid;grid-template-columns:30px minmax(0,1fr) auto;gap:16px;align-items:center;padding:30px 0}.daily-no-goal>svg{color:var(--primary)}.daily-no-goal h3{font-size:17px;margin:0 0 7px}.daily-no-goal p{font-size:13px;color:var(--text-muted);margin:0}.daily-entry-form{margin-top:20px}.daily-entry-form textarea{line-height:1.8;padding:14px}.daily-form-footer{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;border-top:1px solid var(--border);padding-top:18px}.daily-form-footer .field-label{max-width:260px}.daily-form-footer input{max-width:120px}.daily-form-footer>button{min-width:120px;flex:0 0 auto}.daily-saved-heading{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px}.daily-saved-heading h3{font-size:16px;margin:0}.daily-saved-summary{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.8;font-size:14px;padding:4px 0 20px}.daily-saved-content .upload-panel,.daily-record-card .upload-panel{box-shadow:none}.daily-record-card{min-width:0;border-radius:6px;padding:18px 20px}.daily-record-card>.card-head{gap:14px;align-items:flex-start}.daily-record-card>.card-head>div:first-child{min-width:0}.daily-record-card>.card-head strong{font-size:15px;line-height:1.6;overflow-wrap:anywhere}.daily-record-card>.card-head>.action-row{flex-shrink:0}.daily-record-card>p{font-size:13px;line-height:1.7;overflow-wrap:anywhere}.daily-record-card>.action-row{justify-content:flex-end;margin-top:8px}.daily-record-card .record-detail{grid-template-columns:80px minmax(0,1fr);font-size:13px}.daily-record-card .record-detail dd{min-width:0;overflow-wrap:anywhere}.daily-record-card .review-note{border-radius:4px;box-shadow:none;padding:14px}.daily-data-panel{border:0;border-top:1px solid var(--border);border-radius:0;background:transparent;padding:20px 0 0}.daily-data-panel>.section-title h3{display:flex;align-items:center;gap:8px;font-size:16px}.daily-data-panel .daily-data-file-count{color:var(--text-muted);font-size:12px;margin:5px 0 0}.daily-data-entry>.section-title{align-items:flex-start;gap:12px;flex-wrap:wrap}.daily-data-entry>.section-title>div{min-width:0}.daily-data-entry>.section-title strong{font-size:14px;overflow-wrap:anywhere}.daily-data-readonly{display:flex;align-items:center;gap:7px;color:var(--success-text);font-size:12px}.daily-data-panel .stack-form>button,.daily-data-entry>button{width:fit-content}.daily-review-workspace .review-block{border:0;border-bottom:1px solid var(--border);border-radius:0;padding:0 0 24px;margin-bottom:24px;box-shadow:none}.daily-review-workspace .review-block>.daily-record-card{border:0;padding:0}.daily-review-workspace .review-form{margin-top:14px}.daily-review-workspace .form-section{border:0;border-top:1px solid var(--border);border-radius:0;padding:14px 0 0}@media(max-width:720px){.daily-goal-context{grid-template-columns:minmax(0,1fr);gap:16px}.daily-goal-context>div:first-child>strong{font-size:17px}.daily-goal-progress>span{justify-content:flex-start}.daily-no-goal{grid-template-columns:30px minmax(0,1fr);padding:20px 0}.daily-no-goal>.primary-button{grid-column:2;justify-self:start}.daily-form-footer{flex-wrap:wrap;gap:16px}.daily-form-footer>button{margin-left:auto}.daily-record-card{padding:15px}.daily-record-card>.card-head{flex-wrap:wrap}.daily-record-card>.card-head>.action-row{flex-shrink:1}.daily-record-card .record-detail{grid-template-columns:minmax(0,1fr)}.daily-record-card .record-detail dd{margin-left:0}}.issued-credential{min-width:0;overflow-wrap:anywhere}.issued-credential .section-title{align-items:flex-start;gap:8px}.issued-credential .section-title strong{min-width:0}.issued-credential .icon-button{flex:0 0 auto}.issued-credential code{white-space:normal;overflow-wrap:anywhere}.admin-home{display:grid;gap:24px;min-width:0;font-size:14px}.admin-home-overview,.admin-home-section{min-width:0;padding:24px;background:var(--surface-solid)}.admin-home-heading,.admin-home-section-title{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px}.admin-home-heading h2,.admin-home-section-title h2{margin:0;font-size:19px;line-height:1.5;color:var(--text-strong);overflow-wrap:anywhere}.admin-home-eyebrow{display:flex;align-items:center;gap:7px;margin:0 0 8px;color:var(--primary);font-size:12px;font-weight:600}.admin-home-actions{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.admin-home-actions button{font-size:13px}.admin-home-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin:24px 0 0;padding-top:22px;border-top:1px solid var(--border)}.admin-home-metrics>div{min-width:0;padding:0 20px}.admin-home-metrics>div:first-child{padding-left:0}.admin-home-metrics>div+div{border-left:1px solid var(--border)}.admin-home-metrics dt{font-size:12px;color:var(--text-muted)}.admin-home-metrics dd{margin:7px 0 0;color:var(--text-strong);font-size:25px;font-weight:600;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.admin-home-metrics small{margin-left:5px;color:var(--text-muted);font-size:13px;font-weight:400}.admin-home-columns{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:24px;align-items:start}.admin-home-section-title{margin-bottom:18px}.admin-home-section-title h2{display:flex;align-items:center;gap:8px}.admin-home-section-title h2 svg{color:var(--text-muted);flex-shrink:0}.admin-home-section-title>.muted{font-size:12px}.admin-home-health-list,.admin-home-storage-list{margin:0}.admin-home-health-list>div,.admin-home-storage-list>div{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:13px 0;border-bottom:1px solid var(--border)}.admin-home-health-list dt,.admin-home-storage-list dt{display:flex;align-items:center;gap:7px;font-size:13px;color:var(--text-muted)}.admin-home-health-list dt svg{flex-shrink:0}.admin-home-health-list dd,.admin-home-storage-list dd{margin:0;font-size:13px;text-align:right;overflow-wrap:anywhere}.admin-home-storage-list dd{font-size:18px;font-weight:600;font-variant-numeric:tabular-nums}.admin-home-storage-list dd small{display:block;margin-top:4px;color:var(--text-muted);font-size:12px;font-weight:400}.admin-home-checked-at{margin:12px 0 0;color:var(--text-muted);font-size:12px}.admin-home-issues{display:grid;gap:12px;margin-top:20px}.admin-home-issue{padding-left:12px;border-left:3px solid var(--warning-text);font-size:13px}.admin-home-issue.critical{border-left-color:var(--danger-text)}.admin-home-issue strong{font-weight:600;color:var(--text-strong)}.admin-home-issue p{margin:5px 0 0;color:var(--text-muted);line-height:1.6;overflow-wrap:anywhere}.admin-home-issues>.muted{font-size:12px}.admin-home-blocker{margin:0;font-size:13px;color:var(--warning-text);overflow-wrap:anywhere}.admin-home-disk{margin-top:22px}.admin-home-disk>div{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:13px}.admin-home-disk>div>span{color:var(--text-muted)}.admin-home-disk strong{font-weight:600;font-variant-numeric:tabular-nums}.admin-home-disk progress{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:block;width:100%;height:7px;margin-top:12px;border:0;border-radius:4px;overflow:hidden;background:var(--surface-muted)}.admin-home-disk progress::-webkit-progress-bar{background:var(--surface-muted)}.admin-home-disk progress::-webkit-progress-value{background:var(--chart-blue);border-radius:4px}.admin-home-disk progress::-moz-progress-bar{background:var(--chart-blue)}.admin-home-storage-warning{margin:12px 0 0;color:var(--warning-text);font-size:13px}.admin-home-group-row{display:grid;grid-template-columns:minmax(0,1fr) repeat(3,78px);gap:12px;padding:14px 0;border-top:1px solid var(--border);align-items:center}.admin-home-group-row strong{font-weight:500;overflow-wrap:anywhere}.admin-home-group-row>span:not(:first-child){text-align:right;font-variant-numeric:tabular-nums}.admin-home-group-labels{padding-block:10px;color:var(--text-muted);font-size:12px}.admin-home-empty{margin:12px 0;color:var(--text-muted)}.admin-home-text-link{display:inline-flex;gap:6px;align-items:center;margin-top:12px;padding:4px 0;border:0;background:transparent;color:var(--primary);font-size:13px;cursor:pointer}.admin-home-text-link:hover{text-decoration:underline}@media(max-width:1100px){.admin-home-columns{grid-template-columns:minmax(0,1fr)}}@media(max-width:650px){.admin-home{gap:18px}.admin-home-overview,.admin-home-section{padding:18px}.admin-home-metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 0}.admin-home-metrics>div{padding:0 14px}.admin-home-metrics>div:nth-child(odd){padding-left:0;border-left:0}.admin-home-metrics dd{font-size:23px}.admin-home-group-row{grid-template-columns:minmax(0,1fr) 52px 30px 30px;gap:9px;font-size:12px}.admin-home-health-list>div,.admin-home-storage-list>div{gap:12px}.admin-home-health-list dd{max-width:55%}.admin-home-health-list dd .badge{white-space:normal}}.literature-metadata{min-width:0;padding:18px 0;border-top:1px solid var(--border, #d6dde1);border-bottom:1px solid var(--border, #d6dde1);font-size:13px}.literature-metadata-controls{display:flex;flex-wrap:wrap;gap:12px;align-items:end}.literature-metadata label{display:grid;gap:6px;min-width:0}.literature-metadata-controls>label{flex:1 1 220px}.literature-metadata select{width:100%;min-width:0;max-width:100%}.literature-metadata-result{margin-top:16px;display:grid;gap:12px;min-width:0}.literature-suggestions{margin:0;display:grid;gap:12px;min-width:0}.literature-suggestions>div{min-width:0}.literature-suggestions dt{margin-bottom:6px;font-weight:600}.literature-suggestions dt label{display:flex;gap:8px;align-items:center}.literature-suggestions dt input{width:auto}.literature-suggestions dd{margin:0;white-space:pre-wrap;overflow-wrap:anywhere}.literature-excerpt{max-height:230px;overflow-y:auto;padding:8px;background:var(--surface-subtle, #f4f6f7)}.literature-warning{margin:0;font-size:13px;overflow-wrap:anywhere}.literature-filters{display:flex;flex-wrap:wrap;flex:1 1 420px;gap:12px;align-items:end}.literature-filters label{display:grid;gap:5px;flex:1 1 110px;min-width:0;font-size:12px;color:var(--text-muted)}.literature-filters input,.literature-filters select{width:100%;min-width:0}.literature-classification{display:flex;flex-wrap:wrap;gap:5px 7px;font-size:11px;line-height:1.6;font-weight:500}.literature-classification>span{padding:2px 6px;border-radius:3px;background:var(--surface-muted)}.literature-classification:empty,.literature-citation:empty{display:none}.literature-classification .literature-family.nature{background:var(--danger-bg);color:var(--danger-text)}.literature-classification .literature-family.science{background:var(--info-bg);color:var(--info-text)}.literature-classification .literature-direction{background:var(--success-bg);color:var(--success-text)}.literature-tag{color:var(--text-muted)}.literature-citation{color:var(--text-muted);font-size:12px;line-height:1.7;font-weight:400;overflow-wrap:anywhere}.literature-list-download{flex-shrink:0;align-self:flex-start;margin-top:16px}.literature-download-error{flex-basis:100%}.literature-summary{margin:22px 0}.literature-summary p{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.85}.literature-directions{display:flex;flex-wrap:wrap;gap:12px 20px;margin:0;padding:12px 0;border:0;min-width:0}.literature-directions legend{padding:0}.knowledge-edit-form .literature-directions label{display:flex;align-items:center;gap:7px}.knowledge-edit-form .literature-directions input{width:16px;height:16px}.literature-analysis{padding:18px 0;border-bottom:1px solid var(--border);min-width:0;font-size:13px}.literature-analysis h4{margin:0;font-size:16px}.literature-analysis>.literature-warning{margin-bottom:12px}.literature-analysis-preview{display:grid;gap:12px;margin-top:16px;min-width:0}.literature-source-text{margin:0;max-height:200px;overflow-y:auto;padding:12px;background:var(--surface-subtle);white-space:pre-wrap;overflow-wrap:anywhere;font-family:inherit;font-size:13px;line-height:1.65}.knowledge-edit-form .literature-consent{display:flex;align-items:flex-start;gap:10px;font-size:13px;line-height:1.65}.knowledge-edit-form .literature-consent input{width:16px;height:16px;flex-shrink:0;margin-top:3px}.literature-analysis-preview>button{justify-self:start}.knowledge-editor-literature-upload{padding:0 0 20px;margin-bottom:20px;border-bottom:1px solid var(--border)}.knowledge-editor-literature-upload h4{margin-top:0}.literature-import-dialog{width:min(580px,calc(100vw - 32px));max-height:calc(100dvh - 40px);overflow-y:auto;overscroll-behavior:contain;padding:26px;background:var(--surface-solid);color:var(--text);border:1px solid var(--border);border-radius:6px;font-size:14px;line-height:1.6}.literature-import-dialog>.section-title{margin-bottom:16px}.literature-import-dialog h3{margin:0;font-size:18px}.literature-import-form{display:grid;gap:16px;padding-top:20px}.literature-import-form>label{display:grid;gap:7px;min-width:0;font-size:13px}.literature-import-form input,.literature-import-form select{min-width:0;width:100%}.literature-import-form input[type=file]{padding:14px;border:1px dashed var(--border-strong);border-radius:5px;background:var(--surface-subtle);font-size:12px}.literature-import-form input[type=file]::file-selector-button{margin-right:10px;padding:7px 11px;border:1px solid var(--border-strong);border-radius:4px;background:var(--surface-solid);color:var(--text);font:inherit;cursor:pointer}.literature-import-form>.literature-consent{display:flex;align-items:flex-start;gap:10px;padding-top:14px;border-top:1px solid var(--border);line-height:1.65;font-size:13px}.literature-import-form .literature-consent input{flex-shrink:0;width:16px;height:16px;margin-top:3px}.literature-import-file{display:flex;align-items:center;gap:8px;min-width:0;font-size:13px;color:var(--text-muted)}.literature-import-file svg{flex-shrink:0}.literature-import-file span{min-width:0;overflow-wrap:anywhere}.literature-import-progress{display:grid;gap:10px;padding:12px 0;border-top:1px solid var(--border);border-bottom:1px solid var(--border);font-size:13px}.literature-import-progress progress{width:100%;accent-color:var(--primary)}.literature-import-actions{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:10px;padding-top:6px}.literature-import-actions button{max-width:100%}.literature-draft-label{display:inline-block;margin-left:8px;padding:1px 6px;border-radius:3px;background:var(--warning-bg);font-size:11px;font-weight:500;color:var(--warning-text);vertical-align:middle}.literature-draft-notice{padding:10px 12px;border-left:3px solid var(--warning-text);background:var(--warning-bg);color:var(--warning-text);font-size:13px;line-height:1.6}.literature-import-warnings{display:grid;gap:8px;padding:12px 0;margin-bottom:12px;border-bottom:1px solid var(--border);color:var(--text-muted)}@media(max-width:780px){.literature-filters{gap:10px}.literature-filters label{flex-basis:calc(50% - 10px)}.literature-filters label:last-of-type{flex-basis:100%}.literature-list-download{margin-top:13px}.literature-metadata-controls{align-items:stretch}.literature-analysis .section-title{flex-wrap:wrap}.literature-import-dialog{padding:18px}.literature-import-actions>.primary-button{flex-grow:1}.knowledge-editor-actions{flex-wrap:wrap}}.knowledge-page{min-width:0;padding:0;color:var(--text);font-size:14px;line-height:1.6}.knowledge-page h2{margin:0;font-size:20px;line-height:1.45}.knowledge-page h3{font-size:17px;line-height:1.5}.knowledge-page button,.knowledge-page input,.knowledge-page select,.knowledge-editor button,.knowledge-folder-manager button{letter-spacing:0}.knowledge-workspace-heading{display:flex;align-items:center;gap:16px;min-width:0;padding:0 0 18px}.knowledge-workspace-heading>span{min-width:0;padding-left:16px;border-left:1px solid var(--border-strong);color:var(--text-muted);font-size:13px;overflow-wrap:anywhere}.knowledge-section-nav{display:flex;align-items:stretch;gap:6px;overflow-x:auto;border-bottom:1px solid var(--border);scrollbar-width:thin}.knowledge-section-nav a{display:inline-flex;align-items:center;flex-shrink:0;gap:7px;padding:12px 13px;border-bottom:2px solid transparent;color:var(--text-muted);text-decoration:none;white-space:nowrap;font-weight:500}.knowledge-section-nav a:hover{color:var(--text);background:var(--surface-subtle)}.knowledge-section-nav a[aria-current=page]{border-bottom-color:var(--primary);color:var(--primary-strong);font-weight:650}.knowledge-section-nav svg{flex-shrink:0}.knowledge-list-heading{margin:0;padding:22px 0 18px;flex-wrap:wrap;gap:14px}.knowledge-list-heading h2{margin:0;font-size:18px}.knowledge-list-heading>.action-row{flex-wrap:wrap}.knowledge-view-switch{display:inline-flex;align-items:center;padding:3px;border:1px solid var(--border);border-radius:6px;background:var(--surface-subtle)}.knowledge-view-switch button{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:6px 10px;border:0;border-radius:4px;background:transparent;color:var(--text-muted);font-size:13px;white-space:nowrap}.knowledge-view-switch button[aria-pressed=true]{background:var(--surface-solid);color:var(--primary-strong);box-shadow:0 1px 3px #00000012}.knowledge-filter-band{display:flex;flex-wrap:wrap;align-items:end;gap:12px 20px}.knowledge-toolbar{display:flex;align-items:center;gap:16px;flex:1 1 380px;min-width:0}.knowledge-search{display:flex;align-items:center;gap:9px;flex:1;min-width:140px;padding:0 11px;border:1px solid var(--border-strong);border-radius:6px;background:var(--surface-solid)}.knowledge-search:focus-within{border-color:var(--primary);outline:2px solid var(--primary-soft);outline-offset:1px}.knowledge-search input{width:100%;min-width:0;padding:9px 0;border:0;border-radius:0;background:transparent;box-shadow:none;outline:none}.knowledge-search input:focus{outline:none;box-shadow:none}.knowledge-search svg{color:var(--text-muted);flex-shrink:0}.knowledge-search-clear{display:flex;justify-content:center;align-items:center;width:28px;height:28px;padding:0;flex-shrink:0;border:0;border-radius:4px;color:var(--text-muted);background:transparent}.knowledge-search-clear:hover{background:var(--surface-muted)}.knowledge-kind-filter{width:132px;min-width:0}.knowledge-checkbox{display:inline-flex;align-items:center;gap:7px;white-space:nowrap;color:var(--text-muted);font-size:13px}.knowledge-checkbox input{width:16px;height:16px;accent-color:var(--primary)}.knowledge-result-summary{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:48px;font-size:12px;color:var(--text-muted)}.knowledge-result-summary .ghost-button{padding:5px 0 5px 8px;font-size:12px}.knowledge-workspace{display:grid;grid-template-columns:200px minmax(0,1fr);min-height:340px;border-top:1px solid var(--border)}.knowledge-workspace.without-directories{grid-template-columns:minmax(0,1fr)}.knowledge-workspace.without-directories .knowledge-results{padding-left:0}.knowledge-directory-toggle{display:none}.knowledge-directories{min-width:0;padding:0 14px 20px 0;border-right:1px solid var(--border)}.knowledge-directory-heading{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:49px}.knowledge-directory-heading h4{margin:0;font-size:13px}.knowledge-directory-heading .icon-button{width:30px;height:30px;min-width:30px;padding:0}.knowledge-directories>button,.knowledge-directory-node>button{display:flex;align-items:center;gap:8px;width:100%;padding:8px;border:0;border-radius:4px;background:transparent;color:var(--text-muted);font-size:13px;text-align:left}.knowledge-directories>button:hover,.knowledge-directory-node>button:hover{background:var(--surface-subtle);color:var(--text)}.knowledge-directories button.active{background:var(--primary-soft);color:var(--primary-strong);font-weight:600}.knowledge-directories button span{min-width:0;overflow-wrap:anywhere}.knowledge-directories svg{flex-shrink:0}.knowledge-directory-children{margin-left:11px;padding-left:4px;border-left:1px solid var(--border)}.knowledge-directory-children:empty{display:none}.knowledge-directory-empty{padding-left:8px;font-size:12px;color:var(--text-muted)}.knowledge-results{min-width:0;padding:0 0 0 22px}.knowledge-list-caption{display:flex;justify-content:space-between;align-items:center;gap:16px;min-height:48px;border-bottom:1px solid var(--border);color:var(--text-muted);font-size:12px}.knowledge-list-caption>span:first-child{display:flex;gap:6px;align-items:center;min-width:0;overflow-wrap:anywhere}.knowledge-list-caption svg{flex-shrink:0}.knowledge-list-caption>span:last-child{flex-shrink:0}.knowledge-list{min-width:0}.knowledge-list-item{display:flex;flex-wrap:wrap;gap:0 10px;min-width:0;border-bottom:1px solid var(--border)}.knowledge-list-item:hover{background:var(--surface-subtle)}.knowledge-entry-row{display:flex;align-items:flex-start;flex:1;min-width:0;gap:12px;border:0;background:transparent;padding:16px 4px;border-radius:0;text-align:left;color:var(--text)}.knowledge-entry-row:focus-visible{outline:2px solid var(--primary);outline-offset:-2px}.knowledge-kind-mark{display:flex;align-items:center;justify-content:center;width:32px;height:34px;flex-shrink:0;border-radius:5px;background:var(--info-bg);color:var(--info-text)}.knowledge-kind-mark.question{background:var(--warning-bg);color:var(--warning-text)}.knowledge-kind-mark.rule,.knowledge-kind-mark.announcement{background:var(--danger-bg);color:var(--danger-text)}.knowledge-kind-mark.literature{background:var(--success-bg);color:var(--success-text)}.knowledge-entry-copy{display:flex;flex-direction:column;gap:6px;min-width:0;flex:1}.knowledge-entry-copy strong{font-size:15px;line-height:1.55;overflow-wrap:anywhere;font-weight:650}.knowledge-entry-copy strong svg{margin-right:6px;vertical-align:middle;color:var(--warning-text)}.knowledge-entry-excerpt{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;overflow-wrap:anywhere;font-size:13px;line-height:1.7;font-weight:400;color:var(--text-muted)}.knowledge-featured-cover{width:112px;height:84px;flex-shrink:0;object-fit:cover;border-radius:4px}.knowledge-entry-meta{display:flex;flex-wrap:wrap;gap:4px 12px;font-size:12px;line-height:1.6;color:var(--text-muted);font-weight:400;overflow-wrap:anywhere}.knowledge-entry-meta>span{min-width:0}.knowledge-entry-folder{display:inline-flex;align-items:center;gap:4px}.knowledge-entry-folder svg{flex-shrink:0}.knowledge-question-state{display:flex;flex-direction:column;gap:5px;align-items:flex-end;flex-shrink:0;font-size:12px;padding-top:2px}.knowledge-question-state small{color:var(--text-muted);font-size:12px}.knowledge-resolved{color:var(--success-text);font-weight:600}.knowledge-empty{display:grid;justify-items:center;align-content:center;gap:12px;min-height:250px;padding:32px 16px;text-align:center}.knowledge-empty-icon{display:flex;color:var(--text-muted)}.knowledge-empty h4{margin:0;font-size:14px;font-weight:500;color:var(--text-muted)}.knowledge-empty .ghost-button{font-size:13px}.knowledge-pagination{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 0;font-size:12px}.knowledge-pagination>span{flex-shrink:0;white-space:nowrap}.knowledge-pagination>.action-row{width:auto;flex-wrap:nowrap;align-items:center}.knowledge-pagination>.action-row>.icon-button{flex:0 0 40px;width:40px;height:40px;padding:0}.knowledge-page-number{min-width:48px;text-align:center;color:var(--text-muted);font-variant-numeric:tabular-nums}.knowledge-detail-actions{margin:0;padding:18px 0 4px;flex-wrap:wrap;gap:10px}.knowledge-detail-actions>.action-row{flex-wrap:wrap}.knowledge-detail-actions .ghost-button{font-size:13px}.knowledge-document-heading{padding:18px 0 22px;border-bottom:1px solid var(--border);margin-bottom:24px}.knowledge-document-heading h2{max-width:1050px;font-size:24px;margin:10px 0 12px;line-height:1.55;overflow-wrap:anywhere}.knowledge-document-heading>.muted{font-size:13px}.knowledge-detail>.knowledge-markdown,.knowledge-detail>.literature-summary{max-width:1000px}.knowledge-markdown{min-width:0;line-height:1.85;overflow-wrap:anywhere}.knowledge-paragraph{margin:1em 0}.knowledge-markdown h1{font-size:24px}.knowledge-markdown h2{font-size:20px;margin:22px 0 10px}.knowledge-markdown h3{font-size:17px}.knowledge-markdown pre{overflow-x:auto;padding:14px;background:var(--surface-muted);border-radius:4px}.knowledge-markdown blockquote{margin-left:0;padding-left:18px;border-left:3px solid var(--border-strong);color:var(--text-muted)}.knowledge-markdown table{display:block;max-width:100%;overflow-x:auto}.knowledge-inline-image{display:block;max-width:100%;width:auto;max-height:650px;object-fit:contain;margin:16px 0}.knowledge-file-link{border:0;padding:0;display:inline;color:var(--primary);text-decoration:underline;background:transparent}.knowledge-literature-meta{display:grid;grid-template-columns:70px minmax(0,1fr);gap:8px 16px;margin:0 0 20px;padding-bottom:20px;border-bottom:1px solid var(--border);font-size:13px}.knowledge-literature-meta dt{color:var(--text-muted)}.knowledge-literature-meta dd{margin:0;overflow-wrap:anywhere}.knowledge-assets,.knowledge-answers{border-top:1px solid var(--border);margin-top:26px;padding-top:20px}.knowledge-answer{padding:18px 0;border-bottom:1px solid var(--border)}.knowledge-answer small{display:block;margin-top:4px}.knowledge-answer-images{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(220px,100%),1fr));gap:14px}.knowledge-answer-images figure{margin:8px 0;min-width:0}.knowledge-answer-images img{display:block;width:100%;max-height:400px;object-fit:contain}.knowledge-answer-images figcaption{font-size:12px;color:var(--text-muted);overflow-wrap:anywhere}.knowledge-editor-uploads{border-top:1px solid var(--border);margin-top:20px;padding-top:10px}.knowledge-answer-form{display:grid;gap:12px;margin-top:24px}.knowledge-answer-form textarea{min-height:130px}.knowledge-editor,.knowledge-folder-manager{width:min(850px,calc(100vw - 32px));max-height:calc(100dvh - 40px);overflow-y:auto;overscroll-behavior:contain;padding:26px;background:var(--surface-solid);border:1px solid var(--border);border-radius:6px;color:var(--text);font-size:14px;line-height:1.6}.knowledge-editor>.section-title,.knowledge-folder-manager>.section-title{padding-bottom:16px;margin-bottom:18px;border-bottom:1px solid var(--border)}.knowledge-editor>.section-title h3,.knowledge-folder-manager>.section-title h3{margin:0;font-size:18px}.knowledge-folder-manager{width:min(600px,calc(100vw - 32px))}.knowledge-edit-form{display:grid;gap:16px}.knowledge-edit-form label{display:grid;gap:7px;min-width:0;font-size:13px}.knowledge-edit-form input,.knowledge-edit-form select,.knowledge-edit-form textarea{width:100%;min-width:0}.knowledge-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.knowledge-tabs{display:flex;flex-wrap:wrap;gap:4px;border-bottom:1px solid var(--border)}.knowledge-tabs button{display:inline-flex;gap:7px;align-items:center;padding:11px 14px;border:0;border-bottom:2px solid transparent;border-radius:0;background:transparent;color:var(--text-muted);font-weight:600}.knowledge-tabs button[aria-selected=true]{border-bottom-color:var(--primary);color:var(--primary-strong)}.knowledge-mode{border:1px solid var(--border);border-radius:5px;padding:2px;gap:0}.knowledge-mode button{padding:4px 11px;border:0;border-radius:3px;font-size:12px}.knowledge-mode button[aria-selected=true]{background:var(--primary-soft)}.knowledge-editor-preview{min-height:250px;padding:16px;border:1px solid var(--border);border-radius:4px}.knowledge-editor-actions{display:flex;gap:10px;justify-content:flex-end;flex-wrap:wrap;margin-top:4px;padding-top:16px;border-top:1px solid var(--border)}.knowledge-insert-images{display:flex;flex-wrap:wrap;gap:8px}.knowledge-insert-images button{max-width:100%;overflow-wrap:anywhere}.knowledge-folder-manager>.knowledge-checkbox{margin:20px 0 8px}.knowledge-folder-list>div{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px solid var(--border)}.knowledge-folder-list span{min-width:0;overflow-wrap:anywhere}@media(max-width:1050px){.knowledge-filter-band{display:block}.knowledge-filter-band .literature-filters{margin-top:12px}.knowledge-workspace{grid-template-columns:180px minmax(0,1fr)}.knowledge-results{padding-left:18px}.knowledge-section-nav{gap:0}.knowledge-section-nav a{padding:11px 10px;font-size:13px}}@media(max-width:780px){.knowledge-workspace-heading{flex-wrap:wrap;gap:4px 12px;padding-bottom:12px}.knowledge-workspace-heading>span{padding-left:12px}.knowledge-workspace{grid-template-columns:1fr;min-height:280px}.knowledge-list-heading{align-items:flex-start;padding:18px 0 14px}.knowledge-list-heading>.action-row{width:100%;justify-content:space-between;gap:10px}.knowledge-list-heading>.action-row>.primary-button{flex:1 0 auto}.knowledge-toolbar{flex-wrap:wrap;gap:12px}.knowledge-search{flex-basis:calc(100% - 92px)}.knowledge-kind-filter{order:1;width:100%}.knowledge-directory-toggle{display:flex;align-items:center;gap:8px;padding:11px 0;border:0;border-bottom:1px solid var(--border);border-radius:0;background:transparent;color:var(--text);text-align:left}.knowledge-directory-toggle span{flex:1;min-width:0;overflow-wrap:anywhere}.knowledge-directory-toggle svg{flex-shrink:0}.knowledge-directories:not(.is-open){display:none}.knowledge-directories{border-right:0;border-bottom:1px solid var(--border);padding:0 0 10px;max-height:300px;overflow-y:auto}.knowledge-results{padding:0}.knowledge-list-caption{min-height:42px}.knowledge-list-caption>span:last-child{display:none}.knowledge-tabs button{padding:10px 8px;font-size:13px}.knowledge-entry-row{gap:10px;flex-wrap:wrap;padding:15px 0}.knowledge-entry-copy strong{font-size:14px}.knowledge-entry-meta{gap:3px 10px}.knowledge-entry-doi{flex-basis:100%}.knowledge-featured-cover{width:78px;height:64px}.knowledge-question-state{flex-direction:row;justify-content:flex-start;gap:12px;padding:0 0 0 42px;width:100%}.knowledge-entry-row.with-cover .knowledge-question-state{padding-left:88px}.knowledge-kind-mark{width:28px;height:30px}.knowledge-list-item-literature .knowledge-kind-mark{display:none}.knowledge-fields{grid-template-columns:1fr}.knowledge-detail-actions{align-items:stretch}.knowledge-detail-actions>.action-row{gap:8px}.knowledge-document-heading h2{font-size:20px}.knowledge-literature-meta{grid-template-columns:44px minmax(0,1fr);gap:8px 12px}.knowledge-answers>.section-title,.knowledge-answer>.section-title{flex-wrap:wrap;gap:10px}.knowledge-editor,.knowledge-folder-manager{padding:18px}.knowledge-editor-actions>.primary-button{flex-grow:1}}.knowledge-learning-page{min-width:0}.knowledge-learning-page a,.literature-reading-panel a{color:var(--primary-strong)}.learning-list-toolbar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px 16px;min-height:52px;font-size:12px}.learning-load-error{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px}.learning-load-error>span{min-width:0;overflow-wrap:anywhere}.learning-icon-actions{display:flex;align-items:center;flex-wrap:wrap;gap:6px}.learning-icon-actions .icon-button,.knowledge-learning-page>header>.icon-button{flex:0 0 40px;width:40px;height:40px;padding:0}.learning-header-links{display:flex;align-items:center;flex-wrap:wrap;gap:14px;font-size:13px}.learning-header-links a,.learning-external-link{display:inline-flex;align-items:center;gap:6px;text-decoration:none}.learning-header-links a:hover,.learning-external-link:hover{text-decoration:underline}.external-source-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-bottom:1px solid var(--border)}.external-source-tab{display:flex;align-items:center;min-width:0;gap:12px;padding:15px 14px;border:0;border-bottom:3px solid transparent;border-radius:0;background:transparent;color:var(--text-muted);text-align:left}.external-source-tab>svg{flex-shrink:0;color:var(--info-text)}.external-source-tab.pressure>svg{color:var(--warning-text)}.external-source-tab.em-absorption>svg{color:var(--success-text)}.external-source-tab>span{display:grid;gap:4px;min-width:0}.external-source-tab strong{color:var(--text);font-size:14px;overflow-wrap:anywhere}.external-source-tab small{font-size:12px;overflow-wrap:anywhere}.external-source-tab:hover{background:var(--surface-subtle)}.external-source-tab.active{border-bottom-color:var(--primary);background:var(--primary-soft)}.external-source-heading{display:flex;justify-content:space-between;align-items:start;flex-wrap:wrap;gap:12px 24px;padding:22px 0 12px}.external-source-heading>div{flex:1 1 300px;min-width:0}.external-source-heading h3{margin:0 0 6px;font-size:17px}.external-source-heading p{margin:0;font-size:13px;color:var(--text-muted);overflow-wrap:anywhere}.external-source-heading>small{font-size:12px;color:var(--text-muted)}.learning-source-notice{margin:8px 0 16px;color:var(--text-muted);font-size:12px;overflow-wrap:anywhere}.external-search-form{display:flex;align-items:center;gap:8px;padding:8px 0}.external-search-form>.knowledge-search{flex:1}.external-search-form>button{flex-shrink:0}.external-article-detail .knowledge-document-heading{padding-top:0}.external-article-text{padding:10px 0}.external-article-text h3{margin:0 0 10px;font-size:16px}.external-article-text p{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.85;margin:0}.learning-tags{display:flex;flex-wrap:wrap;gap:6px 12px;margin:12px 0;color:var(--text-muted);font-size:12px}.learning-tags>span{overflow-wrap:anywhere}.reading-filter-band{display:flex;align-items:end;flex-wrap:wrap;gap:12px;padding:2px 0 10px}.reading-filter-band>label{display:grid;gap:6px;width:180px;max-width:100%;font-size:12px;color:var(--text-muted)}.reading-filter-band select{width:100%;min-width:0}.reading-filter-band>button{width:40px;height:40px;padding:0;flex:0 0 40px}.literature-reading-panel{min-width:0;margin-top:26px;padding-top:20px;border-top:1px solid var(--border)}.learning-section-heading{margin:0 0 12px;flex-wrap:wrap;gap:10px}.learning-section-heading h3{margin:0;font-size:17px}.learning-empty-reading{padding:10px 0 18px}.literature-reading-list{border-top:1px solid var(--border)}.literature-reading-row{min-width:0;padding:18px 0;border-bottom:1px solid var(--border)}.reading-row-heading{display:flex;align-items:start;justify-content:space-between;gap:12px}.reading-row-title{min-width:0;flex:1}.reading-row-title>a{display:flex;align-items:start;gap:8px;text-decoration:none}.reading-row-title>a:hover{text-decoration:underline}.reading-row-title>a>svg{flex-shrink:0;margin-top:4px}.reading-row-title>a>strong{font-size:15px;overflow-wrap:anywhere}.reading-row-heading>button{flex-shrink:0;font-size:13px}.reading-row-meta{display:flex;flex-wrap:wrap;align-items:center;gap:7px 12px;margin-top:7px;color:var(--text-muted);font-size:12px}.reading-row-meta>strong{color:var(--text);font-size:13px;overflow-wrap:anywhere}.reading-row-block{margin-top:13px}.reading-row-block>span{font-size:12px;color:var(--text-muted)}.reading-row-block p,.reading-note-details p{font-size:13px;white-space:pre-wrap;overflow-wrap:anywhere;margin:6px 0;line-height:1.8}.reading-feedback{border-left:3px solid var(--border-strong);padding-left:12px}.reading-empty-note,.reading-updated{color:var(--text-muted);font-size:12px}.reading-note-details{margin:12px 0}.reading-note-details summary{cursor:pointer;font-size:13px;color:var(--primary-strong)}.reading-updated{display:block;margin-top:10px}.knowledge-learning-modal{width:min(660px,calc(100vw - 32px));max-height:calc(100dvh - 40px);overflow-y:auto;overscroll-behavior:contain;padding:24px;border:1px solid var(--border);border-radius:6px;color:var(--text);background:var(--surface-solid);font-size:14px;line-height:1.6}.knowledge-learning-modal>.section-title{margin:0 0 14px;gap:12px}.knowledge-learning-modal h3{margin:0;font-size:18px}.learning-modal-title{margin:0 0 18px;overflow-wrap:anywhere;font-weight:600}.learning-modal-title>small{display:block;margin-top:5px;color:var(--text-muted);font-weight:400}.learning-form{display:grid;gap:12px;min-width:0}.learning-form>label{display:grid;gap:7px;min-width:0;font-size:13px}.learning-form input:not([type=checkbox]),.learning-form textarea,.learning-form select{width:100%;min-width:0}.learning-form textarea{resize:vertical;min-height:110px}.learning-review-notes{padding-bottom:10px;border-bottom:1px solid var(--border)}.learning-review-notes p,.learning-latest p{margin:8px 0;white-space:pre-wrap;overflow-wrap:anywhere}.learning-review-notes p{max-height:200px;overflow-y:auto;font-size:13px}.learning-conflict{border-left:3px solid var(--warning-text);padding-left:12px}.learning-conflict p{margin:4px 0;font-size:13px}.learning-latest{padding:12px 0;border-top:1px solid var(--border);border-bottom:1px solid var(--border);font-size:13px}.learning-latest summary{cursor:pointer;font-weight:600}.reading-students{min-width:0;border:0;margin:0;padding:0}.reading-students legend{margin-bottom:8px;font-size:13px}.reading-student-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;max-height:230px;overflow-y:auto;padding:8px 0}.reading-student-checkbox{display:flex;align-items:center;gap:8px;min-width:0;font-size:13px;overflow-wrap:anywhere}.reading-student-checkbox input{width:16px;height:16px;flex:0 0 16px;accent-color:var(--primary)}@media(max-width:640px){.external-source-list{grid-template-columns:minmax(0,1fr)}.external-source-tab{padding:11px 10px;border-bottom-width:1px;border-left:3px solid transparent}.external-source-tab.active{border-left-color:var(--primary);border-bottom-color:var(--border)}.external-source-tab>span{flex:1;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px}.external-source-tab small{max-width:120px;text-align:right}.external-source-heading{padding-top:18px}.reading-filter-band>label{flex:1 1 120px;width:auto}.reading-row-heading{flex-wrap:wrap}.reading-row-heading>.reading-row-title{flex-basis:100%}.reading-row-heading>button{margin-left:auto}.knowledge-learning-modal{padding:18px}.reading-student-options{grid-template-columns:minmax(0,1fr)}.learning-form>.action-row{display:flex;flex-wrap:wrap}.learning-form>.action-row>button{min-width:0;flex:1 1 100px}.knowledge-learning-page .knowledge-pagination>.action-row,.literature-reading-panel .knowledge-pagination>.action-row{width:auto;flex-wrap:nowrap}.knowledge-learning-page .knowledge-pagination>.action-row>.icon-button,.literature-reading-panel .knowledge-pagination>.action-row>.icon-button{flex:0 0 40px;width:40px;height:40px}}.workbench{display:grid;gap:24px;min-width:0}.workbench a{color:inherit}.workbench a.primary-button{color:var(--primary-contrast);text-decoration:none}.workbench .workbench-date-row{display:flex;justify-content:flex-end;align-items:center;gap:10px;margin-top:-8px;color:var(--text-muted);font-size:12px}.workbench-goal-band{background:var(--surface-solid);padding:26px 28px 0;min-width:0}.workbench-goal-main{display:grid;grid-template-columns:minmax(0,1fr) 210px;gap:28px;align-items:center;padding-bottom:24px}.workbench-goal-content{min-width:0}.workbench-eyebrow{display:flex;align-items:center;gap:7px;color:var(--primary);font-size:12px;font-weight:600;margin:0 0 10px}.workbench-goal-heading{display:flex;flex-wrap:wrap;align-items:center;gap:12px}.workbench-goal-heading h2,.workbench-empty-goal h2,.workbench-tutor-heading{font-size:22px;line-height:1.45;margin:0;overflow-wrap:anywhere}.workbench-goal-heading h2 a{text-decoration:none}.workbench-goal-heading h2 a:hover{text-decoration:underline}.workbench-progress{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:14px;align-items:center;margin-top:18px}.workbench-progress progress,.workbench-small-progress progress{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;height:8px;border:0;border-radius:4px;background:var(--surface-muted);overflow:hidden}.workbench-progress progress::-webkit-progress-bar,.workbench-small-progress progress::-webkit-progress-bar{background:var(--surface-muted)}.workbench-progress progress::-webkit-progress-value,.workbench-small-progress progress::-webkit-progress-value{background:var(--primary);border-radius:4px}.workbench-progress progress::-moz-progress-bar,.workbench-small-progress progress::-moz-progress-bar{background:var(--primary)}.workbench-progress strong{font-size:18px;font-weight:600;font-variant-numeric:tabular-nums}.workbench-progress span{font-size:12px;color:var(--text-muted)}.workbench-goal-summary{margin:12px 0 0;color:var(--text-muted);font-size:13px;line-height:1.6;overflow-wrap:anywhere;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.workbench-today-action{display:grid;gap:10px;padding-left:24px;border-left:1px solid var(--border)}.workbench-today-action .primary-button{min-height:44px;white-space:normal;text-align:center;font-size:13px}.workbench-today-action .badge{text-align:center;justify-content:center;line-height:1.6}.workbench-text-link{display:inline-flex;align-items:center;justify-content:flex-start;gap:5px;border:0;padding:4px 0;background:transparent;color:var(--primary)!important;font-size:12px;text-decoration:none;cursor:pointer}.workbench-text-link:hover{text-decoration:underline}.workbench-text-link svg{flex-shrink:0}.workbench-today-action .workbench-text-link{justify-content:center}.workbench-empty-goal p{margin:10px 0 0;font-size:14px;color:var(--text-muted)}.workbench-context-note{margin:0 0 18px;color:var(--text-muted);font-size:13px;overflow-wrap:anywhere}.workbench-metrics{display:grid;grid-template-columns:1fr 1fr minmax(0,1.4fr);border-top:1px solid var(--border);padding:20px 0;gap:22px}.workbench-metrics>div{display:grid;grid-template-columns:23px minmax(0,1fr);gap:5px 10px;align-content:start;min-width:0}.workbench-metrics>div+div{border-left:1px solid var(--border);padding-left:22px}.workbench-metrics svg{grid-row:1 / 3;color:var(--text-muted);margin-top:3px}.workbench-metrics span{font-size:12px;color:var(--text-muted)}.workbench-metrics strong{font-size:22px;line-height:1.3;font-variant-numeric:tabular-nums}.workbench-metrics strong small{font-size:12px;font-weight:400;margin-left:7px;color:var(--text-muted)}.workbench-metrics .workbench-date-value{font-size:13px;line-height:1.7;font-weight:500;overflow-wrap:anywhere}.workbench-columns{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:24px;align-items:start}.workbench-section{min-width:0;background:var(--surface-solid);padding:22px 24px}.workbench-section .section-title{margin:0 0 14px;gap:12px;align-items:center;flex-wrap:wrap}.workbench-section .section-title h2{display:flex;align-items:center;gap:8px;font-size:18px;line-height:1.5;margin:0}.workbench-side{min-width:0;display:grid;gap:24px}.workbench-record-heading,.workbench-record-row{display:grid;grid-template-columns:90px minmax(0,1fr) 56px;gap:14px}.workbench-record-heading{padding:10px 0;border-block:1px solid var(--border);color:var(--text-muted);font-size:12px}.workbench-record-heading>:last-child{text-align:right}.workbench-record-row{text-decoration:none;padding:15px 0;border-bottom:1px solid var(--border);font-size:13px}.workbench-record-row:last-child{border-bottom:0;padding-bottom:0}.workbench-record-row>time{color:var(--text-muted);font-size:12px;font-variant-numeric:tabular-nums}.workbench-record-row strong{font-size:13px;font-weight:600;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere}.workbench-record-row p{color:var(--text-muted);font-size:12px;line-height:1.65;margin:5px 0 0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere}.workbench-record-row:hover strong,.workbench-feedback-row:hover p,.workbench-guidance-row:hover strong,.workbench-notice-row:hover strong{color:var(--primary)}.workbench-record-progress{text-align:right;font-variant-numeric:tabular-nums;color:var(--primary);font-weight:600}.workbench-reviewed{display:flex;align-items:center;gap:4px;color:var(--chart-blue);margin-top:6px;font-size:11px}.workbench-feedback-row{display:block;padding:14px 0;border-top:1px solid var(--border);text-decoration:none}.workbench-feedback-row>div,.workbench-student-progress>div:first-child{display:flex;justify-content:space-between;gap:12px;align-items:baseline}.workbench-feedback-row strong{font-size:13px;color:var(--chart-blue)}.workbench-feedback-row time,.workbench-feedback-row>span,.workbench-student-progress time{color:var(--text-muted);font-size:11px}.workbench-feedback-row p{font-size:13px;line-height:1.7;margin:8px 0;white-space:pre-wrap;overflow-wrap:anywhere;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.workbench-feedback-row>span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.workbench-empty{display:flex;align-items:center;justify-content:flex-start;gap:10px;padding:24px 0;color:var(--text-muted);font-size:13px}.workbench-empty p{margin:0}.workbench-notice-row{display:grid;grid-template-columns:30px minmax(0,1fr) auto;gap:9px;padding:12px 0;border-top:1px solid var(--border);text-decoration:none;font-size:12px;align-items:start}.workbench-notice-kind{color:var(--warning-text);font-size:11px}.workbench-notice-row strong{font-size:12px;font-weight:500;overflow-wrap:anywhere}.workbench-notice-row time{color:var(--text-muted);font-size:11px}.workbench-resource-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));padding-top:4px}.workbench-resource-links>a{display:flex;align-items:center;gap:12px;text-decoration:none;padding:10px 20px;font-size:14px}.workbench-resource-links>a:first-child{padding-left:0}.workbench-resource-links>a+a{border-left:1px solid var(--border)}.workbench-resource-links>a>svg:first-child{color:var(--primary)}.workbench-resource-links>a>svg:last-child{margin-left:auto;color:var(--text-muted)}.workbench-resource-links>a:hover{color:var(--primary)}.workbench-guidance-row{display:grid;grid-template-columns:34px minmax(0,1fr) auto 16px;gap:12px;align-items:center;padding:15px 0;border-top:1px solid var(--border);text-decoration:none}.workbench-member-avatar{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:var(--primary-soft);color:var(--primary);font-size:14px}.workbench-guidance-row strong{font-size:13px}.workbench-guidance-row p{font-size:13px;margin:4px 0;overflow-wrap:anywhere}.workbench-guidance-row time{font-size:11px;color:var(--text-muted)}.workbench-student-progress{display:block;border-top:1px solid var(--border);padding:14px 0;text-decoration:none;font-size:13px}.workbench-student-progress p{margin:7px 0;overflow-wrap:anywhere;font-size:12px;color:var(--text-muted)}.workbench-small-progress{display:flex;align-items:center;gap:10px;font-size:12px;color:var(--primary)}.workbench-small-progress progress{height:5px}.laboratory-overview-columns{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:24px;align-items:start}.laboratory-overview .lab-metrics{background:var(--surface-solid);border:0;padding:20px 16px}.laboratory-overview .home-featured-grid{grid-template-columns:minmax(0,1fr)}.laboratory-overview .home-featured-entry{display:grid;grid-template-columns:106px minmax(0,1fr);border:0;border-radius:0;border-bottom:1px solid var(--border);align-items:start;padding:14px 0}.laboratory-overview .home-featured-entry>div{padding:0;min-width:0}.laboratory-overview .home-featured-entry:not(:has(.home-featured-image)){grid-template-columns:minmax(0,1fr)}.laboratory-overview .home-featured-image{width:90px;height:82px;border-radius:4px}.laboratory-overview .home-featured-entry h3,.laboratory-overview .home-notice h3{font-size:15px}.laboratory-overview .home-excerpt{font-size:13px}@media(max-width:1180px){.workbench-columns,.laboratory-overview-columns{grid-template-columns:minmax(0,1fr)}.workbench-side{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}}@media(max-width:720px){.workbench{gap:18px}.workbench-goal-band{padding:20px 18px 0}.workbench-goal-main{grid-template-columns:minmax(0,1fr);gap:20px}.workbench-today-action{padding:0;border-left:0;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center}.workbench-today-action .workbench-text-link{grid-column:1 / -1;justify-content:flex-start}.workbench-goal-heading h2,.workbench-empty-goal h2,.workbench-tutor-heading{font-size:20px}.workbench-metrics{gap:12px;grid-template-columns:repeat(2,minmax(0,1fr))}.workbench-metrics>div+div{padding-left:12px}.workbench-metrics>div:last-child{grid-column:1 / -1;padding:10px 0 0;border-left:0;border-top:1px solid var(--border)}.workbench-metrics .workbench-date-value{font-size:13px}.workbench-side{grid-template-columns:minmax(0,1fr);gap:18px}.workbench-section{padding:18px}.workbench-record-heading,.workbench-record-row{grid-template-columns:76px minmax(0,1fr) 42px;gap:10px}.workbench-record-heading{font-size:11px}.workbench-record-row>time{font-size:11px}.workbench-record-progress{font-size:12px}.workbench-resource-links{grid-template-columns:minmax(0,1fr)}.workbench-resource-links>a,.workbench-resource-links>a:first-child{padding:14px 0}.workbench-resource-links>a+a{border-left:0;border-top:1px solid var(--border)}.workbench-guidance-row{grid-template-columns:30px minmax(0,1fr) auto;gap:9px}.workbench-guidance-row>svg{display:none}.workbench-member-avatar{width:30px;height:30px}.workbench-progress{gap:10px}.workbench-progress span{font-size:11px}}
