:root{--surface:#fff;--muted:#64748b;--border:#e3e8ef;--text:#263b53;--selected:#edf4fc;--primary:#2563a6;--track:#dce4ed;--scroll-thumb:#a8b8c9;--scroll-thumb-hover:#768da6;--rc-virtual-list-scrollbar-bg:var(--scroll-thumb)}:root[data-theme=dark]{--surface:#182230;--muted:#9bacbf;--border:#334254;--text:#dce6f2;--selected:#203c59;--primary:#83b7f0;--track:#334254;--scroll-thumb:#52677f;--scroll-thumb-hover:#839ab4}*{box-sizing:border-box;scrollbar-width:thin!important;scrollbar-color:var(--scroll-thumb) transparent!important}@supports selector(::-webkit-scrollbar){*{scrollbar-width:auto!important;scrollbar-color:auto!important}::-webkit-scrollbar{width:10px!important;height:10px!important}::-webkit-scrollbar-track{background:0 0!important}::-webkit-scrollbar-corner{background:0 0!important}::-webkit-scrollbar-thumb{background:var(--scroll-thumb)!important;background-clip:padding-box!important;border:2px solid #0000!important;border-radius:999px!important;min-width:32px!important;min-height:32px!important}::-webkit-scrollbar-thumb:hover{background-color:var(--scroll-thumb-hover)!important}::-webkit-scrollbar-thumb:active{background-color:var(--scroll-thumb-hover)!important}::-webkit-scrollbar-button{width:0!important;height:0!important;display:none!important}}html,body{min-width:320px;min-height:100%;margin:0}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Microsoft YaHei,sans-serif}button,input,textarea{font:inherit}.page-content{padding:32px clamp(16px,4vw,64px) 24px}.ant-layout-header{height:64px;padding-inline:clamp(16px,4vw,64px)}.ant-layout-header .ant-flex>span:first-child{white-space:nowrap;align-items:center;gap:12px;display:flex}.ant-layout-header .ant-flex>span:last-child{opacity:.65;font-size:14px}.ant-layout-footer{color:var(--muted);padding:20px clamp(16px,4vw,64px);font-size:12px}.workspace{max-width:1500px;margin:auto}.workspace-heading{justify-content:space-between;align-items:center;gap:16px;margin-bottom:24px;display:flex}.eyebrow{color:var(--muted);margin-bottom:4px;font-size:13px}h1{letter-spacing:-.5px;margin:0;font-size:28px;font-weight:650}h2{margin:0;font-size:16px}h2 span{color:var(--muted);margin-left:6px;font-weight:400}h3{margin:0;font-size:16px}.class-bar{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:24px;display:flex}.class-bar>.ant-select{min-width:170px}.class-bar>.ant-input{width:170px}.save-status{color:#54705e;margin-left:auto;font-size:13px}.course-panel{border-color:var(--border)}.course-grid{grid-template-columns:1fr 1fr;gap:20px 28px;display:grid}label,.field{color:var(--text);flex-direction:column;gap:8px;font-size:14px;display:flex}.course-grid .ant-picker{width:100%}.lesson-progress{flex-wrap:wrap;align-items:center;gap:16px;padding:22px 0;display:flex}.lesson-progress>span{color:var(--muted);font-size:14px}.lesson-progress strong{font-size:20px}.lesson-progress strong span{color:var(--muted);font-size:14px;font-weight:400}.progress-track{background:var(--track);border-radius:8px;width:140px;height:5px;overflow:hidden}.progress-track i{background:#3974b9;height:100%;transition:width .2s;display:block}.workbench{grid-template-columns:224px minmax(0,1fr);align-items:start;gap:24px;display:grid}.roster-panel{border:1px solid var(--border);background:var(--surface);border-radius:8px;flex-direction:column;gap:12px;padding:16px;display:flex;position:sticky;top:16px}.roster-items{max-height:55vh;margin:0 -8px;overflow-y:auto}.roster-item{border-left:3px solid #0000;border-radius:6px;align-items:center;gap:10px;padding:8px;display:flex}.roster-item.selected{background:var(--selected);border-left-color:var(--primary)}.roster-item button{text-align:left;cursor:pointer;min-width:0;color:var(--text);background:0 0;border:0;flex-direction:column;flex:1;align-items:start;gap:3px;padding:0;display:flex}.roster-item small{color:var(--muted);font-size:12px}.roster-item button span{word-break:break-word}.editor-area{min-width:0}.student-editor{border-color:var(--border)}.editor-columns{grid-template-columns:minmax(0,.85fr) minmax(0,1fr);gap:28px;display:grid}.observation-panel{border-right:1px solid var(--border);padding-right:24px}.student-preferences{margin-bottom:20px}.observation-field{margin-bottom:16px}.quick-options{margin-top:-4px}.quick-options .ant-btn{white-space:normal;height:auto;color:var(--muted);padding:2px 5px;font-size:12px}.feedback-panel{flex-direction:column;gap:16px;display:flex}.feedback-panel textarea,.export-preview{font-size:16px;line-height:1.8}.review-actions{margin-top:4px}.stream-preview{white-space:pre-wrap;border:1px solid var(--track);border-radius:6px;min-height:300px;padding:12px;font-size:16px;line-height:1.8}.generated-details{white-space:pre-wrap;max-height:300px;overflow-y:auto}.action-bar{z-index:5;background:var(--surface);border:1px solid var(--border);border-radius:8px;justify-content:space-between;align-items:center;gap:12px;margin-top:24px;padding:16px;display:flex;position:sticky;bottom:0;box-shadow:0 -3px 12px #22375008}.action-bar>span{color:var(--muted);font-size:13px}.welcome-panel{border:1px dashed var(--border);background:var(--surface);border-radius:8px;padding:64px 24px}.manage-students{flex-direction:column;gap:8px;max-height:40vh;margin-bottom:24px;display:flex;overflow:auto}.add-students,.export-preview{margin-top:16px}.settings-fields{flex-direction:column;gap:16px;display:flex}.settings-fields details>*{margin-top:12px}.settings-fields summary{cursor:pointer;color:var(--primary)}.backup-upload input{width:100%}:focus-visible{outline:2px solid var(--primary);outline-offset:3px}@media (width<=1100px){.editor-columns{grid-template-columns:1fr}.observation-panel{border-right:0;padding-right:0}.action-bar>span{display:none}}@media (width<=700px){.page-content{padding-top:20px}h1{font-size:23px}.workspace-heading{align-items:start}.workspace-heading .ant-btn{padding-inline:8px}.ant-layout-header{font-size:18px!important}.course-grid,.workbench{grid-template-columns:1fr;gap:16px}.course-panel .ant-card-head{align-items:start}.ant-card-head,.ant-card-body{padding-inline:16px!important}.course-panel .ant-card-extra .ant-select{max-width:150px}.roster-panel{position:static}.roster-items{grid-template-columns:1fr 1fr;max-height:180px;display:grid}.class-bar>.ant-select,.class-bar>.ant-input{flex:1;min-width:130px}.save-status{width:100%;margin:4px 0 0}.action-bar{padding:12px}.action-bar .ant-flex{grid-template-columns:1fr 1fr;width:100%;display:grid}.lesson-progress{gap:10px}.progress-track{flex:1;min-width:60px}.student-editor .ant-card-head-title{white-space:normal}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}}.time-fields{flex-wrap:wrap;gap:8px;display:flex}.time-fields label{flex:1;gap:4px;min-width:160px;font-size:12px}.time-fields input{width:100%;min-width:0}.archive-list{flex-direction:column;gap:20px;display:flex}.archive-list small{color:var(--muted);margin-top:4px;display:block}:root[data-theme=dark] .save-status{color:#9fc8ae}.course-time-picker,.time-presets{flex-direction:column;gap:10px;display:flex}.time-presets{max-width:min(380px,80vw)}.view-toolbar{flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:16px;display:flex}.view-toolbar>span{color:var(--muted);font-size:13px}.compact-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:16px;display:grid}.compact-editor .editor-columns{grid-template-columns:1fr;gap:12px}.compact-editor .observation-panel{border:0;padding:0}.compact-editor .student-preferences{margin-bottom:8px}.compact-editor .observation-field{margin-bottom:6px}.compact-editor .feedback-panel{gap:8px}.compact-editor .feedback-panel textarea{font-size:14px;line-height:1.6}.compact-editor .stream-preview{min-height:100px}.observation-label{color:var(--text);justify-content:space-between;align-items:center;gap:8px;display:flex}.observation-autocomplete{width:100%}.suggestion-text{white-space:normal;overflow-wrap:anywhere;line-height:1.6;display:block}@media (width<=1100px){.compact-grid{grid-template-columns:1fr}}@media (width<=700px){.workspace-heading{flex-wrap:wrap}.ant-picker-dropdown .ant-picker-panels{flex-direction:column}.ant-picker-dropdown{max-width:100vw}}.compact-editor .observation-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 10px;display:grid}.compact-editor .brief-field{grid-column:1/-1}.compact-editor .observation-label .ant-btn{padding-inline:2px;font-size:12px}@media (width<=700px){.compact-editor .observation-fields{grid-template-columns:1fr}.course-time-popup{max-width:calc(100vw - 16px);top:12vh!important;bottom:auto!important;position:fixed!important;inset-inline-start:8px!important}.course-time-popup .ant-picker-panel-container{max-height:65vh;overflow:auto}.course-time-popup .ant-picker-datetime-panel{flex-direction:column}.course-time-popup .ant-picker-time-panel{border-inline-start:0;border-top:1px solid var(--border);width:100%}.course-time-popup .ant-picker-time-panel-column{height:120px}.course-time-popup .ant-picker-time-panel-cell-inner{text-align:center;padding:0}}.icon-action{min-width:32px;min-height:32px}@media (width<=700px){.icon-action{min-width:36px;min-height:36px}}.student-card-anchor{border-radius:8px;scroll-margin-top:20px}.student-card-anchor:focus-visible{outline:2px solid var(--primary);outline-offset:4px}.time-shortcuts .ant-btn{height:28px;box-shadow:none;border:0;padding-inline:10px}.time-picker-footer{padding:10px 0;line-height:normal}.course-time-popup .ant-picker-footer-extra{padding-inline:12px}.stop-playback-icon{background:currentColor;border-radius:1px;width:11px;height:11px;display:inline-block}
