.ant-modal-root:has(>.ant-modal-wrap.app-modal)>.ant-modal-mask{background:var(--class-mask-glass, rgba(12, 34, 45, .34));backdrop-filter:blur(10px) saturate(140%);-webkit-backdrop-filter:blur(10px) saturate(140%)}.ant-modal-wrap.app-modal{padding:16px;overflow:auto;text-align:left}.ant-modal-wrap.app-modal:before{display:none;content:none}.ant-modal-wrap.app-modal .ant-modal{max-width:calc(100vw - 32px);padding-bottom:0}.ant-modal-wrap.app-modal--panel .ant-modal{top:0;margin:0 0 0 auto}.ant-modal-wrap.app-modal--center{display:flex;align-items:center;justify-content:center}.ant-modal-wrap.app-modal--center .ant-modal{top:0;margin:0}.ant-modal-wrap.app-modal .ant-modal-content{display:flex;max-height:calc(100dvh - 32px);flex-direction:column;overflow:hidden;background:#fffffff5;border:1px solid rgba(255,255,255,.76);border-radius:var(--class-radius, 14px);box-shadow:0 20px 60px #0c222d38;backdrop-filter:blur(18px) saturate(125%);-webkit-backdrop-filter:blur(18px) saturate(125%)}.ant-modal-wrap.app-modal .ant-modal-header,.ant-modal-wrap.app-modal .ant-modal-footer{flex:0 0 auto}.ant-modal-wrap.app-modal .ant-modal-body{min-height:0;overflow-y:auto}.ant-modal-wrap.app-modal .ant-modal-title{color:var(--class-ink, #183749);font-weight:700;overflow-wrap:anywhere}.ant-modal-wrap.app-modal .ant-modal-close,.ant-modal-wrap.app-modal .ant-btn{min-width:44px;min-height:44px}.ant-modal-wrap.app-modal.notice-file-preview-dialog .ant-modal{width:min(960px,calc(100vw - 32px));max-width:min(960px,calc(100vw - 32px))}.ant-modal-wrap.app-modal.notice-file-preview-dialog .ant-modal-content{display:flex;max-height:calc(100dvh - 32px);flex-direction:column;background:#eef4f6;backdrop-filter:none;-webkit-backdrop-filter:none}.ant-modal-wrap.app-modal.notice-file-preview-dialog .ant-modal-header,.ant-modal-wrap.app-modal.notice-file-preview-dialog .ant-modal-footer{flex:0 0 auto}.ant-modal-wrap.app-modal.notice-file-preview-dialog .ant-modal-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ant-modal-wrap.app-modal.notice-file-preview-dialog .ant-modal-body{display:flex;min-height:min(68dvh,36rem);flex:1 1 auto;flex-direction:column;overflow:hidden;padding:.4rem .55rem .55rem}.ant-modal-wrap.app-modal.notice-file-preview-dialog .ant-modal-footer{margin:0;padding:.65rem 1rem .85rem;border-top:1px solid rgba(228,238,241,.72)}@media(max-width:760px){.ant-modal-wrap.app-modal{padding:8px}.ant-modal-wrap.app-modal .ant-modal,.ant-modal-wrap.app-modal.notice-file-preview-dialog .ant-modal{width:calc(100vw - 16px);max-width:calc(100vw - 16px)}.ant-modal-wrap.app-modal .ant-modal-content,.ant-modal-wrap.app-modal.notice-file-preview-dialog .ant-modal-content{max-height:calc(100dvh - 16px)}}@media(max-width:430px){.ant-modal-wrap.app-modal{padding:0}.ant-modal-wrap.app-modal .ant-modal,.ant-modal-wrap.app-modal.notice-file-preview-dialog .ant-modal{width:100vw;max-width:100vw}.ant-modal-wrap.app-modal .ant-modal-content,.ant-modal-wrap.app-modal.notice-file-preview-dialog .ant-modal-content{max-height:100dvh;border-radius:0}}@media(prefers-reduced-transparency:reduce){.ant-modal-root:has(>.ant-modal-wrap.app-modal)>.ant-modal-mask,.ant-modal-wrap.app-modal .ant-modal-content{backdrop-filter:none;-webkit-backdrop-filter:none}.ant-modal-wrap.app-modal .ant-modal-content{background:#fff}}:root{font-family:Inter,PingFang SC,Microsoft YaHei,system-ui,sans-serif;color:#0b2c4b;background:#eef7fb;font-synthesis:none;--ink: #0b2c4b;--muted: #668299;--line: #cfe1eb;--line-strong: #b8d4e2;--surface: #ffffff;--surface-soft: #f6fafc;--page: #eef7fb;--brand: #119fbe;--brand-dark: #087c9a;--brand-soft: #e0f4f8;--indigo: #5368e9;--indigo-soft: #edf0ff;--nav: #15212d;--gold: #dc9824;--danger: #d95c58;--success: #2b9b78}*{box-sizing:border-box}html,body,#app{min-width:320px;min-height:100%;margin:0}body{min-height:100vh;background:var(--page)}button,input,textarea,select{font:inherit}button{letter-spacing:0}.workspace-shell{min-height:100vh;background:var(--page)}.workspace-main{min-width:0;background:var(--page)}.workspace-content{width:100%;max-width:1740px;margin:0 auto;padding:28px 36px 48px}.portal-header{position:sticky;z-index:40;top:0;height:76px;background:#fffffffa;border-bottom:1px solid var(--line)}.portal-header-inner{display:flex;width:100%;max-width:1800px;height:100%;margin:0 auto;padding:0 32px;align-items:stretch;gap:24px}.portal-header-leading{display:flex;flex:0 0 auto;align-items:center}.portal-brand,.brand-lockup{display:flex;align-items:center;gap:11px;color:var(--ink);background:transparent;border:0;cursor:pointer;text-align:left}.portal-brand{min-width:188px;min-height:44px;padding:0}.brand-symbol{display:grid;flex:0 0 40px;width:40px;height:40px;place-items:center;color:#fff;background:var(--brand);border:1px solid var(--brand-dark);border-radius:7px;font-size:22px}.portal-brand-copy,.brand-copy{display:flex;min-width:0;flex-direction:column}.portal-brand-copy strong{color:var(--ink);font-size:18px;font-weight:760;line-height:22px}.portal-brand-copy small{margin-top:1px;color:var(--muted);font-size:10px;line-height:14px}.portal-navigation{display:flex;min-width:0;flex:1 1 auto;align-items:stretch}.portal-navigation>button{position:relative;display:flex;min-width:72px;height:100%;padding:0 15px;align-items:center;justify-content:center;gap:7px;color:#4d6c83;background:transparent;border:0;cursor:pointer;font-size:14px;white-space:nowrap}.portal-navigation>button:after{content:"";position:absolute;right:15px;bottom:-1px;left:15px;height:3px;background:transparent}.portal-navigation>button:hover{color:var(--brand-dark);background:#f6fbfd}.portal-navigation>button.active{color:var(--brand-dark);font-weight:650}.portal-navigation>button.active:after{background:var(--brand)}.portal-navigation .anticon{font-size:16px}.portal-more .anticon-down{margin-left:-3px;font-size:9px}.portal-actions,.header-actions,.header-leading,.user-trigger{display:flex;align-items:center}.portal-actions{flex:0 0 auto;gap:10px}.header-icon-button{width:44px;height:44px;color:#44657d;border:1px solid transparent}.header-icon-button:hover{color:var(--brand-dark)!important;background:var(--brand-soft)!important}.organization-select{width:210px}.user-trigger{width:158px;height:46px;padding:5px 7px;gap:9px;color:var(--ink);line-height:normal;text-align:left;background:transparent;border:1px solid transparent;border-radius:6px;cursor:pointer}.user-trigger:hover{background:#f1f8fb;border-color:var(--line)}.user-trigger:focus-visible{border-color:var(--brand);outline:2px solid rgba(17,159,190,.16);outline-offset:1px}.user-trigger .ant-avatar{flex:0 0 auto;color:#fff;background:var(--indigo)}.user-trigger>.anticon-down{flex:0 0 auto;margin-left:auto;color:#7c94a6;font-size:10px}.user-copy{display:flex;min-width:0;flex-direction:column;align-items:flex-start}.user-copy strong{width:100%;overflow:hidden;font-size:13px;font-weight:650;line-height:18px;text-overflow:ellipsis;white-space:nowrap}.user-copy small{color:var(--muted);font-size:10px;line-height:14px;white-space:nowrap}.workspace-sider{position:sticky!important;top:0;height:100vh;background:var(--nav)!important;border-right:1px solid #243342}.brand-lockup{width:100%;height:72px;padding:0 18px;color:#fff}.brand-lockup .brand-symbol{color:var(--brand-dark);background:#e3f7fa;border-color:#b8e0e8}.brand-copy strong{color:#fff;font-size:15px;line-height:20px;white-space:nowrap}.brand-copy small{margin-top:2px;color:#93a4b5;font-size:11px}.workspace-menu{margin-top:10px;padding:0 8px;color:#b8c4cf;background:transparent!important;border-inline-end:0!important}.workspace-menu .ant-menu-item{height:42px;margin:4px 0;color:#b8c4cf;border-radius:6px}.workspace-menu .ant-menu-item:hover{color:#fff!important;background:#203240!important}.workspace-menu .ant-menu-item-selected{color:#fff!important;background:var(--brand-dark)!important}.sider-context{position:absolute;right:18px;bottom:54px;left:18px;display:flex;min-width:0;align-items:center;gap:8px;color:#aab7c3;font-size:12px}.sider-context span:last-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.status-dot{flex:0 0 7px;width:7px;height:7px;background:#41c997;border-radius:50%;box-shadow:0 0 0 3px #41c99724}.workspace-shell .workspace-header{position:sticky;z-index:20;top:0;display:flex;height:64px;padding:0 24px;align-items:center;justify-content:space-between;background:#fffffffa;border-bottom:1px solid var(--line)}.header-leading{min-width:0;gap:10px}.header-leading>div{line-height:normal}.page-title{color:var(--ink);font-size:16px;font-weight:700;line-height:20px}.page-context{margin-top:1px;color:var(--muted);font-size:11px;line-height:16px}.header-actions{height:100%;gap:10px;line-height:normal}.global-search{width:280px;border-color:transparent;background:#f2f7f9}.mobile-menu-button{display:none;min-width:44px;height:44px}.mobile-bottom-nav{display:none}.content-header{display:flex;min-height:54px;margin-bottom:22px;align-items:flex-start;justify-content:space-between;gap:20px}.content-header h1{margin:0;color:var(--ink);font-size:25px;font-weight:720;line-height:33px;letter-spacing:0}.content-header p{margin:4px 0 0;color:var(--muted);font-size:13px}.content-header-actions{display:flex;align-items:center;gap:8px}.learning-overview{position:relative;display:grid;min-height:260px;margin-bottom:24px;padding:40px 44px;grid-template-columns:minmax(0,1.7fr) minmax(280px,.65fr);align-items:center;gap:48px;background:radial-gradient(ellipse at 92% 8%,rgba(17,159,190,.16),transparent 42%),radial-gradient(ellipse at 5% 85%,rgba(108,92,231,.08),transparent 38%),linear-gradient(145deg,#fafdfe,#f3f9fc,#eef6fa 70%,#f5f9fb);border:1px solid rgba(255,255,255,.7);border-radius:24px;box-shadow:0 8px 32px #1d4b6014,0 2px 8px #1d4b600a;overflow:hidden}.learning-overview:after{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(255,255,255,.4) 0%,transparent 50%);pointer-events:none}.learning-overview-copy{max-width:720px;position:relative;z-index:1}.section-kicker{display:inline-flex;align-items:center;gap:6px;padding:5px 14px;color:#0d8da7;background:#119fbe1a;border:1px solid rgba(17,159,190,.18);border-radius:999px;font-size:12px;font-weight:720;letter-spacing:.02em}.learning-overview h2{margin:14px 0 12px;color:#0b2c4b;font-size:32px;line-height:42px;font-weight:760;letter-spacing:-.02em}.learning-overview-copy p{max-width:620px;margin:0;color:#5a7a8c;font-size:15px;line-height:26px}.overview-actions{display:flex;margin-top:26px;gap:12px;position:relative;z-index:1}.overview-actions .ant-btn{border-radius:12px;font-weight:640;height:42px;padding:0 22px;font-size:14px;transition:all .25s cubic-bezier(.22,.61,.36,1)}.overview-actions .ant-btn-primary{color:#fff;background:linear-gradient(135deg,#119fbe,#0b7d96);border:none;box-shadow:0 4px 16px #119fbe47}.overview-actions .ant-btn-primary:hover{box-shadow:0 6px 24px #119fbe61;transform:translateY(-2px)}.overview-actions .ant-btn:not(.ant-btn-primary){color:#0d8da7;border-color:#119fbe40;background:#fff9;backdrop-filter:blur(8px)}.overview-actions .ant-btn:not(.ant-btn-primary):hover{border-color:#119fbe73;background:#119fbe14;transform:translateY(-1px)}.overview-status{position:relative;z-index:1;padding:28px;background:#ffffff8c;backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.65);border-radius:18px;box-shadow:0 4px 20px #1d4b600f}.overview-status-icon{display:grid;width:50px;height:50px;margin-bottom:18px;place-items:center;color:#fff;background:linear-gradient(135deg,#5368e9,#6c5ce7,#8b7cf6);border-radius:14px;font-size:24px;box-shadow:0 4px 16px #5368e93d}.overview-status small{display:block;color:#6b8899;font-size:12px;font-weight:550}.overview-status strong{display:block;margin-top:4px;color:#0b2c4b;font-size:30px;line-height:38px;font-weight:750}.status-track{height:6px;margin-top:16px;overflow:hidden;background:#e2eef3;border-radius:4px}.status-track span{display:block;height:100%;background:linear-gradient(90deg,#5368e9,#7c6ff7);border-radius:4px;box-shadow:0 0 8px #5368e94d}.overview-status p{margin:12px 0 0;color:#6b8899;font-size:12px}.metric-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.metric-item{display:flex;min-width:0;min-height:116px;padding:24px 20px;align-items:center;gap:16px;background:#ffffffa6;backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.6);border-radius:18px;box-shadow:0 3px 14px #1d4b600d;transition:transform .28s cubic-bezier(.22,.61,.36,1),box-shadow .28s ease,border-color .2s}.metric-item:hover{transform:translateY(-3px);box-shadow:0 8px 24px #1d4b601a;border-color:#119fbe2e}.metric-icon{display:grid;flex:0 0 48px;width:48px;height:48px;place-items:center;border-radius:14px;font-size:22px}.metric-item:nth-child(1) .metric-icon{color:#fff;background:linear-gradient(135deg,#119fbe,#0d8da7);box-shadow:0 4px 14px #119fbe47}.metric-item:nth-child(2) .metric-icon{color:#fff;background:linear-gradient(135deg,#5368e9,#6c5ce7);box-shadow:0 4px 14px #5368e947}.metric-item:nth-child(3) .metric-icon{color:#fff;background:linear-gradient(135deg,#e8a740,#d4922a);box-shadow:0 4px 14px #d4922a47}.metric-item:nth-child(4) .metric-icon{color:#fff;background:linear-gradient(135deg,#16b57f,#0e9d6a);box-shadow:0 4px 14px #0e9d6a47}.metric-item div{display:flex;min-width:0;flex-direction:column}.metric-item small{color:#6b8899;font-size:12px;font-weight:550}.metric-item strong{margin-top:2px;color:#0b2c4b;font-size:28px;line-height:34px;font-weight:750;letter-spacing:-.02em}.dashboard-grid{display:grid;margin-top:24px;grid-template-columns:minmax(0,2fr) minmax(300px,.72fr);gap:24px}.panel{min-width:0;background:#fff9;backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.55);border-radius:20px;box-shadow:0 4px 20px #1d4b600f;overflow:hidden}.panel-heading{display:flex;min-height:68px;padding:16px 22px;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(0,0,0,.06)}.panel-heading h2{margin:0;color:#0b2c4b;font-size:16px;line-height:24px;font-weight:700;letter-spacing:-.01em}.panel-heading span{color:#6b8899;font-size:11px}.panel-heading .ant-btn-link{color:#0d8da7;font-weight:580}.focus-panel{min-height:340px;padding-bottom:26px;overflow:hidden;background:radial-gradient(ellipse at 50% 0%,rgba(108,92,231,.06),transparent 55%),linear-gradient(170deg,#fafcfe,#f4f8fc)}.focus-panel>strong,.focus-panel>p,.focus-panel>.ant-btn{margin-right:26px;margin-left:26px}.focus-panel>strong{display:block;margin-top:22px;color:#0b2c4b;font-size:19px;font-weight:740;letter-spacing:-.01em}.focus-panel>p{min-height:48px;color:#5a7a8c;line-height:24px;font-size:14px}.focus-visual{display:grid;height:100px;margin:22px 26px 0;place-items:center;color:#fff;background:linear-gradient(135deg,#5368e9,#6c5ce7,#8b7cf6);border-radius:16px;font-size:38px;box-shadow:0 6px 24px #5368e938,inset 0 1px #ffffff40}.focus-panel .ant-btn{border-radius:12px;font-weight:640;height:42px;font-size:14px;padding:0 20px;color:#5368e9;border-color:#5368e940;background:#fff9;transition:all .25s cubic-bezier(.22,.61,.36,1)}.focus-panel .ant-btn:hover{border-color:#5368e9;background:#5368e914;transform:translateY(-2px);box-shadow:0 4px 14px #5368e91f}.table-panel{overflow:hidden}.table-toolbar{display:flex;min-height:64px;padding:13px 16px;align-items:center;justify-content:space-between;gap:12px;background:#fff;border-bottom:1px solid var(--line)}.filter-toolbar-actions{display:inline-flex;align-items:center;gap:8px}.filter-toolbar-action-wrap{display:inline-flex}.filter-toolbar-actions .ant-btn{display:inline-flex;align-items:center;justify-content:center;width:32px;min-width:32px;height:32px;padding:0;overflow:hidden}.filter-toolbar-actions .ant-btn .anticon{margin:0}@media(max-width:620px){.filter-toolbar-actions .ant-btn{width:44px;min-width:44px;height:44px}}.table-search{width:min(360px,100%)}.table-panel .ant-table-wrapper{padding:0 1px 1px}.table-panel .ant-table-thead>tr>th{color:#49677d;background:#f3f8fb;border-bottom-color:var(--line);font-size:12px}.table-panel .ant-table-tbody>tr>td{border-bottom-color:#e7f0f4}.table-panel .ant-table-tbody>tr:hover>td{background:#f3fafc!important}.table-panel .ant-table-cell{white-space:nowrap}.score-text{color:var(--indigo);font-size:19px}.score-total{color:var(--muted)}.class-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.class-card{padding:20px;background:var(--surface);border:1px solid var(--line);border-top:3px solid var(--brand);border-radius:8px}.class-card:hover{border-color:#99cbd8;box-shadow:0 8px 20px #1c577012}.class-card-top{display:flex;align-items:center;justify-content:space-between}.course-mark{display:grid;width:40px;height:40px;place-items:center;color:var(--brand-dark);background:var(--brand-soft);border:1px solid #c5e8ef;border-radius:7px;font-size:18px}.class-card h2{margin:18px 0 3px;color:var(--ink);font-size:17px}.class-card>p{margin:0;color:var(--muted);font-size:13px}.class-card dl,.profile-card dl{margin:18px 0}.class-card dl div,.profile-card dl div{display:flex;padding:8px 0;justify-content:space-between;border-bottom:1px solid #e7f0f4}.class-card dt,.profile-card dt{color:var(--muted);font-size:12px}.class-card dd,.profile-card dd{margin:0;color:var(--ink);font-size:12px;font-weight:600}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.course-create-dialog-wrap .ant-modal-content{overflow:hidden;border:1px solid #d5e5eb;border-radius:14px;box-shadow:0 20px 60px #102b3a33}.course-create-assets-field{margin-bottom:2px;padding-top:4px;border-top:1px solid var(--line)}.course-create-assets-field>.ant-form-item-label{padding-top:14px}.course-create-assets-alert{margin-bottom:10px}.course-create-upload{display:grid;width:100%;min-height:72px;margin:0;padding:14px;align-items:center;grid-template-columns:42px minmax(0,1fr) auto;gap:12px;color:inherit;text-align:left;font:inherit;background:#f4fafb;border:1px dashed #a9d4dd;border-radius:10px;cursor:pointer}.course-create-upload:hover:not(:disabled){background:#eef7f9;border-color:#8ec7d2}.course-create-upload:focus-visible{outline:2px solid var(--brand);outline-offset:2px}.course-create-upload:disabled{cursor:not-allowed;opacity:.7}.course-create-upload-icon{display:grid;width:42px;height:42px;place-items:center;color:var(--brand-dark);background:#ddf2f5;border-radius:10px;font-size:19px}.course-create-upload-copy{display:flex;min-width:0;flex-direction:column;gap:2px}.course-create-upload-copy strong{color:var(--ink);font-size:12px}.course-create-upload-copy span{color:#587587;font-size:11px}.course-create-upload-copy small{color:var(--muted);font-size:10px;line-height:16px}.course-create-upload-action{display:inline-flex;min-width:44px;min-height:44px;padding:0 12px;align-items:center;justify-content:center;color:var(--ink);background:#fff;border:1px solid #9ccbd5;border-radius:8px;font-size:13px;line-height:1}.course-create-upload-hint{margin:8px 0 0;color:#587587;font-size:11px;line-height:16px}.course-create-file-list{display:grid;margin:9px 0 0;padding:0;gap:6px;list-style:none}.course-create-file-item{display:grid;min-height:48px;padding:7px 9px;align-items:center;grid-template-columns:22px minmax(120px,1fr) 44px;gap:8px;background:#fbfdfe;border:1px solid #dce9ee;border-radius:8px}.course-create-file-item>.anticon{color:var(--brand-dark)}.course-create-file-item>div{display:flex;min-width:0;flex-direction:column}.course-create-file-item strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px}.course-create-file-item span{color:var(--muted);font-size:11px}.course-create-file-error{color:#9a2f2f;font-size:11px;line-height:16px}.course-create-file-item.is-failed{border-color:#ecc8c8;background:#fff8f8}.course-create-file-item .ant-btn{justify-self:end;min-width:44px;min-height:44px}.course-create-file-item .ant-progress{grid-column:1 / -1}.course-create-upload-warning{margin-top:8px;padding:8px 10px;color:#9a6500;background:#fff8e8;border:1px solid #f1d79a;border-radius:7px;font-size:11px}.grading-layout{display:grid;min-height:640px;grid-template-columns:310px minmax(0,1fr);overflow:hidden}.grading-list{max-height:calc(100vh - 190px);padding:14px;overflow-y:auto;background:#f6fafc;border-right:1px solid var(--line)}.grading-item{display:block;width:100%;margin-top:9px;padding:13px;color:var(--ink);text-align:left;background:#fff;border:1px solid var(--line);border-radius:6px;cursor:pointer}.grading-item:hover,.grading-item.active{background:var(--brand-soft);border-color:#7dc3d1}.grading-item.active{box-shadow:inset 3px 0 0 var(--brand)}.grading-item div{display:flex;align-items:center;justify-content:space-between;gap:8px}.grading-item span,.grading-item small{display:block;margin-top:4px;overflow:hidden;color:var(--muted);font-size:12px;text-overflow:ellipsis;white-space:nowrap}.grading-workbench{min-width:0;padding:22px}.grading-heading{display:flex;align-items:center;justify-content:space-between}.grading-heading span{color:var(--muted);font-size:12px}.grading-heading h2{margin:3px 0 0;color:var(--ink);font-size:20px}.submission-preview{min-height:190px;margin-top:18px;padding:20px;background:#f5f9fc;border:1px solid var(--line);border-radius:6px}.submission-preview>span{margin-right:8px;color:var(--brand)}.submission-preview p{color:var(--muted);line-height:24px}.grade-form{max-width:760px}.sticky-actions{display:flex;position:sticky;bottom:0;padding:13px 0;justify-content:flex-end;gap:10px;background:#fff}.notification-layout{display:grid;grid-template-columns:190px minmax(0,1fr);gap:16px}.notification-filters{display:flex;flex-direction:column;gap:5px}.notification-filters button{display:flex;width:100%;height:42px;padding:0 12px;align-items:center;gap:9px;color:#4f6d82;background:transparent;border:0;border-radius:6px;cursor:pointer;text-align:left}.notification-filters button.active,.notification-filters button:hover{color:var(--brand-dark);background:var(--brand-soft)}.notification-list{padding:4px 18px}.notification-item{display:flex;position:relative;width:100%;min-height:90px;padding:16px 4px;align-items:flex-start;gap:13px;text-align:left;background:#fff;border:0;border-bottom:1px solid var(--line);cursor:pointer}.notification-icon{display:grid;flex:0 0 34px;width:34px;height:34px;place-items:center;color:var(--brand-dark);background:var(--brand-soft);border-radius:7px}.notification-copy{min-width:0}.notification-copy strong{font-size:14px}.notification-copy p{margin:5px 0;overflow:hidden;color:var(--muted);font-size:12px;text-overflow:ellipsis;white-space:nowrap}.notification-copy small{color:#8fa4b4;font-size:11px}.notification-item.unread strong{color:var(--brand-dark)}.unread-dot{position:absolute;top:20px;right:4px;width:7px;height:7px;background:var(--danger);border-radius:50%}.profile-grid{display:grid;grid-template-columns:300px minmax(0,1fr);gap:16px}.profile-card{padding:28px;text-align:center}.profile-card h2{margin:12px 0 6px}.profile-card dl{margin-top:24px;text-align:left}.membership-panel{overflow:hidden}.membership-row{display:flex;min-height:72px;padding:13px 18px;align-items:center;gap:12px;border-bottom:1px solid var(--line)}.organization-avatar{display:grid;width:38px;height:38px;place-items:center;color:var(--brand-dark);background:var(--brand-soft);border-radius:7px}.membership-row div{display:flex;min-width:0;flex:1;flex-direction:column}.membership-row small{color:var(--muted);font-size:11px}.route-loading,.callback-page{display:grid;min-height:100vh;place-items:center;background:var(--page)}.mobile-nav .ant-drawer-body{padding:14px}.mobile-brand-row{display:flex;margin:8px 8px 20px;align-items:center;gap:12px}.mobile-brand-row .brand-copy strong{color:var(--ink)}.ant-btn-primary{background:var(--brand);box-shadow:none}.ant-btn-primary:not(:disabled):hover{background:var(--brand-dark)}.ant-btn-default:not(:disabled):hover{color:var(--brand-dark);border-color:var(--brand)}.ant-btn-link{color:var(--brand-dark)}.ant-btn-link:not(:disabled):hover,.ant-btn-link:not(:disabled):active{color:var(--brand)}.ant-tabs .ant-tabs-tab.ant-tabs-tab-active .ant-tabs-tab-btn{color:var(--ink);text-shadow:none}.ant-tabs .ant-tabs-tab:hover{color:var(--ink)}.ant-tabs .ant-tabs-tab-btn:focus,.ant-tabs .ant-tabs-tab-btn:active{color:inherit}.ant-tabs .ant-tabs-ink-bar{background:var(--brand)}input.ant-input[type=datetime-local],input[type=datetime-local]{position:relative;cursor:pointer;text-align:center}input.ant-input[type=datetime-local]::-webkit-datetime-edit,input[type=datetime-local]::-webkit-datetime-edit{width:100%;text-align:center}input.ant-input[type=datetime-local]::-webkit-datetime-edit-fields-wrapper,input[type=datetime-local]::-webkit-datetime-edit-fields-wrapper{width:100%;display:inline-flex;justify-content:center}input.ant-input[type=datetime-local]::-webkit-calendar-picker-indicator,input[type=datetime-local]::-webkit-calendar-picker-indicator{position:absolute;inset:0;width:auto;height:auto;min-width:100%;min-height:100%;margin:0;padding:0;cursor:pointer;opacity:0}.ant-input-affix-wrapper:focus,.ant-input-affix-wrapper-focused,.ant-input:focus,.ant-input-focused,.ant-select-focused .ant-select-selector{border-color:var(--brand)!important;box-shadow:0 0 0 2px #119fbe1f!important}.ant-radio-button-wrapper-checked:not(.ant-radio-button-wrapper-disabled){color:var(--brand-dark);border-color:var(--brand)}.ant-radio-button-wrapper-checked:not(.ant-radio-button-wrapper-disabled):before{background:var(--brand)}.ant-radio-group-solid .ant-radio-button-wrapper-checked:not(.ant-radio-button-wrapper-disabled){background:var(--brand);border-color:var(--brand)}.ant-pagination .ant-pagination-item{background:#fff;border-color:var(--line);border-radius:6px}.ant-pagination .ant-pagination-item a{color:var(--ink)}.ant-pagination .ant-pagination-item:hover{border-color:var(--brand)}.ant-pagination .ant-pagination-item:hover a{color:var(--brand-dark)}.ant-pagination .ant-pagination-item.ant-pagination-item-active{background:#fff;border-color:var(--brand)}.ant-pagination .ant-pagination-item.ant-pagination-item-active a,.ant-pagination .ant-pagination-item.ant-pagination-item-active:hover a,.ant-pagination .ant-pagination-item.ant-pagination-item-active:focus a{color:var(--brand)}.ant-pagination.ant-pagination-disabled .ant-pagination-item.ant-pagination-item-active{background:#fff;border-color:var(--brand)}.ant-pagination.ant-pagination-disabled .ant-pagination-item.ant-pagination-item-active a{color:var(--brand)}.ant-pagination .ant-pagination-prev .ant-pagination-item-link,.ant-pagination .ant-pagination-next .ant-pagination-item-link{color:var(--muted);background:#fff;border-color:var(--line);border-radius:6px}.ant-pagination .ant-pagination-disabled .ant-pagination-item-link,.ant-pagination .ant-pagination-prev.ant-pagination-disabled .ant-pagination-item-link,.ant-pagination .ant-pagination-next.ant-pagination-disabled .ant-pagination-item-link{color:#b7c6d1}.ant-modal .ant-modal-header{padding-bottom:12px;border-bottom:1px solid var(--line)}.library-workspace-tabs>.ant-tabs-nav{margin-bottom:16px}.library-workspace-tabs>.ant-tabs-nav .ant-tabs-tab{min-width:94px;justify-content:center;font-size:15px;font-weight:650}.question-bank-panel{overflow:hidden;background:var(--surface);border:1px solid var(--class-border, var(--line));border-radius:var(--class-radius-sm, .85rem);box-shadow:var(--class-shadow, 0 14px 36px rgba(24, 55, 73, .07))}.question-scope-tabs{padding:10px 20px 0}.question-scope-tabs .ant-tabs-nav{margin-bottom:0}.governance-panel .question-scope-tabs .ant-tabs-nav:before{border-bottom-color:transparent}.governance-panel .question-scope-tabs .ant-tabs-ink-bar{height:3px;border-radius:3px 3px 0 0;background:var(--brand)}.governance-panel .question-scope-tabs .ant-tabs-tab{padding:10px 4px 12px;font-size:14px;font-weight:650}.governance-panel .question-scope-tabs .ant-tabs-tab-active .ant-tabs-tab-btn{color:var(--brand-dark);font-weight:750}.governance-panel .question-list{gap:0;padding:0;background:#fff}.governance-panel .question-row{flex-wrap:nowrap;padding:8px 16px;border:0;border-bottom:1px solid var(--class-hairline, var(--line));border-radius:0;box-shadow:none;align-items:center}.governance-panel .question-row:hover{border-color:transparent;border-bottom-color:var(--class-hairline, var(--line));background:var(--class-surface-soft, #f5f9fa);box-shadow:none}.governance-panel .question-row:focus-within{border-color:transparent;border-bottom-color:var(--class-hairline, var(--line));background:var(--class-surface-soft, #f5f9fa)}.governance-panel .qb-list-row.is-selected{background:rgba(var(--class-accent-rgb, 17, 159, 190),.06);box-shadow:none}.governance-panel .governance-list-spin.ant-spin-nested-loading>div>.ant-spin,.panel-list-spin.ant-spin-nested-loading>div>.ant-spin{max-height:none;height:100%}.governance-panel .governance-list-body .ant-empty{--governance-empty-action-gap: 16px;margin-block-end:0;padding-block-end:var(--governance-empty-action-gap)}.governance-panel .governance-list-body .ant-empty-footer{margin-top:var(--governance-empty-action-gap)}.governance-panel .governance-list-body.is-busy,.panel-list-body.is-busy{min-height:min(48vh,360px)}.question-filter-bar{display:grid;padding:12px 20px;grid-template-columns:minmax(220px,1fr) 150px 130px 130px auto auto;align-items:center;gap:10px;background:#fff;border-bottom:1px solid var(--class-hairline, var(--line))}.filter-result{color:var(--class-ink-soft, var(--muted));font-size:12px;font-weight:650;text-align:left;justify-self:start;white-space:nowrap}.governance-panel .ant-input-search .ant-input-affix-wrapper,.governance-panel .filter-select .ant-select-selector,.governance-panel .bank-filter-select .ant-select-selector{display:flex;align-items:center;height:44px;min-height:44px;padding-block:0}.governance-panel .ant-input-search .ant-input-affix-wrapper .ant-input{height:42px;line-height:42px;padding-block:0;text-align:center}.governance-panel .ant-input-search .ant-input-search-button{display:inline-flex;height:44px;min-height:44px;align-items:center;justify-content:center}.governance-panel .filter-select .ant-select-selection-item,.governance-panel .filter-select .ant-select-selection-placeholder,.governance-panel .bank-filter-select .ant-select-selection-item,.governance-panel .bank-filter-select .ant-select-selection-placeholder{line-height:42px;text-align:center}.governance-panel .filter-select .ant-select-selection-search-input,.governance-panel .bank-filter-select .ant-select-selection-search-input{height:42px}.filter-reset{height:32px;min-height:32px;padding-inline:11px;justify-self:start}.question-list{display:flex;flex-direction:column;gap:8px;padding:12px 16px 16px;background:var(--class-surface-soft, #f5f9fa)}.qb-list-enter{animation:qb-list-fade .22s cubic-bezier(.2,.8,.2,1)}@keyframes qb-list-fade{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}@media(prefers-reduced-motion:reduce){.qb-list-enter{animation:none}}.question-row{display:flex;min-height:0;padding:10px 14px;align-items:center;gap:10px;background:#fff;border:1px solid var(--class-hairline, var(--line));border-radius:10px;box-shadow:none;transition:border-color .18s var(--class-ease, cubic-bezier(.2, .8, .2, 1)),background .18s var(--class-ease, cubic-bezier(.2, .8, .2, 1))}.question-row:hover{border-color:rgba(var(--class-accent-rgb, 17, 159, 190),.22);background:var(--class-surface-soft, #f5f9fa)}.question-row:focus-within{border-color:rgba(var(--class-accent-rgb, 17, 159, 190),.36)}.question-preview-trigger{display:flex;min-width:0;flex:1;padding:0;align-items:center;gap:12px;text-align:left;background:transparent;border:0;border-radius:8px;cursor:pointer}.question-preview-trigger:focus-visible{outline:2px solid rgba(17,159,190,.35);outline-offset:2px}.question-index{display:grid;flex:0 0 36px;width:36px;height:36px;place-items:center;color:var(--brand-dark);background:var(--brand-soft);border:1px solid rgba(var(--class-accent-rgb, 17, 159, 190),.16);border-radius:10px;font-size:13px;font-weight:750;font-variant-numeric:tabular-nums}.question-main{display:flex;min-width:0;flex-direction:column;gap:6px}.question-main strong{display:-webkit-box;overflow:hidden;color:var(--ink);font-size:15px;line-height:23px;-webkit-box-orient:vertical;-webkit-line-clamp:2}.question-stem-summary{display:-webkit-box;overflow:hidden;color:var(--class-ink, var(--ink));font-size:16px;font-weight:700;letter-spacing:-.01em;line-height:1.45;-webkit-box-orient:vertical;-webkit-line-clamp:2}.question-meta{display:flex;min-width:0;flex-wrap:wrap;align-items:center;gap:4px}.question-meta small,.question-tags{color:var(--class-muted, var(--muted));font-size:12px;line-height:1.4}.question-actions{display:flex;flex:0 0 auto;flex-wrap:wrap;justify-content:flex-end;gap:8px}.question-actions .ant-btn{border-radius:.7rem}.question-pagination{display:flex;min-height:64px;padding:12px 20px;align-items:center;justify-content:flex-end;background:#fff;border-top:1px solid var(--class-hairline, var(--line))}.preview-meta{margin-bottom:18px}.question-stem{margin:0 0 18px;color:var(--ink);font-size:19px;line-height:30px}.question-image,.box-question-image{display:block;max-width:100%;max-height:360px;margin:18px auto;object-fit:contain;border:1px solid var(--line);border-radius:6px}.latex-preview{overflow-x:auto;padding:14px;color:#284b62;background:#f2f8fb;border:1px solid var(--line);border-radius:6px;font-family:SFMono-Regular,Consolas,monospace;white-space:pre-wrap}.question-options{display:grid;margin:18px 0;padding:0;gap:9px;list-style:none}.question-options li{display:flex;min-height:42px;padding:9px 12px;align-items:center;gap:10px;background:#f7fafc;border:1px solid var(--line);border-radius:6px}.question-options b{display:grid;flex:0 0 25px;width:25px;height:25px;place-items:center;color:var(--brand-dark);background:var(--brand-soft);border-radius:4px}.question-option-content{display:flex;min-width:0;flex:1;align-items:center;justify-content:center;text-align:center}.question-option-content img{max-height:240px}.question-options .question-rich-content p{margin-bottom:0}.question-options .question-rich-content p+p{margin-top:8px}.answer-panel,.analysis-panel{margin-top:18px;padding:16px;background:#eef9f7;border:1px solid #c8e9df;border-left:3px solid var(--success);border-radius:6px}.analysis-panel{background:#f6f9fc;border-color:var(--line);border-left-color:var(--brand)}.answer-panel small,.analysis-panel small{display:block;margin-bottom:5px;color:var(--muted);font-size:11px}.answer-panel p,.analysis-panel p{margin:7px 0 0;color:#4e6c80;line-height:22px}.ant-tag.qb-tag-type-single{color:#0f766e;background:#ecfdf8;border-color:#99f6e4}.ant-tag.qb-tag-type-multiple{color:#1d4ed8;background:#eff6ff;border-color:#bfdbfe}.ant-tag.qb-tag-type-true-false{color:#15803d;background:#f0fdf4;border-color:#bbf7d0}.ant-tag.qb-tag-type-fill{color:#0369a1;background:#e0f2fe;border-color:#7dd3fc}.ant-tag.qb-tag-type-essay{color:#a21caf;background:#fdf4ff;border-color:#f0abfc}.ant-tag.qb-tag-type-programming{color:#c2410c;background:#fff7ed;border-color:#fdba74}.ant-tag.qb-tag-diff-easy{color:#0f766e;background:#ecfdf8;border-color:#99f6e4}.ant-tag.qb-tag-diff-medium{color:#b45309;background:#fffbeb;border-color:#fcd34d}.ant-tag.qb-tag-diff-hard{color:#b91c1c;background:#fef2f2;border-color:#fecaca}.ant-tag.qb-tag-stage-popular{color:#1d4ed8;background:#eff6ff;border-color:#bfdbfe}.ant-tag.qb-tag-stage-intro{color:#6d28d9;background:#f5f3ff;border-color:#ddd6fe}.ant-tag.qb-tag-stage-advanced{color:#9d174d;background:#fdf2f8;border-color:#fbcfe8}.question-editor .editor-block{margin-bottom:20px;padding:14px;background:var(--surface-soft);border:1px solid var(--line);border-radius:7px}.editor-block-heading{display:flex;min-height:34px;margin-bottom:10px;align-items:center;justify-content:space-between;gap:10px}.editor-block-heading>span{color:var(--muted);font-size:12px}.option-editor-row{display:grid;margin-top:8px;grid-template-columns:54px minmax(0,1fr) 34px;gap:8px}.option-editor-row{align-items:start}.option-editor-row>.option-key-input,.option-editor-row>.option-remove-btn{margin-top:0}.option-key-input input{text-align:center;font-weight:700}.question-rich-content{min-width:0;overflow-wrap:break-word}.question-rich-content .katex,.question-rich-content .katex .base,.question-rich-content .katex-html{overflow-wrap:normal;word-break:normal;white-space:nowrap}.question-rich-content .katex-mathml{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);clip-path:inset(50%);border:0;white-space:nowrap}.question-rich-content pre{max-width:100%;margin:0 0 10px;padding:12px 14px;overflow-x:auto;overflow-wrap:normal;word-break:normal;white-space:pre;background:#fff;border:1px solid var(--line);border-radius:7px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,Liberation Mono,monospace;font-size:13px;line-height:1.55}.question-rich-content :not(pre)>code{padding:.12em .35em;overflow-wrap:break-word;word-break:normal;background:var(--surface-soft);border-radius:4px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,Liberation Mono,monospace;font-size:.92em}.question-rich-content>:first-child{margin-top:0}.question-rich-content>:last-child{margin-bottom:0}.question-rich-content p{margin:0}.question-rich-content p+p{margin-top:10px}.question-rich-content img{display:block;max-width:100%;max-height:420px;margin:16px auto;object-fit:contain;border:1px solid var(--line);border-radius:7px}.question-align{width:100%}.question-align-left{text-align:left}.question-align-center{text-align:center}.question-align-right{text-align:right}.question-align-justify{text-align:justify;text-justify:inter-ideograph}.question-align-center img,.question-align-right img{display:inline-block;margin-left:auto;margin-right:auto}.question-align-left img{margin-left:0;margin-right:auto}.question-align-right img{margin-left:auto;margin-right:0}.question-rich-content .katex-display{display:block;max-width:100%;margin:14px 0;padding-block:6px;overflow-x:auto;overflow-y:visible;text-align:center}.question-rich-content .katex-display>.katex{display:inline-block;text-align:left;padding-block:2px}.formula-dialog-preview .question-rich-content{text-align:center}.formula-dialog-preview .question-rich-content .katex{text-align:left}.question-rich-content-compact{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2;max-height:none}.question-rich-content-compact img{display:inline-block;max-width:min(100%,200px);max-height:96px;margin:4px 8px 4px 0;vertical-align:middle;object-fit:contain;border:1px solid var(--line);border-radius:6px;background:#fff}.question-rich-content-compact p,.question-rich-content-compact .katex-display{display:inline;margin:0}.question-rich-content-compact .question-table-wrap{display:block;width:100%;max-width:100%;margin:8px 0;overflow-x:auto;overflow-y:visible}.question-rich-content-compact .question-table{width:100%;min-width:280px;font-size:13px}.question-rich-content-compact .question-table th,.question-rich-content-compact .question-table td{padding:6px 8px}.question-table-wrap{width:100%;margin:12px 0;overflow-x:auto}.question-table{width:100%;min-width:280px;border-collapse:collapse;background:#fff}.question-table th,.question-table td{padding:8px 10px;border:1px solid var(--line);vertical-align:top;text-align:left;overflow-wrap:break-word;word-break:normal}.question-table .katex{font-size:1em}.question-table .katex-display{display:block;margin:6px 0;text-align:inherit}.question-fill-blank{display:inline-block;min-width:3.5em;height:.92em;margin:0 .2em;border-bottom:1px solid currentColor;vertical-align:baseline}.question-table-align-center{text-align:center}.question-table-align-right{text-align:right}.question-table-align-justify{text-align:justify;text-justify:inter-ideograph}.question-table-valign-middle{vertical-align:middle}.question-table-valign-bottom{vertical-align:bottom}.question-table-error{color:#cf1322}.question-table-toolbar{display:flex;flex-wrap:wrap;gap:16px 20px;align-items:center;margin-bottom:14px;padding:12px 14px;background:#f7fafc;border:1px solid var(--line);border-radius:10px}.question-table-toolbar-group{display:inline-flex;flex:0 0 auto;align-items:center;gap:8px;min-width:0}.question-table-toolbar-size{gap:12px}.question-table-field{display:inline-flex;align-items:center;gap:8px;margin:0;color:var(--ink);font-size:13px;font-weight:550;white-space:nowrap}.question-table-field .ant-input-number{width:72px}.question-table-toolbar-label{color:var(--muted, #667085);font-size:12px;font-weight:600;white-space:nowrap}.question-table-toolbar-align-wrap{gap:10px}.table-toolbar-align{display:grid;grid-template-columns:repeat(3,26px);grid-template-rows:repeat(3,26px);gap:2px;padding:3px;border:1px solid var(--line);border-radius:8px;background:#fff}.question-table-toolbar-actions{flex:1 1 auto;flex-wrap:wrap;justify-content:flex-start;gap:8px}.question-table-toolbar-actions .ant-btn{min-height:32px}.table-align-btn{display:inline-flex;width:26px;height:26px;min-width:26px;min-height:26px;padding:0;align-items:center;justify-content:center;color:#4d6c83;background:transparent;border:0;border-radius:5px;cursor:pointer}.table-align-btn:hover:not(:disabled),.table-align-btn.active{color:var(--brand, #119fbe);background:#119fbe1f}.table-align-btn:disabled{opacity:.45;cursor:not-allowed}.table-align-icon{display:grid;width:12px;height:12px;grid-template-rows:repeat(3,2px);gap:1px;align-content:start;justify-items:start}.table-align-icon i{display:block;width:100%;height:2px;border-radius:1px;background:currentColor}.table-align-icon--h-center{justify-items:center}.table-align-icon--h-center i{width:8px}.table-align-icon--h-right{justify-items:end}.table-align-icon--h-right i{width:8px}.table-align-icon--v-middle{align-content:center;height:12px}.table-align-icon--v-bottom{align-content:end;height:12px}.table-editor-grid{display:grid;gap:8px;margin-bottom:8px}.table-editor-cell{display:flex;flex-direction:column;justify-content:flex-start;align-items:stretch;box-sizing:border-box;min-height:88px;padding:6px 8px;overflow:hidden;border:1px solid var(--line);border-radius:8px;background:#fff;cursor:text;text-align:left}.table-editor-cell.is-valign-top{justify-content:flex-start}.table-editor-cell.is-valign-middle{justify-content:center}.table-editor-cell.is-valign-bottom{justify-content:flex-end}.table-editor-cell.active{border-color:var(--brand);box-shadow:0 0 0 2px #119fbe29}.table-editor-cell .table-editor-cell-input.ant-input,.table-editor-cell textarea.ant-input{display:block;flex:0 0 auto;align-self:stretch;width:100%;min-height:28px!important;height:auto!important;margin:0;padding:2px 4px;border:0!important;border-radius:0;background:transparent!important;box-shadow:none!important;resize:none;line-height:1.45;overflow:hidden}.table-editor-cell .table-editor-cell-input.ant-input:focus,.table-editor-cell textarea.ant-input:focus{border:0!important;box-shadow:none!important}.box-question-content{max-width:1100px;margin:30px 0 36px;color:var(--ink);font-size:clamp(24px,3vw,38px);font-weight:700;line-height:1.45}.screen-question-content{max-height:128px;overflow:auto;font-size:20px;font-weight:700;line-height:1.5}.rich-content-editor{border:1px solid var(--line);border-radius:8px;overflow:hidden;background:#fff}.rich-content-editor-bare{position:relative;margin-top:0;overflow:visible;border:0;background:transparent}.rich-content-editor-bare .rich-content-body{overflow:hidden;border:1px solid var(--line);border-radius:8px;background:#fff}.rich-content-bare-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-rows:auto minmax(0,1fr);align-items:stretch;--rich-pane-pad-y: 12px;--rich-pane-pad-x: 14px}.rich-content-bare-grid.is-compact{--rich-pane-pad-y: 10px;--rich-pane-pad-x: 12px}.rich-content-bare-head{display:flex;align-items:center;min-height:28px;padding:4px 12px;color:var(--muted, #6d8492);background:var(--surface-soft, #f5f9fa);border-bottom:1px solid var(--line);font-size:12px;font-weight:650;line-height:1.2}.rich-content-bare-grid.is-compact .rich-content-bare-head{min-height:26px;padding:3px 12px;font-size:11px}.rich-content-bare-head.is-preview{color:var(--brand, #119fbe);border-left:1px solid var(--line)}.rich-content-bare-grid>.rich-content-pane{grid-row:2;box-sizing:border-box;min-width:0;min-height:120px;margin:0;padding:var(--rich-pane-pad-y) var(--rich-pane-pad-x);overflow:auto;color:var(--ink);background:#fff;font-size:14px;font-family:inherit;line-height:1.65;letter-spacing:.01em}.rich-content-bare-grid>.rich-content-pane.is-edit{grid-column:1}.rich-content-bare-grid>.rich-content-pane.is-preview{grid-column:2;border-left:1px solid var(--line)}.rich-content-bare-grid>.rich-content-pane>.rich-content-source,.rich-content-bare-grid>.rich-content-pane>.rich-content-preview-inner{box-sizing:border-box;display:block;width:100%;min-width:0;min-height:0;margin:0;padding:0;border:0;outline:0;background:transparent;color:inherit;font:inherit;font-size:inherit;line-height:inherit;letter-spacing:inherit;resize:none;overflow:visible}.rich-content-bare-grid>.rich-content-pane>.rich-content-source-visual{white-space:pre-wrap;overflow-wrap:break-word;word-break:normal}.rich-content-bare-grid>.rich-content-pane .question-rich-content{margin:0;font-size:inherit;line-height:inherit;letter-spacing:inherit}.rich-content-bare-grid>.rich-content-pane .question-rich-content>:first-child,.rich-content-bare-grid>.rich-content-pane>.rich-content-source-visual>:first-child{margin-top:0}.rich-content-bare-grid>.rich-content-pane .question-rich-content p{margin:0;font-size:inherit;line-height:inherit}.rich-content-bare-grid>.rich-content-pane .question-rich-content p:last-child{margin-bottom:0}.rich-content-bare-grid>.rich-content-pane.is-preview .katex-display{display:block;width:100%;margin:6px 0;padding-block:0;text-align:center;overflow:visible}.rich-content-bare-grid>.rich-content-pane.is-preview .katex-display>.katex{padding-block:0}.rich-content-bare-grid .rich-formula-chip{margin:0;padding:0;vertical-align:baseline;border:0;border-radius:0;box-shadow:none;background:transparent}.rich-content-bare-grid .rich-formula-chip.is-selected{background:#119fbe1a;box-shadow:inset 0 0 0 1px #119fbe73}.rich-content-bare-grid .question-rich-content .katex{vertical-align:baseline}.rich-content-toolbar{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);min-height:36px;align-items:center;background:var(--surface-soft);border-bottom:1px solid var(--line)}.rich-content-editor-compact .rich-content-toolbar{grid-template-columns:minmax(0,1fr) minmax(0,1fr);min-height:32px}.rich-content-editor-bare .rich-content-body.is-active-target{box-shadow:inset 0 0 0 2px #119fbe47}.rich-content-mobile-both .rich-content-source,.rich-content-mobile-both .rich-content-preview-wrap{display:block}.rich-content-toolbar-edit{display:flex;min-width:0;padding:4px 6px;align-items:center;flex-wrap:wrap;gap:4px}.rich-content-editor-compact .rich-content-toolbar-edit{padding:3px 6px;gap:3px;flex-wrap:nowrap}.rich-content-toolbar-preview{display:flex;min-width:0;min-height:100%;padding:4px 12px;align-items:center;border-left:1px solid var(--line)}.rich-content-editor-compact .rich-content-toolbar-preview{padding:3px 10px}.rich-content-preview-label{color:var(--brand, #119fbe);font-size:12px;font-weight:650;line-height:18px}.rich-content-editor-compact .rich-content-preview-label{font-size:11px;line-height:16px}.rich-content-toolbar-group{display:inline-flex;flex-wrap:wrap;gap:4px;align-items:center}.rich-content-editor-compact .rich-content-toolbar-group{flex-wrap:nowrap;gap:3px}.rich-content-toolbar-divider{width:1px;height:18px;background:var(--line);flex:0 0 auto}.rich-toolbar-btn.ant-btn{height:28px;padding-inline:8px;font-size:12px;line-height:1}.rich-content-editor-compact .rich-toolbar-btn.ant-btn{height:26px;min-width:0;padding-inline:6px;font-size:12px}.rich-toolbar-btn .anticon{font-size:12px}.rich-toolbar-btn-label{margin-left:4px}.rich-content-mobile-tabs{display:none;margin-left:auto}.rich-content-body{background:#fff}.rich-content-grid,.rich-content-compact-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.rich-content-source{width:100%;min-height:174px;padding:14px 16px;color:var(--ink);background:#fff;border:0;outline:0;resize:vertical;font:15px/1.75 inherit;letter-spacing:.01em}.rich-content-source-visual{resize:none;overflow:auto;white-space:pre-wrap;overflow-wrap:break-word;word-break:normal}.rich-content-source-visual.is-empty:before{content:attr(data-placeholder);color:#9aaab5;pointer-events:none}.rich-formula-chip{display:inline-block;max-width:100%;margin:0 1px;padding:0 2px;vertical-align:middle;color:var(--ink);background:transparent;border:1px solid transparent;border-radius:4px;cursor:pointer;user-select:none}.rich-formula-chip.is-selected{background:#119fbe1a;border-color:#119fbe73;box-shadow:0 0 0 1px #119fbe33}.rich-formula-chip-display{display:inline-block;width:100%;box-sizing:border-box;max-width:100%;margin:6px 0;padding:0;text-align:center;vertical-align:top}.rich-content-editor-compact .rich-formula-chip-display{margin:6px 0}.rich-content-bare-grid .rich-formula-chip-display{margin:6px 0;padding:0;vertical-align:top}.rich-content-source-visual .rich-formula-chip-display+br,.rich-content-source-visual br:has(+.rich-formula-chip-display){display:none}.rich-content-bare-grid .rich-formula-chip .question-rich-content .katex-display{margin:0;padding-block:0;overflow:visible}.rich-formula-chip .katex-display{margin:0;overflow-x:auto;overflow-y:visible}.rich-content-editor-compact .rich-formula-chip .katex-display{margin:0;padding-block:0}.rich-formula-chip .question-rich-content,.rich-formula-chip p{display:inline;margin:0}.rich-formula-chip-display .question-rich-content,.rich-formula-chip-display p{display:block;margin:0}.rich-image-chip,.rich-table-chip{display:block;width:100%;max-width:100%;margin:8px 0;padding:2px;box-sizing:border-box;vertical-align:middle;background:transparent;border:1px solid transparent;border-radius:8px;cursor:pointer;user-select:none}.rich-image-chip.is-selected,.rich-table-chip.is-selected{background:#119fbe0f;border-color:#119fbe73;box-shadow:0 0 0 1px #119fbe33}.rich-image-chip img{display:block;max-width:100%;max-height:420px;margin:16px auto;object-fit:contain;border:1px solid var(--line);border-radius:7px}.rich-image-chip-fallback{display:block;padding:8px 10px;color:#6b7c88;font-size:13px}.rich-table-chip{overflow-x:auto;padding:4px}.rich-table-chip .question-table-wrap{margin:12px 0}.rich-content-editor-compact .rich-image-chip,.rich-content-editor-compact .rich-table-chip{margin:6px 0}.rich-content-editor-compact .rich-image-chip img{margin:10px auto;max-height:420px}.rich-content-bare-grid .rich-image-chip,.rich-content-bare-grid .rich-table-chip{margin:12px 0;padding:0;border:0;border-radius:0;box-shadow:none}.rich-content-bare-grid .rich-image-chip.is-selected,.rich-content-bare-grid .rich-table-chip.is-selected{background:#119fbe0f;box-shadow:inset 0 0 0 1px #119fbe73}.rich-content-bare-grid .rich-table-chip .question-table-wrap,.rich-content-bare-grid .rich-table-chip .question-rich-content{margin:0;padding:0}.rich-content-bare-grid .question-table-wrap{margin:12px 0}.rich-content-bare-grid .rich-table-chip .question-table,.rich-content-bare-grid .question-table{font-size:13px}.rich-content-bare-grid .rich-table-chip .question-table th,.rich-content-bare-grid .rich-table-chip .question-table td,.rich-content-bare-grid .question-table th,.rich-content-bare-grid .question-table td{padding:8px 10px}.rich-align-block{width:100%;box-sizing:border-box}.rich-align-center{text-align:center}.rich-align-right{text-align:right}.rich-align-justify{text-align:justify;text-justify:inter-ideograph}.rich-align-center .rich-image-chip,.rich-align-center .rich-formula-chip-display,.rich-align-center .rich-table-chip{margin-left:auto;margin-right:auto}.rich-align-right .rich-image-chip,.rich-align-right .rich-formula-chip-display,.rich-align-right .rich-table-chip{margin-left:auto;margin-right:0}.rich-content-source-visual strong{font-weight:700}.rich-content-source-visual em{font-style:italic}.rich-content-editor-bare .rich-content-pane .question-rich-content>:first-child{margin-top:0}.rich-content-editor-bare .rich-content-pane .question-rich-content p{margin:0}.rich-content-editor-bare .rich-content-pane .question-rich-content p:last-child{margin-bottom:0}.rich-content-editor-compact .rich-content-source,.rich-content-editor-compact .rich-content-preview-wrap{box-sizing:border-box;min-height:112px;padding:10px 12px;font-size:14px;line-height:1.65;letter-spacing:.01em}.rich-content-editor-bare.rich-content-editor-compact .rich-content-pane>.rich-content-source,.rich-content-editor-bare.rich-content-editor-compact .rich-content-pane>.rich-content-preview-inner{min-height:0;padding:0}.rich-content-editor-bare .rich-content-pane{align-self:stretch}.rich-content-source:focus{box-shadow:inset 0 0 0 2px #119fbe24}.rich-content-preview-wrap{min-width:0;min-height:174px;padding:14px 16px;overflow:auto;background:#fff;border-left:1px solid var(--line);font:15px/1.75 inherit;letter-spacing:.01em}.rich-content-editor-compact .rich-content-preview-wrap{min-height:112px;padding:10px 12px;font-size:14px;line-height:1.65}.rich-content-preview-empty{color:#9aaab5;font-size:12px;line-height:1.7}.rich-content-errors{display:grid;padding:8px 12px;gap:3px;color:#cf1322;background:#fff2f0;border-top:1px solid #ffccc7;font-size:12px}.rich-content-file-input{display:none!important}.formula-dialog-preview{min-height:96px;padding:13px;background:var(--surface-soft);border:1px solid var(--line);border-radius:7px}.formula-dialog-preview>span{display:block;margin-bottom:10px;color:var(--muted);font-size:11px}.formula-dialog-preview>small{color:#9aaab5}.blank-editor-row{display:grid;margin-top:10px;grid-template-columns:62px minmax(180px,1fr) 44px;align-items:center;gap:10px}.blank-editor-row>span{color:var(--muted);font-size:12px}.drawer-footer{display:flex;justify-content:flex-end;gap:8px}.paper-library-panel{overflow:hidden;background:var(--class-surface, var(--surface));border:1px solid var(--class-hairline, var(--line));border-radius:var(--class-radius, 8px);box-shadow:var(--class-shadow, none)}.paper-toolbar{display:flex;min-height:66px;padding:13px 18px;align-items:center;justify-content:space-between;gap:16px;background:var(--class-surface-soft, var(--surface-soft));border-bottom:1px solid var(--class-hairline, var(--line))}.paper-filters{display:grid;min-width:0;flex:1;grid-template-columns:minmax(240px,420px) 150px auto auto;align-items:center;gap:10px}.paper-filters .filter-result{color:var(--class-muted, var(--muted));font-size:var(--class-fs-unit, 13px)}.paper-library-panel>.ant-alert{margin:12px 18px}.paper-library-panel .return-banner{border-radius:var(--class-radius-sm, .85rem)}.paper-library-panel .return-banner :deep(.ant-alert-message){overflow-wrap:anywhere;line-height:1.45}.paper-create-btn,.paper-preview-cta,.paper-actions.is-narrow .ant-btn{min-height:44px}.paper-actions:not(.is-narrow) .ant-btn{min-height:32px;font-size:13px}.paper-preview-return{margin-top:16px}.paper-mobile-list{display:none}.paper-desktop-table :deep(.ant-table){table-layout:fixed}.paper-desktop-table :deep(.ant-table-thead > tr > th),.paper-desktop-table :deep(.ant-table-tbody > tr > td){vertical-align:middle}.paper-desktop-table :deep(.paper-col-name){text-align:left}.paper-name-button{display:flex;width:100%;min-height:32px;padding:0;align-items:center;flex-direction:row;justify-content:flex-start;gap:0;color:var(--class-ink, var(--ink));text-align:left;background:transparent;border:0;border-radius:var(--class-radius-sm, .85rem);cursor:pointer}.paper-name-button:focus-visible{outline:2px solid rgba(var(--class-accent-rgb, 17, 159, 190),.35);outline-offset:2px}.paper-name-button strong{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.paper-name-button small{color:var(--class-muted, var(--muted));font-size:12px}.paper-actions{display:flex;flex-wrap:wrap;align-items:center;gap:6px}.paper-status-stack{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:6px}.paper-used-chip{color:var(--class-accent-deep, var(--brand-dark));background:var(--class-accent-soft, var(--brand-soft))}.paper-mobile-head{display:flex;align-items:center;gap:10px;min-width:0}.paper-mobile-no{display:grid;flex:0 0 28px;width:28px;height:28px;place-items:center;color:var(--class-accent-deep, var(--brand-dark));background:var(--class-accent-soft, var(--brand-soft));border-radius:var(--class-radius-sm, .85rem);font-size:12px;font-weight:700}.paper-mobile-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:0}.paper-mobile-stats>div{display:flex;flex-direction:column;gap:2px;min-width:0;padding:8px 10px;border:1px solid var(--class-hairline, var(--line));border-radius:var(--class-radius-sm, .85rem);background:var(--class-surface-soft, var(--surface-soft))}.paper-mobile-stats dt{color:var(--class-muted, var(--muted));font-size:11px;line-height:1.3}.paper-mobile-stats dd{margin:0;color:var(--class-ink, var(--ink));font-size:14px;font-weight:650;line-height:1.3}.paper-onboarding{display:flex;flex-wrap:wrap;justify-content:center;gap:8px 16px;margin:0 0 14px;color:var(--class-muted, var(--muted));font-size:13px;line-height:1.45}.paper-preview-heading{display:flex;margin-bottom:20px;align-items:flex-start;justify-content:space-between;gap:12px}.paper-preview-heading h2{margin:0 0 5px;color:var(--class-ink, var(--ink));font-size:20px}.paper-preview-heading>div>span{color:var(--class-muted, var(--muted));font-size:12px}.paper-preview-question{display:grid;min-height:70px;padding:12px 0;grid-template-columns:32px minmax(0,1fr);align-items:start;gap:10px;border-bottom:1px solid var(--class-hairline, var(--line))}.paper-preview-question>span{display:grid;width:28px;height:28px;place-items:center;color:var(--class-accent-deep, var(--brand-dark));background:var(--class-accent-soft, var(--brand-soft));border-radius:var(--class-radius-sm, .85rem);font-size:12px;font-weight:700}.paper-preview-question>div{display:flex;min-width:0;flex-direction:column;gap:5px}.paper-preview-question strong{line-height:22px}.paper-preview-question small{color:var(--class-muted, var(--muted));font-size:11px}.classroom-tabs>.ant-tabs-nav{margin-bottom:16px}.classroom-layout{display:grid;min-height:720px;grid-template-columns:290px minmax(0,1fr);gap:16px}.session-list-panel{overflow:hidden}.session-list-item{display:flex;width:100%;min-height:78px;padding:13px 15px;align-items:center;justify-content:space-between;gap:8px;color:var(--ink);text-align:left;background:#fff;border:0;border-bottom:1px solid var(--line);cursor:pointer}.session-list-item:hover,.session-list-item.active{background:var(--brand-soft)}.session-list-item.active{box-shadow:inset 3px 0 0 var(--brand)}.session-list-item>span{display:flex;min-width:0;flex-direction:column;gap:4px}.session-list-item strong,.session-list-item small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.session-list-item small{color:var(--muted);font-size:11px}.classroom-main{min-width:0}.classroom-empty{min-height:560px;padding-top:160px;background:#fff;border:1px solid var(--line);border-radius:8px}.classroom-status-band{display:flex;min-height:76px;margin-bottom:14px;padding:14px 18px;align-items:center;justify-content:space-between;background:#fff;border:1px solid var(--line);border-left:4px solid var(--brand);border-radius:8px}.classroom-status-band>div:first-child{display:grid;grid-template-columns:12px auto;align-items:center;column-gap:9px}.classroom-status-band strong{font-size:17px}.classroom-status-band small{grid-column:2;color:var(--muted);font-size:11px}.live-dot{display:block;width:9px;height:9px;background:#9eb1be;border-radius:50%}.live-dot.active{background:#32b78a;box-shadow:0 0 0 4px #32b78a21}.live-dot.preparing{background:var(--brand)}.classroom-status-actions{display:flex;align-items:center;gap:8px}.preparation-grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(280px,.62fr);gap:14px}.prep-main{min-height:520px}.group-grid{display:grid;padding:14px;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.group-card{padding:14px;background:#f8fbfc;border:1px solid var(--line);border-top:3px solid var(--brand);border-radius:7px}.group-card>div{display:flex;align-items:center;justify-content:space-between}.group-card>small{color:var(--muted);font-size:11px}.group-card ul,.roster-panel ul,.hardware-panel ul{margin:10px 0 0;padding:0;list-style:none}.group-card li{display:flex;padding:6px 0;justify-content:space-between;border-top:1px solid #e6eff3;font-size:12px}.group-card li span{color:var(--muted)}.preparation-side{display:grid;align-content:start;gap:14px}.roster-panel,.hardware-panel{overflow:hidden}.roster-panel ul,.hardware-panel ul{max-height:245px;margin:0;overflow-y:auto}.roster-panel li{display:flex;padding:10px 15px;justify-content:space-between;border-bottom:1px solid var(--line)}.roster-panel li small{color:var(--muted)}.hardware-panel li{display:grid;min-height:58px;padding:9px 14px;grid-template-columns:10px minmax(0,1fr) auto;align-items:center;gap:9px;border-bottom:1px solid var(--line)}.hardware-panel li>span:nth-child(2){display:flex;min-width:0;flex-direction:column}.hardware-panel li small{color:var(--muted);font-size:10px}.device-status{display:block;width:8px;height:8px;background:#e16862;border-radius:50%}.device-status.online{background:#35b887}.prep-actions{display:flex;grid-column:1 / -1;align-items:center;justify-content:flex-end;gap:12px}.prep-actions .ant-alert{flex:1}.live-classroom-grid{display:grid;grid-template-columns:minmax(0,1.5fr) 320px;gap:14px}.live-question-panel{min-height:630px;padding:26px}.question-progress{display:flex;align-items:center;gap:12px;color:var(--muted);font-size:12px}.question-progress .ant-progress{flex:1;margin:0}.live-question-meta{display:flex;margin-top:26px;align-items:center;gap:11px;color:var(--muted)}.live-question-panel h2{margin:16px 0 24px;color:var(--ink);font-size:25px;line-height:38px}.question-options.compact{grid-template-columns:repeat(2,minmax(0,1fr))}.live-control-bar{display:flex;margin-top:26px;justify-content:flex-end}.live-insights{display:grid;align-content:start;gap:14px}.submission-panel{padding-bottom:20px;text-align:center}.submission-panel .ant-progress{margin:24px auto 14px}.submission-panel p{margin:0 16px;color:var(--muted);font-size:12px;line-height:20px}.distribution-panel{min-height:300px}.distribution-list{padding:14px 16px}.distribution-list>div{display:grid;margin-bottom:12px;grid-template-columns:24px minmax(0,1fr) 24px;align-items:center;gap:8px}.distribution-list .ant-progress{margin:0}.summary-layout{display:grid;grid-template-columns:minmax(280px,.65fr) minmax(360px,1fr);gap:14px}.summary-ranking ol{margin:0;padding:0;list-style:none}.summary-ranking li{display:grid;min-height:72px;padding:12px 16px;grid-template-columns:minmax(0,1fr) auto;border-bottom:1px solid var(--line)}.summary-ranking li strong{color:var(--ink)}.summary-ranking li span{color:var(--indigo);font-size:18px;font-weight:700}.summary-ranking li small{grid-column:1 / -1;color:var(--muted)}.summary-export-button{color:var(--brand-dark);background:transparent;border:0;cursor:pointer}.summary-stat-list>div{display:grid;min-height:65px;padding:11px 16px;grid-template-columns:minmax(0,1fr) auto;border-bottom:1px solid var(--line)}.summary-stat-list small{grid-column:1 / -1;color:var(--muted)}.pending-review-panel{grid-column:1 / -1}.pending-review-panel article{display:grid;min-height:90px;padding:14px 16px;grid-template-columns:minmax(0,1fr) auto;align-items:center;border-bottom:1px solid var(--line)}.pending-review-panel article p{grid-column:1;margin:6px 0 0;color:var(--muted)}.pending-review-panel article button{grid-column:2;grid-row:1 / 3;color:var(--brand-dark);background:transparent;border:0;cursor:pointer}.empty-copy{padding:28px;color:var(--muted);text-align:center}.manual-grade-form{display:grid;margin-top:16px;gap:7px}.manual-grade-form input,.manual-grade-form textarea{width:100%;padding:8px;border:1px solid var(--line);border-radius:5px}.toolbar-hint{margin-left:12px;color:var(--muted);font-size:11px}.grade-group-name{display:block;margin-top:4px;color:var(--muted)}.device-token-field{margin-top:18px}.box-simulator-shell{min-height:100vh;color:var(--ink);background:#e8f4f8}.box-simulator-header{display:flex;position:sticky;z-index:20;top:0;min-height:84px;padding:14px 28px;align-items:center;justify-content:space-between;background:#fff;border-bottom:1px solid var(--line)}.box-simulator-header>div{display:flex;align-items:center;gap:12px}.box-simulator-header>div>span:not(.brand-symbol){display:flex;flex-direction:column}.box-simulator-header strong{font-size:18px}.box-simulator-header small{color:var(--muted)}.simulator-connection{color:var(--muted);font-size:12px}.box-simulator-main{display:grid;min-height:calc(100vh - 84px);grid-template-columns:330px minmax(0,1fr)}.box-device-panel{display:flex;padding:24px;flex-direction:column;gap:22px;background:#f8fbfc;border-right:1px solid var(--line)}.box-device-panel section{display:flex;flex-direction:column;gap:8px}.box-device-panel section>small{color:var(--muted);line-height:18px}.simulator-step,.simulator-kicker{color:var(--brand-dark);font-size:11px;font-weight:700;text-transform:uppercase}.box-stage{min-width:0;padding:clamp(28px,4vw,72px)}.box-stage>.ant-spin-nested-loading,.box-stage .ant-spin-container{min-height:100%}.box-waiting,.group-ready-screen{display:flex;min-height:680px;padding:60px 30px;align-items:center;justify-content:center;flex-direction:column;text-align:center;background:#fff;border:1px solid var(--line);border-radius:8px}.box-waiting>.anticon,.group-ready-screen>.anticon{color:var(--brand);font-size:72px}.box-waiting h1,.group-ready-screen h1{margin:24px 0 8px;font-size:36px}.box-waiting p,.group-ready-screen p{margin:0 0 28px;color:var(--muted);font-size:17px}.group-builder-screen,.box-question-screen{min-height:680px;padding:clamp(28px,4vw,58px);background:#fff;border:1px solid var(--line);border-radius:8px}.group-builder-screen h1{margin:8px 0;font-size:34px}.group-builder-screen>p{margin:0;color:var(--muted);font-size:16px}.box-member-selector{display:grid;margin-top:34px;grid-template-columns:repeat(4,minmax(150px,1fr));gap:14px}.box-member-selector button{display:flex;position:relative;min-height:170px;padding:20px;align-items:center;justify-content:center;flex-direction:column;gap:8px;color:var(--ink);background:#f6fafc;border:2px solid var(--line);border-radius:8px;cursor:pointer}.box-member-selector button.selected{background:var(--brand-soft);border-color:var(--brand)}.box-member-selector button>.anticon{position:absolute;top:12px;right:12px;color:var(--brand);font-size:22px}.box-member-selector small{color:var(--muted)}.box-member-grid{display:grid;width:min(720px,100%);margin:20px 0 36px;grid-template-columns:repeat(4,minmax(100px,1fr));gap:12px}.box-member-grid span{display:flex;padding:16px;align-items:center;flex-direction:column;gap:7px;background:#f6fafc;border:1px solid var(--line);border-radius:7px}.box-member-grid small{color:var(--muted)}.box-stage-actions{display:flex;margin-top:32px;align-items:center;justify-content:space-between;color:var(--muted)}.box-question-top{display:flex;align-items:center;gap:12px;color:var(--muted)}.box-question-top strong{margin-left:auto;color:var(--indigo);font-size:20px}.box-question-screen>h1{max-width:1100px;margin:30px 0 36px;font-size:clamp(28px,2.4vw,46px);line-height:1.45}.box-answer-area{min-height:420px}.box-option-grid{display:grid;width:100%;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.box-option-grid .ant-radio-button-wrapper,.box-option-grid .ant-checkbox-wrapper{display:flex;min-height:104px;padding:20px 24px;align-items:center;gap:14px;color:var(--ink);border:2px solid var(--line);border-radius:8px;font-size:20px;white-space:normal}.box-option-grid .ant-radio-button-wrapper:before{display:none}.box-option-grid .ant-radio-button-wrapper-checked,.box-option-grid .ant-checkbox-wrapper-checked{background:var(--brand-soft);border-color:var(--brand)}.box-option-grid b{display:grid;flex:0 0 40px;width:40px;height:40px;place-items:center;color:var(--brand-dark);background:#fff;border:1px solid var(--line);border-radius:6px}.box-boolean-options{display:grid;width:100%;grid-template-columns:repeat(2,1fr);gap:18px}.box-boolean-options .ant-radio-button-wrapper{height:130px;padding:44px;text-align:center;border:2px solid var(--line);border-radius:8px;font-size:24px}.box-fill-blanks{display:grid;gap:14px}.box-fill-blanks input{min-height:60px;font-size:20px}.box-submit-bar{display:flex;margin-top:34px;padding-top:20px;align-items:center;justify-content:space-between;color:var(--muted);border-top:1px solid var(--line)}.box-submit-bar .ant-btn{min-width:200px;height:52px}.box-reveal-area{display:grid;gap:14px}.box-reveal-area section{padding:18px;background:#f6fafc;border:1px solid var(--line);border-radius:7px}.box-reveal-area section small{display:block;margin-bottom:6px;color:var(--muted)}.box-reveal-area section p{margin:0;color:#48667b;line-height:25px}.reveal-result{display:flex;padding:22px;align-items:center;gap:16px;background:var(--brand-soft);border:1px solid #bce4eb;border-radius:8px}.reveal-result>.anticon{font-size:40px}.reveal-result span{display:flex;flex-direction:column}.reveal-result.correct{color:#197657;background:#e5f6ef;border-color:#bce4d3}.reveal-result.incorrect{color:#a13f3b;background:#fff0ef;border-color:#edc8c5}@media(min-width:1700px)and (min-height:1200px){.box-simulator-main{grid-template-columns:390px minmax(0,1fr)}.box-device-panel{padding:34px}.group-builder-screen,.box-question-screen,.box-waiting,.group-ready-screen{min-height:calc(100vh - 180px)}.box-member-selector button{min-height:210px}}@media(max-width:1320px){.portal-header-inner{padding:0 22px;gap:12px}.portal-brand{min-width:168px}.portal-navigation>button{min-width:66px;padding:0 10px}.portal-navigation>button:after{right:10px;left:10px}.portal-actions .organization-select{display:none}.workspace-content{padding-right:28px;padding-left:28px}}@media(max-width:1020px){.portal-navigation{display:none;visibility:hidden}.portal-header-leading{flex:1}.portal-header .mobile-menu-button{display:inline-flex;margin-right:6px}.global-search{display:none}.metric-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.metric-item:nth-child(2){border-right:0}.metric-item:nth-child(-n+2){border-bottom:1px solid var(--line)}.dashboard-grid{grid-template-columns:1fr}.class-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.learning-overview{grid-template-columns:minmax(0,1.4fr) minmax(240px,.7fr);padding:32px;border-radius:20px;gap:36px}.learning-overview h2{font-size:28px;line-height:36px}.overview-status{border-radius:16px;padding:24px}.overview-status-icon{width:44px;height:44px;border-radius:12px;font-size:22px}.overview-status strong{font-size:26px;line-height:32px}.metric-strip{gap:12px}.metric-item{min-height:104px;padding:20px 16px;gap:14px;border-radius:16px}.metric-icon{width:44px;height:44px;flex-basis:44px;border-radius:12px;font-size:20px}.metric-item strong{font-size:24px;line-height:28px}.dashboard-grid{gap:20px}.panel{border-radius:18px}.focus-panel{min-height:310px}.question-filter-bar{grid-template-columns:minmax(220px,1fr) repeat(3,minmax(110px,130px)) auto}.question-filter-bar .filter-result{display:none}.assessment-columns,.classroom-layout,.preparation-grid,.live-classroom-grid,.summary-layout{grid-template-columns:1fr}.assessment-bank{max-height:420px;border-right:0;border-bottom:1px solid var(--line)}.session-list-panel{max-height:320px}.pending-review-panel{grid-column:auto}.box-simulator-main{grid-template-columns:260px minmax(0,1fr)}.box-member-selector{grid-template-columns:repeat(2,minmax(140px,1fr))}}@media(max-width:760px){.workspace-sider{display:none}.portal-header{height:62px}.portal-header-inner{padding:0 12px}.portal-brand{min-width:0}.brand-symbol{width:36px;height:36px;flex-basis:36px;font-size:19px}.portal-brand-copy strong{font-size:15px;line-height:19px}.portal-brand-copy small{display:none}.portal-actions{gap:2px}.page-context,.organization-select,.user-copy,.user-trigger>.anticon-down{display:none}.user-trigger{width:44px;height:44px;padding:3px;justify-content:center}.workspace-shell .workspace-header{height:58px;padding:0 12px}.admin-shell .mobile-menu-button{display:inline-flex}.header-actions{gap:2px}.workspace-content{padding:18px 12px 84px}.content-header{min-height:48px;margin-bottom:14px;align-items:center}.content-header h1{font-size:20px;line-height:28px}.content-header p{display:none}.content-header-actions .ant-btn:not(.ant-btn-primary):not(.return-task-button):not(.mobile-essential-action){display:none}.content-header-actions .return-task-button,.content-header-actions .mobile-essential-action{display:inline-flex;min-height:44px;align-items:center}.learning-overview{min-height:0;margin-bottom:16px;padding:24px 20px;grid-template-columns:1fr;gap:24px;border-radius:18px}.learning-overview h2{font-size:24px;line-height:32px}.learning-overview-copy p{font-size:14px;line-height:22px}.overview-actions{margin-top:18px}.overview-actions .ant-btn{height:40px;font-size:13px;border-radius:10px}.overview-status{padding:20px;border-radius:14px}.overview-status-icon{width:42px;height:42px;border-radius:12px;font-size:20px}.overview-status strong{font-size:24px;line-height:30px}.metric-strip{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.metric-item{min-height:96px;padding:18px 14px;gap:12px;border-radius:14px}.metric-icon{width:40px;height:40px;flex-basis:40px;border-radius:12px;font-size:18px}.metric-item strong{font-size:22px}.dashboard-grid{gap:16px;margin-top:16px}.panel{border-radius:16px}.focus-panel{min-height:300px}.focus-visual{border-radius:14px;height:88px;font-size:32px}.focus-panel>strong{font-size:17px}.focus-panel>strong,.focus-panel>p,.focus-panel>.ant-btn{margin-right:20px;margin-left:20px}.focus-panel .ant-btn{height:40px;font-size:13px}.class-grid{grid-template-columns:1fr}.form-grid{grid-template-columns:1fr;gap:0}.table-toolbar{align-items:stretch;flex-direction:column}.table-search{width:100%}.grading-layout{grid-template-columns:1fr}.grading-list{max-height:300px;border-right:0;border-bottom:1px solid var(--line)}.grading-workbench{padding:16px}.notification-layout{grid-template-columns:1fr}.notification-filters{overflow-x:auto;flex-direction:row}.notification-filters button{flex:0 0 auto;width:auto}.profile-grid{grid-template-columns:1fr}.question-filter-bar{grid-template-columns:1fr 1fr;padding:12px}.question-filter-bar .ant-input-affix-wrapper{grid-column:1 / -1}.filter-reset{height:44px;min-height:44px}.question-list{padding:10px 12px 12px;gap:8px}.question-list:has(.qb-lc-row){gap:0;padding:0;background:#fff}.question-row:not(.qb-lc-row){padding:14px 12px;align-items:flex-start;flex-direction:column;gap:12px}.question-row.qb-lc-row{padding:10px 12px}.question-preview-trigger{width:100%}.question-actions{width:100%;justify-content:stretch;flex-wrap:wrap;overflow-x:visible}.question-actions .ant-btn{flex:1 1 calc(33.33% - 6px);min-width:5.5rem;min-height:44px}.question-pagination{padding:12px;justify-content:center}.rich-content-toolbar,.rich-content-editor-compact .rich-content-toolbar,.rich-content-grid,.rich-content-compact-grid,.rich-content-bare-grid{grid-template-columns:1fr}.rich-content-bare-grid{grid-template-rows:auto auto minmax(0,1fr)}.rich-content-bare-grid>.rich-content-bare-head:not(.is-preview){display:none}.rich-content-bare-grid>.rich-content-bare-head.is-preview{grid-column:1;grid-row:1;border-left:0}.rich-content-bare-grid>.rich-content-pane.is-edit{grid-column:1;grid-row:2}.rich-content-bare-grid>.rich-content-pane.is-preview{grid-column:1;grid-row:3;border-left:0;border-top:1px solid var(--line)}.rich-content-bare-grid>.rich-content-source{grid-column:1;grid-row:2}.rich-content-bare-grid>.rich-content-preview-wrap{grid-column:1;grid-row:3}.rich-content-editor-bare .rich-content-compact-grid{grid-template-columns:1fr}.rich-content-editor-compact .rich-content-toolbar-edit,.rich-content-editor-compact .rich-content-toolbar-group{flex-wrap:wrap}.rich-content-toolbar-preview{border-left:0;border-top:1px solid var(--line)}.rich-content-preview-wrap{min-height:110px;border-left:0;border-top:1px solid var(--line)}.rich-content-editor-bare .rich-content-preview-wrap,.rich-content-editor-bare .rich-content-pane.is-preview{border-top:1px solid var(--line)}.rich-content-editor-compact .rich-content-source,.rich-content-editor-compact .rich-content-preview-wrap{min-height:100px}.rich-content-mobile-tabs{display:inline-flex}.rich-content-mobile-edit .rich-content-preview-wrap,.rich-content-mobile-edit .rich-content-pane.is-preview,.rich-content-mobile-edit .rich-content-toolbar-preview,.rich-content-mobile-preview .rich-content-source,.rich-content-mobile-preview .rich-content-pane.is-edit,.rich-content-mobile-preview .rich-content-toolbar-edit .rich-content-toolbar-group,.rich-content-mobile-preview .rich-content-toolbar-edit .rich-content-toolbar-divider{display:none}.rich-content-mobile-preview .rich-content-preview-wrap,.rich-content-mobile-preview .rich-content-pane.is-preview,.rich-content-mobile-preview .rich-content-toolbar-preview{border-top:0}.paper-toolbar{padding:12px;align-items:stretch;flex-direction:column}.paper-filters{grid-template-columns:1fr auto}.paper-filters .ant-input-group-wrapper{grid-column:1 / -1}.paper-filters .filter-result,.paper-desktop-table{display:none}.paper-mobile-list{display:grid;gap:0}.paper-mobile-card{display:flex;flex-direction:column;padding:14px 12px;gap:12px;background:var(--class-surface, #fff);border-bottom:1px solid var(--class-hairline, var(--line))}.paper-mobile-card .paper-actions{width:100%}.paper-mobile-card .paper-name-button{min-height:44px}.paper-mobile-status{display:flex;flex-wrap:wrap;align-items:center;gap:6px}.assessment-editor,.assessment-columns{min-height:0}.assessment-sequence{padding:12px}.classroom-layout{min-height:0}.classroom-main,.live-question-panel{min-width:0;min-height:0}.classroom-status-band,.prep-actions,.box-submit-bar,.box-stage-actions{align-items:stretch;flex-direction:column}.group-grid,.question-options.compact,.box-option-grid,.box-boolean-options{grid-template-columns:1fr}.box-simulator-header{position:static;padding:12px;align-items:flex-start;flex-direction:column}.box-simulator-main{min-height:0;grid-template-columns:1fr}.box-device-panel{padding:16px;border-right:0;border-bottom:1px solid var(--line)}.box-stage{padding:12px}.box-member-selector,.box-member-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.group-builder-screen,.box-question-screen,.box-waiting,.group-ready-screen{min-height:520px;padding:22px 16px}.box-option-grid .ant-radio-button-wrapper,.box-option-grid .ant-checkbox-wrapper{min-height:76px;padding:14px;font-size:16px}.box-question-screen>h1{margin:20px 0 24px;font-size:25px}.mobile-bottom-nav{position:fixed;z-index:40;right:0;bottom:0;left:0;display:grid;height:66px;padding-bottom:env(safe-area-inset-bottom);grid-template-columns:repeat(4,1fr);background:#fffffffa;border-top:1px solid var(--line)}.mobile-bottom-nav button{display:flex;min-width:0;align-items:center;justify-content:center;flex-direction:column;gap:3px;color:#6d879a;background:transparent;border:0;font-size:10px}.mobile-bottom-nav button .anticon{font-size:18px}.mobile-bottom-nav button.active{color:var(--brand-dark);font-weight:650}}@media(max-width:760px){.ant-drawer .ant-drawer-content-wrapper{width:100%!important;max-width:100vw}.class-form-dialog:not(.class-glass-dialog){display:flex;align-items:flex-end}.class-form-dialog:not(.class-glass-dialog) .ant-modal{width:100%!important;max-width:100%;margin:0;padding-bottom:0;top:auto}.class-form-dialog:not(.class-glass-dialog) .ant-modal-content{max-height:calc(100vh - 3rem);overflow-y:auto;border-radius:18px 18px 0 0}.class-form-dialog:not(.class-glass-dialog) .ant-modal-header{position:sticky;z-index:1;top:0;margin:-20px -24px 16px;padding:20px 24px 14px;background:#fffffff0;backdrop-filter:blur(18px)}.class-form-dialog:not(.class-glass-dialog) .ant-modal-footer{position:sticky;bottom:0;margin:16px -24px -20px;padding:14px 24px calc(14px + env(safe-area-inset-bottom));background:#fffffff5;backdrop-filter:blur(18px)}.class-form-dialog .ant-modal-footer .ant-btn{min-width:96px;min-height:44px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}@media(prefers-reduced-transparency:reduce){.class-form-dialog .ant-modal-header,.class-form-dialog .ant-modal-footer{background:#fff;backdrop-filter:none}}.lesson-sequencer{margin-bottom:14px;overflow:hidden}.lesson-sequencer-heading{display:flex;min-height:58px;padding:12px 16px;align-items:center;justify-content:space-between;gap:16px;border-bottom:1px solid var(--line)}.lesson-sequencer-heading>div{display:flex;align-items:baseline;gap:10px}.lesson-sequencer-heading h2{margin:0;color:var(--ink);font-size:17px}.lesson-sequencer-heading>span{color:var(--muted);font-size:11px}.lesson-sequencer-eyebrow{color:var(--brand-dark);font-size:11px;font-weight:700;letter-spacing:.08em}.lesson-sequencer-track{display:flex;padding:13px 16px 15px;overflow-x:auto;gap:9px;background:#f8fbfc;scrollbar-width:thin}.course-lesson-card{display:grid;min-width:286px;max-width:330px;min-height:78px;padding:9px 8px 9px 10px;grid-template-columns:35px minmax(0,1fr) auto 24px;align-items:center;gap:7px;color:var(--ink);text-align:left;background:#fff;border:1px solid #d9e6ea;border-radius:10px;box-shadow:0 3px 10px #143e500a;cursor:pointer;transition:.16s ease}.course-lesson-card:hover{border-color:#8fc9d3;transform:translateY(-1px)}.course-lesson-card.active{background:#eef9fb;border-color:#42a9ba;box-shadow:inset 0 -3px #168da3,0 6px 16px #168da31f}.course-lesson-index{display:grid;width:33px;height:33px;place-items:center;color:#fff;background:#173e53;border-radius:9px;font-size:12px;font-weight:750}.course-lesson-card.active .course-lesson-index{background:var(--brand)}.course-lesson-copy{display:flex;min-width:0;flex-direction:column}.course-lesson-copy strong{font-size:12px}.course-lesson-copy small{margin-top:4px;overflow:hidden;color:var(--muted);font-size:9px;text-overflow:ellipsis;white-space:nowrap}.outline-title{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:pre;text-autospace:no-autospace;text-spacing-trim:space-all}.course-lesson-card .ant-tag{margin:0;font-size:9px;line-height:18px}.course-lesson-publication{display:flex;align-items:flex-end;flex-direction:column;gap:5px}.course-lesson-publication-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:4px}.course-lesson-publication .ant-btn{min-width:52px;height:24px;padding-inline:8px;font-size:10px}.course-lesson-add{display:flex;min-width:118px;min-height:70px;padding:8px;align-items:center;justify-content:center;flex-direction:column;gap:6px;color:var(--brand-dark);background:#f9fcfd;border:1px dashed #8fc6d0;border-radius:10px;cursor:pointer;font-size:11px;font-weight:650}.course-lesson-add:hover{color:#fff;background:var(--brand);border-color:var(--brand)}.course-composer{display:grid;min-height:calc(100vh - 164px);grid-template-columns:260px minmax(0,1fr);align-items:start;gap:16px}.mobile-outline-trigger,.mobile-outline-close{display:none!important}.mobile-outline-backdrop{display:none}.composer-outline{position:sticky;top:90px;max-height:calc(100vh - 112px);overflow:hidden}.chapter-tree,.preview-scroll{max-height:calc(100vh - 180px);overflow:auto;scrollbar-width:thin;scrollbar-color:transparent transparent}.chapter-tree:hover,.chapter-tree:focus-within,.preview-scroll:hover,.preview-scroll:focus-within{scrollbar-color:rgba(100,130,148,.45) transparent}.chapter-tree::-webkit-scrollbar,.preview-scroll::-webkit-scrollbar{width:8px;height:8px}.chapter-tree::-webkit-scrollbar-track,.preview-scroll::-webkit-scrollbar-track{background:transparent}.chapter-tree::-webkit-scrollbar-thumb,.preview-scroll::-webkit-scrollbar-thumb{background-color:transparent;border-radius:999px;border:2px solid transparent;background-clip:padding-box}.chapter-tree:hover::-webkit-scrollbar-thumb,.chapter-tree:focus-within::-webkit-scrollbar-thumb,.preview-scroll:hover::-webkit-scrollbar-thumb,.preview-scroll:focus-within::-webkit-scrollbar-thumb{background-color:#6482946b;background-clip:padding-box}.chapter-tree::-webkit-scrollbar-thumb:hover,.preview-scroll::-webkit-scrollbar-thumb:hover{background-color:#64829494}.outline-heading-actions{display:flex;flex:0 0 auto;align-items:center;gap:6px}.add-chapter-button.ant-btn{height:34px;padding:0 12px;color:#fff;background:#087c9a;border-color:#087c9a;border-radius:9px;box-shadow:0 5px 12px #087c9a2e;font-size:12px;font-weight:650}.add-chapter-button.ant-btn:hover,.add-chapter-button.ant-btn:focus{color:#fff;background:#08728e;border-color:#08728e;box-shadow:0 7px 16px #087c9a40;transform:translateY(-1px)}.add-chapter-button.ant-btn .anticon{font-size:12px}.add-chapter-button.ant-btn span{color:inherit;font-size:inherit}.chapter-node{padding:8px;border-bottom:1px solid var(--line)}.chapter-node>header{display:grid;min-height:40px;padding:5px 6px;align-items:center;grid-template-columns:auto minmax(0,1fr) auto auto;gap:7px;border-radius:7px;cursor:pointer}.chapter-node>header:hover,.chapter-node>header.active{background:var(--brand-soft)}.chapter-node>header span{color:var(--muted);font-size:11px}.page-tree-list{padding:8px}.page-tree-list .lesson-node{margin-top:0}.page-tree-list .lesson-node+.lesson-node{margin-top:4px}.lesson-node{display:grid;width:100%;min-height:50px;margin-top:4px;padding:7px;align-items:center;grid-template-columns:25px minmax(0,1fr) auto;gap:7px;color:var(--ink);text-align:left;background:transparent;border:1px solid transparent;border-radius:7px;cursor:pointer}.lesson-node:hover{background:#f6fafc}.lesson-node.active{background:#e8f7fa;border-color:#8dcdd8;box-shadow:inset 3px 0 var(--brand)}.lesson-node>span:first-child{display:grid;width:23px;height:23px;place-items:center;color:var(--brand-dark);background:#fff;border:1px solid #c5e1e7;border-radius:50%;font-size:10px;font-weight:700}.lesson-node>span:nth-child(2){display:flex;min-width:0;flex-direction:column}.lesson-node strong{font-size:12px}.lesson-node small{margin-top:2px;color:var(--muted);font-size:10px}.lesson-order-actions{display:inline-flex;align-items:center;gap:0}.lesson-preview-button.ant-btn{min-width:44px;min-height:44px;padding:0}.add-lesson-button{margin-top:7px}.composer-editor{min-width:0;overflow:hidden}.composer-form{padding:18px}.dirty-hint{color:#d48806!important}.lesson-create-actions{display:grid;margin-top:7px;grid-template-columns:minmax(0,1fr);gap:6px}.lesson-create-actions .add-lesson-button{width:100%;min-width:0;height:auto;min-height:28px;margin-top:0;padding-block:4px;white-space:normal}.lesson-create-actions .add-lesson-button.html{color:#6f42c1;border-color:#bda9df}.lesson-create-actions .ant-dropdown-trigger{width:100%}.lesson-type-help{display:block;margin:2px 0 0 25px;color:#87999f;font-size:10px}.course-readiness-strip{display:flex;min-height:44px;margin-bottom:12px;padding:8px 14px;align-items:center;justify-content:space-between;color:#7a4d08;background:#fff8e6;border:1px solid #f1d596;border-radius:9px}.course-readiness-strip .anticon{margin-right:7px}.html-page-builder{display:grid;gap:12px}.html-page-builder-toolbar{display:flex;padding:12px;align-items:center;gap:8px;background:#f5fafb;border:1px solid var(--line);border-radius:10px}.html-page-builder-toolbar>div{display:flex;min-width:0;margin-right:auto;flex-direction:column}.html-page-builder-toolbar>div span{color:var(--muted);font-size:10px}.html-lesson-layout-settings{display:grid;padding:12px;grid-template-columns:minmax(150px,1fr) repeat(4,minmax(120px,160px));align-items:center;gap:8px;background:#eef8f9;border:1px solid #c9e4e8;border-radius:10px}.html-lesson-layout-settings>div{display:flex;flex-direction:column}.html-lesson-layout-settings>div span{color:var(--muted);font-size:10px}.html-page-editor-card{padding:12px;background:#fff;border:1px solid #d9e8ee;border-radius:11px}.html-page-editor-card.dragging{opacity:.55}.html-page-editor-heading{display:grid;margin-bottom:10px;align-items:center;grid-template-columns:58px minmax(0,1fr);gap:8px}.html-page-editor-heading>span{display:inline-flex;width:57px;height:27px;align-items:center;justify-content:center;gap:3px;color:#fff;background:var(--brand);border-radius:999px;font-size:11px;font-weight:700}.html-page-drag-handle{cursor:default}.html-page-workbench{display:grid;grid-template-columns:minmax(0,1fr);gap:12px;align-items:start}.html-page-list{display:grid;max-height:520px;padding:6px;overflow-y:auto;gap:5px;background:#f6fafb;border:1px solid #dbe8eb;border-radius:10px}.html-page-list button{display:grid;width:100%;min-height:55px;padding:8px;grid-template-columns:26px minmax(0,1fr) auto;align-items:center;gap:8px;color:var(--ink);text-align:left;background:#fff;border:1px solid transparent;border-radius:7px;cursor:pointer}.html-page-list button:hover{border-color:#b9dbe1}.html-page-list button.active{background:#eaf8fa;border-color:#6bbccc;box-shadow:inset 3px 0 var(--brand)}.html-page-list button.incomplete{border-color:#efc4c4}.html-page-list button>span:first-child{display:grid;width:24px;height:24px;place-items:center;color:var(--brand-dark);background:#fff;border:1px solid #c5e1e7;border-radius:50%;font-size:10px}.html-page-list button>span:nth-child(2){min-width:0}.html-page-list strong,.html-page-list small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.html-page-list small{margin-top:3px;color:var(--muted);font-size:10px}.html-page-slots{display:grid;grid-template-columns:1fr 1fr;gap:9px}.html-asset-slot{display:grid;min-height:76px;padding:10px;align-items:center;grid-template-columns:27px minmax(0,1fr) auto;gap:8px;color:var(--ink);text-align:left;background:#fafcfd;border:1px dashed #bbd1db;border-radius:9px;cursor:pointer}.html-asset-slot.required{background:#f4fbfc;border-color:#75bac8}.html-asset-slot>span{display:flex;min-width:0;flex-direction:column}.html-asset-slot small,.html-asset-slot em{color:var(--muted);font-size:10px;font-style:normal}.html-asset-slot strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.html-page-layout-settings{display:flex;margin-bottom:12px;padding:10px;align-items:center;gap:8px;background:#f7fafb;border:1px solid #e0e9ec;border-radius:9px}.html-page-layout-settings label{display:inline-flex;margin-right:auto;align-items:center;gap:7px;color:var(--ink);font-size:12px;font-weight:650}.html-page-layout-settings .ant-select{min-width:150px}.html-page-regions-editor{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.html-region-editor{display:grid;padding:11px;align-content:start;gap:9px;background:#fbfcfd;border:1px solid #dce7ea;border-radius:10px}.html-region-editor.required{background:#f5fbfc;border-color:#a9d7df}.html-region-editor>header{display:flex;align-items:center;justify-content:space-between;gap:8px}.html-region-editor>header>div{display:flex;min-width:0;align-items:center;gap:8px;color:var(--brand-dark)}.html-region-editor>header>div>span{display:flex;min-width:0;flex-direction:column}.html-region-editor>header small{color:var(--muted);font-size:10px}.html-region-editor>header .ant-select{width:132px}.html-region-items{display:grid;gap:6px}.html-region-item{display:grid;min-height:54px;padding:7px;grid-template-columns:24px minmax(0,1fr) auto auto;align-items:center;gap:6px;background:#fff;border:1px solid #e1e9ec;border-radius:8px}.html-region-item-order{display:grid;width:22px;height:22px;place-items:center;color:var(--brand-dark);background:#eaf7f9;border-radius:50%;font-size:10px;font-weight:700}.html-region-item>div:nth-child(2){min-width:0}.html-region-item strong,.html-region-item small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.html-region-item small{color:var(--muted);font-size:10px}.html-region-item-actions{display:flex;align-items:center}.html-region-item-actions .ant-btn{padding-inline:5px}.html-asset-filters{display:grid;margin:12px 0;grid-template-columns:150px 1fr;gap:8px}.html-auto-toolbar{display:flex;margin-bottom:12px;padding:10px;align-items:center;justify-content:space-between;gap:10px;color:#4d6d7f;background:#eef8fa;border-radius:8px;font-size:11px}.asset-library-card.selected{background:#eef9fb;border-color:#61b7c7}.html-asset-meta{display:flex;align-items:center;flex-wrap:wrap;gap:5px}.html-asset-meta>span{color:var(--muted);font-size:10px}.editor-toolbar{display:flex;margin-bottom:10px;align-items:center;gap:8px}.editor-toolbar>span{color:var(--muted);font-size:11px}.format-change-modal .ant-modal-content{overflow:hidden;padding:0;border:1px solid #d9e7eb;border-radius:14px;box-shadow:0 22px 60px #0b2c4b2e}.format-change-modal .ant-modal-header{margin:0;padding:22px 24px 0}.format-change-modal .ant-modal-title{color:var(--ink);font-size:18px;font-weight:720}.format-change-modal .ant-modal-close{top:16px;inset-inline-end:16px}.format-change-modal .ant-modal-body{padding:18px 24px 20px}.format-change-modal .ant-modal-footer{margin:0;padding:14px 24px 18px;background:#f7fafb;border-top:1px solid #e2ecef}.format-change-dialog{display:grid;gap:14px}.format-change-route{display:grid;grid-template-columns:minmax(0,1fr) 28px minmax(0,1fr);align-items:center}.format-change-route-item{display:grid;min-height:78px;padding:13px 15px;align-content:center;gap:5px;background:#f5f8f9;border:1px solid #dce7ea;border-radius:10px}.format-change-route-item span{color:var(--muted);font-size:11px;font-weight:650}.format-change-route-item strong{overflow:hidden;color:#29495a;font-size:15px;text-overflow:ellipsis;white-space:nowrap}.format-change-route-item.is-target{background:#ecf9fb;border-color:#9edce5;box-shadow:inset 0 0 0 1px #168da314}.format-change-route-item.is-target span,.format-change-route-item.is-target strong{color:var(--brand-dark)}.format-change-route-arrow{color:#7ba5af;font-size:18px;font-weight:700;text-align:center}.format-change-impact{padding:12px 14px;background:#fffaf0;border:1px solid #f1dfb3;border-radius:9px}.format-change-impact strong{display:block;margin-bottom:3px;color:#79551b;font-size:12px}.format-change-impact p,.format-change-preserved{margin:0;font-size:12px;line-height:1.7}.format-change-impact p{color:#765f37}.format-change-preserved{display:flex;align-items:center;gap:7px;color:#3f6973}.format-change-preserved .anticon{color:#1b9a83}.course-body-source{box-sizing:border-box;width:100%;min-height:430px;padding:14px;color:#163b52;background:#fbfdfe;border:1px solid #cadce4;border-radius:7px;outline:none;resize:vertical;font:13px/1.72 SFMono-Regular,Consolas,monospace}.course-body-source:focus{border-color:var(--brand);box-shadow:0 0 0 2px #17a2b81f}.course-body-editor{min-width:0;border-radius:7px}.course-vditor .vditor{border-color:#cadce4}.course-vditor .vditor-toolbar{background:#f7fbfc}.course-wang-toolbar{border:1px solid #cadce4;border-bottom:0;border-radius:7px 7px 0 0}.course-wang-editor{height:430px;min-height:430px;overflow-y:auto;border:1px solid #cadce4;border-radius:0 0 7px 7px}.course-wang-editor>.w-e-text-container,.course-wang-editor .w-e-text-container .w-e-scroll{height:430px;min-height:430px}.course-wang-editor .w-e-text-container [data-slate-editor]{min-height:430px}.course-wang-editor [data-course-asset-placement-id]{display:grid;min-height:70px;margin:12px 0;place-items:center;color:var(--brand-dark);background:#eaf7fa;border:1px dashed var(--brand);border-radius:7px}.course-wang-editor [data-course-asset-placement-id] span{font-weight:700}.course-wang-editor [data-course-asset-placement-id] small{display:block;max-width:90%;overflow:hidden;color:var(--muted);font-size:10px;text-overflow:ellipsis;white-space:nowrap}.placement-settings{padding:0 18px 18px}.placement-settings h3{margin:0 0 10px;color:var(--ink);font-size:14px}.placement-setting-card{display:grid;max-width:100%;padding:10px;align-items:center;grid-template-columns:minmax(180px,1.2fr) 94px 106px minmax(120px,1fr) minmax(120px,1fr) minmax(0,max-content);gap:7px;overflow:hidden;background:#f7fbfc;border:1px solid var(--line);border-radius:8px}.placement-setting-card+.placement-setting-card{margin-top:8px}.placement-setting-card.dragging{opacity:.55;border-color:var(--brand)}.placement-drag-handle{display:grid;width:28px;height:28px;flex:0 0 28px;place-items:center;color:var(--muted);cursor:grab}.placement-drag-handle:active{cursor:grabbing}.asset-mini{display:flex;min-width:0;align-items:center;gap:8px}.asset-mini>.anticon{color:var(--brand-dark);font-size:20px}.asset-mini span{display:flex;min-width:0;flex-direction:column}.asset-mini strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.asset-mini small{color:var(--muted);font-size:10px}.placement-actions{display:flex;min-width:0;align-items:center;justify-content:flex-end;flex-wrap:wrap}.course-body-dropzone{position:relative;border:2px solid transparent;border-radius:10px;transition:border-color .16s ease,box-shadow .16s ease}.course-body-dropzone.is-drag-over{border-color:var(--brand);box-shadow:0 0 0 4px #0c98b31f}.course-body-drop-hint{position:absolute;z-index:3;inset:8px;display:grid;place-items:center;color:var(--brand-dark);background:#eef9fbeb;border:2px dashed var(--brand);border-radius:8px;font-weight:700;pointer-events:none}.preview-heading{gap:12px}.preview-device-switch{display:inline-flex;flex:0 0 auto;padding:3px;gap:2px;background:#edf5f7;border:1px solid #d5e5ea;border-radius:9px}.preview-device-switch button{min-width:58px;height:28px;padding:0 9px;color:#607b8d;background:transparent;border:0;border-radius:6px;cursor:pointer;font-size:11px;transition:.16s ease}.preview-device-switch button:hover{color:var(--brand-dark)}.preview-device-switch button.active{color:#fff;background:var(--brand-dark);box-shadow:0 3px 8px #087c9a2e;font-weight:650}.preview-device-switch button:disabled{color:#9babb1;cursor:not-allowed;opacity:.65}.course-preview-controls{display:flex;margin-bottom:14px;align-items:stretch;justify-content:space-between;flex-wrap:wrap;gap:10px}.course-preview-lesson-select{width:100%;min-width:0}.course-preview-switches{display:flex;min-width:0;flex:1 1 240px;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px}.course-preview-context{margin:0 0 12px;color:var(--muted);font-size:12px;line-height:1.5}.course-preview-pager{position:sticky;bottom:0;z-index:1;display:flex;min-height:56px;margin-top:16px;padding:10px 0 2px;align-items:center;justify-content:space-between;gap:12px;background:#fff;border-top:1px solid var(--line)}.course-preview-pager>span{color:var(--ink);font-size:13px;font-weight:650;font-variant-numeric:tabular-nums}.course-preview-pager .ant-btn{min-width:88px;min-height:44px}.preview-stage{min-height:240px}.preview-device-frame{width:100%;background:#fff}.preview-stage.is-mobile{display:flex;padding:18px 14px 22px;justify-content:center;background:#edf3f5}.preview-stage.is-mobile .preview-device-frame{width:min(390px,100%);overflow:hidden;border:1px solid #cbdce3;border-radius:20px;box-shadow:0 12px 30px #14374b1f}.preview-stage.is-mobile .preview-scroll{max-height:calc(100vh - 250px)}.preview-stage.is-mobile .preview-scroll h1{font-size:21px}.preview-scroll{padding:22px}.preview-scroll>header{margin-bottom:22px;padding-bottom:14px;border-bottom:1px solid var(--line)}.preview-scroll h1{margin:0 0 7px;color:var(--ink);font-size:24px}.preview-scroll p{margin:0;color:var(--muted)}.course-preview-drawer .preview-device-switch{margin-bottom:12px}.course-preview-drawer .preview-scroll{max-height:calc(100vh - 160px);overflow-y:auto}.readiness-issue-list{display:grid;gap:9px}.readiness-issue-list article{display:flex;min-height:58px;padding:10px 12px;align-items:center;justify-content:space-between;gap:10px;border:1px solid #e1eaed;border-radius:8px}.readiness-issue-list article.blocking{border-color:#efcaca;background:#fff8f7}.readiness-issue-list article.warning{border-color:#ecd9a4;background:#fffbef}.readiness-issue-list article>div{display:flex;min-width:0;align-items:center;gap:8px}.course-content-renderer{min-width:0}.course-placement{width:var(--asset-width, 100%);max-width:100%;margin-top:22px;margin-bottom:22px}.course-placement.align-left{margin-right:auto}.course-placement.align-center{margin-right:auto;margin-left:auto}.course-placement.align-right{margin-left:auto}.course-placement figcaption{margin-top:7px;color:var(--muted);text-align:center;font-size:12px}.html-lesson-pages{display:grid;min-width:0;gap:18px}.html-page-toolbar{display:flex;min-height:58px;padding:10px 12px;align-items:center;justify-content:space-between;gap:14px;background:#f5fafb;border:1px solid var(--line);border-radius:11px}.html-page-toolbar>div:first-child{display:flex;min-width:0;flex-direction:column;gap:3px}.html-page-toolbar strong{overflow:hidden;color:var(--ink);text-overflow:ellipsis;white-space:nowrap}.html-page-toolbar span{color:var(--muted);font-size:11px}.html-page-dots{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:5px}.html-page-dots button{display:grid;width:28px;height:28px;padding:0;place-items:center;color:#4e6f82;background:#fff;border:1px solid #c8dde5;border-radius:50%;cursor:pointer;font-size:11px}.html-page-dots button.active{color:#fff;background:var(--brand);border-color:var(--brand)}.html-document-frame{display:grid;min-height:160px;place-items:center;overflow:hidden;background:#fff;border:1px solid var(--line);border-radius:12px}.html-document-frame iframe{display:block;width:100%;border:0;transition:height .18s ease}.html-interaction-section{display:grid;padding:14px;gap:10px;background:#f7fafc;border:1px solid #dbe8ee;border-radius:14px}.html-interaction-section>header{display:flex;align-items:center;gap:10px}.html-interaction-section>header span{padding:3px 8px;color:#fff;background:var(--brand);border-radius:999px;font-size:10px;font-weight:700}.html-interaction-section>header strong{color:var(--ink);font-size:13px}.html-page-footer{display:flex;padding-top:12px;align-items:center;justify-content:space-between;border-top:1px solid var(--line)}.html-page-footer>span{color:var(--muted);font-size:12px}.html-page-footer .ant-btn span{color:inherit;font-size:inherit}.html-page-footer .ant-btn-primary:not(:disabled),.html-page-footer .ant-btn-primary:not(:disabled):hover,.html-page-footer .ant-btn-primary:not(:disabled):focus{color:#fff;background:var(--brand);border-color:var(--brand);font-weight:650}.course-asset-preview{display:grid;min-height:100px;place-items:center;overflow:hidden;background:#f2f7f9;border:1px solid var(--line);border-radius:8px}.course-asset-preview__loading{display:grid;width:100%;min-height:160px;place-items:center}.course-asset-preview img,.course-asset-preview video{display:block;width:100%;max-height:620px;object-fit:contain}.course-asset-preview iframe{display:block;width:100%;border:0}.course-pdf-preview{display:flex;width:100%;min-height:0;flex-direction:column;background:#dce5e9}.asset-drawer-toolbar{display:flex;margin-bottom:15px;align-items:center;gap:10px}.asset-drawer-toolbar>span{color:var(--muted);font-size:11px}.asset-drawer-toolbar .ant-btn span{color:inherit;font-size:inherit}.upload-queue{margin-bottom:16px;padding:8px;background:#f7fbfc;border-radius:8px}.upload-item{display:grid;padding:7px;align-items:center;grid-template-columns:minmax(160px,1fr) minmax(150px,1fr) auto;gap:10px}.upload-item span{display:flex;min-width:0;flex-direction:column}.upload-item strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.upload-item small{color:var(--muted);font-size:10px}.asset-library-grid{display:grid;gap:9px}.asset-library-card{display:grid;padding:12px;align-items:center;grid-template-columns:46px minmax(0,1fr) auto;gap:11px;border:1px solid var(--line);border-radius:9px}.asset-library-card.draggable{cursor:grab}.asset-library-card.draggable:active{cursor:grabbing}.asset-kind{display:grid;width:42px;height:42px;place-items:center;color:var(--brand-dark);background:var(--brand-soft);border-radius:8px;font-size:21px}.asset-library-card>div:nth-child(2){display:flex;min-width:0;align-items:flex-start;flex-direction:column;gap:2px}.asset-library-card strong{overflow:hidden;max-width:100%;text-overflow:ellipsis;white-space:nowrap}.asset-library-card>div:nth-child(2) span,.asset-library-card>div:nth-child(2) small{color:var(--muted);font-size:10px}.asset-library-card>.ant-btn span{color:inherit;font-size:inherit}.asset-library-card>.ant-btn-primary:not(:disabled),.asset-library-card>.ant-btn-primary:not(:disabled):hover,.asset-library-card>.ant-btn-primary:not(:disabled):focus{color:#fff;background:var(--brand);border-color:var(--brand);font-weight:650}.asset-library-actions{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:4px}.asset-insert-guide{margin:10px 0}.asset-library-state{display:inline-flex;max-width:310px;padding:5px 8px;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:2px;color:#3e7f64!important;background:#edf8f3;border-radius:12px;font-weight:650}.chapter-dialog-wrap .ant-modal{max-width:calc(100vw - 32px);padding-bottom:0}.chapter-dialog-wrap .ant-modal-content{padding:0;overflow:hidden;background:#fff;border:1px solid rgba(184,212,226,.9);border-radius:18px;box-shadow:0 24px 70px #0b2c4b38}.chapter-dialog-wrap .ant-modal-body{padding:0}.chapter-dialog{position:relative;display:grid;padding:30px;grid-template-columns:52px minmax(0,1fr);column-gap:16px}.chapter-dialog-close{position:absolute;z-index:1;top:16px;right:16px;display:grid;width:34px;height:34px;padding:0;place-items:center;color:#6b8799;background:#ffffffd1;border:1px solid #d8e7ee;border-radius:50%;cursor:pointer;transition:.16s ease}.chapter-dialog-close:hover{color:var(--ink);background:#fff;border-color:#b8d4e2;transform:rotate(4deg)}.chapter-dialog-close:disabled{cursor:wait;opacity:.5}.chapter-dialog-icon{display:grid;width:52px;height:52px;place-items:center;color:var(--brand-dark);background:#e5f7fa;border:1px solid #b8e3eb;border-radius:15px;box-shadow:inset 0 1px #fffc;font-size:23px}.chapter-dialog-copy{min-width:0;padding-right:34px}.chapter-dialog-copy>span{display:block;margin-bottom:2px;color:var(--brand-dark);font-size:11px;font-weight:700;letter-spacing:.12em}.chapter-dialog-copy h2{margin:0;color:var(--ink);font-size:22px;line-height:30px}.chapter-dialog-copy p{margin:5px 0 0;color:var(--muted);font-size:12px;line-height:19px}.chapter-dialog-form{margin-top:24px;padding:18px;grid-column:1 / -1;background:#f7fbfc;border:1px solid #dce9ef;border-radius:12px}.chapter-dialog-form .ant-form-item{margin-bottom:0}.chapter-dialog-form .ant-form-item-label{padding-bottom:7px}.chapter-dialog-form .ant-form-item-label>label{color:#385c72;font-size:12px;font-weight:650}.chapter-dialog-form .ant-input-affix-wrapper{min-height:44px;padding-right:11px;padding-left:13px;background:#fff;border-color:#bdd5e0;border-radius:9px}.chapter-dialog-form .ant-input-affix-wrapper:hover{border-color:#69b9ca}.chapter-dialog-form .ant-input-affix-wrapper-focused{border-color:var(--brand);box-shadow:0 0 0 3px #119fbe1f}.chapter-dialog-form .ant-input-show-count-suffix{color:#87a0b0;font-size:10px}.chapter-dialog-actions{display:grid;margin-top:20px;grid-column:1 / -1;grid-template-columns:1fr 1fr;gap:10px}.chapter-dialog-actions .ant-btn{height:44px;border-radius:10px;font-size:13px;font-weight:650}.chapter-dialog-actions .ant-btn-default{color:#49677d;background:#fff;border-color:#c8dce5}.chapter-dialog-actions .ant-btn-primary{background:#087c9a;border-color:#087c9a;box-shadow:0 7px 16px #087c9a33}.course-editor-layout{display:grid;grid-template-columns:minmax(250px,310px) minmax(0,1fr);align-items:start;gap:18px}.lesson-outline-panel{position:sticky;top:96px;max-height:calc(100vh - 124px);overflow:hidden}.lesson-outline-list{max-height:calc(100vh - 210px);padding:10px;overflow-y:auto}.lesson-outline-item{display:grid;width:100%;min-height:62px;padding:10px 9px;align-items:center;grid-template-columns:auto 28px minmax(0,1fr) auto;gap:8px;color:var(--ink);text-align:left;background:#fff;border:1px solid transparent;border-radius:7px;cursor:pointer}.lesson-outline-item+.lesson-outline-item{margin-top:6px}.lesson-outline-item:hover{background:var(--surface-soft);border-color:var(--line)}.lesson-outline-item.active{background:var(--brand-soft);border-color:#85cbd8;box-shadow:inset 3px 0 0 var(--brand)}.drag-handle{color:#8ca4b5;cursor:grab}.lesson-order{display:grid;width:25px;height:25px;place-items:center;color:var(--brand-dark);background:#fff;border:1px solid #bfe1e8;border-radius:50%;font-size:11px;font-weight:700}.lesson-outline-copy{display:flex;min-width:0;flex-direction:column}.lesson-outline-copy strong{overflow:hidden;font-size:13px;text-overflow:ellipsis;white-space:nowrap}.lesson-outline-copy small{margin-top:3px;color:var(--muted);font-size:11px}.ready-icon{color:var(--success)}.warning-icon{color:var(--gold)}.course-editor-main{display:grid;min-width:0;gap:18px}.lesson-editor-panel,.lesson-resources-panel{overflow:hidden}.lesson-editor-panel>.ant-form{padding:20px}.editor-actions{display:flex;flex-wrap:wrap;align-items:center;gap:9px}.editor-actions .ant-btn{height:36px;border-radius:9px;font-size:12px;font-weight:650;transition:.16s ease}.editor-actions .ant-btn span{color:inherit;font-size:inherit}.delete-lesson-button.ant-btn{padding:0 12px;color:#bd4d55;background:#fff;border-color:#edc8cc}.delete-lesson-button.ant-btn:hover,.delete-lesson-button.ant-btn:focus{color:#a83a44;background:#fff7f7;border-color:#dc9da4}.save-lesson-button.ant-btn-primary{min-width:112px;padding:0 16px;color:#fff;background:#087c9a;border-color:#087c9a;box-shadow:0 6px 14px #087c9a33}.save-lesson-button.ant-btn-primary:not(:disabled):hover,.save-lesson-button.ant-btn-primary:not(:disabled):focus{color:#fff;background:#08728e;border-color:#08728e;box-shadow:0 8px 18px #087c9a42;transform:translateY(-1px)}.save-lesson-button.ant-btn-primary.is-saved,.save-lesson-button.ant-btn-primary.is-saved:disabled{color:#587483;background:#edf5f7;border-color:#d2e2e7;box-shadow:none;cursor:default;opacity:1}.save-lesson-button .anticon{font-size:13px}.markdown-editor-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.markdown-source{min-height:430px!important;resize:vertical;font-family:SFMono-Regular,Consolas,monospace;line-height:1.65}.markdown-preview-wrap{min-width:0}.field-label{min-height:32px;color:#304f66;font-size:13px}.markdown-preview{min-height:430px;max-height:680px;padding:18px 20px;overflow:auto;background:#f9fcfd;border:1px solid var(--line);border-radius:6px}.course-markdown{color:#183a54;font-size:15px;line-height:1.8;overflow-wrap:anywhere}.course-markdown>:first-child{margin-top:0}.course-markdown>:last-child{margin-bottom:0}.course-markdown h1,.course-markdown h2,.course-markdown h3{margin:1.45em 0 .65em;color:var(--ink);line-height:1.35}.course-markdown h1{padding-bottom:.35em;border-bottom:1px solid var(--line);font-size:1.85em}.course-markdown h2{font-size:1.45em}.course-markdown h3{font-size:1.2em}.course-markdown a{color:var(--brand-dark)}.course-markdown img{max-width:100%;height:auto;border-radius:7px}.course-markdown pre{padding:14px 16px;overflow-x:auto;color:#e8f4f7;background:#142a3a;border-radius:6px}.course-markdown code{padding:.12em .34em;color:#a33b59;background:#f4edf0;border-radius:4px;font-family:SFMono-Regular,Consolas,monospace}.course-markdown pre code{padding:0;color:inherit;background:transparent}.course-markdown blockquote{margin-left:0;padding:3px 0 3px 15px;color:#587489;border-left:4px solid #8ccbd7}.course-markdown table{width:100%;border-collapse:collapse}.course-markdown th,.course-markdown td{padding:8px 10px;border:1px solid var(--line)}.resource-editor-list{padding:8px 16px 16px}.resource-editor-item{display:grid;min-height:66px;padding:10px 6px;align-items:center;grid-template-columns:38px minmax(160px,1fr) auto repeat(4,auto);gap:6px;border-bottom:1px solid #e7f0f4}.resource-type-icon{display:grid;width:34px;height:34px;place-items:center;color:var(--brand-dark);background:var(--brand-soft);border-radius:6px;font-size:17px}.resource-editor-copy{display:flex;min-width:0;flex-direction:column}.resource-editor-copy strong,.resource-editor-copy a{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.resource-editor-copy a{margin-top:3px;color:var(--muted);font-size:11px}.editor-empty-panel{display:grid;min-height:360px;place-items:center}.course-editor-spin.ant-spin-nested-loading{width:100%}.course-editor-spin.ant-spin-nested-loading>div>.ant-spin{display:flex;align-items:center;justify-content:center;height:100%;max-height:none}.course-editor-spin.ant-spin-nested-loading>div>.ant-spin .ant-spin-dot{position:static;inset-inline-start:auto;margin:0}.course-editor-spin-block{min-height:min(48vh,360px)}.student-course-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.student-course-card{overflow:hidden;border-radius:14px;border:1px solid var(--class-border, #d3e3e9);background:#fff;box-shadow:0 4px 16px #1d4b600d;transition:transform .28s cubic-bezier(.22,.61,.36,1),box-shadow .28s ease,border-color .2s;animation:card-enter .4s cubic-bezier(.22,.61,.36,1) both}.student-course-card:nth-child(1){animation-delay:0s}.student-course-card:nth-child(2){animation-delay:.06s}.student-course-card:nth-child(3){animation-delay:.12s}.student-course-card:nth-child(4){animation-delay:.18s}.student-course-card:nth-child(5){animation-delay:.24s}.student-course-card:nth-child(6){animation-delay:.3s}@keyframes card-enter{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.student-course-card:hover{transform:translateY(-3px);box-shadow:0 12px 28px #1c57701f;border-color:rgba(var(--class-accent-rgb),.22)}.course-cover{position:relative;display:grid;height:176px;place-items:center;color:#fff;background:linear-gradient(135deg,#087c9a,#0d8da7,#119fbe);background-position:center;background-size:cover;font-size:48px}.course-cover:after{content:"";position:absolute;inset:0;background:#05283a14;pointer-events:none}.course-cover>*{position:relative;z-index:1}.course-cover .ant-tag{position:absolute;top:12px;right:12px}.student-course-body{display:flex;min-height:300px;padding:18px;flex-direction:column}.course-tags{display:flex;min-height:24px;flex-wrap:wrap;gap:4px}.student-course-body h2{margin:10px 0 7px;color:var(--ink);font-size:18px;font-weight:700;letter-spacing:-.01em}.student-course-body>p{min-height:44px;margin:0 0 17px;color:var(--muted);line-height:22px}.course-progress-heading{display:flex;margin-bottom:5px;align-items:center;justify-content:space-between;color:var(--muted);font-size:12px}.course-progress-heading strong{color:var(--brand-dark)}.continue-lesson{display:flex;min-width:0;margin:13px 0 16px;align-items:center;gap:8px;color:#496b82;font-size:12px}.continue-lesson span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.student-course-body>.ant-btn{margin-top:auto;border-radius:9px;font-weight:620;background:linear-gradient(135deg,#119fbe,#0d8da7);border-color:transparent;box-shadow:0 3px 10px #119fbe38;transition:all .22s cubic-bezier(.22,.61,.36,1)}.student-course-body>.ant-btn:hover{box-shadow:0 5px 16px #119fbe52;transform:translateY(-1px)}.course-reader-layout{display:grid;height:calc(100vh - 106px);min-height:620px;grid-template-columns:minmax(260px,320px) minmax(0,1fr);gap:18px}.reader-outline{display:flex;min-height:0;overflow:hidden;flex-direction:column;background:linear-gradient(180deg,#f9fcfd,#f4f9fb)}.reader-course-heading{padding:19px 18px 15px;border-bottom:1px solid var(--line);background:linear-gradient(135deg,#f0f8fb,#ecf6fa)}.reader-course-heading h1,.reader-course-heading h2{margin:0 0 6px;color:var(--ink);font-size:18px;line-height:26px}.reader-course-heading>div{display:flex;align-items:center;justify-content:space-between;color:var(--muted);font-size:12px}.reader-course-heading>div strong{color:var(--brand-dark)}.reader-course-heading p{margin:0 0 12px;color:var(--muted);font-size:12px;line-height:19px}.reader-course-heading .reader-current-lesson{display:flex;min-width:0;align-items:baseline;gap:8px}.reader-current-lesson span{flex:none;font-size:10px}.reader-current-lesson strong{overflow:hidden;color:var(--ink);font-size:13px;font-weight:650;text-overflow:ellipsis;white-space:nowrap}.reader-lesson-list{padding:10px;overflow-y:auto;background:linear-gradient(180deg,#fafcfd,#f6fafb)}.reader-course-lesson-group+.reader-course-lesson-group{margin-top:10px}.reader-lesson-list button.reader-course-lesson-toggle{min-height:66px;padding:10px;grid-template-columns:58px minmax(0,1fr) auto;gap:8px;background:#f6fafb;border-color:#dce9ed;transition:background .2s,border-color .2s}.reader-lesson-list button.reader-course-lesson-toggle:hover{background:#eef7fa;border-color:#c2dee4}.reader-lesson-list button.reader-course-lesson-toggle.active{background:linear-gradient(135deg,#e4f4f8,#d8eef5);border-color:#8bceda}.reader-lesson-list button.reader-course-lesson-toggle:hover{background:#eef7f9;border-color:#abd8df}.reader-lesson-list button.reader-course-lesson-toggle.active{background:#eaf7f9;border-color:#83c8d4}.reader-course-lesson-toggle>span:first-child{display:grid;width:56px;min-height:25px;place-items:center;color:var(--brand-dark);background:#dff3f6;border-radius:999px;font-size:10px;font-weight:700}.reader-course-lesson-toggle>span:nth-child(2)>strong{overflow:hidden;color:var(--ink);font-size:12px;text-overflow:ellipsis;white-space:nowrap}.reader-course-lesson-state{display:flex;align-items:center;gap:5px;color:var(--muted)}.reader-lesson-list .reader-course-lesson-state small{margin:0;color:var(--brand-dark);font-weight:650}.reader-course-lesson-state .anticon-check-circle{color:#2f8b70}.reader-course-lesson-state .anticon-down{font-size:10px;transition:transform .2s ease}.reader-course-lesson-toggle.expanded .reader-course-lesson-state .anticon-down{transform:rotate(180deg)}.reader-course-lesson-toggle+.reader-course-lesson-content{margin:5px 0 0 8px;padding:2px 0 2px 7px;border-left:2px solid #dcecef}.reader-course-lesson-toggle+.reader-course-lesson-content .reader-chapter>button{min-height:50px}.reader-chapter+.reader-chapter{margin-top:13px}.reader-chapter h3{margin:4px 8px 6px;color:#47677d;font-size:11px;letter-spacing:.04em}.reader-lesson-list button{display:grid;width:100%;min-height:54px;padding:9px 10px;align-items:center;grid-template-columns:27px minmax(0,1fr) auto;gap:9px;color:var(--ink);text-align:left;background:transparent;border:1px solid transparent;border-radius:7px;cursor:pointer}.reader-lesson-list button+button{margin-top:5px}.reader-lesson-list button:hover{background:var(--surface-soft)}.reader-lesson-list button.active{background:var(--brand-soft);border-color:#8bceda}.reader-lesson-list button.completed{color:#34745f;border-color:#2f8b70}.reader-lesson-list button.completed small{color:#2f8b70;font-weight:650}.reader-lesson-list button.completed .anticon-check-circle{color:#2f8b70}.reader-lesson-list button.completed.active{border-color:#2f8b70}.reader-lesson-list button span:nth-child(2){display:flex;min-width:0;flex-direction:column;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.reader-lesson-title-track{display:block;width:100%;overflow:hidden}.reader-lesson-title-track strong{display:block;width:max-content;min-width:100%;color:#111}.reader-lesson-list button:hover .reader-lesson-title-track strong.is-overflowing,.reader-lesson-list button:focus-visible .reader-lesson-title-track strong.is-overflowing{animation:reader-title-marquee var(--reader-title-duration, 4s) ease-in-out infinite alternate}@keyframes reader-title-marquee{0%,10%{transform:translate(0)}90%,to{transform:translate(var(--reader-title-shift))}}.reader-lesson-list button small{margin-top:2px;color:var(--muted);font-size:10px}.reader-content{min-width:0;padding:32px clamp(22px,4vw,72px);overflow-y:auto;scroll-behavior:smooth;background:#f9fcfd;scrollbar-width:thin;scrollbar-color:transparent transparent}.reader-content:hover,.reader-content:focus-within{scrollbar-color:rgba(100,130,148,.45) transparent}.reader-content::-webkit-scrollbar{width:8px;height:8px}.reader-content::-webkit-scrollbar-track{background:transparent}.reader-content::-webkit-scrollbar-thumb{background-color:transparent;border-radius:999px;border:2px solid transparent;background-clip:padding-box}.reader-content:hover::-webkit-scrollbar-thumb,.reader-content:focus-within::-webkit-scrollbar-thumb{background-color:#6482946b;background-clip:padding-box}.reader-content::-webkit-scrollbar-thumb:hover{background-color:#64829494}.reader-lesson-heading{max-width:920px;margin:0 auto 26px;padding-bottom:22px;border-bottom:1px solid var(--line)}.reader-lesson-heading h1{margin:8px 0 6px;color:var(--ink);font-size:clamp(26px,3vw,38px);line-height:1.3}.reader-lesson-heading p{margin:0;color:var(--muted);line-height:23px}.reader-markdown,.reader-resources,.reader-navigation{max-width:920px;margin-right:auto;margin-left:auto}.reader-markdown{min-height:260px}.reader-resources{margin-top:34px;padding-top:24px;border-top:1px solid var(--line)}.reader-resources h2{margin:0 0 14px;color:var(--ink);font-size:18px}.reader-resource-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.reader-resource-card{min-width:0;margin:0;padding:14px;background:#f7fbfc;border:1px solid var(--line);border-radius:8px;transition:border-color .2s,box-shadow .2s}.reader-resource-card:hover{border-color:rgba(var(--class-accent-rgb),.2);box-shadow:0 4px 12px #0000000d}.reader-resource-card img,.reader-resource-card video{display:block;width:100%;max-height:420px;margin-top:12px;object-fit:contain;background:#eaf2f5;border-radius:5px}.reader-resource-card a{display:flex;min-width:0;align-items:center;gap:8px;color:var(--brand-dark);font-weight:600}.reader-resource-card figcaption{display:flex;margin-top:9px;align-items:center;justify-content:space-between;gap:8px;color:var(--muted);font-size:11px}.reader-resource-card figcaption a{font-weight:500}.reader-resource-card a span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.reader-navigation{display:flex;margin-top:38px;padding:22px 0 8px;align-items:center;justify-content:space-between;gap:12px;border-top:1px solid var(--line)}.reader-navigation .ant-btn{border-radius:8px;font-weight:560;transition:all .22s cubic-bezier(.22,.61,.36,1)}.reader-navigation .ant-btn-primary{background:linear-gradient(135deg,#119fbe,#0d8da7);border-color:transparent;box-shadow:0 3px 10px #119fbe38}.reader-navigation .ant-btn-primary:hover{box-shadow:0 5px 16px #119fbe52;transform:translateY(-1px)}.reader-navigation .ant-btn:nth-child(2){margin-left:auto}@media(max-width:1180px){.student-course-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.course-editor-layout{grid-template-columns:250px minmax(0,1fr)}.markdown-editor-grid{grid-template-columns:1fr}.markdown-preview{min-height:320px}.resource-editor-item{grid-template-columns:38px minmax(120px,1fr) auto repeat(4,auto)}.course-composer{grid-template-columns:250px minmax(0,1fr)}.composer-preview{position:static;max-height:none;grid-column:2}.composer-preview .preview-scroll,.composer-preview .preview-stage.is-mobile .preview-scroll{max-height:520px}.placement-setting-card{grid-template-columns:minmax(180px,1fr) repeat(2,100px)}.placement-setting-card>.ant-input{grid-column:span 2}}@media(max-width:820px){.course-editor-layout,.course-reader-layout{height:auto;min-height:0;grid-template-columns:1fr}.lesson-outline-panel{position:static;max-height:none}.lesson-outline-list{max-height:300px}.reader-outline{max-height:340px}.reader-content{max-height:none;min-height:70vh;overflow:visible}.resource-editor-item{grid-template-columns:36px minmax(0,1fr) auto}.resource-editor-item>.ant-btn{grid-column:auto}.resource-editor-copy{grid-column:2 / -1}.reader-resource-list{grid-template-columns:1fr}.course-composer{min-height:0;grid-template-columns:1fr}.composer-outline{position:static;max-height:none}.chapter-tree,.preview-scroll{max-height:none}.composer-outline .chapter-tree{max-height:330px}.placement-setting-card{grid-template-columns:1fr 95px 105px}.placement-setting-card>.ant-input{grid-column:1 / -1}.placement-actions{grid-column:1 / -1;justify-content:flex-end}.html-page-workbench{grid-template-columns:minmax(0,1fr)}}@media(max-width:560px){.student-course-grid{grid-template-columns:1fr}.course-cover{height:150px}.composer-editor>.panel-heading{align-items:stretch;flex-direction:column;gap:9px}.composer-editor>.panel-heading>div:first-child{width:100%}.editor-actions{width:100%}.editor-actions .ant-btn{flex:1}.lesson-editor-panel>.ant-form,.reader-content{padding:16px}.resource-editor-item{display:flex;align-items:flex-start;flex-wrap:wrap}.resource-editor-copy{width:calc(100% - 48px)}.reader-navigation{flex-wrap:wrap}.editor-toolbar,.asset-drawer-toolbar{align-items:stretch;flex-direction:column}.editor-toolbar .ant-select{width:100%!important}.course-body-source{min-height:330px}.preview-heading{align-items:flex-start;flex-direction:column}.preview-device-switch{width:100%}.preview-device-switch button{flex:1}.preview-stage.is-mobile{padding:12px}.placement-setting-card{grid-template-columns:1fr 1fr}.placement-setting-card .asset-mini{grid-column:1 / -1}.asset-library-card{grid-template-columns:42px minmax(0,1fr)}.asset-library-card>.ant-btn,.asset-library-card>.asset-library-actions,.asset-library-card>.asset-library-state{grid-column:1 / -1;justify-self:start}.upload-item{grid-template-columns:1fr}.course-create-upload{grid-template-columns:38px minmax(0,1fr)}.course-create-upload-icon{width:38px;height:38px}.course-create-upload-action{grid-column:1 / -1}.course-create-file-item{grid-template-columns:20px minmax(0,1fr) 28px}.course-create-file-item .ant-progress{grid-column:1 / -1;grid-row:2}.chapter-dialog{padding:24px 20px 20px;grid-template-columns:44px minmax(0,1fr);column-gap:13px}.chapter-dialog-icon{width:44px;height:44px;border-radius:13px;font-size:20px}.chapter-dialog-copy{padding-right:28px}.chapter-dialog-copy h2{font-size:19px;line-height:26px}.chapter-dialog-copy p{margin-top:3px}.chapter-dialog-form{margin-top:20px;padding:15px}.chapter-dialog-actions{margin-top:16px}}@media(prefers-reduced-motion:reduce){.reader-lesson-title-track strong.is-overflowing{animation:none!important}}@media(max-width:767px){.course-placement{width:100%!important}}@media(max-width:767px){.lesson-sequencer-heading{align-items:flex-start;flex-direction:column;gap:3px}.lesson-sequencer-track{padding-inline:12px}.course-lesson-card{min-width:272px}.course-composer{display:block}.mobile-outline-trigger{display:inline-flex!important;width:100%;margin-bottom:10px;justify-content:center}.composer-outline{position:fixed;z-index:1002;top:0;bottom:0;left:0;display:none;width:min(340px,90vw);max-height:100vh;border-radius:0;box-shadow:12px 0 35px #14374b33}.composer-outline.mobile-open{display:block}.composer-outline.mobile-open+.composer-editor{min-width:0}.mobile-outline-backdrop{position:fixed;z-index:1001;inset:0;display:block;background:#0e25345c}.mobile-outline-close{display:inline-flex!important}.composer-outline .chapter-tree{max-height:calc(100vh - 72px)}.composer-editor,.composer-preview{margin-bottom:12px}.lesson-create-actions,.html-page-slots,.html-asset-filters,.html-page-regions-editor{grid-template-columns:1fr}.html-page-builder-toolbar{align-items:stretch;flex-direction:column}.html-page-builder-toolbar>div{margin-right:0}.html-lesson-layout-settings{grid-template-columns:1fr 1fr}.html-lesson-layout-settings>div{grid-column:1 / -1}.html-page-layout-settings{align-items:stretch;flex-direction:column}.html-page-layout-settings label{margin-right:0}.html-page-workbench{grid-template-columns:1fr}.html-page-list{max-height:240px}}.notification-brief-overlay.ant-dropdown{padding:0}.notification-brief-trigger{display:inline-flex;align-items:center}.notification-popover{width:min(380px,calc(100vw - 24px));overflow:hidden;border:1px solid #e7eef3;border-radius:14px;background:#fff;box-shadow:0 16px 44px #0f304029}.notification-popover-head{display:flex;align-items:center;justify-content:space-between;padding:16px 16px 10px}.notification-popover-head>div{display:flex;flex-direction:column;gap:2px}.notification-popover-head strong{color:#183b4b;font-size:16px}.notification-popover-head small{color:#8498a4;font-size:12px}.notification-popover-tabs{display:flex;gap:6px;padding:0 16px 10px;border-bottom:1px solid #edf2f5}.notification-popover-tabs button{min-height:32px;padding:5px 13px;border:0;border-radius:999px;color:#617984;background:transparent;cursor:pointer}.notification-popover-tabs button:focus-visible,.notification-preview-item:focus-visible,.notification-popover-more:focus-visible{outline:2px solid #087c78;outline-offset:2px}.notification-popover-tabs button.active{color:#087c78;background:#e8f7f5;font-weight:600}.notification-popover-list{max-height:390px;overflow-x:hidden;overflow-y:auto;padding:6px;scrollbar-width:thin;scrollbar-color:transparent transparent}.notification-popover-list:hover,.notification-popover-list:focus-within{scrollbar-color:rgba(100,130,148,.45) transparent}.notification-popover-list::-webkit-scrollbar{width:8px}.notification-popover-list::-webkit-scrollbar-track{background:transparent}.notification-popover-list::-webkit-scrollbar-thumb{background-color:transparent;border-radius:999px;border:2px solid transparent;background-clip:padding-box}.notification-popover-list:hover::-webkit-scrollbar-thumb,.notification-popover-list:focus-within::-webkit-scrollbar-thumb{background-color:#6482946b;background-clip:padding-box}.notification-popover-list::-webkit-scrollbar-thumb:hover{background-color:#64829494}.notification-preview-item{display:grid;grid-template-columns:34px minmax(0,1fr) 8px;gap:10px;width:100%;padding:11px 10px;border:0;border-radius:10px;text-align:left;background:transparent;cursor:pointer}.notification-preview-item:hover{background:#f5faf9}.notification-preview-item.unread{background:#f1fbfa}.notification-preview-item>span:nth-child(2){min-width:0}.notification-preview-item strong,.notification-preview-item small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.notification-preview-item strong{color:#173b4a;font-size:13px}.notification-preview-item small{margin-top:4px;color:#738995;font-size:12px}.notification-preview-item i{align-self:center;width:7px;height:7px;border-radius:50%;background:#10a49d}.notification-preview-icon{display:grid;width:34px;height:34px;place-items:center;border-radius:10px;color:#07827d;background:#dff6f3}.notification-popover-more{width:100%;min-height:44px;border:0;border-top:1px solid #edf2f5;color:#087c78;background:#fff;font-weight:600;cursor:pointer}.notification-popover-more:hover{background:#f5faf9}.notification-center-panel{overflow:hidden;padding:0}.notification-center-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 20px;border-bottom:1px solid #edf2f5}.notification-category-tabs{display:flex;flex-wrap:wrap;gap:8px}.notification-category-tabs>button{display:inline-flex;height:38px;padding:0 14px;align-items:center;gap:7px;border:1px solid transparent;border-radius:10px;color:#5e7681;background:transparent;cursor:pointer}.notification-category-tabs>button:hover{background:#f4f8f9}.notification-category-tabs>button.active{border-color:#b9e6e2;color:#087c78;background:#eaf8f6;font-weight:600}.notification-bulk-row{display:flex;min-height:48px;padding:0 22px;align-items:center;gap:18px;color:#81929b;border-bottom:1px solid #edf2f5;font-size:12px}.notification-center-list{min-height:180px}.notification-center-item{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:14px;padding:16px 22px;align-items:center;border-bottom:1px solid #edf2f5;transition:background .2s ease}.notification-center-item:hover{background:#f9fbfc}.notification-center-item.unread{background:#f5fcfb}.notification-center-main{display:flex;min-width:0;padding:0;align-items:center;gap:14px;border:0;text-align:left;background:transparent;cursor:pointer}.notification-center-icon{display:grid;flex:0 0 42px;width:42px;height:42px;place-items:center;border-radius:12px;color:#087c78;background:#e3f7f4;font-size:18px}.notification-center-icon.category-grade{color:#b16a00;background:#fff3dc}.notification-center-icon.category-system{color:#5067a7;background:#edf0ff}.notification-center-copy{min-width:0}.notification-center-title{display:flex;align-items:center;gap:8px}.notification-center-title strong{overflow:hidden;color:#173b4a;font-size:15px;text-overflow:ellipsis;white-space:nowrap}.notification-center-title i{flex:0 0 7px;width:7px;height:7px;border-radius:50%;background:#10a49d}.notification-center-copy p{margin:5px 0;overflow:hidden;color:#667d87;font-size:13px;text-overflow:ellipsis;white-space:nowrap}.notification-center-copy small{color:#95a4ab;font-size:12px}.notification-center-actions{display:flex;align-items:center;gap:2px}.notification-pagination{display:flex;padding:18px 22px;justify-content:flex-end}@media(max-width:760px){.notification-center-toolbar{align-items:stretch;flex-direction:column}.notification-category-tabs{display:grid;grid-template-columns:1fr 1fr}.notification-center-item{grid-template-columns:auto minmax(0,1fr);padding:14px}.notification-center-actions{grid-column:2;justify-content:flex-end}.notification-center-icon{width:36px;height:36px;flex-basis:36px}}.clickable-card{transition:box-shadow .2s ease,transform .2s ease;cursor:pointer}.clickable-card:hover{box-shadow:0 2px 8px #00000014;transform:translateY(-1px)}.clickable-card:active{transform:translateY(0)}.transition-base{transition:all .15s ease}.fade-up-enter-active{transition:opacity .3s ease,transform .3s ease}.fade-up-enter-from{opacity:0;transform:translateY(8px)}@media(max-width:1024px){.teacher-layout,.admin-layout{flex-direction:column}}@media(max-width:768px){.page-container{padding:12px}.ant-card{border-radius:8px}.ant-table{font-size:13px}}.ant-modal-root:has(>.ant-modal-wrap.class-glass-dialog)>.ant-modal-mask{background:var(--class-mask-glass)!important;backdrop-filter:blur(10px) saturate(140%)!important;-webkit-backdrop-filter:blur(10px) saturate(140%)!important}.ant-modal-wrap.class-glass-dialog{padding:0!important;text-align:left!important;overflow:auto}.ant-modal-wrap.class-glass-dialog:before{display:none!important;content:none!important}.ant-modal-wrap.class-glass-dialog .ant-modal{position:fixed!important;inset:16px 16px auto auto!important;margin:0!important;padding-bottom:0!important;display:block!important;max-width:min(520px,calc(100vw - 32px))}.ant-modal-wrap.class-glass-dialog.notice-file-preview-dialog .ant-modal{inset:auto!important}.ant-modal-wrap.class-glass-dialog.notice-file-preview-dialog{padding:12px!important}.ant-modal-wrap.class-glass-dialog.notice-file-preview-dialog .ant-modal{position:fixed!important;inset:50% auto auto!important;inset:50% auto auto 50%!important;margin:0!important;transform:translate(-50%,-50%)!important;width:min(960px,calc(100vw - 24px))!important;max-width:min(960px,calc(100vw - 24px))!important;height:auto!important;max-height:calc(100dvh - 24px)!important}.ant-modal-wrap.class-glass-dialog.notice-file-preview-dialog .ant-modal-content{display:flex!important;flex-direction:column!important;overflow:hidden!important;height:auto!important;max-height:calc(100dvh - 24px)!important;background:#eef4f6!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}.ant-modal-wrap.class-glass-dialog.notice-file-preview-dialog .ant-modal-header{flex:0 0 auto!important;min-width:0!important}.ant-modal-wrap.class-glass-dialog.notice-file-preview-dialog .ant-modal-title{overflow:hidden!important;max-width:100%!important;text-overflow:ellipsis!important;white-space:nowrap!important}.ant-modal-wrap.class-glass-dialog.notice-file-preview-dialog .ant-modal-footer{flex:0 0 auto!important;margin:0!important;padding:.65rem 1rem .85rem!important;background:transparent!important;border-top:1px solid rgba(228,238,241,.55)!important}.ant-modal-wrap.class-glass-dialog.notice-file-preview-dialog .ant-modal-body{display:flex!important;flex:1 1 auto!important;flex-direction:column!important;min-height:min(68dvh,36rem)!important;overflow:hidden!important;padding:.4rem .55rem .55rem!important}.ant-modal-wrap.class-glass-dialog.admin-question-import-dialog .ant-modal{inset:16px 16px auto auto!important;width:min(560px,calc(100vw - 32px))!important;max-width:min(560px,calc(100vw - 32px))!important;max-height:calc(100dvh - 32px)!important;translate:none}.ant-modal-wrap.class-glass-dialog.admin-question-import-dialog--center .ant-modal{inset:50% auto auto 50%!important;width:min(920px,calc(100vw - 32px))!important;max-width:min(920px,calc(100vw - 32px))!important;translate:-50% -50%}.ant-modal-wrap.class-glass-dialog.admin-question-import-dialog .ant-modal-content{display:flex!important;flex-direction:column!important;overflow:hidden!important;max-height:calc(100dvh - 32px)!important}.ant-modal-wrap.class-glass-dialog.admin-question-import-dialog .ant-modal-header,.ant-modal-wrap.class-glass-dialog.admin-question-import-dialog .ant-modal-footer{flex:0 0 auto!important}.ant-modal-wrap.class-glass-dialog.admin-question-import-dialog .ant-modal-body{flex:1 1 auto!important;min-height:0!important;max-height:min(72vh,calc(100dvh - 168px))!important;overflow:auto!important}.ant-modal-wrap.class-glass-dialog.admin-question-import-dialog--compact .ant-modal-body{max-height:none!important}@media(max-width:1024px){.ant-modal-wrap.class-glass-dialog.admin-question-import-dialog--center .ant-modal{width:calc(100vw - 24px)!important;max-width:calc(100vw - 24px)!important}}@media(max-width:768px){.ant-modal-wrap.class-glass-dialog.admin-question-import-dialog .ant-modal,.ant-modal-wrap.class-glass-dialog.admin-question-import-dialog--center .ant-modal{inset:8px 8px auto!important;width:calc(100vw - 16px)!important;max-width:calc(100vw - 16px)!important;max-height:calc(100dvh - 16px)!important;translate:none!important}.ant-modal-wrap.class-glass-dialog.admin-question-import-dialog .ant-modal-content{max-height:calc(100dvh - 16px)!important}.ant-modal-wrap.class-glass-dialog.admin-question-import-dialog .ant-modal-body{max-height:calc(100dvh - 148px)!important}.ant-modal-wrap.class-glass-dialog.admin-question-import-dialog--compact .ant-modal-body{max-height:none!important}.ant-modal-wrap.class-glass-dialog.admin-question-import-dialog .ant-modal-footer{display:flex!important;flex-wrap:wrap!important;gap:8px!important}.ant-modal-wrap.class-glass-dialog.admin-question-import-dialog .ant-modal-footer .ant-btn{flex:1 1 calc(50% - 4px);min-height:44px}}@media(max-width:430px){.ant-modal-wrap.class-glass-dialog.admin-question-import-dialog .ant-modal,.ant-modal-wrap.class-glass-dialog.admin-question-import-dialog--center .ant-modal{inset:0!important;width:100vw!important;max-width:100vw!important;max-height:100dvh!important;border-radius:0!important}.ant-modal-wrap.class-glass-dialog.admin-question-import-dialog .ant-modal-content{max-height:100dvh!important;border-radius:0!important}.ant-modal-wrap.class-glass-dialog.admin-question-import-dialog .ant-modal-body{max-height:calc(100dvh - 132px)!important}.ant-modal-wrap.class-glass-dialog.admin-question-import-dialog .ant-modal-footer .ant-btn{flex:1 1 100%}}.ant-modal-wrap.class-glass-dialog.submission-detail-dialog .ant-modal{position:fixed!important;inset:16px 16px auto auto!important;margin:0!important;width:min(520px,calc(100vw - 32px))!important;max-width:min(520px,calc(100vw - 32px))!important;height:auto!important;max-height:min(88dvh,calc(100dvh - 32px))!important;transform:none!important;translate:none}.ant-modal-wrap.class-glass-dialog.submission-detail-dialog .ant-modal-content{display:flex!important;flex-direction:column!important;height:auto!important;max-height:min(88dvh,calc(100dvh - 32px))!important;overflow:hidden!important}.ant-modal-wrap.class-glass-dialog.submission-detail-dialog .ant-modal-header{flex:0 0 auto!important}.ant-modal-wrap.class-glass-dialog.submission-detail-dialog .ant-modal-body{flex:1 1 auto!important;min-height:0!important;max-height:none!important;overflow-x:hidden!important;overflow-y:auto!important;padding:1rem 1.15rem 1.15rem!important;-webkit-overflow-scrolling:touch;scrollbar-gutter:stable;scrollbar-width:thin;scrollbar-color:transparent transparent}.ant-modal-wrap.class-glass-dialog.submission-detail-dialog .ant-modal-body:hover,.ant-modal-wrap.class-glass-dialog.submission-detail-dialog .ant-modal-body:focus-within{scrollbar-color:rgba(100,130,148,.45) transparent}.ant-modal-wrap.class-glass-dialog.submission-detail-dialog .ant-modal-body::-webkit-scrollbar{width:8px;height:8px}.ant-modal-wrap.class-glass-dialog.submission-detail-dialog .ant-modal-body::-webkit-scrollbar-track{background:transparent}.ant-modal-wrap.class-glass-dialog.submission-detail-dialog .ant-modal-body::-webkit-scrollbar-thumb{background-color:transparent;border-radius:999px;border:2px solid transparent;background-clip:padding-box}.ant-modal-wrap.class-glass-dialog.submission-detail-dialog .ant-modal-body:hover::-webkit-scrollbar-thumb,.ant-modal-wrap.class-glass-dialog.submission-detail-dialog .ant-modal-body:focus-within::-webkit-scrollbar-thumb{background-color:#6482946b;background-clip:padding-box}.ant-modal-wrap.class-glass-dialog.submission-detail-dialog .ant-modal-body::-webkit-scrollbar-thumb:hover{background-color:#6482949e;background-clip:padding-box}.ant-modal-wrap.class-glass-dialog.submission-detail-dialog .ant-modal-footer{flex:0 0 auto!important;margin-top:0!important}@media(max-width:760px){.ant-modal-wrap.class-glass-dialog.submission-detail-dialog .ant-modal{inset:10px 10px auto!important;width:auto!important;max-width:none!important;max-height:calc(100dvh - 20px)!important}.ant-modal-wrap.class-glass-dialog.submission-detail-dialog .ant-modal-content{max-height:calc(100dvh - 20px)!important;border-radius:1.1rem!important}}.ant-modal-wrap.class-glass-dialog.grading-history-dialog .ant-modal{position:fixed!important;inset:16px 16px auto auto!important;margin:0!important;width:min(520px,calc(100vw - 32px))!important;max-width:min(520px,calc(100vw - 32px))!important;height:auto!important;max-height:min(88dvh,calc(100dvh - 32px))!important;translate:none}.ant-modal-wrap.class-glass-dialog.grading-history-dialog .ant-modal-content{display:flex!important;flex-direction:column!important;height:auto!important;max-height:min(88dvh,calc(100dvh - 32px))!important;overflow:hidden!important}.ant-modal-wrap.class-glass-dialog.grading-history-dialog .ant-modal-header{display:flex;flex:0 0 auto!important;align-items:center;padding:12px 1.15rem!important}.ant-modal-wrap.class-glass-dialog.grading-history-dialog .ant-modal-title{flex:1 1 auto;width:100%!important;max-width:100%!important;min-width:0;padding-right:2.75rem!important}.ant-modal-wrap.class-glass-dialog.grading-history-dialog .ant-modal-close{top:12px!important;inset-inline-end:8px!important;width:2.75rem;height:2.75rem}.ant-modal-wrap.class-glass-dialog.grading-history-dialog .ant-modal-close-x{display:flex;width:2.75rem;height:2.75rem;align-items:center;justify-content:center;line-height:2.75rem;font-size:16px}.ant-modal-wrap.class-glass-dialog.grading-history-dialog .history-modal-title{display:flex;align-items:center;justify-content:space-between;gap:.75rem;width:100%;min-width:0;min-height:2.75rem}.ant-modal-wrap.class-glass-dialog.grading-history-dialog .history-modal-title>span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ant-modal-wrap.class-glass-dialog.grading-history-dialog .history-modal-title .ant-tag{flex:0 0 auto;margin-inline-end:0!important}.ant-modal-wrap.class-glass-dialog.grading-history-dialog .ant-modal-body{flex:1 1 auto!important;min-height:0!important;max-height:none!important;overflow-x:hidden!important;overflow-y:auto!important;padding:1rem 1.15rem 1.15rem!important;-webkit-overflow-scrolling:touch}@media(max-width:760px){.ant-modal-wrap.class-glass-dialog.grading-history-dialog .ant-modal{inset:10px 10px auto!important;width:auto!important;max-width:none!important;max-height:calc(100dvh - 20px)!important}.ant-modal-wrap.class-glass-dialog.grading-history-dialog .ant-modal-content{max-height:calc(100dvh - 20px)!important;border-radius:1.1rem!important}}.ant-modal-wrap.class-glass-dialog.appeal-history-dialog .ant-modal-header{display:flex;align-items:center;padding:12px 1.15rem!important}.ant-modal-wrap.class-glass-dialog.appeal-history-dialog .ant-modal-title{flex:1 1 auto;width:100%!important;max-width:100%!important;min-width:0;padding-right:2.75rem!important}.ant-modal-wrap.class-glass-dialog.appeal-history-dialog .ant-modal-close{top:12px!important;inset-inline-end:8px!important;width:2.75rem;height:2.75rem}.ant-modal-wrap.class-glass-dialog.appeal-history-dialog .ant-modal-close-x{display:flex;width:2.75rem;height:2.75rem;align-items:center;justify-content:center;line-height:2.75rem;font-size:16px}.ant-modal-wrap.class-glass-dialog.appeal-history-dialog .history-modal-title{display:flex;align-items:center;justify-content:space-between;gap:.75rem;width:100%;min-width:0;min-height:2.75rem;padding-right:0}.ant-modal-wrap.class-glass-dialog.appeal-history-dialog .history-modal-title>span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ant-modal-wrap.class-glass-dialog.appeal-history-dialog .history-modal-title .ant-tag{flex:0 0 auto;margin-inline-end:0!important}.ant-modal-wrap.class-glass-dialog.question-preview-dialog .ant-modal{inset:16px 16px auto auto!important;width:min(560px,calc(100vw - 32px))!important;max-width:min(560px,calc(100vw - 32px))!important;height:auto!important;max-height:min(92dvh,calc(100dvh - 32px))!important;translate:none}.ant-modal-wrap.class-glass-dialog.question-preview-dialog .ant-modal-content{display:flex!important;flex-direction:column!important;height:auto!important;max-height:min(92dvh,calc(100dvh - 32px))!important;overflow:hidden!important}.ant-modal-wrap.class-glass-dialog.question-preview-dialog .ant-modal-header{display:flex;flex:0 0 auto!important;align-items:center;padding:12px 1.15rem!important}.ant-modal-wrap.class-glass-dialog.question-preview-dialog .ant-modal-title{flex:1 1 auto;min-width:0;padding-right:40px}.ant-modal-wrap.class-glass-dialog.question-preview-dialog .ant-modal-close{top:12px!important;inset-inline-end:10px!important;width:32px;height:32px}.ant-modal-wrap.class-glass-dialog.question-preview-dialog .ant-modal-close-x{display:flex;width:32px;height:32px;align-items:center;justify-content:center;line-height:32px;font-size:16px}.ant-modal-wrap.class-glass-dialog.question-preview-dialog .question-preview-title{display:flex;align-items:center;gap:8px;min-height:32px}.ant-modal-wrap.class-glass-dialog.question-preview-dialog .question-preview-title-text{flex:1 1 auto;min-width:0}.ant-modal-wrap.class-glass-dialog.question-preview-dialog .question-preview-edit.ant-btn{display:inline-flex;flex:0 0 auto;align-items:center;justify-content:center;height:32px;min-height:32px;padding-inline:10px;font-size:13px;line-height:1}.ant-modal-wrap.class-glass-dialog.question-preview-dialog .ant-modal-body{flex:1 1 auto!important;min-height:0!important;max-height:none!important;overflow-x:hidden!important;overflow-y:auto!important;padding:1rem 1.15rem 1.15rem!important;-webkit-overflow-scrolling:touch;scrollbar-gutter:stable;scrollbar-width:thin;scrollbar-color:transparent transparent}.ant-modal-wrap.class-glass-dialog.question-preview-dialog .ant-modal-body:hover,.ant-modal-wrap.class-glass-dialog.question-preview-dialog .ant-modal-body:focus-within{scrollbar-color:rgba(100,130,148,.45) transparent}.ant-modal-wrap.class-glass-dialog.question-preview-dialog .ant-modal-body::-webkit-scrollbar{width:8px;height:8px}.ant-modal-wrap.class-glass-dialog.question-preview-dialog .ant-modal-body::-webkit-scrollbar-track{background:transparent}.ant-modal-wrap.class-glass-dialog.question-preview-dialog .ant-modal-body::-webkit-scrollbar-thumb{background-color:transparent;border-radius:999px;border:2px solid transparent;background-clip:padding-box}.ant-modal-wrap.class-glass-dialog.question-preview-dialog .ant-modal-body:hover::-webkit-scrollbar-thumb,.ant-modal-wrap.class-glass-dialog.question-preview-dialog .ant-modal-body:focus-within::-webkit-scrollbar-thumb{background-color:#6482946b;background-clip:padding-box}.ant-modal-wrap.class-glass-dialog.question-preview-dialog .ant-modal-body::-webkit-scrollbar-thumb:hover{background-color:#6482949e;background-clip:padding-box}@media(max-width:760px){.ant-modal-wrap.class-glass-dialog.question-preview-dialog .ant-modal{inset:10px 10px auto!important;width:auto!important;max-width:none!important;max-height:min(94dvh,calc(100dvh - 20px))!important}.ant-modal-wrap.class-glass-dialog.question-preview-dialog .ant-modal-content{max-height:min(94dvh,calc(100dvh - 20px))!important}.ant-modal-wrap.class-glass-dialog.question-preview-dialog .question-preview-title{min-height:44px}.ant-modal-wrap.class-glass-dialog.question-preview-dialog .question-preview-edit.ant-btn{height:44px;min-height:44px;min-width:44px}.ant-modal-wrap.class-glass-dialog.question-preview-dialog .ant-modal-close{width:44px;height:44px}.ant-modal-wrap.class-glass-dialog.question-preview-dialog .ant-modal-close-x{width:44px;height:44px;line-height:44px}.ant-modal-wrap.class-glass-dialog.question-preview-dialog .ant-modal-title{padding-right:52px}}@media(max-width:430px){.ant-modal-wrap.class-glass-dialog.question-preview-dialog .ant-modal{inset:8px 8px auto!important;width:calc(100vw - 16px)!important;max-width:calc(100vw - 16px)!important;max-height:min(94dvh,calc(100dvh - 16px))!important}.ant-modal-wrap.class-glass-dialog.question-preview-dialog .ant-modal-content{max-height:min(94dvh,calc(100dvh - 16px))!important}}.ant-modal-wrap.class-glass-dialog.admin-review-dialog .ant-modal{inset:50% auto auto 50%!important;width:min(720px,calc(100vw - 32px))!important;max-width:min(720px,calc(100vw - 32px))!important;height:auto!important;max-height:min(92dvh,calc(100dvh - 32px))!important;translate:-50% -50%}.ant-modal-wrap.class-glass-dialog.admin-review-dialog .ant-modal-content{display:flex!important;flex-direction:column!important;height:auto!important;max-height:min(92dvh,calc(100dvh - 32px))!important;overflow:hidden!important}.ant-modal-wrap.class-glass-dialog.admin-review-dialog .ant-modal-header,.ant-modal-wrap.class-glass-dialog.admin-review-dialog .ant-modal-footer{flex:0 0 auto!important}.ant-modal-wrap.class-glass-dialog.admin-review-dialog .ant-modal-body{flex:1 1 auto!important;min-height:0!important;overflow-x:hidden!important;overflow-y:auto!important;padding:16px 20px 20px!important;-webkit-overflow-scrolling:touch;scrollbar-gutter:stable}.ant-modal-wrap.class-glass-dialog.admin-review-dialog .ant-modal-footer{margin-top:0!important;padding:12px 20px 16px!important}@media(max-width:760px){.ant-modal-wrap.class-glass-dialog.admin-review-dialog .ant-modal{inset:10px!important;width:auto!important;max-width:none!important;max-height:calc(100dvh - 20px)!important;translate:none!important}.ant-modal-wrap.class-glass-dialog.admin-review-dialog .ant-modal-content{max-height:calc(100dvh - 20px)!important}}@media(max-width:430px){.ant-modal-wrap.class-glass-dialog.admin-review-dialog .ant-modal{inset:0!important;width:100vw!important;max-width:100vw!important;max-height:100dvh!important;translate:none!important}.ant-modal-wrap.class-glass-dialog.admin-review-dialog .ant-modal-content{max-height:100dvh!important;border-radius:0!important}.ant-modal-wrap.class-glass-dialog.admin-review-dialog .ant-modal-footer .ant-btn{min-height:44px}}.ant-modal-wrap.class-glass-dialog.question-editor-dialog .ant-modal{inset:50% auto auto 50%!important;width:min(1100px,calc(100vw - 32px))!important;max-width:min(1100px,calc(100vw - 32px))!important;height:auto!important;max-height:min(94dvh,calc(100dvh - 16px))!important;translate:-50% -50%}.ant-modal-wrap.class-glass-dialog.question-editor-dialog .ant-modal-content{display:flex!important;flex-direction:column!important;height:auto!important;overflow:hidden!important;max-height:min(94dvh,calc(100dvh - 16px))!important}.ant-modal-wrap.class-glass-dialog.question-editor-dialog .ant-modal-header,.ant-modal-wrap.class-glass-dialog.question-editor-dialog .ant-modal-footer{flex:0 0 auto!important}.ant-modal-wrap.class-glass-dialog.question-editor-dialog .ant-modal-title{width:100%;max-width:100%}.ant-modal-wrap.class-glass-dialog.question-editor-dialog .ant-modal-body{flex:1 1 auto!important;min-height:0!important;max-height:none!important;overflow:auto!important;padding:.85rem 1.15rem 1rem!important;-webkit-overflow-scrolling:touch;scrollbar-gutter:stable;scrollbar-width:thin;scrollbar-color:transparent transparent}.ant-modal-wrap.class-glass-dialog.question-editor-dialog .ant-modal-body:hover,.ant-modal-wrap.class-glass-dialog.question-editor-dialog .ant-modal-body:focus-within{scrollbar-color:rgba(100,130,148,.45) transparent}.ant-modal-wrap.class-glass-dialog.question-editor-dialog .ant-modal-body::-webkit-scrollbar{width:8px;height:8px}.ant-modal-wrap.class-glass-dialog.question-editor-dialog .ant-modal-body::-webkit-scrollbar-track{background:transparent}.ant-modal-wrap.class-glass-dialog.question-editor-dialog .ant-modal-body::-webkit-scrollbar-thumb{background-color:transparent;border-radius:999px;border:2px solid transparent;background-clip:padding-box}.ant-modal-wrap.class-glass-dialog.question-editor-dialog .ant-modal-body:hover::-webkit-scrollbar-thumb,.ant-modal-wrap.class-glass-dialog.question-editor-dialog .ant-modal-body:focus-within::-webkit-scrollbar-thumb{background-color:#6482946b;background-clip:padding-box}.ant-modal-wrap.class-glass-dialog.question-editor-dialog .ant-modal-body::-webkit-scrollbar-thumb:hover{background-color:#6482949e;background-clip:padding-box}.ant-modal-wrap.class-glass-dialog.question-editor-dialog .rich-content-source-visual,.ant-modal-wrap.class-glass-dialog.question-editor-dialog .rich-content-preview-wrap{scrollbar-gutter:stable;scrollbar-width:thin;scrollbar-color:transparent transparent}.ant-modal-wrap.class-glass-dialog.question-editor-dialog .rich-content-source-visual:hover,.ant-modal-wrap.class-glass-dialog.question-editor-dialog .rich-content-source-visual:focus,.ant-modal-wrap.class-glass-dialog.question-editor-dialog .rich-content-preview-wrap:hover{scrollbar-color:rgba(100,130,148,.4) transparent}.ant-modal-wrap.class-glass-dialog.question-editor-dialog .rich-content-source-visual::-webkit-scrollbar,.ant-modal-wrap.class-glass-dialog.question-editor-dialog .rich-content-preview-wrap::-webkit-scrollbar{width:6px;height:6px}.ant-modal-wrap.class-glass-dialog.question-editor-dialog .rich-content-source-visual::-webkit-scrollbar-thumb,.ant-modal-wrap.class-glass-dialog.question-editor-dialog .rich-content-preview-wrap::-webkit-scrollbar-thumb{background-color:transparent;border-radius:999px}.ant-modal-wrap.class-glass-dialog.question-editor-dialog .rich-content-source-visual:hover::-webkit-scrollbar-thumb,.ant-modal-wrap.class-glass-dialog.question-editor-dialog .rich-content-source-visual:focus::-webkit-scrollbar-thumb,.ant-modal-wrap.class-glass-dialog.question-editor-dialog .rich-content-preview-wrap:hover::-webkit-scrollbar-thumb{background-color:#64829466}.ant-modal-wrap.class-glass-dialog.question-editor-dialog .ant-modal-footer{display:flex!important;justify-content:flex-end;gap:8px;padding:.75rem 1.15rem calc(.85rem + env(safe-area-inset-bottom))!important}.ant-modal-wrap.class-glass-dialog.question-editor-dialog .ant-modal-footer .ant-btn{min-width:96px;min-height:44px}@media(max-width:900px){.ant-modal-wrap.class-glass-dialog.question-editor-dialog .ant-modal{width:min(960px,calc(100vw - 24px))!important;max-width:min(960px,calc(100vw - 24px))!important}}@media(max-width:760px){.ant-modal-wrap.class-glass-dialog.question-editor-dialog .ant-modal{inset:8px 8px auto!important;width:auto!important;max-width:none!important;max-height:calc(100dvh - 16px)!important;translate:none!important}.ant-modal-wrap.class-glass-dialog.question-editor-dialog .ant-modal-content{max-height:calc(100dvh - 16px)!important}.ant-modal-wrap.class-glass-dialog.question-editor-dialog .ant-modal-footer{flex-wrap:wrap}.ant-modal-wrap.class-glass-dialog.question-editor-dialog .ant-modal-footer .ant-btn{flex:1 1 calc(50% - 4px)}}.ant-modal-wrap.class-glass-dialog.class-bank-picker-modal .ant-modal{inset:50% auto auto 50%!important;width:min(920px,calc(100vw - 32px))!important;max-width:min(920px,calc(100vw - 32px))!important;height:min(92dvh,calc(100dvh - 16px))!important;max-height:min(92dvh,calc(100dvh - 16px))!important;translate:-50% -50%}.ant-modal-wrap.class-glass-dialog.class-bank-picker-modal .ant-modal-content{display:flex!important;flex-direction:column!important;height:100%!important;overflow:hidden!important;max-height:none!important}.ant-modal-wrap.class-glass-dialog.class-bank-picker-modal .ant-modal-header,.ant-modal-wrap.class-glass-dialog.class-bank-picker-modal .ant-modal-footer{flex:0 0 auto!important}.ant-modal-wrap.class-glass-dialog.class-bank-picker-modal .ant-modal-body{display:flex!important;flex:1 1 auto!important;flex-direction:column!important;min-height:0!important;max-height:none!important;overflow-x:hidden!important;overflow-y:auto!important;padding:.85rem 1.15rem .65rem!important;-webkit-overflow-scrolling:touch;scrollbar-gutter:stable;scrollbar-width:thin;scrollbar-color:transparent transparent}@media(max-height:680px){.ant-modal-wrap.class-glass-dialog.class-bank-picker-modal .ant-modal{height:calc(100dvh - 8px)!important;max-height:calc(100dvh - 8px)!important}.ant-modal-wrap.class-glass-dialog.class-bank-picker-modal .ant-modal-body{padding-block:.5rem!important}}.ant-modal-wrap.class-glass-dialog.class-bank-picker-modal .ant-modal-body:hover,.ant-modal-wrap.class-glass-dialog.class-bank-picker-modal .ant-modal-body:focus-within{scrollbar-color:rgba(100,130,148,.45) transparent}.ant-modal-wrap.class-glass-dialog.class-bank-picker-modal .ant-modal-body::-webkit-scrollbar{width:8px;height:0}.ant-modal-wrap.class-glass-dialog.class-bank-picker-modal .ant-modal-body::-webkit-scrollbar-track{background:transparent}.ant-modal-wrap.class-glass-dialog.class-bank-picker-modal .ant-modal-body::-webkit-scrollbar-thumb{background-color:transparent;border-radius:999px;border:2px solid transparent;background-clip:padding-box}.ant-modal-wrap.class-glass-dialog.class-bank-picker-modal .ant-modal-body:hover::-webkit-scrollbar-thumb,.ant-modal-wrap.class-glass-dialog.class-bank-picker-modal .ant-modal-body:focus-within::-webkit-scrollbar-thumb{background-color:#6482946b;background-clip:padding-box}.ant-modal-wrap.class-glass-dialog.class-bank-picker-modal .ant-modal-body::-webkit-scrollbar-thumb:hover{background-color:#6482949e;background-clip:padding-box}@media(max-width:760px){.ant-modal-wrap.class-glass-dialog.class-bank-picker-modal .ant-modal{inset:8px 8px auto!important;width:auto!important;max-width:none!important;max-height:calc(100dvh - 16px)!important;translate:none!important}.ant-modal-wrap.class-glass-dialog.class-bank-picker-modal .ant-modal-content{max-height:calc(100dvh - 16px)!important}.ant-modal-wrap.class-glass-dialog.class-bank-picker-modal .ant-modal{height:calc(100dvh - 16px)!important}.ant-modal-wrap.class-glass-dialog.class-bank-picker-modal .ant-modal-body{min-height:0!important}}.ant-modal-wrap.class-glass-dialog.admin-pick-question-dialog .ant-modal{inset:50% auto auto 50%!important;width:min(720px,calc(100vw - 32px))!important;max-width:min(720px,calc(100vw - 32px))!important;height:auto!important;max-height:min(94dvh,calc(100dvh - 16px))!important;translate:-50% -50%}.ant-modal-wrap.class-glass-dialog.admin-pick-question-dialog .ant-modal-content{display:flex!important;flex-direction:column!important;height:auto!important;overflow:hidden!important;max-height:min(94dvh,calc(100dvh - 16px))!important}.ant-modal-wrap.class-glass-dialog.admin-pick-question-dialog .ant-modal-header,.ant-modal-wrap.class-glass-dialog.admin-pick-question-dialog .ant-modal-footer{flex:0 0 auto!important}.ant-modal-wrap.class-glass-dialog.admin-pick-question-dialog .ant-modal-body{flex:0 1 auto!important;height:auto!important;min-height:min(560px,68dvh)!important;max-height:min(84dvh,calc(100dvh - 140px))!important;overflow-x:hidden!important;overflow-y:auto!important;padding:1rem 1.15rem!important;-webkit-overflow-scrolling:touch;scrollbar-gutter:stable;scrollbar-width:thin;scrollbar-color:transparent transparent}.ant-modal-wrap.class-glass-dialog.admin-pick-question-dialog .ant-modal-body:hover,.ant-modal-wrap.class-glass-dialog.admin-pick-question-dialog .ant-modal-body:focus-within{scrollbar-color:rgba(100,130,148,.45) transparent}.ant-modal-wrap.class-glass-dialog.admin-pick-question-dialog .ant-modal-body::-webkit-scrollbar{width:8px;height:8px}.ant-modal-wrap.class-glass-dialog.admin-pick-question-dialog .ant-modal-body::-webkit-scrollbar-track{background:transparent}.ant-modal-wrap.class-glass-dialog.admin-pick-question-dialog .ant-modal-body::-webkit-scrollbar-thumb{background-color:transparent;border-radius:999px;border:2px solid transparent;background-clip:padding-box}.ant-modal-wrap.class-glass-dialog.admin-pick-question-dialog .ant-modal-body:hover::-webkit-scrollbar-thumb,.ant-modal-wrap.class-glass-dialog.admin-pick-question-dialog .ant-modal-body:focus-within::-webkit-scrollbar-thumb{background-color:#6482946b;background-clip:padding-box}.ant-modal-wrap.class-glass-dialog.admin-pick-question-dialog .ant-modal-body::-webkit-scrollbar-thumb:hover{background-color:#6482949e;background-clip:padding-box}.ant-modal-wrap.class-glass-dialog.teacher-review-timeline-dialog .ant-modal{inset:16px 16px auto auto!important;width:min(360px,calc(100vw - 32px))!important;max-width:min(360px,calc(100vw - 32px))!important;height:auto!important;max-height:min(78dvh,calc(100dvh - 24px))!important;translate:none}.ant-modal-wrap.class-glass-dialog.teacher-review-timeline-dialog .ant-modal-content{display:flex!important;flex-direction:column!important;height:auto!important;overflow:visible!important;max-height:min(78dvh,calc(100dvh - 24px))!important;border-radius:18px!important}.ant-modal-wrap.class-glass-dialog.teacher-review-timeline-dialog .ant-modal-header{flex:0 0 auto!important;padding:16px 18px 8px!important}.ant-modal-wrap.class-glass-dialog.teacher-review-timeline-dialog .ant-modal-title{font-size:17px!important;font-weight:700!important;letter-spacing:-.02em!important;line-height:1.3!important}.ant-modal-wrap.class-glass-dialog.teacher-review-timeline-dialog .ant-modal-body{flex:0 1 auto!important;min-height:0!important;max-height:min(58dvh,calc(100dvh - 120px))!important;overflow-x:visible!important;overflow-y:auto!important;padding:6px 18px 18px!important;-webkit-overflow-scrolling:touch}@media(max-width:639px){.ant-modal-wrap.class-glass-dialog.teacher-review-timeline-dialog .ant-modal{inset:10px 10px auto!important;width:auto!important;max-width:none!important}}.ant-modal-wrap.class-glass-dialog.question-usage-impact-dialog .ant-modal{inset:16px 16px auto auto!important;width:min(420px,calc(100vw - 32px))!important;max-width:min(420px,calc(100vw - 32px))!important;height:auto!important;max-height:min(82dvh,calc(100dvh - 24px))!important;translate:none}.ant-modal-wrap.class-glass-dialog.question-usage-impact-dialog .ant-modal-content{display:flex!important;flex-direction:column!important;overflow:visible!important;max-height:min(82dvh,calc(100dvh - 24px))!important;border-radius:18px!important}.ant-modal-wrap.class-glass-dialog.question-usage-impact-dialog .ant-modal-header{flex:0 0 auto!important;padding:16px 18px 8px!important}.ant-modal-wrap.class-glass-dialog.question-usage-impact-dialog .ant-modal-title{font-size:17px!important;font-weight:700!important;letter-spacing:-.02em!important;line-height:1.3!important}.ant-modal-wrap.class-glass-dialog.question-usage-impact-dialog .ant-modal-body{flex:0 1 auto!important;min-height:0!important;max-height:min(58dvh,calc(100dvh - 168px))!important;overflow-y:auto!important;padding:6px 18px 12px!important}.ant-modal-wrap.class-glass-dialog.question-usage-impact-dialog .ant-modal-footer{flex:0 0 auto!important;padding:10px 18px 16px!important}@media(max-width:639px){.ant-modal-wrap.class-glass-dialog.question-usage-impact-dialog .ant-modal{inset:10px 10px auto!important;width:auto!important;max-width:none!important}}@media(max-width:760px){.ant-modal-wrap.class-glass-dialog.admin-pick-question-dialog .ant-modal{inset:10px 10px auto!important;width:auto!important;max-width:none!important;translate:none!important}.ant-modal-wrap.class-glass-dialog.admin-pick-question-dialog .ant-modal-body{overflow-x:hidden!important;overflow-y:auto!important}}@media(max-width:768px){.ant-modal-wrap.class-glass-dialog.notice-file-preview-dialog{padding:8px!important}.ant-modal-wrap.class-glass-dialog.notice-file-preview-dialog .ant-modal{inset:50% auto auto 50%!important;transform:translate(-50%,-50%)!important;width:calc(100vw - 16px)!important;max-width:calc(100vw - 16px)!important;height:auto!important;max-height:calc(100dvh - 16px)!important}.ant-modal-wrap.class-glass-dialog.notice-file-preview-dialog .ant-modal-content{height:auto!important;max-height:calc(100dvh - 16px)!important}}.ant-modal-wrap.class-glass-dialog .ant-modal-content{padding:0!important;overflow-x:hidden;overflow-y:auto;max-height:calc(100dvh - 32px);background:var(--class-glass-bg)!important;border:1px solid var(--class-glass-border)!important;border-radius:1.25rem!important;box-shadow:var(--class-glass-shadow)!important;backdrop-filter:blur(var(--class-glass-blur)) saturate(var(--class-glass-saturate))!important;-webkit-backdrop-filter:blur(var(--class-glass-blur)) saturate(var(--class-glass-saturate))!important}.ant-modal-wrap.class-glass-dialog .ant-modal-header{margin:0!important;padding:1rem 1.15rem .75rem;background:transparent!important;border-bottom:1px solid rgba(228,238,241,.55)!important}.ant-modal-wrap.class-glass-dialog .ant-modal-title{color:var(--class-ink);font-weight:700;letter-spacing:-.015em}.ant-modal-wrap.class-glass-dialog .ant-modal-close{display:grid;width:2.75rem;height:2.75rem;place-items:center;color:var(--class-ink-soft)}.ant-modal-wrap.class-glass-dialog .ant-modal-body{padding:1rem 1.15rem 1.05rem!important;background:transparent!important}.ant-modal-wrap.class-glass-dialog.class-invite-dialog .ant-modal{width:min(400px,calc(100vw - 32px))!important}.ant-modal-wrap.class-glass-dialog.class-invite-dialog .ant-modal-body{padding:.85rem 1.05rem 1rem!important}.ant-modal-wrap.class-glass-dialog.class-invite-dialog .invite-card{padding:0;background:transparent;border:0;border-radius:0;box-shadow:none}.ant-modal-wrap.class-glass-dialog.class-team-dialog .ant-modal{width:min(520px,calc(100vw - 32px))!important;max-width:min(520px,calc(100vw - 32px))!important;height:auto!important;max-height:calc(100dvh - 32px)!important}.ant-modal-wrap.class-glass-dialog.class-team-dialog .ant-modal-content{display:flex!important;flex-direction:column!important;height:auto!important;max-height:calc(100dvh - 32px)!important;overflow:hidden!important}.ant-modal-wrap.class-glass-dialog.class-team-dialog .ant-modal-header{flex:0 0 auto!important}.ant-modal-wrap.class-glass-dialog.class-team-dialog .ant-modal-body{flex:1 1 auto!important;min-height:0!important;padding:.85rem 1.05rem 1rem!important;max-height:none!important;overflow-x:hidden;overflow-y:auto}.ant-modal-wrap.class-glass-dialog.class-team-dialog .team-limits-compact.ant-btn{min-height:1.875rem!important;height:1.875rem!important;padding:0 .7rem!important;font-size:.8125rem!important;border-radius:.55rem!important}.ant-modal-wrap.class-glass-dialog.class-team-ungrouped-dialog .ant-modal{width:min(360px,calc(100vw - 32px))!important;max-width:min(360px,calc(100vw - 32px))!important;height:auto!important;max-height:calc(100dvh - 32px)!important}.ant-modal-wrap.class-glass-dialog.class-team-ungrouped-dialog .ant-modal-body{padding:.75rem 1rem 1rem!important;max-height:min(60dvh,26rem);overflow-x:hidden;overflow-y:auto}.ant-modal-wrap.class-glass-dialog .ant-modal-footer{margin:0!important;padding:.75rem 1.15rem 1rem;background:transparent!important;border-top:1px solid rgba(228,238,241,.55)!important}.ant-modal-wrap.class-glass-dialog .ant-input:hover,.ant-modal-wrap.class-glass-dialog .ant-input-affix-wrapper:hover,.ant-modal-wrap.class-glass-dialog .ant-input-outlined:hover{border-color:var(--class-accent)!important}.ant-modal-wrap.class-glass-dialog .ant-input:focus,.ant-modal-wrap.class-glass-dialog .ant-input-focused,.ant-modal-wrap.class-glass-dialog .ant-input-affix-wrapper-focused,.ant-modal-wrap.class-glass-dialog .ant-input-outlined:focus,.ant-modal-wrap.class-glass-dialog .ant-input-outlined.ant-input-focused{border-color:var(--class-accent)!important;box-shadow:0 0 0 2px rgba(var(--class-accent-rgb),.14)!important}.ant-modal-wrap.class-glass-dialog .ant-input-affix-wrapper>input.ant-input,.ant-modal-wrap.class-glass-dialog .ant-input-affix-wrapper>input.ant-input:hover,.ant-modal-wrap.class-glass-dialog .ant-input-affix-wrapper>input.ant-input:focus,.ant-modal-wrap.class-glass-dialog .ant-input-affix-wrapper>input.ant-input-focused{border:none!important;box-shadow:none!important;background:transparent!important}.ant-modal-wrap.class-glass-dialog textarea.ant-input{resize:none!important}.ant-modal-wrap.class-glass-dialog .ant-btn{min-height:44px;border-radius:.75rem}.ant-modal-wrap.class-glass-dialog .ant-btn-default{color:var(--class-ink-soft);border-color:var(--class-accent);background:#ffffff75;box-shadow:inset 0 1px #ffffffb3}.ant-modal-wrap.class-glass-dialog .ant-btn-default:not(:disabled):hover{color:var(--class-accent-deep);border-color:var(--class-accent-deep);background:#ffffffb8}.ant-modal-wrap.class-glass-dialog .ant-btn-primary:not(.ant-btn-dangerous){color:#fff;background:var(--class-accent);border-color:var(--class-accent);box-shadow:none}.ant-modal-wrap.class-glass-dialog .ant-btn-primary:not(.ant-btn-dangerous):not(:disabled):hover,.ant-modal-wrap.class-glass-dialog .ant-btn-primary:not(.ant-btn-dangerous):not(:disabled):focus{color:#fff;background:var(--class-accent-deep);border-color:var(--class-accent-deep)}.ant-modal-wrap.class-glass-dialog .ant-btn-primary:not(.ant-btn-dangerous):disabled,.ant-modal-wrap.class-glass-dialog .ant-btn-primary:not(.ant-btn-dangerous).ant-btn-disabled{color:#ffffffb8;background:color-mix(in srgb,var(--class-accent) 55%,#9bb6bf);border-color:transparent}.ant-modal-wrap.class-glass-dialog .ant-btn-primary.ant-btn-dangerous{color:#fff;background:#e5484d;border-color:#e5484d;box-shadow:none}.ant-modal-wrap.class-glass-dialog .ant-btn-primary.ant-btn-dangerous:not(:disabled):hover,.ant-modal-wrap.class-glass-dialog .ant-btn-primary.ant-btn-dangerous:not(:disabled):focus{color:#fff;background:#d63b40;border-color:#d63b40}.ant-modal-wrap.class-glass-dialog .ant-btn-primary.ant-btn-dangerous:disabled,.ant-modal-wrap.class-glass-dialog .ant-btn-primary.ant-btn-dangerous.ant-btn-disabled{color:#ffffffc7;background:#f0a3a5;border-color:#f0a3a5}.ant-modal-wrap.class-glass-dialog .ant-btn-dangerous:not(.ant-btn-primary){color:#c43c3c;border-color:#c43c3c57;background:#fff7f7;box-shadow:inset 0 1px #ffffffbf}.ant-modal-wrap.class-glass-dialog .ant-btn-dangerous:not(.ant-btn-primary):not(:disabled):hover,.ant-modal-wrap.class-glass-dialog .ant-btn-dangerous:not(.ant-btn-primary):not(:disabled):focus{color:#a83232;border-color:#c43c3c;background:#fff}.ant-modal-wrap.class-glass-dialog .ant-modal-confirm{width:max-content!important;min-width:min(18rem,calc(100vw - 32px));max-width:min(24rem,calc(100vw - 32px))!important}.ant-modal-wrap.class-glass-dialog .ant-modal-confirm .ant-modal-content{padding:.85rem 1rem .75rem!important}.ant-modal-wrap.class-glass-dialog .ant-modal-confirm .ant-modal-body{padding:0!important}.ant-modal-wrap.class-glass-dialog .ant-modal-confirm-title{color:var(--class-ink);font-size:.98rem;font-weight:700;line-height:1.3}.ant-modal-wrap.class-glass-dialog .ant-modal-confirm-content{margin-block-start:.3rem!important;max-width:20rem;color:var(--class-ink-soft);font-size:.875rem;line-height:1.45;overflow-wrap:anywhere}.ant-modal-wrap.class-glass-dialog .ant-modal-confirm-content p{margin:0 0 .55rem}.ant-modal-wrap.class-glass-dialog .ant-modal-confirm-btns{margin-top:.55rem!important}.ant-modal-wrap.class-glass-dialog .ant-modal-confirm-btns .ant-btn{min-height:2.75rem;height:auto;padding-inline:.9rem}@media(max-width:760px){.ant-modal-wrap.class-glass-dialog:not(.notice-file-preview-dialog):not(.admin-question-import-dialog--center):not(.admin-pick-question-dialog):not(.teacher-review-timeline-dialog):not(.question-usage-impact-dialog):not(.class-bank-picker-modal):not(.grading-history-dialog):not(.submission-detail-dialog) .ant-modal{inset:10px 10px auto!important;width:auto!important;max-width:none}.ant-modal-wrap.class-glass-dialog .ant-modal-confirm{width:auto!important;min-width:0;max-width:none!important}.ant-modal-wrap.class-glass-dialog .ant-modal-confirm .ant-modal-content{padding:.8rem .9rem .7rem!important}.ant-modal-wrap.class-glass-dialog .ant-modal-confirm-content{max-width:none}.ant-modal-wrap.class-glass-dialog .ant-modal-content{max-height:calc(100dvh - 20px);border-radius:1.1rem!important}}.class-glass-drawer.ant-drawer .ant-drawer-mask{background:var(--class-mask-glass);backdrop-filter:blur(10px) saturate(140%);-webkit-backdrop-filter:blur(10px) saturate(140%)}.class-glass-drawer.ant-drawer .ant-drawer-content{background:var(--class-glass-bg);border-left:1px solid var(--class-glass-border);box-shadow:var(--class-glass-shadow);backdrop-filter:blur(var(--class-glass-blur)) saturate(var(--class-glass-saturate));-webkit-backdrop-filter:blur(var(--class-glass-blur)) saturate(var(--class-glass-saturate))}.class-glass-drawer.ant-drawer .ant-drawer-content-wrapper{transition:transform .26s var(--class-ease-drawer, cubic-bezier(.32, .72, 0, 1))}.class-glass-drawer.ant-drawer .ant-drawer-header{background:#ffffff75;border-bottom:1px solid rgba(228,238,241,.72);backdrop-filter:blur(14px) saturate(160%);-webkit-backdrop-filter:blur(14px) saturate(160%)}.class-glass-drawer.ant-drawer .ant-drawer-title{color:var(--class-ink);font-weight:700;letter-spacing:-.02em}.class-glass-drawer.ant-drawer .ant-drawer-close{color:var(--class-ink-soft)}.class-glass-drawer.ant-drawer .ant-drawer-body{background:transparent;animation:class-glass-drawer-body-in .22s var(--class-ease, cubic-bezier(.2, .8, .2, 1));scrollbar-gutter:stable;scrollbar-width:thin;scrollbar-color:transparent transparent}.class-glass-drawer.ant-drawer .ant-drawer-body:hover,.class-glass-drawer.ant-drawer .ant-drawer-body:focus-within{scrollbar-color:rgba(100,130,148,.45) transparent}.class-glass-drawer.ant-drawer .ant-drawer-body::-webkit-scrollbar{width:8px;height:8px}.class-glass-drawer.ant-drawer .ant-drawer-body::-webkit-scrollbar-track{background:transparent}.class-glass-drawer.ant-drawer .ant-drawer-body::-webkit-scrollbar-thumb{background-color:transparent;border-radius:999px;border:2px solid transparent;background-clip:padding-box}.class-glass-drawer.ant-drawer .ant-drawer-body:hover::-webkit-scrollbar-thumb,.class-glass-drawer.ant-drawer .ant-drawer-body:focus-within::-webkit-scrollbar-thumb{background-color:#6482946b;background-clip:padding-box}.class-glass-drawer.ant-drawer .ant-drawer-body::-webkit-scrollbar-thumb:hover{background-color:#6482949e;background-clip:padding-box}.class-glass-drawer.ant-drawer .ant-drawer-footer{background:#ffffff75;border-top:1px solid rgba(228,238,241,.72);backdrop-filter:blur(14px) saturate(160%);-webkit-backdrop-filter:blur(14px) saturate(160%)}.class-glass-drawer.assignment-question-picker-drawer.ant-drawer .ant-drawer-content{display:flex;flex-direction:column;height:100%}.class-glass-drawer.assignment-question-picker-drawer.ant-drawer .ant-drawer-header,.class-glass-drawer.assignment-question-picker-drawer.ant-drawer .ant-drawer-footer{flex:0 0 auto}.class-glass-drawer.assignment-question-picker-drawer.ant-drawer .ant-drawer-body{display:flex;flex:1 1 auto;flex-direction:column;min-height:0;overflow:hidden;padding:1rem 1.05rem 1.1rem}.class-glass-drawer.assignment-question-picker-drawer.ant-drawer .ant-drawer-footer{display:flex;justify-content:flex-end;padding:.75rem 1.05rem .95rem;background:transparent;border-top:1px solid rgba(228,238,241,.28);box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none}.class-glass-drawer.assignment-question-picker-drawer.ant-drawer .ant-drawer-footer .ant-btn{min-height:44px;min-width:6rem}@media(max-width:767px){.class-glass-drawer.assignment-question-picker-drawer.ant-drawer .ant-drawer-body{overflow:auto}}@keyframes class-glass-drawer-body-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@media(prefers-reduced-motion:reduce){.class-glass-drawer.ant-drawer .ant-drawer-content-wrapper{transition:none}.class-glass-drawer.ant-drawer .ant-drawer-body{animation:none}}.ant-dropdown.class-glass-dropdown{z-index:1080;isolation:isolate}.class-glass-dropdown .ant-dropdown-menu{padding:.35rem;background:color-mix(in srgb,var(--class-surface) 92%,transparent);border:1px solid var(--class-glass-border);border-radius:.95rem;box-shadow:0 0 18px 10px color-mix(in srgb,var(--class-surface) 78%,transparent),0 12px 32px #18374929;backdrop-filter:blur(var(--class-glass-blur)) saturate(var(--class-glass-saturate));-webkit-backdrop-filter:blur(var(--class-glass-blur)) saturate(var(--class-glass-saturate))}.class-glass-dropdown .ant-dropdown-menu-item{margin:0;border-radius:.65rem;color:var(--class-ink-soft);font-weight:550}.class-glass-dropdown .ant-dropdown-menu-item:not(.ant-dropdown-menu-item-danger):hover,.class-glass-dropdown .ant-dropdown-menu-item-active:not(.ant-dropdown-menu-item-danger){color:var(--class-ink);background:#ffffff8c}.class-glass-dropdown .ant-dropdown-menu-item-danger,.class-glass-dropdown .ant-dropdown-menu-item-danger:hover{color:#c73b3b}.class-glass-dropdown .ant-dropdown-menu-item-danger:hover{background:#c73b3b1a}@media(prefers-reduced-motion:reduce),(prefers-reduced-transparency:reduce){.ant-modal-root:has(>.ant-modal-wrap.class-glass-dialog)>.ant-modal-mask,.ant-modal-wrap.class-glass-dialog .ant-modal-content,.ant-modal-wrap.class-glass-dialog .ant-modal-header,.ant-modal-wrap.class-glass-dialog .ant-modal-footer,.class-glass-drawer.ant-drawer .ant-drawer-mask,.class-glass-drawer.ant-drawer .ant-drawer-content,.class-glass-drawer.ant-drawer .ant-drawer-header,.class-glass-drawer.ant-drawer .ant-drawer-footer,.class-glass-dropdown .ant-dropdown-menu{backdrop-filter:none!important;-webkit-backdrop-filter:none!important}.ant-modal-root:has(>.ant-modal-wrap.class-glass-dialog)>.ant-modal-mask,.class-glass-drawer.ant-drawer .ant-drawer-mask{background:#18374973!important}.ant-modal-wrap.class-glass-dialog .ant-modal-content,.ant-modal-wrap.class-glass-dialog .ant-modal-header,.ant-modal-wrap.class-glass-dialog .ant-modal-footer,.class-glass-drawer.ant-drawer .ant-drawer-content,.class-glass-drawer.ant-drawer .ant-drawer-header,.class-glass-drawer.ant-drawer .ant-drawer-footer,.class-glass-dropdown .ant-dropdown-menu{background:#fff!important}}:root{--class-ink: #183749;--class-ink-soft: #24485b;--class-muted: #6d8492;--class-accent: var(--brand);--class-accent-deep: var(--brand-dark);--class-accent-soft: var(--brand-soft);--class-accent-rgb: 17, 159, 190;--class-surface: #ffffff;--class-surface-soft: #f5f9fa;--class-hairline: #e4eef1;--class-border: rgba(var(--class-accent-rgb), .12);--class-shadow: 0 14px 36px rgba(24, 55, 73, .07);--class-shadow-hover: 0 18px 42px rgba(24, 55, 73, .11);--class-radius: 1.15rem;--class-radius-sm: .85rem;--class-ease: cubic-bezier(.2, .8, .2, 1);--class-ease-drawer: cubic-bezier(.32, .72, 0, 1);--class-glass-bg: rgba(255, 255, 255, .68);--class-glass-border: rgba(255, 255, 255, .55);--class-glass-blur: 28px;--class-glass-saturate: 180%;--class-glass-shadow: 0 24px 64px rgba(24, 55, 73, .2);--class-mask-glass: rgba(24, 55, 73, .32);--class-fs-label: 12px;--class-fs-unit: 13px;--class-fs-body: 14px;--class-fs-title: 20px;--class-fs-metric: 25px;--status-draft-fg: #456476;--status-draft-bg: #eef3f6;--status-open-fg: #176b51;--status-open-bg: #e5f5ee;--status-closed-fg: #775d52;--status-closed-bg: #f3eeeb;--grade-tone-todo-fg: var(--class-accent-deep);--grade-tone-todo-bg: var(--class-accent-soft);--grade-tone-todo-bd: rgba(var(--class-accent-rgb), .32);--grade-tone-pending-fg: #9a6b1f;--grade-tone-pending-bg: #fff7e8;--grade-tone-pending-bd: #ead2a4;--grade-tone-makeup-fg: #3d6578;--grade-tone-makeup-bg: #eef5f8;--grade-tone-makeup-bd: #b7cdd8;--grade-tone-missing-fg: #8a5a44;--grade-tone-missing-bg: #f7f1ee;--grade-tone-missing-bd: #e0c9bd;--grade-tone-scored-fg: var(--status-open-fg);--grade-tone-scored-bg: var(--status-open-bg);--grade-tone-scored-bd: #b7dfcc;--grade-tone-submitted-fg: #1d4ed8;--grade-tone-submitted-bg: #eff6ff;--grade-tone-submitted-bd: #bfdbfe;--grade-tone-draft-fg: var(--status-draft-fg);--grade-tone-draft-bg: var(--status-draft-bg);--grade-tone-draft-bd: #d5e0e6;--grade-tone-idle-fg: rgba(24, 55, 73, .48);--grade-tone-idle-bg: #f1f4f6;--grade-tone-idle-bd: rgba(24, 55, 73, .12)}.class-status-pill{display:inline-flex;height:1.75rem;padding:0 .7rem;flex-shrink:0;align-items:center;gap:.35rem;border-radius:999px;font-size:var(--class-fs-label);font-weight:650;white-space:nowrap}.class-jelly-segmented{--jelly-radius: .75rem;--jelly-pad: 3px;position:relative;display:inline-flex;box-sizing:border-box;align-items:stretch;width:max-content;max-width:100%;padding:var(--jelly-pad);overflow:hidden;color:var(--class-muted);background:var(--class-surface-soft);border:1px solid var(--class-hairline);border-radius:var(--jelly-radius);box-shadow:none}.class-jelly-segmented .jelly-thumb{position:absolute;top:var(--jelly-pad);bottom:var(--jelly-pad);left:0;z-index:0;box-sizing:border-box;border-radius:calc(var(--jelly-radius) - var(--jelly-pad));background:var(--class-accent);box-shadow:0 1px 2px rgba(var(--class-accent-rgb),.18);pointer-events:none}.class-jelly-segmented .jelly-thumb.is-ready{transition:transform .24s var(--class-ease),width .24s var(--class-ease)}.class-jelly-segmented .jelly-item{position:relative;z-index:1;display:inline-flex;flex:1 0 auto;box-sizing:border-box;min-height:2.15rem;margin:0;padding:0 .95rem;align-items:center;justify-content:center;appearance:none;border:0;border-radius:0;color:var(--class-muted);background:transparent;box-shadow:none;font:inherit;font-size:var(--class-fs-body);font-weight:650;line-height:1;white-space:nowrap;cursor:pointer;transition:color .12s var(--class-ease) 80ms}.class-jelly-segmented .jelly-item:hover:not(:disabled):not(.is-selected){color:var(--class-ink-soft)}.class-jelly-segmented .jelly-item.is-selected{color:var(--class-ink);transition-delay:0ms}.class-jelly-segmented:has(.jelly-thumb.is-ready) .jelly-item.is-selected{color:#fff}.class-jelly-segmented .jelly-item:focus-visible{outline:2px solid var(--class-accent);outline-offset:1px;border-radius:calc(var(--jelly-radius) - var(--jelly-pad))}.class-jelly-segmented .jelly-item:disabled{cursor:not-allowed;opacity:.45}.class-jelly-segmented .jelly-item-label{position:relative;z-index:1;display:block;width:100%;text-align:center;white-space:nowrap;line-height:1}@media(prefers-reduced-motion:reduce){.class-jelly-segmented .jelly-thumb.is-ready,.class-jelly-segmented .jelly-item{transition:none}}.class-status-pill.status-draft,.course-status-pill.is-idle{color:var(--status-draft-fg);background:var(--status-draft-bg)}.class-status-pill.status-idle{color:#2f6f82;background:#e8f3f6}.class-status-pill.status-preparing{color:#185fa5;background:#e7f1fb}.class-status-pill.status-open,.course-status-pill.is-active{color:var(--status-open-fg);background:var(--status-open-bg)}.class-status-pill.status-closed,.course-status-pill.is-done{color:var(--status-closed-fg);background:var(--status-closed-bg)}.class-status-pill.status-pending{color:#9a5b12;background:#fff4e5}.class-status-pill.status-rejected{color:#b42318;background:#fef3f2}.grade-status-tag{display:inline-flex;flex-shrink:0;align-items:center;min-height:1.75rem;padding:0 .65rem;border:1px solid transparent;border-radius:999px;font-size:var(--class-fs-label);font-weight:650;line-height:1;white-space:nowrap}.grade-status-tag.is-todo{color:var(--grade-tone-todo-fg);background:var(--grade-tone-todo-bg);border-color:var(--grade-tone-todo-bd)}.grade-status-tag.is-draft{color:var(--grade-tone-draft-fg);background:var(--grade-tone-draft-bg);border-color:var(--grade-tone-draft-bd)}.grade-status-tag.is-submitted{color:var(--grade-tone-submitted-fg);background:var(--grade-tone-submitted-bg);border-color:var(--grade-tone-submitted-bd)}.grade-status-tag.is-pending{color:var(--grade-tone-pending-fg);background:var(--grade-tone-pending-bg);border-color:var(--grade-tone-pending-bd)}.grade-status-tag.is-scored,.grade-status-tag.is-graded{color:var(--grade-tone-scored-fg);background:var(--grade-tone-scored-bg);border-color:var(--grade-tone-scored-bd)}.grade-status-tag.is-missing,.grade-status-tag.is-missed{color:var(--grade-tone-missing-fg);background:var(--grade-tone-missing-bg);border-color:var(--grade-tone-missing-bd)}.grade-status-tag.is-makeup{color:var(--grade-tone-makeup-fg);background:var(--grade-tone-makeup-bg);border-color:var(--grade-tone-makeup-bd)}.grade-status-tag.is-idle{color:var(--grade-tone-idle-fg);background:var(--grade-tone-idle-bg);border-color:var(--grade-tone-idle-bd)}.class-icon-tile{display:inline-flex;width:2.65rem;height:2.65rem;align-items:center;justify-content:center;color:var(--class-accent);background:var(--class-accent-soft);border-radius:.8rem;font-size:1.15rem}.class-form-dialog .ant-btn{min-height:2.75rem;border-radius:.65rem}.class-form-dialog .ant-input,.class-form-dialog .ant-input-affix-wrapper,.class-form-dialog .ant-input-number,.class-form-dialog .ant-select-selector{min-height:2.75rem}.class-form-dialog .ant-input-number{width:100%}.class-form-dialog .ant-input-number-input{height:2.75rem}.class-form-dialog .ant-select-single:not(.ant-select-customize-input) .ant-select-selector{display:flex!important;align-items:center!important;padding-block:0}.class-form-dialog .ant-select-single .ant-select-selector .ant-select-selection-search{inset-inline-start:11px;inset-inline-end:11px}.class-form-dialog .ant-select-single .ant-select-selector .ant-select-selection-item,.class-form-dialog .ant-select-single .ant-select-selector .ant-select-selection-placeholder{inset-block:0;line-height:2.75rem;display:flex;align-items:center}.class-form-dialog .ant-select-single .ant-select-arrow{top:50%;margin-top:0;transform:translateY(-50%)}.class-form-dialog .ant-btn-primary{background:var(--class-accent);border-color:var(--class-accent)}.class-form-dialog .ant-btn-primary:hover{background:var(--class-accent-deep)!important;border-color:var(--class-accent-deep)!important}.class-spin,.class-spin.ant-spin-nested-loading{width:100%}.class-spin.ant-spin-nested-loading>div>.ant-spin{display:flex;align-items:center;justify-content:center;max-height:none;height:100%}.class-spin.ant-spin-nested-loading>div>.ant-spin .ant-spin-dot{position:static;inset-inline-start:auto;margin:0}.class-spin .ant-spin-dot-item{background-color:var(--class-accent)!important}.class-spin-block{display:grid;min-height:12rem;place-items:center}.course-summary-tooltip{max-width:min(24rem,82vw)}.course-summary-tooltip .ant-tooltip-inner{white-space:pre-wrap;word-break:break-word;line-height:1.55}.grade-matrix-tooltip .ant-tooltip-inner{padding:.45rem .65rem;color:#fff;background:#183749eb;border-radius:.5rem;box-shadow:0 8px 20px #1837492e;font-size:12px;line-height:1.45}.grade-matrix-tooltip .ant-tooltip-arrow:before{background:#183749eb}.join-confirm,.manual-join-cta{width:100%;min-height:3rem;border-radius:.75rem;background:var(--class-accent);border-color:var(--class-accent)}
