:root{--brand-500: #669933;--brand-600: #577f2a;--accent-500: #e0a33e}:root{--scrollbar-size: 8px;--scrollbar-thumb: rgb(102 153 51 / .28);--scrollbar-thumb-hover: rgb(102 153 51 / .45);--scrollbar-track: transparent;--scrollbar-thumb-on-dark: rgb(255 255 255 / .22);--scrollbar-thumb-on-dark-hover: rgb(255 255 255 / .38)}.scrollbar-custom{scrollbar-width:thin;scrollbar-color:var(--scrollbar-thumb-hover) var(--scrollbar-track)}.scrollbar-custom::-webkit-scrollbar{width:var(--scrollbar-size);height:var(--scrollbar-size)}.scrollbar-custom::-webkit-scrollbar-track{background:var(--scrollbar-track)}.scrollbar-custom::-webkit-scrollbar-thumb{border:2px solid transparent;border-radius:999px;background:var(--scrollbar-thumb);background-clip:padding-box}.scrollbar-custom::-webkit-scrollbar-thumb:hover{background:var(--scrollbar-thumb-hover);background-clip:padding-box}.scrollbar-custom::-webkit-scrollbar-corner{background:var(--scrollbar-track)}.admin-shell>.ant-layout>.admin-content.app-content-fill,.org-shell>.ant-layout>.org-content.app-content-fill,.app-content-fill.ant-layout-content,.admin-calendar-cell__body,.ant-modal-body,.ant-drawer-body,.ant-select-dropdown .rc-virtual-list-holder{scrollbar-width:thin;scrollbar-color:var(--scrollbar-thumb-hover) var(--scrollbar-track)}.data-table-wrap .data-table .ant-table-body,.data-table-wrap .data-table .ant-table-content{scrollbar-width:auto;scrollbar-color:rgb(102 153 51 / .45) rgb(246 248 246)}.admin-shell>.ant-layout>.admin-content.app-content-fill::-webkit-scrollbar,.org-shell>.ant-layout>.org-content.app-content-fill::-webkit-scrollbar,.app-content-fill.ant-layout-content::-webkit-scrollbar,.admin-calendar-cell__body::-webkit-scrollbar,.data-table-wrap .data-table .ant-table-body::-webkit-scrollbar,.data-table-wrap .data-table .ant-table-content::-webkit-scrollbar,.ant-modal-body::-webkit-scrollbar,.ant-drawer-body::-webkit-scrollbar,.ant-select-dropdown .rc-virtual-list-holder::-webkit-scrollbar{width:var(--scrollbar-size);height:var(--scrollbar-size)}.data-table-wrap .data-table .ant-table-body::-webkit-scrollbar,.data-table-wrap .data-table .ant-table-content::-webkit-scrollbar{height:12px;width:12px}.data-table-wrap .data-table .ant-table-body::-webkit-scrollbar-thumb,.data-table-wrap .data-table .ant-table-content::-webkit-scrollbar-thumb{border:0;border-radius:999px;background:#66993361;background-clip:border-box}.data-table-wrap .data-table .ant-table-body::-webkit-scrollbar-thumb:hover,.data-table-wrap .data-table .ant-table-content::-webkit-scrollbar-thumb:hover{background:#6699338c;background-clip:border-box}.data-table-wrap .data-table .ant-table-body::-webkit-scrollbar-track,.data-table-wrap .data-table .ant-table-content::-webkit-scrollbar-track{background:#f6f8f6}.admin-shell>.ant-layout>.admin-content.app-content-fill::-webkit-scrollbar-track,.org-shell>.ant-layout>.org-content.app-content-fill::-webkit-scrollbar-track,.app-content-fill.ant-layout-content::-webkit-scrollbar-track,.admin-calendar-cell__body::-webkit-scrollbar-track,.ant-modal-body::-webkit-scrollbar-track,.ant-drawer-body::-webkit-scrollbar-track,.ant-select-dropdown .rc-virtual-list-holder::-webkit-scrollbar-track{background:var(--scrollbar-track)}.admin-shell>.ant-layout>.admin-content.app-content-fill::-webkit-scrollbar-thumb,.org-shell>.ant-layout>.org-content.app-content-fill::-webkit-scrollbar-thumb,.app-content-fill.ant-layout-content::-webkit-scrollbar-thumb,.admin-calendar-cell__body::-webkit-scrollbar-thumb,.ant-modal-body::-webkit-scrollbar-thumb,.ant-drawer-body::-webkit-scrollbar-thumb,.ant-select-dropdown .rc-virtual-list-holder::-webkit-scrollbar-thumb{border:2px solid transparent;border-radius:999px;background:var(--scrollbar-thumb);background-clip:padding-box}.admin-shell>.ant-layout>.admin-content.app-content-fill::-webkit-scrollbar-thumb:hover,.org-shell>.ant-layout>.org-content.app-content-fill::-webkit-scrollbar-thumb:hover,.app-content-fill.ant-layout-content::-webkit-scrollbar-thumb:hover,.admin-calendar-cell__body::-webkit-scrollbar-thumb:hover,.ant-modal-body::-webkit-scrollbar-thumb:hover,.ant-drawer-body::-webkit-scrollbar-thumb:hover,.ant-select-dropdown .rc-virtual-list-holder::-webkit-scrollbar-thumb:hover{background:var(--scrollbar-thumb-hover);background-clip:padding-box}.admin-shell>.ant-layout>.admin-content.app-content-fill::-webkit-scrollbar-corner,.org-shell>.ant-layout>.org-content.app-content-fill::-webkit-scrollbar-corner{background:var(--scrollbar-track)}.admin-shell>.admin-sider,.org-shell>.org-sider{scrollbar-width:thin;scrollbar-color:var(--scrollbar-thumb-on-dark-hover) var(--scrollbar-track)}.admin-shell>.admin-sider::-webkit-scrollbar,.org-shell>.org-sider::-webkit-scrollbar{width:6px}.admin-shell>.admin-sider::-webkit-scrollbar-track,.org-shell>.org-sider::-webkit-scrollbar-track{background:var(--scrollbar-track)}.admin-shell>.admin-sider::-webkit-scrollbar-thumb,.org-shell>.org-sider::-webkit-scrollbar-thumb{border-radius:999px;background:var(--scrollbar-thumb-on-dark)}.admin-shell>.admin-sider::-webkit-scrollbar-thumb:hover,.org-shell>.org-sider::-webkit-scrollbar-thumb:hover{background:var(--scrollbar-thumb-on-dark-hover)}html,body,#root{width:100%;max-width:100vw;overflow-x:clip}.app-shell.ant-layout,.admin-shell.ant-layout,.org-shell.ant-layout{display:flex;flex-direction:row;height:100vh;min-height:100vh;max-height:100vh;width:100%;max-width:100vw;overflow:hidden}.admin-shell>.admin-sider,.org-shell>.org-sider{flex-shrink:0;height:100vh;overflow-x:hidden;overflow-y:auto}@media (max-width: 960px){.admin-shell.admin-shell--mobile>.admin-sider.ant-layout-sider{position:fixed!important;left:0;top:0;bottom:0;z-index:1100;height:100vh!important;height:100dvh!important;max-height:100dvh;flex:0 0 0!important;width:min(240px,82vw)!important;max-width:min(240px,82vw)!important;min-width:0!important;padding-top:20px;padding-bottom:24px;overflow-x:hidden;overflow-y:auto;-webkit-overflow-scrolling:touch;box-shadow:8px 0 28px #0f170c38;transform:translate(-100%);transition:transform .22s ease;pointer-events:none;visibility:hidden}.admin-shell.admin-shell--mobile.admin-shell--sider-open>.admin-sider.ant-layout-sider{transform:translate(0);pointer-events:auto;visibility:visible}.admin-shell.admin-shell--mobile>.ant-layout{flex:1 1 auto!important;width:100%!important;max-width:100%!important;min-width:0!important}}.app-shell>.ant-layout,.admin-shell>.ant-layout,.org-shell>.ant-layout{flex:1 1 0;min-width:0;min-height:0;width:auto;max-width:100%;height:100vh;display:flex;flex-direction:column;overflow:hidden}.app-shell>.ant-layout>.ant-layout-header,.admin-shell>.ant-layout>.ant-layout-header,.org-shell>.ant-layout>.ant-layout-header{flex-shrink:0;width:100%}.app-content-fill.ant-layout-content,.admin-content.app-content-fill,.org-content.app-content-fill{flex:1 1 auto;width:100%;max-width:100%;min-width:0;min-height:0;box-sizing:border-box;overflow-x:hidden;overflow-y:auto}.app-page-fill,.admin-page,.org-students-page,.org-resources-page,.org-workbench,.org-lessons-panel{width:100%;max-width:100%;min-width:0;box-sizing:border-box}.admin-page .ant-tabs,.org-students-page .ant-tabs,.org-resources-page .ant-tabs,.org-workbench .ant-tabs,.org-lessons-panel .ant-tabs,.app-page-fill .ant-tabs,.admin-page .ant-tabs-content-holder,.admin-page .ant-tabs-content,.admin-page .ant-tabs-tabpane,.org-students-page .ant-tabs-content-holder,.org-students-page .ant-tabs-content,.org-students-page .ant-tabs-tabpane,.org-resources-page .ant-tabs-content-holder,.org-resources-page .ant-tabs-content,.org-resources-page .ant-tabs-tabpane,.org-workbench .ant-tabs-content-holder,.org-workbench .ant-tabs-content,.org-workbench .ant-tabs-tabpane,.org-lessons-panel .ant-tabs-content-holder,.org-lessons-panel .ant-tabs-content,.org-lessons-panel .ant-tabs-tabpane,.app-page-fill .ant-tabs-content-holder,.app-page-fill .ant-tabs-content,.app-page-fill .ant-tabs-tabpane{width:100%;max-width:100%;min-width:0}.data-table-wrap{--data-table-line: rgb(102 153 51 / .22);--data-table-line-soft: rgb(102 153 51 / .12);--data-table-line-strong: rgb(102 153 51 / .38);--data-table-head-bg: #f3f7ee;--data-table-head-bg-end: #ebf3e3;--data-table-row-alt: #f9fbf6;--data-table-row-hover: #f1f7ea;--data-table-row-hover-solid: #f1f7ea;width:100%;max-width:100%;min-width:0;overflow:visible;background:var(--surface, #fff);border:1px solid var(--data-table-line-strong);border-radius:var(--radius-lg, 12px);box-shadow:0 4px 18px #6699330f}.data-table-wrap--compact{border:none;border-radius:8px;box-shadow:none;background:transparent}.data-table-wrap .data-table.ant-table-wrapper{width:100%;max-width:100%;min-width:0}.data-table-wrap .data-table .ant-table{width:100%;min-width:0;background:var(--surface, #fff)}.data-table-wrap .data-table .ant-table-container{width:100%;max-width:100%;min-width:0;overflow:hidden;border-radius:inherit}.data-table-wrap .data-table .ant-table-body table,.data-table-wrap .data-table .ant-table-header table,.data-table-wrap .data-table .ant-table-content>table{min-width:100%;width:max-content}.data-table-wrap .data-table .ant-table-header{overflow:hidden!important;max-width:100%}.data-table-wrap .data-table .ant-table-body,.data-table-wrap .data-table .ant-table-content{overflow:auto!important;max-width:100%;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;scrollbar-gutter:stable}.data-table-wrap .ant-table-sticky-scroll{z-index:30!important;height:12px!important;opacity:1!important;pointer-events:auto!important;background:#f5f9f0;border-top:1px solid var(--data-table-line)}.data-table-wrap .ant-table-sticky-scroll-bar{height:8px!important;margin-top:2px;border-radius:999px;background:#6936!important;pointer-events:auto!important;cursor:grab}.data-table-wrap .ant-table-sticky-scroll-bar:active{cursor:grabbing;background:#6699338c!important}.data-table-wrap .data-table .ant-table-thead>tr>th{background:linear-gradient(180deg,var(--data-table-head-bg) 0%,var(--data-table-head-bg-end) 100%)!important;font-weight:600;font-size:var(--data-table-head-size, 13px);letter-spacing:var(--data-table-head-spacing, .01em);text-transform:none;border-bottom:2px solid var(--data-table-line-strong)!important;color:#3f5a28;white-space:nowrap;padding:12px 14px!important}.data-table-wrap .data-table .ant-table-tbody>tr>td{font-size:var(--data-table-body-size, 13px);border-bottom:1px solid var(--data-table-line-soft);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding:11px 14px!important;color:#3f3f46}.data-table-wrap .data-table.ant-table-bordered .ant-table-container{border-inline-start:0;border-top:0}.data-table-wrap .data-table.ant-table-bordered .ant-table-thead>tr>th,.data-table-wrap .data-table.ant-table-bordered .ant-table-tbody>tr>td{border-inline-end:1px solid var(--data-table-line-soft)!important}.data-table-wrap .data-table.ant-table-bordered .ant-table-thead>tr>th{border-bottom:2px solid var(--data-table-line-strong)!important}.data-table-wrap .data-table.ant-table-bordered .ant-table-tbody>tr>td{border-bottom:1px solid var(--data-table-line-soft)!important}.data-table-wrap .data-table.ant-table-bordered .ant-table-cell:last-child{border-inline-end:0!important}.data-table-wrap .data-table .ant-table-tbody>tr:last-child>td{border-bottom:1px solid var(--data-table-line)!important}.data-table-wrap .data-table .ant-table-tbody>tr:nth-child(2n)>td{background:var(--data-table-row-alt)}.data-table-wrap .data-table .ant-table-tbody>tr:nth-child(2n)>.ant-table-cell-fix-right,.data-table-wrap .data-table .ant-table-tbody>tr:nth-child(2n)>.ant-table-cell-fix-left{background:var(--data-table-row-alt)!important}.data-table-wrap .data-table .ant-table-tbody>tr:hover>td{background:var(--data-table-row-hover)!important}.data-table-wrap .data-table .ant-table-cell-ellipsis{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.data-table-wrap .data-table .ant-table-cell-fix-right,.data-table-wrap .data-table .ant-table-cell-fix-left{background:var(--surface, #fff)!important;z-index:2}.data-table-wrap .data-table .ant-table-thead .ant-table-cell-fix-right,.data-table-wrap .data-table .ant-table-thead .ant-table-cell-fix-left{background:linear-gradient(180deg,var(--data-table-head-bg) 0%,var(--data-table-head-bg-end) 100%)!important;z-index:3}.data-table-wrap .data-table .ant-table-tbody>tr:hover>.ant-table-cell-fix-right,.data-table-wrap .data-table .ant-table-tbody>tr:hover>.ant-table-cell-fix-left{background:var(--data-table-row-hover-solid)!important;z-index:3}.data-table-wrap .ant-pagination{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:8px;margin:12px 16px 16px!important}.data-table-wrap .ant-pagination-total-text{margin-inline-end:4px}.data-table-wrap .ant-pagination-options{display:inline-flex!important;align-items:center;margin-inline-start:0}.data-table-wrap .ant-pagination-options-size-changer.ant-select{min-width:96px}.bx-upload-trigger,.admin-upload-trigger{display:flex;flex-direction:column;align-items:center;gap:6px;font-size:12px;color:#71717a}.bx-image-field .ant-upload-wrapper.ant-upload-picture-card-wrapper{display:block}.bx-image-field .ant-upload-list-item-container,.bx-image-field .ant-upload-select{border-radius:10px!important}.bx-image-field--avatar .ant-upload-select,.bx-image-field--avatar .ant-upload-list-item-container{width:104px!important;height:104px!important}.bx-image-field--id .ant-upload-select,.bx-image-field--id .ant-upload-list-item-container{width:168px!important;height:106px!important}.bx-image-field .ant-upload-list-item-thumbnail img{object-fit:cover!important}.bx-upload-hint,.admin-upload-hint{margin:8px 0 0;font-size:12px;color:#a1a1aa}.bx-upload-dragger,.admin-upload-dragger{border-radius:12px!important}.bx-upload-video-preview,.admin-upload-video-preview{display:block;width:100%;max-height:220px;margin-top:12px;border-radius:10px;background:#000}.bx-upload-audio-preview,.admin-upload-audio-preview{display:block;width:100%;margin-top:12px}.bx-voucher-preview-link{display:inline-flex;flex-direction:column;align-items:flex-start;gap:6px;color:#27421a}.bx-voucher-preview{display:block;max-width:220px;max-height:160px;object-fit:contain;border:1px solid #eef0f2;border-radius:8px;background:#fafafa}.invite-poster{position:relative;overflow:hidden;border-radius:20px;color:#fff;box-shadow:0 24px 48px #0f172a2e,0 0 0 1px #ffffff14 inset}.invite-poster--phone{width:320px;min-height:548px}.invite-poster--compact{width:280px;min-height:468px}.invite-poster__backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(165deg,var(--poster-accent) 0%,var(--poster-accent-dark) 100%)}.invite-poster__orb{position:absolute;border-radius:999px;filter:blur(0);opacity:.35}.invite-poster__orb--1{top:-48px;right:-36px;width:160px;height:160px;background:radial-gradient(circle,#ffffff73,#fff0 70%)}.invite-poster__orb--2{bottom:120px;left:-56px;width:140px;height:140px;background:radial-gradient(circle,#ffffff38,#fff0 72%)}.invite-poster__orb--3{top:42%;right:-20px;width:88px;height:88px;background:#ffffff1f}.invite-poster__grid{position:absolute;top:0;right:0;bottom:0;left:0;opacity:.08;background-image:linear-gradient(rgb(255 255 255 / .7) 1px,transparent 1px),linear-gradient(90deg,rgb(255 255 255 / .7) 1px,transparent 1px);background-size:28px 28px;-webkit-mask-image:linear-gradient(180deg,rgb(0 0 0 / .5),transparent 85%);mask-image:linear-gradient(180deg,rgb(0 0 0 / .5),transparent 85%)}.invite-poster__body{position:relative;z-index:1;display:flex;flex-direction:column;height:100%;min-height:inherit;padding:28px 22px 24px}.invite-poster__header{display:flex;align-items:center;justify-content:space-between;gap:12px}.invite-poster__brand{display:inline-flex;align-items:baseline;gap:6px}.invite-poster__brand-mark{display:inline-flex;align-items:center;justify-content:center;min-width:42px;padding:4px 8px;border-radius:8px;background:#ffffff2e;font-size:13px;font-weight:800;letter-spacing:.08em}.invite-poster__brand-name{font-size:18px;font-weight:700;letter-spacing:.12em}.invite-poster__role{padding:4px 10px;border-radius:999px;background:#ffffff29;border:1px solid rgb(255 255 255 / .22);font-size:11px;font-weight:600;white-space:nowrap}.invite-poster__hero{margin-top:28px}.invite-poster__title{margin:0;font-size:26px;font-weight:800;line-height:1.25;letter-spacing:.02em;text-shadow:0 2px 12px rgb(0 0 0 / .12)}.invite-poster--compact .invite-poster__title{font-size:22px}.invite-poster__slogan{margin:12px 0 0;font-size:14px;line-height:1.6;color:#ffffffeb}.invite-poster__activity{margin:10px 0 0;font-size:13px;color:#ffffffd1}.invite-poster__card{margin-top:auto;padding:20px 18px 16px;border-radius:18px;background:#fff;color:#18181b;box-shadow:0 16px 40px #0f172a2e}.invite-poster__card-label{font-size:12px;font-weight:600;color:#71717a;letter-spacing:.08em}.invite-poster__code{margin-top:8px;font-size:30px;font-weight:800;letter-spacing:.22em;color:var(--poster-accent-dark);font-variant-numeric:tabular-nums}.invite-poster--compact .invite-poster__code{font-size:26px;letter-spacing:.16em}.invite-poster__qr{display:flex;justify-content:center;margin-top:16px;padding:12px;border-radius:14px;background:linear-gradient(180deg,#f8fafc,#f1f5f9);border:1px solid #e4e4e7}.invite-poster__scope{margin-top:14px;padding-top:12px;border-top:1px dashed #e4e4e7;font-size:12px;color:#71717a;text-align:center}.invite-poster__hint{margin-top:12px;padding-top:10px;border-top:1px solid #f4f4f5;font-size:12px;color:#71717a;text-align:center}.marketing-poster-preview{display:flex;flex-direction:column;align-items:flex-start;gap:14px}.marketing-poster-preview__device{padding:10px;border-radius:28px;background:linear-gradient(180deg,#f4f4f5,#e4e4e7);box-shadow:0 20px 40px #0f172a14,inset 0 1px #fffc}.marketing-poster-preview__meta{display:flex;flex-wrap:wrap;align-items:center;gap:10px 14px;color:#64748b;font-size:13px}.marketing-poster-preview__hint{margin:0;color:#94a3b8;font-size:12px;line-height:1.5}.marketing-poster-panel{display:grid;grid-template-columns:minmax(300px,360px) minmax(0,1fr);gap:32px;align-items:start}.marketing-poster-panel__config{padding:20px 22px;border-radius:14px;background:#fff;border:1px solid #eef0f2;box-shadow:0 6px 20px #0f172a0a}.org-marketing-poster-layout{display:grid;grid-template-columns:minmax(300px,340px) minmax(0,1fr);gap:20px;align-items:start}.org-marketing-poster-preview-wrap{padding:10px;border-radius:28px;background:linear-gradient(180deg,#f4f4f5,#e4e4e7);box-shadow:0 12px 28px #0f172a0f}.org-marketing-poster-meta{padding:18px 20px;border-radius:14px;background:#fff;box-shadow:0 1px 2px #00000008,0 6px 20px #0000000d}.org-marketing-poster-meta p{margin:0 0 12px;color:#52525b;line-height:1.6}@media (max-width: 900px){.marketing-poster-panel,.org-marketing-poster-layout{grid-template-columns:1fr}}.org-hierarchy-tree{--oht-brand: #669933;--oht-brand-soft: rgb(102 153 51 / .12);--oht-brand-ink: #27421a;--oht-ink: #18181b;--oht-muted: #71717a;--oht-line: #e4e4e7;--oht-surface: #fff;--oht-canvas: #f4f4f5;--oht-radius: 14px;display:flex;flex-direction:column;gap:0;min-height:0}.org-hierarchy-tree--loading{display:grid;place-items:center;min-height:360px;border-radius:var(--oht-radius);background:var(--oht-surface);border:1px solid var(--oht-line)}.org-hierarchy-tree__panel{display:flex;flex-direction:column;min-height:min(640px,calc(100vh - 160px));border:1px solid var(--oht-line);border-radius:var(--oht-radius);background:var(--oht-surface);overflow:hidden;box-shadow:0 1px 2px #18181b0a}.org-hierarchy-tree__header{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:12px 20px;padding:16px 18px 14px;border-bottom:1px solid var(--oht-line);background:linear-gradient(180deg,#fafafa,#fff)}.org-hierarchy-tree__intro{flex:1 1 280px;min-width:0;display:flex;flex-direction:column;gap:4px}.org-hierarchy-tree__intro-title{margin:0;font-size:14px;font-weight:600;color:var(--oht-ink);letter-spacing:.01em}.org-hierarchy-tree__intro-desc{margin:0;max-width:52ch;font-size:13px;line-height:1.5;color:var(--oht-muted)}.org-hierarchy-tree__stats{display:flex;flex-wrap:wrap;align-items:center;gap:8px;flex:0 1 auto}.org-hierarchy-tree__stat{display:inline-flex;align-items:baseline;gap:6px;padding:6px 12px;border-radius:999px;background:var(--oht-brand-soft);border:1px solid rgb(102 153 51 / .22);white-space:nowrap}.org-hierarchy-tree__stat strong{font-size:16px;font-weight:700;line-height:1;color:var(--oht-brand-ink);font-variant-numeric:tabular-nums}.org-hierarchy-tree__stat span{font-size:12px;color:var(--oht-muted)}.org-hierarchy-tree__toolbar{display:flex;flex-wrap:wrap;gap:10px 12px;align-items:center;justify-content:space-between;padding:12px 18px;border-bottom:1px solid var(--oht-line);background:#fff}.org-hierarchy-tree__search{flex:1 1 220px;max-width:320px}.org-hierarchy-tree__search .ant-input-affix-wrapper,.org-hierarchy-tree__search .ant-input-search .ant-input-affix-wrapper{border-radius:10px}.org-hierarchy-tree__actions{display:flex;flex-wrap:wrap;gap:8px}.org-hierarchy-tree__actions .ant-btn{border-radius:10px}.org-hierarchy-tree__tree-card{flex:1 1 auto;min-height:0;padding:10px 12px 16px;overflow:auto;background:linear-gradient(90deg,rgb(102 153 51 / .03) 0,transparent 48px),var(--oht-surface)}.org-hierarchy-tree__empty{display:grid;place-items:center;gap:6px;min-height:200px;padding:32px 16px;text-align:center;color:var(--oht-muted)}.org-hierarchy-tree__empty strong{font-size:14px;color:var(--oht-ink)}.org-hierarchy-tree__node{display:inline-flex;align-items:flex-start;gap:10px;padding:6px 4px;max-width:100%}.org-hierarchy-tree__node-icon{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;width:28px;height:28px;margin-top:1px;border-radius:8px;font-size:14px;background:#f4f4f5;color:var(--oht-muted)}.org-hierarchy-tree__node-icon--campus{background:var(--oht-brand-soft);color:var(--oht-brand)}.org-hierarchy-tree__node-icon--agent{background:#fff7ed;color:#c2410c}.org-hierarchy-tree__node-icon--platform{background:#f4f4f5;color:#3f3f46}.org-hierarchy-tree__node-icon--student{background:#f4f4f5;color:#52525b}.org-hierarchy-tree__node-main{display:flex;flex-direction:column;gap:3px;min-width:0;padding-top:2px}.org-hierarchy-tree__node-title{display:inline-flex;flex-wrap:wrap;align-items:center;gap:6px}.org-hierarchy-tree__node-title strong{font-size:14px;font-weight:600;color:var(--oht-ink)}.org-hierarchy-tree__badge{display:inline-flex;align-items:center;height:20px;padding:0 7px;border-radius:6px;font-size:11px;font-weight:600;line-height:1;letter-spacing:.02em;background:#f4f4f5;color:#52525b}.org-hierarchy-tree__badge--campus{background:var(--oht-brand-soft);color:var(--oht-brand-ink)}.org-hierarchy-tree__badge--agent{background:#fff7ed;color:#9a3412}.org-hierarchy-tree__badge--partner{background:#ecfdf5;color:#047857}.org-hierarchy-tree__badge--city1{background:#fff7ed;color:#c2410c}.org-hierarchy-tree__badge--city2{background:#eff6ff;color:#1d4ed8}.org-hierarchy-tree__badge--pending{background:#fffbeb;color:#b45309}.org-hierarchy-tree__node-sub,.org-hierarchy-tree__node-count{font-size:12px;color:var(--oht-muted);line-height:1.45}.org-hierarchy-tree__node-count{color:#52525b}.org-hierarchy-tree .ant-tree{background:transparent}.org-hierarchy-tree .ant-tree .ant-tree-treenode{padding:2px 0;width:100%}.org-hierarchy-tree .ant-tree .ant-tree-node-content-wrapper{min-height:44px;padding-inline:8px;border-radius:10px;transition:background-color .16s cubic-bezier(.16,1,.3,1)}.org-hierarchy-tree .ant-tree .ant-tree-node-content-wrapper:hover{background:#66993314!important}.org-hierarchy-tree .ant-tree .ant-tree-switcher{display:inline-flex;align-items:center;justify-content:center;width:24px;line-height:44px;color:#a1a1aa}.org-hierarchy-tree .ant-tree .ant-tree-indent-unit{width:20px}.org-hierarchy-tree .ant-tree-show-line .ant-tree-indent-unit:before{border-inline-end:1px solid #e4e4e7}.org-hierarchy-tree .ant-tree-show-line .ant-tree-switcher-leaf-line:before,.org-hierarchy-tree .ant-tree-show-line .ant-tree-switcher-leaf-line:after{border-color:#d4d4d8}@media (prefers-reduced-motion: reduce){.org-hierarchy-tree .ant-tree .ant-tree-node-content-wrapper{transition:none}}@media (max-width: 720px){.org-hierarchy-tree__header{padding:14px 14px 12px}.org-hierarchy-tree__toolbar{padding:10px 14px}.org-hierarchy-tree__search{max-width:none;flex-basis:100%}.org-hierarchy-tree__panel{min-height:min(520px,calc(100vh - 140px))}}*,*:before,*:after{box-sizing:border-box}html,body,#root{margin:0;padding:0;min-height:100%;width:100%;max-width:100vw}body{background:#f5f8ef;color:#18181b}.admin-login-shell{min-height:100vh;display:grid;place-items:center;padding:32px;background:linear-gradient(180deg,#f5f8ef,#f9faf7)}.admin-login-card{width:min(420px,100%);padding:32px;border-radius:18px;background:#fff;box-shadow:0 12px 40px #0f0f1014}.admin-login-brand{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.admin-login-portal-tag{display:inline-flex;align-items:center;height:24px;padding:0 10px;border-radius:999px;background:#6699331f;color:#4d7326;font-size:12px;font-weight:600;letter-spacing:.02em}.admin-login-portal-desc{margin:8px 0 0;color:#71717a;font-size:13px;line-height:1.5}.admin-login-mode-switch{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin:20px 0 16px;padding:5px;border-radius:999px;background:#f4f4f5;border:1px solid #e4e4e7}.admin-login-mode-switch__btn{display:inline-flex;align-items:center;justify-content:center;height:40px;padding:0 12px;border:none;border-radius:999px;background:transparent;color:#52525b;font-size:14px;font-weight:600;cursor:pointer;transition:background .2s ease,color .2s ease,box-shadow .2s ease}.admin-login-mode-switch__btn:hover{color:#18181b}.admin-login-mode-switch__btn.is-active{color:#3f5f1f;background:#fff;box-shadow:0 2px 8px #0f0f1014}.admin-login-head{margin-bottom:16px}.admin-login-title{margin:0;font-size:20px;font-weight:700;color:#18181b;line-height:1.3}.admin-login-desc{margin:6px 0 0;font-size:13px;line-height:1.55;color:#71717a}.admin-login-hint{margin:-4px 0 14px;font-size:12px;line-height:1.5;color:#a1a1aa}.admin-shell{--admin-page-inline: 24px;background:#f5f8ef}.admin-sider{background:#2b3d16!important;padding:20px 0 24px}.admin-sider .ant-menu-dark{background:transparent!important;border-inline-end:none!important}.admin-sider .ant-menu-dark .ant-menu-item-selected{background:#ffffff1f!important}.admin-brand{padding:0 20px 16px;border-bottom:1px solid rgb(255 255 255 / .08);margin-bottom:8px}.admin-header{display:flex;align-items:center;justify-content:space-between;gap:16px;height:auto!important;line-height:normal;padding:14px var(--admin-page-inline, 24px);background:#fff;border-bottom:1px solid #e4e4e7;min-width:0}.admin-header-main{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1 1 auto}.admin-header-title-row{display:flex;align-items:center;gap:4px;min-width:0}.admin-header-menu-btn{color:#18181b!important;font-size:18px;width:40px;height:40px;flex-shrink:0;display:inline-flex;align-items:center;justify-content:center}.admin-header-menu-btn:hover,.admin-header-menu-btn:focus{color:#693!important;background:#f0f7e8!important}.admin-sider-mask{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1090;margin:0;padding:0;border:none;background:#0f170c73;cursor:pointer;-webkit-tap-highlight-color:transparent}.admin-header-breadcrumb{font-size:12px;line-height:1.4;color:#71717a;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-header-title{margin:0;font-size:18px;font-weight:600;line-height:1.35;color:#18181b;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-header-actions{display:flex;align-items:center;gap:12px;flex-shrink:0;min-width:0;color:#3f3f46}@media (max-width: 960px){.admin-header{flex-wrap:wrap;align-items:flex-start;gap:12px}.admin-header-actions{flex-shrink:1;flex-wrap:wrap;justify-content:flex-end}}@media (max-width: 768px){.admin-header{flex-direction:column;align-items:stretch;padding:12px 16px}.admin-header-title{white-space:normal;overflow:visible;text-overflow:unset;word-break:break-word}.admin-header-actions{width:100%;justify-content:space-between}}.admin-content{padding:clamp(16px,1.5vw,24px) var(--admin-page-inline)}.admin-overview{display:grid;gap:20px;width:100%;max-width:100%;min-width:0;box-sizing:border-box}.admin-overview-hero{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:22px 24px;border-radius:18px;background:linear-gradient(135deg,#fff,#f8faf5);box-shadow:0 8px 24px #0f0f100d;border:1px solid rgb(102 153 51 / .08)}.admin-overview-hero__eyebrow{margin:0 0 6px;font-size:12px;color:#71717a}.admin-overview-hero__title{margin:0;font-size:22px;font-weight:700;line-height:1.35;color:#18181b}.admin-overview-hero__desc{margin:8px 0 0;font-size:13px;line-height:1.6;color:#71717a;max-width:560px}.admin-overview-kpi{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.admin-kpi-card{display:flex;align-items:flex-start;gap:14px;padding:18px 20px;border-radius:16px;background:#fff;box-shadow:0 8px 24px #0f0f100d;border:1px solid #f0f0f0}.admin-kpi-card__icon{display:grid;place-items:center;width:44px;height:44px;border-radius:12px;font-size:20px;flex-shrink:0}.admin-kpi-card__label{font-size:12px;color:#71717a}.admin-kpi-card__value{margin-top:4px;font-size:28px;font-weight:700;line-height:1.1;color:#18181b;font-variant-numeric:tabular-nums}.admin-kpi-card__value--warn{color:#d97706}.admin-kpi-card__hint{margin-top:6px;font-size:11px;color:#a1a1aa}.admin-kpi-card--action{width:100%;border:1px solid #f0f0f0;cursor:pointer;text-align:left;transition:border-color .15s ease,box-shadow .15s ease,transform .15s ease}.admin-kpi-card--action:hover{border-color:#6699334d;box-shadow:0 10px 28px #6699331a;transform:translateY(-1px)}.admin-kpi-card--action:focus-visible{outline:2px solid #669933;outline-offset:2px}.admin-overview-main{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.34fr);gap:16px;width:100%;align-items:stretch}.admin-overview-main__primary,.admin-overview-main__side{display:grid;gap:16px;min-width:0;align-content:start}.admin-dash-panel{padding:18px 20px 20px;border-radius:16px;background:#fff;box-shadow:0 8px 24px #0f0f100d;border:1px solid #f0f0f0}.admin-dash-panel--compact{padding-bottom:16px}.admin-dash-panel__head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:12px}.admin-dash-panel__head h3{margin:0;font-size:15px;font-weight:600;color:#18181b}.admin-dash-panel__sub{font-size:12px;color:#a1a1aa}.admin-entity-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.admin-entity-card{display:flex;flex-direction:column;gap:8px;padding:14px;border:1px solid #eef2e8;border-radius:14px;background:#fafcf7;text-align:left;cursor:pointer;transition:border-color .15s ease,box-shadow .15s ease,transform .15s ease}.admin-entity-card:hover{border-color:#66993359;box-shadow:0 8px 20px #66993314;transform:translateY(-1px)}.admin-entity-card__head{display:flex;align-items:center;gap:8px}.admin-entity-card__icon{display:grid;place-items:center;width:32px;height:32px;border-radius:10px;font-size:15px}.admin-entity-card__title{font-size:13px;font-weight:600;color:#3f3f46}.admin-entity-card__value{font-size:26px;font-weight:700;color:#18181b;font-variant-numeric:tabular-nums}.admin-entity-card__foot{display:flex;gap:10px;font-size:11px;color:#71717a}.admin-entity-card--split .admin-entity-card__split-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.admin-entity-card__split-grid strong{display:block;margin-top:2px;font-size:20px;color:#18181b}.admin-entity-card__split-grid small{display:block;margin-top:2px;font-size:10px;color:#a1a1aa}.admin-entity-card__split-label{font-size:11px;color:#71717a}.admin-quota-list{display:grid;gap:8px}.admin-quota-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;border-radius:10px;background:#f8faf5;font-size:12px;color:#52525b}.admin-quota-row strong{font-size:18px;color:#27421a;font-variant-numeric:tabular-nums}.admin-quick-links{display:grid;gap:8px}.admin-quick-link{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;padding:11px 12px;border:1px solid #eef2e8;border-radius:10px;background:#fff;color:#3f3f46;font-size:13px;cursor:pointer;transition:background .15s ease,border-color .15s ease}.admin-quick-link:hover{background:#f8faf5;border-color:#66993340;color:#693}.admin-dash-info{margin:0;font-size:14px;font-weight:600;color:#18181b}.admin-dash-info--muted{margin-top:6px;font-size:12px;font-weight:400;color:#71717a}.admin-overview--delivery{gap:0}.admin-delivery-workbench{display:grid;gap:20px}.admin-delivery-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:64px 24px;color:#71717a;font-size:14px}.admin-delivery-loading__dot{display:inline-block;width:8px;height:8px;margin:0 3px;border-radius:50%;background:#693;opacity:.35;animation:admin-delivery-pulse 1.2s ease-in-out infinite}.admin-delivery-loading__dot:nth-child(2){animation-delay:.15s}.admin-delivery-loading__dot:nth-child(3){animation-delay:.3s}.admin-delivery-loading p{margin:4px 0 0}@keyframes admin-delivery-pulse{0%,to{opacity:.35;transform:scale(.92)}50%{opacity:1;transform:scale(1)}}@media (prefers-reduced-motion: reduce){.admin-delivery-loading__dot{animation:none;opacity:.6}}.admin-delivery-hero{position:relative;display:flex;align-items:flex-start;justify-content:space-between;gap:clamp(16px,2vw,32px);padding:clamp(22px,2vw,32px) clamp(24px,2.5vw,40px);border-radius:16px;background:linear-gradient(135deg,#2b3d16,#466622 52%,#577f2a);color:#fff;box-shadow:0 12px 32px #2b3d162e;overflow:hidden}.admin-delivery-hero__decor{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.admin-delivery-hero__orb{position:absolute;border-radius:50%;filter:blur(0)}.admin-delivery-hero__orb--a{top:-40px;right:120px;width:160px;height:160px;background:#ffffff0f}.admin-delivery-hero__orb--b{bottom:-60px;right:-20px;width:200px;height:200px;background:#ffffff0a}.admin-delivery-hero__main{position:relative;z-index:1;min-width:0}.admin-delivery-hero__actions{position:relative;z-index:1;display:flex;flex-direction:column;flex-wrap:nowrap;gap:14px;flex-shrink:0;align-items:stretch;min-width:min(320px,100%);padding-top:4px}.admin-delivery-hero__action-row{display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end}.admin-delivery-hero--subject{background:linear-gradient(135deg,#243a14,#3d5c22 46%,#577f2a)}.admin-delivery-hero__eyebrow{margin:0 0 8px;font-size:13px;opacity:.85}.admin-delivery-hero__title{margin:0;font-size:28px;font-weight:700;line-height:1.25;text-wrap:balance}.admin-delivery-hero__desc{margin:10px 0 0;font-size:14px;line-height:1.5;opacity:.9;max-width:720px}.admin-delivery-hero__chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}.admin-delivery-hero__chip{display:inline-flex;align-items:center;padding:5px 12px;border-radius:999px;background:#ffffff1f;border:1px solid rgb(255 255 255 / .16);font-size:12px;font-weight:500;font-variant-numeric:tabular-nums;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.admin-delivery-hero__chip.is-warn{background:#d9770638;border-color:#ffc87859}.admin-delivery-alert{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 16px;border-radius:12px;background:#fff7ed;border:1px solid #fed7aa}.admin-delivery-alert__text{display:flex;flex-wrap:wrap;align-items:baseline;gap:8px;min-width:0;font-size:13px;color:#9a3412}.admin-delivery-alert__text strong{font-weight:600;color:#c2410c}.admin-delivery-alert__btn.ant-btn-primary{flex-shrink:0;background:#d97706!important;border-color:#d97706!important}.admin-delivery-alert__btn.ant-btn-primary:hover{background:#b45309!important;border-color:#b45309!important}.admin-delivery-hero__btn.ant-btn{height:38px;padding-inline:18px;font-weight:500;border-radius:10px}.admin-delivery-hero__btn.ant-btn-default.ant-btn-background-ghost{color:#fff;border-color:#ffffff73}.admin-delivery-hero__btn.ant-btn-default.ant-btn-background-ghost:hover{color:#fff;border-color:#fff;background:#ffffff1f!important}.admin-delivery-hero__btn--primary.ant-btn-primary{background:#fff!important;color:#466622!important;border:none;box-shadow:0 4px 14px #0000001f}.admin-delivery-hero__btn--primary.ant-btn-primary:hover{background:#f4f8ea!important;color:#2b3d16!important}.admin-delivery-hero__badge{display:inline-grid;place-items:center;min-width:20px;height:20px;margin-left:6px;padding:0 6px;border-radius:999px;background:#d97706;color:#fff;font-size:11px;font-weight:700;line-height:1}.admin-delivery-hero__warn-card{display:flex;align-items:center;gap:14px;width:100%;min-height:78px;margin-top:6px;padding:16px 18px;border:none;border-radius:16px;background:#fff;color:#27421a;text-align:left;cursor:pointer;box-shadow:0 8px 22px #00000024;transition:transform .15s ease,box-shadow .15s ease}.admin-delivery-hero__warn-card:hover{transform:translateY(-1px);box-shadow:0 10px 26px #0000002e}.admin-delivery-hero__warn-card.is-active{box-shadow:0 8px 22px #d9770647}.admin-delivery-hero__warn-card__icon{display:grid;place-items:center;width:46px;height:46px;border-radius:14px;background:#fff7ed;color:#d97706;font-size:20px;flex-shrink:0}.admin-delivery-hero__warn-card.is-active .admin-delivery-hero__warn-card__icon{background:#ffedd5;color:#c2410c}.admin-delivery-hero__warn-card__body{display:flex;flex-direction:column;gap:4px;min-width:0;flex:1}.admin-delivery-hero__warn-card__body strong{font-size:16px;font-weight:700;line-height:1.25;color:#1f2937}.admin-delivery-hero__warn-card__body em{font-style:normal;font-size:12px;color:#6b7280}.admin-delivery-hero__warn-card__count{display:inline-grid;place-items:center;min-width:34px;height:34px;padding:0 10px;border-radius:999px;background:#ef4444;color:#fff;font-size:16px;font-weight:700;font-variant-numeric:tabular-nums;flex-shrink:0}.admin-delivery-hero__warn-card:not(.is-active) .admin-delivery-hero__warn-card__count{background:#9ca3af}.admin-delivery-low-lesson-hint{margin:0 0 12px;font-size:13px;color:#6b7280}.admin-delivery-low-lesson-remain{display:inline-block;min-width:22px;padding:0 6px;border-radius:999px;background:#fff7ed;color:#c2410c;font-weight:700;font-variant-numeric:tabular-nums}.admin-lesson-remain--low{display:inline-block;min-width:22px;padding:0 6px;border-radius:999px;background:#fff1f0;color:#cf1322;font-weight:700;font-variant-numeric:tabular-nums}.admin-overview-kpi--delivery{margin-top:-4px}.admin-delivery-split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:16px}.admin-delivery-bottom{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:16px;align-items:start}.admin-delivery-panel{padding:22px 24px;border-radius:16px;background:#fff;border:1px solid #eef0f2;box-shadow:0 1px 2px #00000008,0 8px 24px #0000000d}.admin-delivery-panel__head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:4px}.admin-delivery-panel__title{margin:0;font-size:16px;font-weight:600;color:#18181b}.admin-delivery-panel__hint{margin:6px 0 16px;font-size:12px;line-height:1.5;color:#71717a}.admin-delivery-panel__hint--inline{margin:4px 0 0}.admin-delivery-info-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px 20px;margin:0}.admin-delivery-info-grid dt{margin:0 0 6px;font-size:12px;color:#71717a}.admin-delivery-info-grid dd{margin:0;font-size:15px;font-weight:600;color:#18181b;word-break:break-all}.admin-delivery-info-grid__mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:14px;letter-spacing:.02em}.admin-delivery-quota-total{display:flex;align-items:baseline;gap:8px;margin-bottom:14px;padding:14px 16px;border-radius:12px;background:linear-gradient(135deg,#f4f8ea,#eef4e8);font-size:13px;color:#52525b}.admin-delivery-quota-total strong{font-size:30px;font-weight:700;color:#577f2a;font-variant-numeric:tabular-nums}.admin-delivery-quota-unit{font-size:13px;color:#71717a}.admin-delivery-quota-warn{margin:0 0 12px;padding:10px 12px;border-radius:10px;background:#fffbeb;border:1px solid #fde68a;font-size:12px;line-height:1.5;color:#92400e}.admin-delivery-stats-row{display:grid;grid-template-columns:minmax(0,1fr) 220px;gap:16px;align-items:stretch;margin-top:16px;padding-top:16px;border-top:1px solid #f4f4f5}.admin-delivery-chart-panel{display:flex;flex-direction:column;min-height:200px;padding:12px 10px 8px;border-radius:14px;background:#fafcf7;border:1px solid #eef2e8}.admin-delivery-chart-panel__label{margin:0 0 4px 4px;font-size:12px;font-weight:600;color:#71717a}.admin-chart--delivery{flex:1;height:200px;min-height:180px}.admin-entity-grid--delivery{grid-template-columns:repeat(2,minmax(0,1fr));align-content:start}.admin-delivery-panel--side .admin-quick-links{margin-top:4px}.admin-delivery-link-btn{display:inline-flex;align-items:center;gap:6px;padding:0;border:none;background:none;font-size:13px;font-weight:500;color:#693;cursor:pointer;white-space:nowrap}.admin-delivery-link-btn:hover{color:#4d7326}.admin-dash-panel__empty{margin:0;padding:8px 0 4px;font-size:13px;color:#a1a1aa}@media (max-width: 1100px){.admin-delivery-bottom{grid-template-columns:1fr}.admin-delivery-panel--side{order:-1}}@media (max-width: 960px){.admin-delivery-split,.admin-delivery-info-grid{grid-template-columns:1fr}.admin-delivery-hero{flex-direction:column;padding:24px}.admin-delivery-stats-row{grid-template-columns:1fr}.admin-delivery-alert{flex-direction:column;align-items:stretch}.admin-entity-grid--delivery{grid-template-columns:1fr}}@media (max-width: 720px){.admin-overview-kpi--delivery{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 480px){.admin-overview-kpi--delivery{grid-template-columns:1fr}}.asd-root{--asd-ink: #14201a;--asd-muted: #4a5c52;--asd-line: #d7e3d8;--asd-surface: #ffffff;--asd-canvas: #eef4ef;--asd-accent: #669933;--asd-accent-deep: #3d5c22;--asd-accent-soft: #edf5e4;--asd-warn: #c2410c;--asd-warn-soft: #fff4eb;display:grid;gap:18px;width:100%;padding-bottom:8px;color:var(--asd-ink)}.admin-subject-delivery--math{--asd-accent: #669933;--asd-accent-deep: #3d5c22;--asd-accent-soft: #edf5e4;--asd-canvas: #eef4ef}.admin-subject-delivery--physics{--asd-accent: #2a6f8f;--asd-accent-deep: #1a455a;--asd-accent-soft: #e6f2f7;--asd-canvas: #eef3f6;--asd-line: #cfe0e8}.admin-subject-delivery--chemistry{--asd-accent: #8a5a28;--asd-accent-deep: #5c3a16;--asd-accent-soft: #f6efe6;--asd-canvas: #f4f0ea;--asd-line: #e4d7c6}.asd-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;min-height:calc(100vh - 112px);padding:64px 24px;color:var(--asd-muted, #4a5c52)}.asd-loading__bar{width:120px;height:3px;border-radius:999px;background:linear-gradient(90deg,transparent,var(--asd-accent, #669933),transparent);background-size:200% 100%;animation:asd-shimmer 1.2s ease-in-out infinite}@keyframes asd-shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}@media (prefers-reduced-motion: reduce){.asd-loading__bar{animation:none;background:var(--asd-accent, #669933);opacity:.45}}.asd-masthead{position:relative;display:flex;align-items:flex-end;justify-content:space-between;gap:20px;padding:22px 24px 20px;border-radius:18px;background:linear-gradient(135deg,var(--asd-accent-deep) 0%,var(--asd-accent) 58%,color-mix(in srgb,var(--asd-accent) 70%,#fff) 100%);color:#fff;overflow:hidden;box-shadow:0 14px 36px color-mix(in srgb,var(--asd-accent-deep) 28%,transparent)}.asd-masthead__glow{position:absolute;inset:auto -20% -55% 35%;height:160%;background:radial-gradient(circle at 30% 30%,rgb(255 255 255 / .18),transparent 55%);pointer-events:none}.asd-masthead__identity{position:relative;z-index:1;display:flex;align-items:flex-start;gap:14px;min-width:0}.asd-masthead__mark{flex-shrink:0;display:grid;place-items:center;width:48px;height:48px;border-radius:14px;background:#ffffff29;border:1px solid rgb(255 255 255 / .28);font-size:22px;line-height:1}.asd-masthead__mark .anticon{font-size:22px}.asd-masthead__copy{min-width:0}.asd-masthead__kicker{margin:0 0 6px;display:flex;flex-wrap:wrap;align-items:center;gap:8px;font-size:13px;font-weight:500;color:#ffffffe0}.asd-masthead__subject{display:inline-flex;align-items:center;gap:5px;padding:2px 10px 2px 8px;border-radius:999px;background:#ffffff2e;border:1px solid rgb(255 255 255 / .28);font-weight:700;letter-spacing:.04em}.asd-masthead__subject-icon{font-size:13px;line-height:1}.admin-header-title-with-icon{display:inline-flex;align-items:center;gap:8px}.admin-header-title-icon{display:inline-grid;place-items:center;color:var(--asd-accent, #669933);font-size:18px;line-height:1}.admin-shell:has(.admin-subject-delivery--physics) .admin-header-title-icon,.admin-shell:has(.asd-root.admin-subject-delivery--physics) .admin-header-title-icon{color:#2a6f8f}.admin-shell:has(.admin-subject-delivery--chemistry) .admin-header-title-icon,.admin-shell:has(.asd-root.admin-subject-delivery--chemistry) .admin-header-title-icon{color:#8a5a28}.asd-masthead__title{margin:0;font-size:26px;font-weight:700;line-height:1.2;letter-spacing:-.02em;text-wrap:balance}.asd-masthead__hint{margin:8px 0 0;max-width:46rem;font-size:14px;line-height:1.5;color:#ffffffe6}.asd-masthead__actions{position:relative;z-index:1;display:flex;flex-wrap:wrap;gap:10px;flex-shrink:0;justify-content:flex-end}.asd-btn.ant-btn{height:38px;padding-inline:16px;border-radius:10px;font-weight:600}.asd-btn--ghost.ant-btn{color:#fff!important;border-color:#ffffff73!important;background:transparent!important}.asd-btn--ghost.ant-btn:hover{color:#fff!important;border-color:#fff!important;background:#ffffff1f!important}.asd-btn--primary.ant-btn-primary{background:#fff!important;color:var(--asd-accent-deep)!important;border:none!important;box-shadow:0 4px 14px #0000001f}.asd-btn--primary.ant-btn-primary:hover{background:#f7faf4!important;color:var(--asd-ink)!important}.asd-btn__badge{display:inline-grid;place-items:center;min-width:18px;height:18px;margin-left:6px;padding:0 5px;border-radius:999px;background:#ea580c;color:#fff;font-size:11px;font-weight:700;line-height:1}.asd-pipeline-wrap{padding:16px 18px 18px;border-radius:16px;background:var(--asd-surface);border:1px solid var(--asd-line);box-shadow:0 1px 2px #14201a08,0 10px 28px #14201a0a}.asd-pipeline-wrap__head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:8px 16px;margin-bottom:14px}.asd-pipeline-wrap__title{margin:0;font-size:15px;font-weight:700;color:var(--asd-ink)}.asd-pipeline-wrap__desc{margin:0;font-size:12px;color:var(--asd-muted)}.asd-pipeline{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;align-items:stretch}.asd-pipeline__item{position:relative;display:flex;align-items:stretch;min-width:0}.asd-pipeline__connector{position:absolute;left:-10px;top:50%;width:20px;height:2px;transform:translateY(-50%);background:linear-gradient(90deg,transparent,var(--asd-accent));opacity:.35;pointer-events:none}.asd-pipeline__step{display:grid;grid-template-columns:auto auto 1fr;align-items:center;gap:10px;width:100%;padding:12px 12px 12px 10px;border:1px solid var(--asd-line);border-radius:12px;background:var(--asd-accent-soft);text-align:left;cursor:pointer;transition:border-color .15s ease,background .15s ease,transform .15s ease}.asd-pipeline__step:hover{border-color:color-mix(in srgb,var(--asd-accent) 45%,var(--asd-line));background:#fff;transform:translateY(-1px)}.asd-pipeline__step:focus-visible{outline:2px solid var(--asd-accent);outline-offset:2px}.asd-pipeline__step.is-warn{border-color:color-mix(in srgb,var(--asd-warn) 40%,var(--asd-line));background:var(--asd-warn-soft)}.asd-pipeline__step-no{font-size:11px;font-weight:700;color:color-mix(in srgb,var(--asd-accent-deep) 70%,#fff);font-variant-numeric:tabular-nums}.asd-pipeline__icon{display:grid;place-items:center;width:32px;height:32px;border-radius:9px;background:var(--asd-accent);color:#fff;font-size:15px}.asd-pipeline__step.is-warn .asd-pipeline__icon{background:var(--asd-warn)}.asd-pipeline__meta{display:flex;flex-direction:column;gap:1px;min-width:0}.asd-pipeline__label{font-size:12px;font-weight:600;color:var(--asd-muted)}.asd-pipeline__value{font-size:22px;font-weight:700;line-height:1.15;color:var(--asd-ink);font-variant-numeric:tabular-nums}.asd-pipeline__hint{font-size:11px;color:color-mix(in srgb,var(--asd-muted) 85%,transparent)}.asd-alert{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 16px;border-radius:12px;background:var(--asd-warn-soft);border:1px solid #fdba74}.asd-alert__text{display:flex;flex-wrap:wrap;align-items:baseline;gap:8px;min-width:0;font-size:13px;color:#9a3412}.asd-alert__text strong{font-weight:700;color:var(--asd-warn)}.asd-alert__btn.ant-btn-primary{flex-shrink:0;background:#ea580c!important;border-color:#ea580c!important}.asd-alert__btn.ant-btn-primary:hover{background:#c2410c!important;border-color:#c2410c!important}.asd-board{display:grid;gap:16px;align-items:stretch;grid-template-columns:minmax(0,1fr)}.asd-board__primary,.asd-board__rail{min-width:0}.asd-section{display:flex;flex-direction:column;min-height:100%;padding:18px 18px 16px;border-radius:16px;background:var(--asd-surface);border:1px solid var(--asd-line);box-shadow:0 1px 2px #14201a08,0 8px 22px #14201a0a}.asd-section__head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:14px;padding-bottom:12px;border-bottom:1px solid color-mix(in srgb,var(--asd-line) 80%,transparent)}.asd-section__title{margin:0;font-size:16px;font-weight:700;color:var(--asd-ink);line-height:1.3}.asd-section__desc{margin:4px 0 0;font-size:12px;line-height:1.45;color:var(--asd-muted)}.asd-section__body{flex:1;display:flex;flex-direction:column;min-height:0}.asd-section__foot{display:flex;justify-content:flex-end;margin-top:12px;padding-top:10px;border-top:1px solid color-mix(in srgb,var(--asd-line) 80%,transparent)}.asd-link{display:inline-flex;align-items:center;gap:4px;padding:0;border:none;background:none;color:var(--asd-accent-deep);font-size:13px;font-weight:600;cursor:pointer}.asd-link:hover{color:var(--asd-accent)}.asd-link .anticon{font-size:11px}.asd-empty{display:grid;place-items:center;gap:4px;padding:28px 16px;border-radius:12px;background:var(--asd-canvas);border:1px dashed var(--asd-line);text-align:center}.asd-empty p{margin:0;font-size:13px;line-height:1.5;color:var(--asd-muted)}.asd-task-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.asd-task{display:grid;grid-template-columns:72px minmax(0,1fr) auto;gap:12px;align-items:center;width:100%;padding:12px 14px;border:1px solid var(--asd-line);border-radius:12px;background:var(--asd-canvas);text-align:left;cursor:pointer;transition:border-color .15s ease,background .15s ease,box-shadow .15s ease}.asd-task:hover{border-color:color-mix(in srgb,var(--asd-accent) 40%,var(--asd-line));background:#fff;box-shadow:0 4px 14px color-mix(in srgb,var(--asd-accent) 12%,transparent)}.asd-task__status{font-size:12px;font-weight:700;color:var(--asd-accent-deep);font-variant-numeric:tabular-nums;white-space:nowrap}.asd-task__status--time{letter-spacing:-.01em}.asd-task__main{min-width:0}.asd-task__main strong{display:block;font-size:14px;font-weight:600;color:var(--asd-ink);line-height:1.35}.asd-task__main span{display:block;margin-top:2px;font-size:12px;color:var(--asd-muted);line-height:1.45;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.asd-resource{display:grid;gap:14px}.asd-resource__stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.asd-stat{display:flex;flex-direction:column;align-items:flex-start;gap:2px;padding:12px 10px;border:1px solid var(--asd-line);border-radius:12px;background:var(--asd-canvas);cursor:pointer;transition:border-color .15s ease,background .15s ease}.asd-stat:hover{border-color:color-mix(in srgb,var(--asd-accent) 40%,var(--asd-line));background:#fff}.asd-stat__icon{margin-bottom:4px;color:var(--asd-accent);font-size:16px}.asd-stat__label{font-size:12px;color:var(--asd-muted)}.asd-stat__value{font-size:22px;font-weight:700;color:var(--asd-ink);font-variant-numeric:tabular-nums;line-height:1.1}.asd-stat small{font-size:11px;color:color-mix(in srgb,var(--asd-muted) 80%,transparent)}.asd-quota{padding:14px;border-radius:12px;background:var(--asd-accent-soft);border:1px solid color-mix(in srgb,var(--asd-accent) 22%,var(--asd-line))}.asd-quota.is-low{background:var(--asd-warn-soft);border-color:#fdba74}.asd-quota__head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:8px;font-size:13px;font-weight:600;color:var(--asd-ink)}.asd-quota__warn{margin:0 0 8px;font-size:12px;color:var(--asd-warn)}.asd-quota__total{display:flex;align-items:baseline;gap:6px;margin-bottom:10px}.asd-quota__total strong{font-size:32px;font-weight:700;line-height:1;color:var(--asd-accent-deep);font-variant-numeric:tabular-nums}.asd-quota.is-low .asd-quota__total strong{color:var(--asd-warn)}.asd-quota__total span{font-size:13px;color:var(--asd-muted)}.asd-quota__rows{display:flex;flex-direction:column;gap:6px}.asd-quota__row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 10px;border-radius:8px;background:#ffffffb8;font-size:13px}.asd-quota__row strong{font-variant-numeric:tabular-nums;color:var(--asd-ink)}.asd-strip{display:grid;gap:16px;align-items:stretch;grid-template-columns:minmax(0,1fr)}.asd-strip>*{min-width:0}.asd-record-list,.asd-week-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.asd-record,.asd-week{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;padding:11px 12px;border:1px solid var(--asd-line);border-radius:10px;background:var(--asd-canvas);text-align:left;cursor:pointer;transition:border-color .15s ease,background .15s ease}.asd-record:hover,.asd-week:hover{border-color:color-mix(in srgb,var(--asd-accent) 40%,var(--asd-line));background:#fff}.asd-record__main{min-width:0;flex:1}.asd-record__main strong{display:block;font-size:13px;font-weight:600;color:var(--asd-ink)}.asd-record__main span{display:block;margin-top:2px;font-size:12px;color:var(--asd-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.asd-record__time{flex-shrink:0;font-size:12px;font-weight:500;color:var(--asd-muted);font-variant-numeric:tabular-nums;white-space:nowrap}.asd-week{display:grid;grid-template-columns:48px minmax(0,1fr);justify-content:stretch}.asd-week__date{font-size:12px;font-weight:700;color:var(--asd-accent-deep);font-variant-numeric:tabular-nums}.asd-week__text{font-size:13px;color:var(--asd-ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.asd-quick{display:grid;gap:8px}.asd-quick__item{display:grid;grid-template-columns:32px minmax(0,1fr) auto;align-items:center;gap:10px;width:100%;padding:11px 12px;border:1px solid var(--asd-line);border-radius:10px;background:var(--asd-canvas);text-align:left;cursor:pointer;font-size:13px;font-weight:600;color:var(--asd-ink);transition:border-color .15s ease,background .15s ease,transform .15s ease}.asd-quick__item:hover{border-color:color-mix(in srgb,var(--asd-accent) 40%,var(--asd-line));background:#fff;transform:translate(2px)}.asd-quick__icon{display:grid;place-items:center;width:32px;height:32px;border-radius:9px;background:var(--asd-accent-soft);color:var(--asd-accent-deep);font-size:15px}.asd-quick__item .anticon-right{font-size:11px;color:var(--asd-muted)}@media (min-width: 960px){.asd-board{grid-template-columns:minmax(0,1.7fr) minmax(280px,34%)}.asd-strip{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr) minmax(220px,.85fr)}}@media (min-width: 1280px){.asd-masthead{padding:26px 28px 22px}.asd-masthead__title{font-size:28px}.asd-board{grid-template-columns:minmax(0,1.75fr) minmax(320px,380px)}}@media (max-width: 1100px){.asd-pipeline{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.asd-pipeline__connector{display:none}}@media (max-width: 720px){.asd-masthead{flex-direction:column;align-items:stretch}.asd-masthead__actions{justify-content:stretch}.asd-masthead__actions .asd-btn.ant-btn{flex:1}.asd-pipeline,.asd-resource__stats{grid-template-columns:1fr}.asd-task{grid-template-columns:64px minmax(0,1fr)}.asd-task .ant-tag{grid-column:1 / -1;justify-self:start}.asd-alert{flex-direction:column;align-items:stretch}}.admin-subject-delivery{display:grid;gap:clamp(16px,1.4vw,24px);width:100%}.admin-subject-delivery-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;min-height:calc(100vh - 112px);padding:64px 24px;color:#71717a}.admin-subject-hero__badge-row{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:8px}.admin-subject-hero__badge{display:inline-flex;align-items:center;padding:4px 12px;border-radius:999px;background:#ffffff2e;border:1px solid rgb(255 255 255 / .28);font-size:13px;font-weight:700;letter-spacing:.04em}.admin-subject-hero__badge-row .admin-delivery-hero__eyebrow{margin:0}.admin-overview-kpi--subject{grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(12px,1.2vw,18px)}.admin-subject-workspace{display:flex;flex-direction:column;gap:clamp(16px,1.4vw,24px);width:100%}.admin-subject-workspace__focus,.admin-subject-workspace__bottom,.admin-subject-workspace__top,.admin-subject-workspace__records,.admin-subject-workspace__snapshot,.admin-subject-workspace__footer{min-width:0}.admin-subject-workspace__bottom{display:flex;flex-direction:column;gap:clamp(16px,1.4vw,24px)}.admin-subject-workspace__top{display:grid;gap:clamp(16px,1.4vw,24px);align-items:stretch;grid-template-columns:minmax(0,1fr)}.admin-subject-workspace__top>*{display:flex;min-width:0}.admin-subject-workspace__footer{display:grid;gap:clamp(14px,1.2vw,18px);align-items:stretch;grid-template-columns:minmax(0,1fr)}.admin-subject-workspace__footer>*{display:flex;min-width:0}.admin-subject-panel--stretch{flex:1;width:100%;display:flex;flex-direction:column}.admin-subject-panel--stretch .admin-subject-panel__body{flex:1;display:flex;flex-direction:column}.admin-subject-snapshot{display:grid;gap:18px;flex:1}.admin-subject-snapshot__quota{padding-top:18px;border-top:1px solid #f4f4f5}.admin-subject-snapshot__quota-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px;font-size:13px;font-weight:600;color:#3f3f46}.admin-subject-panel--compact{padding:clamp(16px,1.2vw,20px)}.admin-subject-panel--compact .admin-subject-panel__header{margin-bottom:12px;padding-bottom:10px}.admin-subject-panel--compact .admin-subject-panel__desc{margin-top:4px}.admin-quick-links--compact{gap:6px}.admin-quick-links--row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.admin-subject-mini-list--row{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,220px),1fr));gap:8px}.admin-subject-mini-list--row>li{min-width:0}.admin-subject-panel{padding:clamp(18px,1.5vw,24px);border-radius:16px;background:#fff;border:1px solid #eef0f2;box-shadow:0 1px 2px #00000008,0 8px 24px #0000000d}.admin-subject-panel__header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:16px;padding-bottom:14px;border-bottom:1px solid #f4f4f5}.admin-subject-panel__title{margin:0;font-size:16px;font-weight:600;color:#18181b;line-height:1.35}.admin-subject-panel__desc{margin:6px 0 0;font-size:13px;line-height:1.5;color:#71717a}.admin-subject-panel__foot{display:flex;justify-content:flex-end;margin-top:14px;padding-top:12px;border-top:1px solid #f4f4f5}.admin-subject-task-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}.admin-subject-task-list--grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,320px),1fr));gap:10px}.admin-subject-task-list--grid>li{min-width:0}.admin-subject-task-item{display:grid;grid-template-columns:76px minmax(0,1fr) auto;gap:12px;align-items:center;width:100%;padding:12px 14px;border:1px solid #eef2e8;border-radius:12px;background:#fafcf7;text-align:left;cursor:pointer;transition:border-color .15s ease,background .15s ease,box-shadow .15s ease}.admin-subject-task-item:hover{border-color:#66993352;background:#f4f8ef;box-shadow:0 4px 14px #66993314}.admin-subject-task-item__time{font-size:13px;font-weight:600;color:#466622;font-variant-numeric:tabular-nums;white-space:nowrap}.admin-subject-task-item__main{min-width:0}.admin-subject-task-item__main strong{display:block;font-size:14px;font-weight:600;color:#18181b;line-height:1.35}.admin-subject-task-item__main span{display:block;margin-top:2px;font-size:12px;color:#71717a;line-height:1.45;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-subject-empty{padding:28px 16px;border-radius:12px;background:#fafafa;border:1px dashed #e4e4e7;text-align:center}.admin-subject-empty p{margin:0 0 6px;font-size:13px;line-height:1.55;color:#71717a}.admin-subject-record-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px;flex:1}.admin-subject-record-item{display:flex;align-items:center;justify-content:space-between;gap:16px;width:100%;padding:12px 14px;border:1px solid #eef2e8;border-radius:12px;background:#fafcf7;text-align:left;cursor:pointer;transition:border-color .15s ease,background .15s ease,box-shadow .15s ease}.admin-subject-record-item:hover{border-color:#66993352;background:#f4f8ef;box-shadow:0 4px 14px #66993314}.admin-subject-record-item__main{min-width:0;flex:1}.admin-subject-record-item__main strong{display:block;font-size:14px;font-weight:600;color:#18181b;line-height:1.35}.admin-subject-record-item__main span{display:block;margin-top:2px;font-size:12px;color:#71717a;line-height:1.45;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-subject-record-item__time{flex-shrink:0;font-size:12px;font-weight:500;color:#52525b;font-variant-numeric:tabular-nums;white-space:nowrap}.admin-subject-scale-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.admin-subject-scale-item{display:flex;flex-direction:column;align-items:center;gap:4px;padding:14px 8px;border:1px solid #eef2e8;border-radius:12px;background:#fafcf7;cursor:pointer;transition:border-color .15s ease,background .15s ease}.admin-subject-scale-item:hover{border-color:#66993347;background:#f4f8ef}.admin-subject-scale-item__label{font-size:12px;color:#71717a}.admin-subject-scale-item__value{font-size:24px;font-weight:700;color:#18181b;font-variant-numeric:tabular-nums;line-height:1.1}.admin-subject-scale-item small{font-size:11px;color:#a1a1aa}.admin-delivery-quota-total--compact{margin-bottom:12px}.admin-quota-list--compact{gap:6px}.admin-subject-mini-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.admin-subject-mini-item{display:grid;grid-template-columns:52px minmax(0,1fr);gap:10px;align-items:center;width:100%;padding:10px 12px;border:none;border-radius:10px;background:#f8faf5;text-align:left;cursor:pointer;transition:background .15s ease}.admin-subject-mini-item:hover{background:#eef4e8}.admin-subject-mini-item__date{font-size:12px;font-weight:600;color:#466622;font-variant-numeric:tabular-nums}.admin-subject-mini-item__text{font-size:13px;color:#3f3f46;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media (min-width: 960px){.admin-subject-workspace__top{grid-template-columns:minmax(0,1.65fr) minmax(300px,34%)}.admin-subject-workspace__footer{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width: 1280px){.admin-delivery-hero__desc{max-width:none}.admin-subject-task-item{grid-template-columns:88px minmax(0,1fr) auto;padding:14px 16px}.admin-subject-workspace__top{grid-template-columns:minmax(0,1.65fr) minmax(360px,420px)}.admin-subject-snapshot{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:20px;align-items:start}.admin-subject-snapshot__quota{padding-top:0;border-top:none;padding-left:20px;border-left:1px solid #f4f4f5}.admin-quick-links--row{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (min-width: 1600px){.admin-subject-workspace__top{grid-template-columns:minmax(0,2fr) minmax(400px,480px)}.admin-subject-task-list--grid{grid-template-columns:repeat(auto-fill,minmax(360px,1fr))}}@media (max-width: 1100px){.admin-overview-kpi--subject{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 959px){.admin-subject-delivery{min-height:auto}}@media (max-width: 720px){.admin-overview-kpi--subject,.admin-subject-scale-grid{grid-template-columns:1fr}.admin-subject-task-item{grid-template-columns:64px minmax(0,1fr);grid-template-rows:auto auto}.admin-subject-task-item .ant-tag{grid-column:1 / -1;justify-self:start}.admin-subject-record-item{flex-direction:column;align-items:flex-start;gap:8px}.admin-subject-record-item__time{font-size:11px;color:#71717a}}.admin-info-list{display:grid;gap:0;margin-top:4px}.admin-info-row{display:flex;align-items:baseline;justify-content:space-between;gap:16px;padding:12px 0;border-bottom:1px solid #f4f4f5}.admin-info-row:last-child{border-bottom:none;padding-bottom:0}.admin-info-row__label{flex-shrink:0;font-size:13px;color:#71717a}.admin-info-row__value{font-size:14px;font-weight:600;color:#18181b;text-align:right;word-break:break-all}.admin-info-row__value--mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:13px;letter-spacing:.02em}.admin-orders-page{gap:0}.admin-orders-summary{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:16px}.admin-orders-summary__item{display:flex;flex-direction:column;gap:4px;min-width:120px;padding:14px 18px;border-radius:14px;background:#fff;border:1px solid #eef0f2;box-shadow:0 4px 16px #0f0f100a}.admin-orders-summary__label{font-size:12px;color:#71717a}.admin-orders-summary__value{font-size:26px;font-weight:700;line-height:1.1;color:#18181b;font-variant-numeric:tabular-nums}.admin-orders-summary__value--warn{color:#d97706}.admin-orders-id{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:12px;color:#71717a}.admin-orders-student{display:flex;flex-direction:column;gap:2px}.admin-orders-student strong{font-weight:600;color:#18181b}.admin-orders-student span{font-size:12px;color:#a1a1aa}.admin-orders-muted{color:#a1a1aa;font-style:italic}.admin-orders-assign-btn,.admin-orders-action-btn{display:inline-flex;align-items:center;justify-content:center;min-width:4.5em;height:28px;padding:0;margin:0;font-weight:600;line-height:1}.admin-orders-modal-title{display:inline-flex;align-items:center;gap:8px}.admin-orders-assign{display:grid;gap:14px}.admin-orders-assign__meta{margin-bottom:0}.admin-orders-assign__hint{margin:0;padding:10px 12px;border-radius:10px;background:#f8faf5;border:1px solid #e4ecd9;font-size:12px;line-height:1.65;color:#52525b}.admin-orders-assign__label{font-size:13px;font-weight:600;color:#374151}.admin-orders-assign__empty{margin:0;font-size:12px;color:#dc2626}.admin-campus-tabs--solo>.ant-tabs-nav{display:none}.admin-campus-quota-board{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;margin-bottom:16px;padding:4px 0;border-radius:14px;background:#fff;border:1px solid #eef0f2;box-shadow:0 4px 18px #0f0f100d;overflow:hidden}.admin-campus-quota-board__col{display:flex;flex-direction:column;gap:8px;min-width:0;padding:18px 22px 16px}.admin-campus-quota-board__col+.admin-campus-quota-board__col{border-left:1px solid #eef0f2}.admin-campus-quota-board__label{font-size:13px;font-weight:500;color:#71717a}.admin-campus-quota-board__label b{color:#27421a;font-weight:700;font-variant-numeric:tabular-nums}.admin-campus-quota-board__value{display:inline-flex;align-items:baseline;gap:2px;font-size:30px;font-weight:700;line-height:1.05;color:#18181b;font-variant-numeric:tabular-nums;letter-spacing:-.02em}.admin-campus-quota-board__value em{font-style:normal;font-size:14px;font-weight:600;color:#693}.admin-campus-quota-board__meta{margin:0;font-size:12px;line-height:1.55;color:#71717a}.admin-campus-quota-board__meta b{color:#693;font-weight:700;font-variant-numeric:tabular-nums}.admin-campus-quota-board__meta span[aria-hidden]{margin:0 6px;color:#d4d4d8}.admin-campus-quota-board__bar{position:relative;height:8px;margin-top:4px;border-radius:999px;background:#eef2e8;overflow:visible}.admin-campus-quota-board__bar-fill{position:relative;display:block;height:100%;min-width:0;border-radius:999px;background:linear-gradient(90deg,#8fbf4d,#693);transition:width .22s cubic-bezier(.16,1,.3,1)}.admin-campus-quota-board__bar-fill:after{content:"";position:absolute;top:50%;right:-5px;width:12px;height:12px;border-radius:50%;background:#fff;border:3px solid #669933;box-shadow:0 1px 3px #27421a33;transform:translateY(-50%)}.admin-campus-quota-board__foot{margin:2px 0 0;font-size:12px;color:#a1a1aa}@media (prefers-reduced-motion: reduce){.admin-campus-quota-board__bar-fill{transition:none}}@media (max-width: 900px){.admin-campus-quota-board{grid-template-columns:1fr}.admin-campus-quota-board__col+.admin-campus-quota-board__col{border-left:none;border-top:1px solid #eef0f2}}.admin-delivery-quota-bar{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:8px 20px;margin-bottom:12px;padding:14px 18px;border-radius:14px;background:#fff;border:1px solid #e4ecd9;box-shadow:0 4px 16px #0f0f100a}.admin-delivery-quota-bar__main{display:flex;flex-wrap:wrap;align-items:baseline;gap:10px 14px;min-width:0}.admin-delivery-quota-bar__label{font-size:13px;font-weight:500;color:#52525b}.admin-delivery-quota-bar__value{display:inline-flex;align-items:baseline;gap:4px;font-size:28px;font-weight:700;line-height:1;color:#27421a;font-variant-numeric:tabular-nums;letter-spacing:-.02em}.admin-delivery-quota-bar__value em{font-style:normal;font-size:13px;font-weight:600;color:#693}.admin-delivery-quota-bar__hint{margin:0;font-size:12px;line-height:1.4;color:#71717a}.admin-student-summary{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:16px}.admin-student-summary__item{display:flex;flex-direction:column;gap:4px;min-width:108px;padding:12px 16px;border-radius:14px;background:#fff;border:1px solid #eef0f2;box-shadow:0 4px 16px #0f0f100a}.admin-student-summary__item--clickable{cursor:pointer;transition:border-color .15s ease,box-shadow .15s ease,background .15s ease}.admin-student-summary__item--clickable:hover{border-color:#c6d9b3;box-shadow:0 4px 16px #6699331f}.admin-student-summary__item--active{border-color:#693;background:#f7faf3;box-shadow:0 4px 16px #66993324}.admin-student-summary__label{font-size:12px;color:#71717a}.admin-student-summary__value{font-size:24px;font-weight:700;line-height:1.1;color:#18181b;font-variant-numeric:tabular-nums}.admin-student-summary__value--trial{color:#d97706}.admin-student-summary__value--formal{color:#693}.admin-student-id{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:12px;font-weight:600}.admin-student-id--formal{color:#1f1f1f}.admin-student-id--trial{color:#cf1322}.admin-student-type-tag{display:inline-block;min-width:40px;padding:1px 8px;border-radius:4px;font-size:12px;font-weight:600;line-height:20px;text-align:center;color:#fff}.admin-student-type-tag--formal{background:#cf1322}.admin-student-type-tag--trial{background:#52c41a}.admin-student-lesson-chip{display:inline-flex;align-items:baseline;gap:4px;padding:4px 10px;border-radius:999px;background:#f4f7ef;border:1px solid #d9e5c8;font-variant-numeric:tabular-nums;white-space:nowrap;line-height:1.2}.admin-student-lesson-chip strong{color:#27421a;font-size:13px}.admin-student-lesson-chip em,.admin-student-lesson-chip b{font-style:normal;font-size:13px;font-weight:600}.admin-student-lesson-chip em{color:#b45309}.admin-student-lesson-chip b{color:#166534}.admin-student-lesson-chip span{color:#a1a1aa;font-size:12px}.admin-student-row-actions{display:flex;flex-wrap:wrap;align-items:center;gap:6px}.admin-student-action-btn.ant-btn{font-size:12px;height:28px;padding-inline:8px;border:none;color:#fff}.admin-student-action-btn--open.ant-btn{background:#693}.admin-student-action-btn--open.ant-btn:hover{background:#558028!important;color:#fff!important}.admin-student-action-btn--hours.ant-btn{background:#3b5bdb}.admin-student-action-btn--hours.ant-btn:hover{background:#3149b8!important;color:#fff!important}.admin-student-action-btn--coach.ant-btn{background:#e67700}.admin-student-action-btn--coach.ant-btn:hover{background:#c96300!important;color:#fff!important}.admin-student-lesson-info__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:16px}.admin-student-lesson-info__item{display:flex;flex-direction:column;gap:6px;padding:12px;border-radius:10px;background:#f8faf5;border:1px solid #e4ecd9;text-align:center}.admin-student-lesson-info__item span{font-size:12px;color:#71717a}.admin-student-lesson-info__item strong{font-size:20px;font-variant-numeric:tabular-nums;color:#27421a}.admin-student-lesson-info__item--consumed{color:#b45309!important}.admin-student-lesson-info__item--left{color:#166534!important}.admin-student-course-cell{display:flex;flex-direction:column;gap:4px;align-items:flex-start}.admin-student-course-cell em{font-style:normal;font-size:12px;color:#71717a;font-variant-numeric:tabular-nums}.admin-student-table .ant-table-cell{font-size:13px}.admin-open-course-quota{display:flex;flex-direction:column;gap:6px;margin-bottom:14px;padding:12px 14px;border-radius:10px;background:#f8faf5;border:1px solid #e4ecd9;font-size:13px;color:#52525b}.admin-open-course-quota strong{color:#27421a}.admin-open-course-quota--warn{color:#dc2626;font-weight:600}.open-course-rule-hints{margin:-8px 0 12px}.open-course-rule-hints__line{margin:0 0 4px;font-size:12px;line-height:1.5;color:#dc2626}@media (max-width: 1200px){.admin-delivery-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-delivery-main,.admin-delivery-secondary{grid-template-columns:1fr}.admin-entity-grid--delivery{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 720px){.admin-delivery-stats,.admin-entity-grid--delivery{grid-template-columns:1fr}}@media (max-width: 1200px){.admin-overview-kpi{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-overview-main{grid-template-columns:1fr}.admin-entity-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 720px){.admin-overview-hero{flex-direction:column}.admin-overview-kpi,.admin-entity-grid{grid-template-columns:1fr}}.admin-overview-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.admin-stat-card{display:flex;gap:14px;align-items:center;padding:18px;border-radius:16px;background:#fff;box-shadow:0 8px 24px #0f0f100f}.admin-stat-card__icon{display:grid;place-items:center;width:44px;height:44px;border-radius:12px;background:#6699331f;color:#693}.admin-stat-card__label{font-size:12px;color:#6b6b6f}.admin-stat-card__value{margin-top:4px;font-size:20px;font-weight:700;color:#141414}.admin-role-panels{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.admin-role-panel,.admin-entry-card{padding:20px;border-radius:16px;background:#fff;box-shadow:0 8px 24px #0f0f100f}.admin-role-panel h3,.admin-entry-card h3{margin:0 0 8px;font-size:18px}.admin-role-panel p,.admin-entry-card p{margin:0;color:#6b6b6f;line-height:1.7}.admin-page{display:grid;gap:16px}.admin-page-toolbar{display:flex;gap:12px;align-items:center;margin-bottom:16px}.admin-page-toolbar--wrap{flex-wrap:wrap}.admin-stat-group__grid--4{grid-template-columns:repeat(4,minmax(0,1fr))}.ai-models-page{gap:20px}.ai-models-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.ai-models-loading,.ai-models-empty{display:grid;place-items:center;min-height:240px;padding:32px;border-radius:16px;background:#fff;box-shadow:0 8px 24px #0f0f100f}.ai-models-list{display:grid;gap:12px}.ai-model-card{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:16px;align-items:center;padding:18px 20px;border-radius:16px;background:#fff;box-shadow:0 8px 24px #0f0f100f}.ai-model-card__avatar{display:grid;place-items:center;width:48px;height:48px;border-radius:14px;font-size:14px;font-weight:700;letter-spacing:-.02em}.ai-model-card__main{min-width:0}.ai-model-card__title-row{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:6px}.ai-model-card__title{margin:0;font-size:16px;font-weight:600;color:#141414}.ai-model-card__meta{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin-bottom:10px;font-size:13px;color:#0000008c}.ai-model-card__dot{color:#00000040}.ai-model-card__tags{display:flex;flex-wrap:wrap;gap:6px}.ai-model-card__endpoint{max-width:280px;overflow:hidden;text-overflow:ellipsis}.ai-model-card__actions{display:grid;gap:12px;justify-items:end}.ai-model-card__switch{display:flex;align-items:center;gap:8px;font-size:13px;color:#0000008c}.ai-model-card__buttons{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.ai-models-modal-title{display:inline-flex;align-items:center;gap:8px}.ai-models-preset-preview{display:grid;gap:8px;margin-bottom:16px;padding:12px 14px;border-radius:12px;background:#f8faf5}.ai-models-preset-preview__row{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px 16px;font-size:13px;color:#0000008c}.ai-models-preset-preview__row strong{color:#141414;font-weight:600;text-align:right;word-break:break-all}@media (max-width: 960px){.ai-models-header{flex-direction:column;align-items:stretch}.admin-stat-group__grid--4{grid-template-columns:repeat(2,minmax(0,1fr))}.ai-model-card{grid-template-columns:auto minmax(0,1fr)}.ai-model-card__actions{grid-column:1 / -1;justify-items:stretch}.ai-model-card__buttons{justify-content:flex-start}}.storage-page{display:grid;gap:18px}.storage-page__hero{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:22px 24px;border-radius:16px;background:linear-gradient(135deg,#f8faf5,#fff 55%,#f4f9ef);border:1px solid rgb(102 153 51 / .12)}.storage-page__eyebrow{margin:0 0 6px;font-size:12px;font-weight:600;letter-spacing:.04em;color:#693}.storage-page__title{margin:0;font-size:22px;font-weight:700;color:#18181b}.storage-page__desc{margin:8px 0 0;max-width:560px;font-size:13px;line-height:1.65;color:#71717a}.storage-page__desc a{color:#693}.storage-page__save{flex-shrink:0}.storage-page__actions{display:flex;flex-wrap:wrap;gap:10px;flex-shrink:0}.storage-page__stack{display:grid;gap:16px}.storage-page__mode{margin-bottom:0}.storage-page__grid{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:16px;align-items:stretch}.storage-page__main{display:grid;gap:16px;min-width:0}.storage-page__grid>.storage-panel{height:100%;box-sizing:border-box}.storage-page__side{display:flex;flex-direction:column;min-height:100%}.storage-live--combined{display:flex;flex-direction:column;flex:1;height:100%;min-height:100%;box-sizing:border-box}.storage-live__block.is-divided{margin-top:auto;padding-top:16px;border-top:1px solid #f0f0f0}.storage-live__block h4{margin:0 0 14px;font-size:13px;font-weight:600;color:#52525b}.storage-live__block.is-divided h4{margin-bottom:12px}.storage-panel{display:flex;flex-direction:column;padding:20px 22px;border-radius:16px;background:#fff;border:1px solid #f0f0f0;box-shadow:0 8px 24px #0f0f100d}.storage-panel__head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}.storage-panel__head-actions{display:flex;align-items:center;gap:10px}.storage-panel__head h3{margin:0;font-size:15px;font-weight:600;color:#18181b}.storage-panel__hint{font-size:12px;color:#a1a1aa}.storage-panel__badge{padding:2px 10px;border-radius:999px;font-size:12px;font-weight:500;color:#71717a;background:#f4f4f5}.storage-panel__badge.is-ok{color:#15803d;background:#15803d1a}.storage-panel__badge.is-warn{color:#b45309;background:#f59e0b1f}.storage-setup-banner{padding:14px 18px;border-radius:12px;border:1px solid transparent}.storage-setup-banner strong{display:block;margin-bottom:4px;font-size:14px}.storage-setup-banner p{margin:0;font-size:13px;line-height:1.6}.storage-setup-banner.is-ok{color:#166534;background:#15803d14;border-color:#15803d2e}.storage-setup-banner.is-warn{color:#92400e;background:#f59e0b1a;border-color:#f59e0b38}.storage-empty-hint{margin:0 0 16px;padding:10px 12px;border-radius:10px;font-size:13px;line-height:1.55;color:#52525b;background:#fafafa}.storage-field-label{display:inline-flex;align-items:center;justify-content:space-between;gap:10px;width:100%;padding-right:4px}.storage-field-label__req{margin-left:2px;color:#ef4444}.storage-field-label__status{padding:1px 8px;border-radius:999px;font-size:11px;font-weight:500}.storage-field-label__status.is-empty{color:#b45309;background:#f59e0b1f}.storage-field-label__status.is-filled{color:#2563eb;background:#2563eb1a}.storage-field-label__status.is-saved{color:#15803d;background:#15803d1a}.storage-live__section-title{margin:14px 0 8px;font-size:12px;font-weight:600;color:#71717a}.storage-live__row strong.is-warn{color:#b45309}.storage-setup-progress{display:grid;gap:8px;margin:0;padding:0;list-style:none}.storage-setup-progress li{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:8px;padding:8px 10px;border-radius:8px;background:#fafafa;font-size:12px}.storage-setup-progress li.is-done{background:#15803d0f}.storage-setup-progress li.is-pending{background:#f59e0b14}.storage-setup-progress__dot{width:8px;height:8px;border-radius:50%;background:#d4d4d8}.storage-setup-progress li.is-done .storage-setup-progress__dot{background:#22c55e}.storage-setup-progress li.is-pending .storage-setup-progress__dot{background:#f59e0b}.storage-setup-progress__label{color:#3f3f46}.storage-setup-progress__status{font-weight:500}.storage-setup-progress__status.is-empty{color:#b45309}.storage-setup-progress__status.is-filled,.storage-setup-progress__status.is-saved{color:#15803d}.storage-form-grid .ant-form-item-has-error .ant-input,.storage-form-grid .ant-form-item-has-error .ant-input-password,.storage-form-grid .ant-form-item-has-error .ant-input-affix-wrapper{border-color:#f59e0b}.storage-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;align-items:start}.storage-form-grid .ant-form-item{margin-bottom:0}.storage-form-grid .ant-form-item-explain,.storage-form-grid .ant-form-item-extra{min-height:22px}.storage-form-grid .ant-form-item:last-child:nth-child(odd){grid-column:1 / -1}.storage-mode-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.storage-mode-card{display:flex;flex-direction:column;align-items:flex-start;gap:0;padding:16px 18px;border:1px solid #ececee;border-radius:14px;background:#fafafa;cursor:pointer;text-align:left;transition:border-color .15s ease,background .15s ease,box-shadow .15s ease,transform .15s ease}.storage-mode-card:hover{border-color:#66993340;background:#fff}.storage-mode-card.is-active{border-color:#693;background:linear-gradient(180deg,#66993314,#fff);box-shadow:0 8px 20px #6699331f;transform:translateY(-1px)}.storage-mode-card__icon{display:grid;place-items:center;width:36px;height:36px;margin-bottom:12px;border-radius:10px;background:#6699331a;color:#693;font-size:18px}.storage-mode-card__label{font-size:15px;font-weight:600;color:#18181b}.storage-mode-card__scene{margin-top:4px;font-size:12px;line-height:1.5;color:#71717a}.storage-live{padding:18px 20px;border-radius:16px;background:#fff;border:1px solid #f0f0f0;box-shadow:0 8px 24px #0f0f100d}.storage-live h4{margin:0 0 14px;font-size:13px;font-weight:600;color:#3f3f46}.storage-live__row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px solid #f4f4f5;font-size:13px}.storage-live__row:last-of-type{border-bottom:none}.storage-live__row span{color:#71717a}.storage-live__row strong{color:#18181b;font-weight:600;text-align:right}.storage-live__row strong.is-success{color:#15803d}.storage-live__warn,.storage-live__ok,.storage-live__note{margin:12px 0 0;padding:10px 12px;border-radius:10px;font-size:12px;line-height:1.55}.storage-live__warn{color:#b45309;background:#f59e0b1a}.storage-live__ok{color:#15803d;background:#15803d14}.storage-live__note{margin-top:0;padding:0;color:#71717a;background:transparent}.storage-live__list{display:grid;gap:10px;margin:0 0 14px;padding:0;list-style:none}.storage-live__list li{display:flex;align-items:flex-start;gap:10px;font-size:13px;line-height:1.5;color:#52525b}.storage-live__list .anticon{margin-top:2px;color:#693}.storage-live__link{display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:500;color:#693}.sms-settings-page .storage-page__side{position:static}.sms-settings-toggle-row{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:18px;padding:14px 16px;border-radius:12px;background:#fafafa;border:1px solid #f0f0f0}.sms-settings-toggle-row__label{display:inline-flex;align-items:center;gap:10px;font-size:14px;font-weight:500;color:#18181b}.sms-settings-toggle-row__label .anticon{font-size:18px;color:#693}.sms-settings-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 20px}.sms-settings-fields.is-disabled{opacity:.55;pointer-events:none}.sms-settings-note{margin:0;font-size:13px;line-height:1.65;color:#71717a}.sms-settings-link-btn{display:inline-block;margin-top:14px;font-size:13px;font-weight:500;color:#693}.sms-settings-console-link{display:inline-flex;align-items:center;gap:6px;font-size:13px;color:#693}.sms-settings-guide{margin:0;padding:0;list-style:none;display:grid;gap:10px}.sms-settings-guide li{display:grid;grid-template-columns:28px 1fr;gap:12px;align-items:start;padding:12px 14px;border-radius:12px;background:#fafafa;border:1px solid #f0f0f0;font-size:13px;line-height:1.6;color:#52525b}.sms-settings-guide li span{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;font-size:12px;font-weight:700;color:#693;background:#6699331f}.sms-preview-card__phone{padding:16px;border-radius:14px;background:linear-gradient(180deg,#f4f4f5,#fafafa);border:1px solid #e4e4e7}.sms-preview-card__msg{padding:12px 14px;border-radius:12px;background:#fff;font-size:13px;line-height:1.65;color:#3f3f46;box-shadow:0 4px 14px #0f0f100f}.sms-preview-card__msg strong{color:#18181b}.sms-preview-card__hint{margin:10px 0 0;font-size:12px;color:#a1a1aa}.sms-settings-flow{margin:0;padding:0;list-style:none;display:grid;gap:8px}.sms-settings-flow li{display:flex;align-items:center;gap:8px;font-size:13px;color:#71717a}.sms-settings-flow li .anticon{color:#d4d4d8}.sms-settings-flow li.is-current{color:#18181b;font-weight:500}.sms-settings-flow li.is-current .anticon,.sms-settings-flow li.is-done .anticon,.sms-settings-flow a{color:#693}.sms-settings-links{display:grid;gap:8px}.sms-settings-links a{display:inline-flex;align-items:center;gap:6px;font-size:13px;color:#693}.storage-setup-banner.is-info{color:#1e40af;background:#2563eb14;border-color:#2563eb29}.site-settings-page .site-settings__top-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,360px);gap:16px;align-items:stretch;margin-bottom:16px}.site-settings-page .site-settings__top-grid>.storage-panel{height:100%;box-sizing:border-box}.site-settings__head-text{display:flex;align-items:flex-start;gap:12px}.site-settings__icon{margin-top:2px;font-size:18px;color:#693}.site-settings__fields{display:grid;gap:0}.site-settings__theme-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 16px}.site-settings__color{width:88px;height:40px;padding:4px;cursor:pointer}.site-settings__theme-preview{margin-top:auto;padding-top:16px;border-top:1px solid #f0f0f0}.site-settings-page .site-settings__top-grid>.storage-panel:last-child{display:flex;flex-direction:column}.site-settings__theme-preview-bar{display:flex;align-items:center;gap:10px;height:56px;padding:0 14px;border-radius:10px}.site-settings__theme-preview-bar span{width:72px;height:28px;border-radius:8px}.site-settings__theme-preview p{margin:10px 0 0;font-size:12px;color:#a1a1aa}.site-settings__legal-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 20px}.site-settings__legal-grid .ant-form-item{margin-bottom:0}@media (max-width: 960px){.site-settings-page .site-settings__top-grid,.site-settings__legal-grid,.site-settings__theme-grid{grid-template-columns:1fr}}@media (max-width: 960px){.sms-settings-fields{grid-template-columns:1fr}}.storage-advanced .ant-collapse-header{padding:8px 0!important;font-size:13px;color:#71717a!important}@media (max-width: 960px){.storage-page__hero{flex-direction:column}.storage-page__grid{grid-template-columns:1fr}.storage-page__side{position:static}.storage-page__grid>.storage-panel,.storage-live--combined{height:auto;min-height:0}.storage-live__block.is-divided{margin-top:16px}.storage-mode-cards,.storage-form-grid{grid-template-columns:1fr}}.push-page{display:grid;gap:18px}.push-page__hero{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:22px 24px;border-radius:16px;background:linear-gradient(135deg,#f8faf5,#fff 55%,#f4f9ef);border:1px solid rgb(102 153 51 / .12)}.push-page__eyebrow{margin:0 0 6px;font-size:12px;font-weight:600;letter-spacing:.04em;color:#693}.push-page__title{margin:0;font-size:22px;font-weight:700;color:#18181b}.push-page__desc{margin:8px 0 0;max-width:560px;font-size:13px;line-height:1.65;color:#71717a}.push-page__send{flex-shrink:0}.push-setup-banner{padding:14px 18px;border-radius:12px;border:1px solid transparent}.push-setup-banner strong{display:block;margin-bottom:4px;font-size:14px}.push-setup-banner p{margin:0;font-size:13px;line-height:1.6}.push-setup-banner a{color:#693}.push-setup-banner.is-info{color:#1e40af;background:#2563eb14;border-color:#2563eb29}.push-setup-banner.is-warn{color:#92400e;background:#f59e0b1a;border-color:#f59e0b38}.push-page__grid{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:16px;align-items:start}.push-page__main{display:grid;gap:16px;min-width:0}.push-page__side{display:grid;gap:12px;position:sticky;top:16px}.push-panel{padding:20px 22px;border-radius:16px;background:#fff;border:1px solid #f0f0f0;box-shadow:0 8px 24px #0f0f100d}.push-panel__head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}.push-panel__head-text{display:flex;align-items:flex-start;gap:12px;min-width:0}.push-panel__icon{margin-top:2px;font-size:18px;color:#693}.push-panel__head h3{margin:0;font-size:15px;font-weight:600;color:#18181b}.push-panel__hint{display:block;margin-top:2px;font-size:12px;color:#a1a1aa}.push-panel__body{margin:0;font-size:13px;line-height:1.65;color:#71717a}.push-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 16px}.push-form-grid__full{grid-column:1 / -1}.push-offsite-row{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:8px;padding:14px 16px;border-radius:12px;background:#fafafa;border:1px solid #f0f0f0}.push-offsite-row strong{display:block;margin-bottom:4px;font-size:14px;color:#18181b}.push-offsite-row p{margin:0;font-size:12px;line-height:1.55;color:#71717a}.push-preview,.push-live{padding:18px 20px;border-radius:16px;background:#fff;border:1px solid #f0f0f0;box-shadow:0 8px 24px #0f0f100d}.push-preview h4,.push-live h4{margin:0 0 14px;font-size:13px;font-weight:600;color:#52525b}.push-preview__card{display:flex;gap:12px;padding:14px;border-radius:12px;background:#fafafa;border:1px solid #f0f0f0}.push-preview__dot{flex-shrink:0;width:8px;height:8px;margin-top:6px;border-radius:50%;background:#693}.push-preview__content{min-width:0}.push-preview__content strong{display:block;margin-bottom:6px;font-size:14px;color:#18181b;word-break:break-word}.push-preview__content p{margin:0 0 10px;font-size:12px;line-height:1.55;color:#71717a;word-break:break-word}.push-preview__body{padding-top:10px;border-top:1px dashed #e4e4e7;font-size:13px;line-height:1.65;color:#3f3f46;white-space:pre-wrap;word-break:break-word}.push-live__row{display:flex;flex-direction:column;gap:4px;padding:10px 0;border-bottom:1px solid #f4f4f5}.push-live__row:last-of-type{border-bottom:none}.push-live__row span{font-size:12px;color:#a1a1aa}.push-live__row strong{font-size:13px;font-weight:600;color:#18181b;word-break:break-word}.push-live__row strong.is-success{color:#15803d}.push-live__links{display:grid;gap:8px;margin-top:12px;padding-top:12px;border-top:1px solid #f4f4f5}.push-live__links a{display:inline-flex;align-items:center;gap:6px;font-size:13px;color:#693}.sms-page{display:grid;gap:18px}.sms-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.sms-form-grid{display:grid;grid-template-columns:1fr;gap:0}.sms-panel__action{display:inline-block;margin-top:12px;font-size:13px;font-weight:500;color:#693}.sms-flow-hints--vertical{flex-direction:column;align-items:stretch;gap:0}.sms-flow-hints--vertical li{padding:10px 0;border-bottom:1px solid #f4f4f5}.sms-flow-hints--vertical li:last-child{border-bottom:none}.sms-config-steps{display:none}.sms-flow-hints{display:flex;flex-wrap:wrap;gap:12px 20px;margin:0;padding:0;list-style:none}.sms-flow-hints li{display:inline-flex;align-items:center;gap:8px;font-size:13px;color:#71717a}.sms-flow-hints li span{width:20px;height:20px;border-radius:50%;display:grid;place-items:center;font-size:11px;font-weight:700;color:#71717a;background:#f4f4f5}.sms-flow-hints li.is-current{color:#18181b;font-weight:500}.sms-flow-hints li.is-current span{color:#fff;background:#693}.sms-flow-hints li.is-done{color:#52525b}.sms-flow-hints li.is-done span{color:#fff;background:#693}.sms-flow-hints a{color:#693}.sms-section.is-divided{margin-top:20px;padding-top:20px;border-top:1px solid #f0f0f0}.sms-config-steps__item{display:flex;align-items:flex-start;gap:10px;padding:12px 14px;border-radius:12px;background:#fff;border:1px solid #f0f0f0;color:inherit;text-decoration:none;transition:border-color .15s ease,background .15s ease}.sms-config-steps__item.is-current{border-color:#66993359;background:#f8faf5}.sms-config-steps__item.is-done{border-color:#6933}.sms-config-steps__index{flex-shrink:0;width:22px;height:22px;border-radius:50%;display:grid;place-items:center;font-size:12px;font-weight:700;color:#71717a;background:#f4f4f5}.sms-config-steps__item.is-current .sms-config-steps__index,.sms-config-steps__item.is-done .sms-config-steps__index{color:#fff;background:#693}.sms-config-steps__text{display:grid;gap:2px;min-width:0}.sms-config-steps__text strong{font-size:13px;color:#18181b}.sms-config-steps__text small{font-size:11px;color:#a1a1aa}.sms-panel--single{max-width:100%}.sms-form-stack{display:grid;gap:0}.sms-form-stack.is-disabled{opacity:.55;pointer-events:none}.sms-panel__footer{margin-top:8px;padding-top:14px;border-top:1px solid #f4f4f5}.sms-panel__footer p{margin:0 0 6px;font-size:13px;line-height:1.6;color:#52525b}.sms-panel__footer p:last-child{margin-bottom:0}.sms-panel__footer a{color:#693}.sms-panel__footer-meta{font-size:12px!important;color:#a1a1aa!important}.sms-setup-banner a{color:#693}.sms-page__hero{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:22px 24px;border-radius:16px;background:linear-gradient(135deg,#f8faf5,#fff 55%,#f4f9ef);border:1px solid rgb(102 153 51 / .12)}.sms-page__eyebrow{margin:0 0 6px;font-size:12px;font-weight:600;letter-spacing:.04em;color:#693}.sms-page__title{margin:0;font-size:22px;font-weight:700;color:#18181b}.sms-page__desc{margin:8px 0 0;max-width:620px;font-size:13px;line-height:1.65;color:#71717a}.sms-page__save{flex-shrink:0}.sms-setup-banner{padding:14px 18px;border-radius:12px;border:1px solid transparent}.sms-setup-banner strong{display:block;margin-bottom:4px;font-size:14px}.sms-setup-banner p{margin:0;font-size:13px;line-height:1.6}.sms-setup-banner.is-info{color:#1e40af;background:#2563eb14;border-color:#2563eb29}.sms-setup-banner.is-warn{color:#92400e;background:#f59e0b1a;border-color:#f59e0b38}.sms-setup-banner.is-ok{color:#166534;background:#15803d14;border-color:#15803d2e}.sms-page__grid{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:16px;align-items:start}.sms-page__main{display:grid;gap:16px;min-width:0}.sms-page__side{display:grid;gap:12px;position:sticky;top:16px}.sms-panel{padding:20px 22px;border-radius:16px;background:#fff;border:1px solid #f0f0f0;box-shadow:0 8px 24px #0f0f100d}.sms-panel__head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}.sms-panel__head-text{display:flex;align-items:flex-start;gap:12px;min-width:0}.sms-panel__icon{margin-top:2px;font-size:18px;color:#693}.sms-panel__head h3{margin:0;font-size:15px;font-weight:600;color:#18181b}.sms-panel__hint{display:block;margin-top:2px;font-size:12px;color:#a1a1aa}.sms-panel__body{margin:0;font-size:13px;line-height:1.65;color:#71717a}.sms-panel__body a{color:#693}.sms-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 16px}.sms-form-grid.is-disabled{opacity:.55;pointer-events:none}.sms-guide-steps{margin:0 0 14px;padding-left:20px;font-size:13px;line-height:1.7;color:#52525b}.sms-guide-link{display:inline-flex;align-items:center;gap:6px;font-size:13px;color:#693}.sms-scenarios{display:grid;gap:12px}.sms-scenario{padding:14px 16px;border-radius:12px;background:#fafafa;border:1px solid #f0f0f0}.sms-scenario strong{display:block;margin-bottom:6px;font-size:14px;color:#18181b}.sms-scenario p{margin:0 0 8px;font-size:13px;line-height:1.6;color:#71717a}.sms-scenario a{font-size:13px;color:#693}.sms-live{padding:18px 20px;border-radius:16px;background:#fff;border:1px solid #f0f0f0;box-shadow:0 8px 24px #0f0f100d}.sms-live h4{margin:0 0 14px;font-size:13px;font-weight:600;color:#52525b}.sms-live__row{display:flex;flex-direction:column;gap:4px;padding:10px 0;border-bottom:1px solid #f4f4f5}.sms-live__row:last-of-type{border-bottom:none}.sms-live__row span{font-size:12px;color:#a1a1aa}.sms-live__row strong{font-size:13px;font-weight:600;color:#18181b;word-break:break-word}.sms-live__row strong.is-success{color:#15803d}.sms-checklist{margin:0;padding:0;list-style:none}.sms-checklist li{position:relative;padding:8px 0 8px 22px;font-size:13px;color:#71717a;border-bottom:1px solid #f4f4f5}.sms-checklist li:last-child{border-bottom:none}.sms-checklist li:before{content:"";position:absolute;left:0;top:13px;width:8px;height:8px;border-radius:50%;background:#e4e4e7}.sms-checklist li.is-done{color:#18181b}.sms-checklist li.is-done:before{background:#693}.sms-live__links{display:grid;gap:8px}.sms-live__links a{display:inline-flex;align-items:center;gap:6px;font-size:13px;color:#693}@media (max-width: 960px){.push-page__hero{flex-direction:column}.push-page__grid{grid-template-columns:1fr}.push-page__side{position:static}.push-form-grid{grid-template-columns:1fr}.push-offsite-row{flex-direction:column;align-items:flex-start}.sms-page__hero{flex-direction:column}.sms-page__grid{grid-template-columns:1fr}.sms-page__side{position:static}.sms-form-grid,.sms-cards{grid-template-columns:1fr}}.admin-form-section-title{margin:4px 0 10px;padding-bottom:6px;border-bottom:1px solid #eef0f2;font-size:13px;font-weight:600;color:#374151}.admin-coach-form .ant-form-item{margin-bottom:12px}.admin-coach-form .ant-form-item-extra{min-height:0;font-size:12px}.admin-autofill-trap{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;pointer-events:none}.admin-coach-form .bx-image-field--avatar .ant-upload-select,.admin-coach-form .bx-image-field--avatar .ant-upload-list-item-container{width:104px!important;height:104px!important;margin-inline-end:0!important}.admin-coach-form .bx-image-field--id .ant-upload-select,.admin-coach-form .bx-image-field--id .ant-upload-list-item-container{width:168px!important;height:106px!important;margin-inline-end:0!important}.admin-coach-form .bx-image-field--id .ant-upload-list-item-thumbnail img,.admin-coach-form .bx-image-field--avatar .ant-upload-list-item-thumbnail img{object-fit:cover}.admin-coach-form .bx-upload-trigger{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;height:100%;font-size:12px;color:#71717a}.admin-quota-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.admin-quota-card{display:flex;flex-direction:column;gap:10px;min-width:0;padding:16px 18px;border-radius:14px;background:#fff;border:1px solid #f0f0f0;box-shadow:0 4px 16px #0f0f100a}.admin-quota-card__head{display:flex;align-items:center;justify-content:space-between;gap:8px}.admin-quota-card__label{font-size:12px;line-height:1.4;color:#71717a}.admin-quota-card__tag{flex-shrink:0;padding:1px 8px;border-radius:999px;font-size:11px;line-height:18px;font-weight:600}.admin-quota-card__tag--formal{color:#693;background:#6699331f}.admin-quota-card__tag--trial{color:#2563eb;background:#2563eb1a}.admin-quota-card__value-row{display:flex;align-items:baseline;gap:6px}.admin-quota-card__value{font-size:28px;font-weight:700;line-height:1.1;color:#18181b;font-variant-numeric:tabular-nums;letter-spacing:-.02em}.admin-quota-card__unit{font-size:13px;color:#a1a1aa}.admin-sub-tabs{margin-top:0}.admin-sub-tabs>.ant-tabs-nav{margin-bottom:14px}.admin-sub-tabs>.ant-tabs-nav:before{border-bottom-color:#f0f0f0}.admin-hour-records{display:grid;gap:16px}.admin-hour-records__empty{margin:0;padding:20px 18px;border-radius:14px;background:#fff;border:1px dashed #e4e4e7;color:#71717a;font-size:13px}@media (max-width: 1100px){.admin-quota-summary{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 520px){.admin-quota-summary{grid-template-columns:1fr}.admin-quota-card__value{font-size:24px}}.admin-text-success{color:#693;font-weight:600}.admin-text-danger{color:#dc2626;font-weight:600}.admin-student-cell{display:inline-flex;align-items:center;gap:8px;max-width:100%;min-width:0;overflow:hidden}.admin-student-cell>span:last-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.admin-student-drawer-title{display:inline-flex;align-items:center;gap:10px}.admin-student-drawer-title em{display:block;font-style:normal;font-size:12px;font-weight:400;color:#71717a}.admin-section-title{margin:16px 0 8px;font-size:13px;font-weight:600;color:#3f3f46}.admin-course-panel{display:flex;flex-direction:column;gap:4px}.admin-date-input{height:32px;padding:4px 11px;border:1px solid #d9d9d9;border-radius:6px}.admin-quota-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:12px;margin-top:12px}.admin-quota-item{display:flex;flex-direction:column;gap:4px;padding:12px;border-radius:10px;background:#f4f8ea}.admin-quota-item strong{font-size:20px;color:#27421a}.admin-drawer-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px}.admin-overview-grid{grid-template-columns:repeat(auto-fill,minmax(160px,1fr))}.admin-overview-toolbar{display:flex;justify-content:flex-end}.admin-overview-summary{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:12px}.admin-overview-groups{display:grid;gap:16px}.admin-stat-group{padding:16px 18px;border-radius:16px;background:#fff;box-shadow:0 8px 24px #0f0f100f}.admin-stat-group__title{margin:0 0 12px;font-size:15px;font-weight:600}.admin-stat-group__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:10px}.admin-stat-group__grid--5{grid-template-columns:repeat(5,minmax(0,1fr))}.admin-stat-card--dense{padding:12px;border-radius:12px;background:#f8faf5;box-shadow:none;flex-direction:row;align-items:center;justify-content:space-between;gap:10px;white-space:nowrap}.admin-stat-card--dense .admin-stat-card__label{flex-shrink:0}.admin-stat-card--dense .admin-stat-card__value{margin-top:0;flex-shrink:0}.admin-stat-card__meta{margin-top:6px;font-size:11px;color:#71717a}.admin-stat-card__value--sm{font-size:16px}.admin-finance-overview{display:grid;gap:18px}.admin-finance-overview__hero{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:22px 24px;border-radius:16px;background:linear-gradient(135deg,#f8faf5,#fff 55%,#f4f9ef);border:1px solid rgb(102 153 51 / .12)}.admin-finance-overview__eyebrow{margin:0 0 6px;font-size:12px;color:#693;font-weight:600;letter-spacing:.04em}.admin-finance-overview__title{margin:0;font-size:22px;font-weight:700;color:#18181b}.admin-finance-overview__desc{margin:8px 0 0;max-width:560px;font-size:13px;line-height:1.6;color:#71717a}.admin-finance-overview__section-title{margin:0 0 12px;font-size:14px;font-weight:600;color:#3f3f46}.admin-overview-kpi--finance-scale{grid-template-columns:repeat(3,minmax(0,1fr))}.admin-finance-overview__grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:16px;align-items:stretch}.admin-finance-panel{display:flex;flex-direction:column;height:100%;min-height:0;padding:20px 22px;border-radius:16px;background:#fff;border:1px solid #f0f0f0;box-shadow:0 8px 24px #0f0f100d}.admin-finance-panel__head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px;flex-shrink:0}.admin-finance-panel__title{margin:0;font-size:15px;font-weight:600;color:#18181b}.admin-finance-panel__tag{padding:2px 10px;border-radius:999px;font-size:11px;color:#71717a;background:#f4f4f5}.admin-finance-metric-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(2,minmax(0,1fr));gap:12px;flex:1;min-height:0}.admin-finance-metric{display:flex;flex-direction:column;justify-content:center;min-height:88px;height:100%;padding:14px 16px;border-radius:12px;background:#fafafa;border:1px solid #f4f4f5}.admin-finance-metric__label{font-size:12px;color:#71717a}.admin-finance-metric__value{margin-top:6px;font-size:22px;font-weight:700;line-height:1.1;color:#18181b;font-variant-numeric:tabular-nums}.admin-finance-metric__sub{margin-top:6px;font-size:11px;color:#a1a1aa}.admin-finance-flow{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:14px;padding-top:14px;border-top:1px dashed #e4e4e7;flex-shrink:0}.admin-finance-flow__item,.admin-finance-flow__net{display:flex;align-items:center;gap:10px;padding:12px;border-radius:12px;font-size:12px;color:#71717a}.admin-finance-flow__item strong,.admin-finance-flow__net strong{display:block;margin-top:2px;font-size:16px;color:#18181b}.admin-finance-flow__item--in{background:#66993314;color:#693}.admin-finance-flow__item--out{background:#ef44440f;color:#dc2626}.admin-finance-flow__net{background:#f4f4f5}.admin-finance-flow__net--pos strong{color:#693}.admin-finance-flow__net--neg strong{color:#dc2626}.admin-finance-quota-list{display:flex;flex:1;flex-direction:column;gap:12px;min-height:0}.admin-finance-quota{display:flex;flex:1;flex-direction:column;justify-content:center;min-height:0;padding:14px 16px;border-radius:12px;background:#fafafa;border:1px solid #f4f4f5}.admin-finance-quota__head{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap}.admin-finance-quota__dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.admin-finance-quota__name{font-size:13px;font-weight:600;color:#3f3f46}.admin-finance-quota__balance{margin-left:auto;font-size:20px;font-weight:700;color:#18181b;font-variant-numeric:tabular-nums}.admin-finance-quota__unit{font-size:11px;color:#a1a1aa}.admin-finance-quota__bar{display:flex;height:6px;margin-top:10px;border-radius:999px;overflow:hidden;background:#e4e4e7}.admin-finance-quota__bar-in,.admin-finance-quota__bar-out{display:block;height:100%;transition:width .3s ease}.admin-finance-quota__bar-out{background:#ef444473}.admin-finance-quota__foot{display:flex;justify-content:space-between;margin-top:8px;font-size:11px;font-variant-numeric:tabular-nums}.admin-finance-quota__in{color:#693}.admin-finance-quota__out{color:#dc2626}.admin-finance-overview__legend{display:flex;flex-wrap:wrap;gap:16px 24px;padding:12px 16px;border-radius:12px;font-size:12px;color:#71717a;background:#fafafa;border:1px solid #f4f4f5}.admin-finance-overview__legend span{display:inline-flex;align-items:center;gap:6px}@media (max-width: 1100px){.admin-finance-overview__grid,.admin-overview-kpi--finance-scale{grid-template-columns:1fr}}@media (max-width: 640px){.admin-finance-overview__hero{flex-direction:column}.admin-finance-flow,.admin-finance-metric-grid{grid-template-columns:1fr}}.admin-chart-panel{min-height:360px}.admin-chart{width:100%;height:300px}.admin-chart--bar{height:280px}.admin-chart--pie{height:220px}.admin-date-sep{color:#71717a;font-size:13px}.admin-form-hint{margin:-8px 0 12px;font-size:12px;color:#693}.admin-calendar{display:flex;flex-direction:column}.admin-calendar-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:14px;padding:12px 16px;border-radius:14px;background:#fff;border:1px solid #eef0f2;box-shadow:0 1px 2px #00000008}.admin-calendar-toolbar__left{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.admin-calendar-board{padding:12px 14px 14px;border-radius:16px;background:#fff;border:1px solid #eef0f2;box-shadow:0 1px 2px #00000008,0 8px 24px #0000000a}.admin-calendar-weekdays{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;margin-bottom:6px}.admin-calendar-weekday{text-align:center;font-size:12px;font-weight:600;color:#71717a;padding:4px 0 6px}.admin-calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}.admin-calendar-cell{display:flex;flex-direction:column;height:128px;min-height:128px;max-height:128px;padding:6px 7px;border-radius:10px;background:#fafafa;border:1px solid #eef0f2;transition:border-color .15s ease,box-shadow .15s ease}.admin-calendar-cell--pad{visibility:hidden;pointer-events:none;border-color:transparent;background:transparent}.admin-calendar-cell--today{border-color:#66993373;background:#6699330f;box-shadow:inset 0 0 0 1px #6699331a}.admin-calendar-cell--today .admin-calendar-cell__day{display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:22px;padding:0 6px;border-radius:999px;background:#693;color:#fff}.admin-calendar-cell--has-events{background:#fff}.admin-calendar-cell__head{display:flex;justify-content:space-between;align-items:center;flex-shrink:0;margin-bottom:4px}.admin-calendar-cell__day{font-size:13px;font-weight:600;color:#18181b;line-height:1}.admin-calendar-cell__body{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;scrollbar-width:thin}.admin-calendar-cell__empty{display:block;text-align:center;padding-top:10px;font-size:11px;color:#d4d4d8;-webkit-user-select:none;user-select:none}.admin-calendar-add{border:none;background:#6699331f;color:#693;border-radius:6px;width:22px;height:22px;font-size:14px;line-height:1;cursor:pointer;opacity:.65;transition:opacity .12s ease,background .12s ease}.admin-calendar-cell:hover .admin-calendar-add{opacity:1}.admin-calendar-add:hover{background:#66993338}.admin-calendar-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px}.admin-calendar-event{display:flex;gap:6px;align-items:flex-start;padding:4px 5px;border-radius:6px;background:#f4f4f5;border-left:2px solid #669933;cursor:pointer;transition:background .12s ease}.admin-calendar-event:hover{background:#6699331a}.admin-calendar-event__time{flex-shrink:0;width:34px;font-size:11px;font-weight:700;color:#693;line-height:1.2;padding-top:1px}.admin-calendar-event__info{min-width:0;flex:1;display:flex;flex-direction:column;gap:2px}.admin-calendar-event__info strong{display:block;font-size:11px;font-weight:600;color:#27272a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.admin-calendar-event__meta{display:flex;align-items:center;gap:4px;flex-wrap:wrap;min-width:0}.admin-calendar-event__meta em{font-style:normal;font-size:10px;color:#71717a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.admin-calendar-event__tag{margin:0!important;font-size:10px!important;line-height:14px!important;padding-inline:4px!important;flex-shrink:0}.admin-calendar-loading{padding:48px;text-align:center;color:#71717a;border-radius:16px;background:#fff;border:1px solid #eef0f2}@media (max-width: 900px){.admin-calendar-cell{height:112px;min-height:112px;max-height:112px}}.admin-create-panel{max-width:560px}.admin-create-panel--wide{width:100%;max-width:none}.admin-create-form{margin-top:0;padding:clamp(18px,1.5vw,24px);border-radius:16px;background:#fff;border:1px solid #eef0f2;box-shadow:0 1px 2px #00000008,0 8px 24px #0000000d}.admin-create-form--schedule{display:flex;flex-direction:column;gap:4px}.admin-create-section{padding-bottom:18px;border-bottom:1px solid #f4f4f5}.admin-create-section:last-of-type{border-bottom:none;padding-bottom:0}.admin-create-section__title{margin:0 0 14px;font-size:14px;font-weight:600;color:#18181b}.admin-create-section__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 clamp(16px,1.5vw,24px);align-items:start}.admin-create-section__grid .ant-form-item{margin-bottom:14px}.admin-form-grid-span-2{grid-column:1 / -1}.admin-create-section__alert{margin-top:4px}.admin-create-form__actions{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:8px;padding-top:18px;border-top:1px solid #f4f4f5}.admin-create-form__hint{margin:0;flex:1;min-width:0}@media (min-width: 1280px){.admin-create-section__grid--time{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width: 768px){.admin-create-section__grid{grid-template-columns:1fr}.admin-create-form__actions{flex-direction:column;align-items:stretch}}.admin-schedule-actions-trigger{padding-inline:0}.admin-schedule-summary{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:16px}.admin-schedule-summary__item{display:flex;flex-direction:column;gap:4px;min-width:108px;padding:12px 16px;border-radius:14px;background:#fff;border:1px solid #eef0f2;box-shadow:0 4px 16px #0f0f100a}.admin-schedule-summary__label{font-size:12px;color:#71717a}.admin-schedule-summary__value{font-size:24px;font-weight:700;line-height:1.1;color:#18181b;font-variant-numeric:tabular-nums}.admin-schedule-summary__value--warn{color:#d97706}.admin-schedule-summary__value--active{color:#693}.admin-schedule-id{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:12px;color:#71717a}.admin-schedule-slot{font-variant-numeric:tabular-nums;font-weight:500;color:#374151}.admin-class-time{display:flex;flex-direction:column;gap:2px;line-height:1.25;font-variant-numeric:tabular-nums}.admin-class-time__date{color:#52525b;font-size:12px}.admin-class-time__range{color:#693;font-size:13px;font-weight:550}.admin-schedule-muted{color:#a1a1aa}.admin-schedule-balance{font-size:12px;font-weight:600;color:#27421a;white-space:nowrap}.admin-schedule-table .ant-table-cell{font-size:13px}.admin-schedule-table .admin-schedule-tag.ant-tag{margin-inline-end:0;max-width:none;overflow:visible;text-overflow:clip;white-space:nowrap}.admin-schedule-table .admin-schedule-name,.admin-schedule-table .admin-schedule-text{display:inline-block;max-width:none;overflow:visible;text-overflow:clip;white-space:nowrap}.admin-schedule-row-actions{display:flex;flex-wrap:wrap;align-items:center;gap:6px}.admin-schedule-detail-actions{margin-top:16px;display:flex;flex-wrap:wrap;gap:8px}.admin-schedule-actions-dropdown .ant-dropdown-menu{min-width:112px}.admin-schedule-actions-dropdown .ant-dropdown-menu-item,.admin-schedule-actions-dropdown .ant-dropdown-menu-item-only-child{white-space:nowrap}.admin-voucher-preview-link{display:inline-flex;flex-direction:column;align-items:flex-start;gap:6px;color:#27421a}.admin-voucher-preview{display:block;max-width:220px;max-height:160px;object-fit:contain;border:1px solid #eef0f2;border-radius:8px;background:#fafafa}.admin-action-delete{color:#ff4d4f}.admin-drawer-hint{margin:0 0 12px;font-size:13px;color:#71717a;line-height:1.5}.admin-upload-trigger{display:flex;flex-direction:column;align-items:center;gap:6px;font-size:12px;color:#71717a}.admin-upload-hint{margin:8px 0 0;font-size:12px;color:#a1a1aa}.admin-upload-dragger{border-radius:12px!important}.admin-upload-video-preview{display:block;width:100%;max-height:220px;margin-top:12px;border-radius:10px;background:#000}.admin-upload-audio-preview{display:block;width:100%;margin-top:12px}.admin-upload-meta{display:flex;align-items:center;gap:8px;margin-top:10px;padding:8px 10px;border-radius:8px;background:#f8faf5;font-size:12px;color:#52525b}.admin-material-thumb{width:56px;height:56px;object-fit:cover;border-radius:8px;background:#f4f4f5}.admin-material-thumb-btn{padding:0;border:none;background:transparent;cursor:pointer}.admin-material-thumb-btn:hover .admin-material-thumb{outline:2px solid #669933;outline-offset:2px}.admin-material-preview{display:flex;justify-content:center;align-items:center;min-height:120px;background:#fafafa;border-radius:12px;padding:16px}.admin-material-preview__image{max-width:100%;max-height:360px;border-radius:8px}.admin-material-preview__media{width:100%;max-height:320px}.admin-material-preview__doc{text-align:center;color:#52525b}.admin-material-preview__doc a{color:#693}.admin-material-thumb--file{display:grid;place-items:center;font-size:18px;font-weight:700;color:#693}.admin-system-split{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:24px;align-items:start}.admin-site-settings--loading{display:grid;place-items:center;min-height:280px}.admin-site-settings__header{margin-bottom:20px}.admin-site-settings__title{margin:0 0 6px;font-size:18px;font-weight:700;color:#18181b}.admin-site-settings__desc{margin:0;max-width:72ch;color:#64748b;line-height:1.6;font-size:14px}.admin-site-settings__grid{display:grid;grid-template-columns:minmax(0,380px) minmax(0,1fr);gap:20px;align-items:start}.admin-site-settings__card{padding:22px 24px;border-radius:14px;background:#fff;border:1px solid #eef0f2;box-shadow:0 6px 20px #0f172a0a}.admin-site-settings__card--legal{min-height:100%}.admin-site-settings__card-head{display:flex;gap:14px;align-items:flex-start;margin-bottom:18px;padding-bottom:16px;border-bottom:1px solid #f1f5f9}.admin-site-settings__card-head h3{margin:0 0 4px;font-size:15px;font-weight:700;color:#18181b}.admin-site-settings__card-head p{margin:0;font-size:13px;color:#71717a;line-height:1.5}.admin-site-settings__card-icon{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:12px;background:linear-gradient(180deg,#f3f8ec,#e8f2dc);color:#5a8f2a;font-size:18px;flex-shrink:0}.admin-site-settings__preview{margin-top:8px;padding:14px 16px;border-radius:12px;background:linear-gradient(180deg,#fafafa,#f4f4f5);border:1px dashed #e4e4e7}.admin-site-settings__preview-label{display:block;margin-bottom:8px;font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:#a1a1aa}.admin-site-settings__preview-body{display:flex;flex-direction:column;gap:4px;font-size:13px;color:#52525b;line-height:1.5}.admin-site-settings__preview-body strong{font-size:14px;color:#18181b}.admin-site-settings__preview-body .is-muted{color:#a1a1aa}.admin-site-settings__footer{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:20px;padding:16px 20px;border-radius:12px;background:#fff;border:1px solid #eef0f2}.admin-site-settings__footer p{margin:0;color:#71717a;font-size:13px}@media (max-width: 960px){.admin-site-settings__grid{grid-template-columns:1fr}.admin-site-settings__footer{flex-direction:column;align-items:stretch}.admin-site-settings__footer .ant-btn{width:100%}}.admin-role-settings--loading{display:grid;place-items:center;min-height:280px}.admin-role-settings__header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:20px}.admin-role-settings__title{margin:0 0 6px;font-size:18px;font-weight:700;color:#18181b}.admin-role-settings__desc{margin:0;max-width:72ch;color:#64748b;line-height:1.6;font-size:14px}.admin-role-settings__stats{display:flex;flex-wrap:wrap;gap:10px 16px;padding:10px 14px;border-radius:999px;background:#f8faf3;border:1px solid #e4ecd9;color:#52525b;font-size:13px;white-space:nowrap}.admin-role-settings__stats strong{color:#3f6212}.admin-role-settings__layout{display:grid;grid-template-columns:minmax(260px,320px) minmax(0,1fr);gap:20px;align-items:start}.admin-role-settings__list{padding:16px;border-radius:14px;background:#fff;border:1px solid #eef0f2;box-shadow:0 6px 20px #0f172a0a}.admin-role-settings__group+.admin-role-settings__group{margin-top:18px;padding-top:18px;border-top:1px solid #f1f5f9}.admin-role-settings__group h3{margin:0 0 10px;font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#a1a1aa}.admin-role-settings__group ul{list-style:none;margin:0;padding:0;display:grid;gap:8px}.admin-role-settings__item{width:100%;padding:12px 14px;border:1px solid #eef0f2;border-radius:12px;background:#fafafa;text-align:left;cursor:pointer;transition:border-color .15s ease,background .15s ease,box-shadow .15s ease}.admin-role-settings__item:hover{border-color:#d9e7c8;background:#f7faf3}.admin-role-settings__item.is-active{border-color:#94c45a;background:linear-gradient(180deg,#f7faf3,#fff);box-shadow:0 8px 20px #6699331f}.admin-role-settings__item-main{display:flex;flex-direction:column;gap:4px}.admin-role-settings__item-main strong{font-size:14px;color:#18181b}.admin-role-settings__item-main code{font-size:11px;color:#71717a}.admin-role-settings__item-meta{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:10px;font-size:12px;color:#71717a}.admin-role-settings__detail{padding:22px 24px;border-radius:14px;background:#fff;border:1px solid #eef0f2;box-shadow:0 6px 20px #0f172a0a;min-height:520px}.admin-role-settings__detail-head{display:flex;justify-content:space-between;gap:16px;margin-bottom:20px;padding-bottom:18px;border-bottom:1px solid #f1f5f9}.admin-role-settings__detail-head h3{margin:8px 0 6px;font-size:20px;font-weight:700;color:#18181b}.admin-role-settings__detail-head p{margin:0;color:#71717a;line-height:1.6}.admin-role-settings__detail-tags{display:flex;flex-wrap:wrap;gap:8px}.admin-role-settings__detail-icon{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:12px;background:linear-gradient(180deg,#f3f8ec,#e8f2dc);color:#5a8f2a;font-size:20px;flex-shrink:0}.admin-role-settings__perm-preview{margin-top:4px;padding:14px 16px;border-radius:12px;background:#fafafa;border:1px dashed #e4e4e7}.admin-role-settings__preview-label{display:block;margin-bottom:10px;font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:#a1a1aa}.admin-role-settings__perm-tags{display:flex;flex-wrap:wrap;gap:8px}.admin-role-settings__perm-tags .is-muted{color:#a1a1aa;font-size:13px}.admin-role-settings__footer{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:24px;padding-top:18px;border-top:1px solid #f1f5f9}.admin-role-settings__footer p{margin:0;color:#71717a;font-size:13px}@media (max-width: 960px){.admin-role-settings__header{flex-direction:column}.admin-role-settings__layout{grid-template-columns:1fr}.admin-role-settings__footer{flex-direction:column;align-items:stretch}.admin-role-settings__footer .ant-btn{width:100%}}.admin-user-settings--loading{display:grid;place-items:center;min-height:280px}.admin-user-settings__header{margin-bottom:20px}.admin-user-settings__title{margin:0 0 6px;font-size:18px;font-weight:700;color:#18181b}.admin-user-settings__desc{margin:0;max-width:72ch;color:#64748b;line-height:1.6;font-size:14px}.admin-user-settings__stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:18px}.admin-user-settings__stat{display:flex;align-items:center;gap:12px;padding:16px 18px;border-radius:14px;background:#fff;border:1px solid #eef0f2;box-shadow:0 4px 16px #0f172a0a}.admin-user-settings__stat strong{display:block;font-size:22px;line-height:1.2;color:#18181b}.admin-user-settings__stat span:last-child{font-size:13px;color:#71717a}.admin-user-settings__stat-icon{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:12px;background:#f4f4f5;color:#52525b;font-size:18px}.admin-user-settings__stat--success .admin-user-settings__stat-icon{background:#ecfdf3;color:#16a34a}.admin-user-settings__stat--danger .admin-user-settings__stat-icon{background:#fef2f2;color:#dc2626}.admin-user-settings__stat--roles{grid-column:span 1}.admin-user-settings__role-tags{display:flex;flex-wrap:wrap;gap:6px}.admin-user-settings__toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:16px;padding:16px 18px;border-radius:14px;background:#fff;border:1px solid #eef0f2}.admin-user-settings__toolbar .ant-input-affix-wrapper{flex:1 1 260px;max-width:360px}.admin-user-settings__result-count{margin-left:auto;color:#71717a;font-size:13px}.admin-user-settings__table-card{padding:4px 4px 0;border-radius:14px;background:#fff;border:1px solid #eef0f2;box-shadow:0 6px 20px #0f172a0a;overflow:hidden}.admin-user-settings__row{cursor:pointer}.admin-user-settings__user-cell{display:flex;align-items:center;gap:12px}.admin-user-settings__avatar{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:999px;font-size:14px;font-weight:700;flex-shrink:0}.admin-user-settings__avatar--lg{width:56px;height:56px;font-size:20px}.admin-user-settings__user-cell strong{display:block;color:#18181b}.admin-user-settings__user-cell code{font-size:12px;color:#71717a}.admin-user-settings__role-cell{display:flex;flex-wrap:wrap;gap:6px}.admin-user-settings__drawer-head{display:flex;gap:16px;align-items:center;margin-bottom:20px;padding-bottom:18px;border-bottom:1px solid #f1f5f9}.admin-user-settings__drawer-head h3{margin:0 0 4px;font-size:18px}.admin-user-settings__drawer-head p{margin:0 0 8px;color:#71717a}@media (max-width: 1100px){.admin-user-settings__stats{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 640px){.admin-user-settings__stats{grid-template-columns:1fr}.admin-user-settings__result-count{width:100%;margin-left:0}}.admin-notification-body{white-space:pre-wrap;font-family:inherit;margin:0;padding:12px;background:#f8faf5;border-radius:8px;line-height:1.6}.tiku-question-html{display:block;width:100%;max-width:100%;line-height:1.65;word-break:break-word;overflow-x:auto}.tiku-question-html p{display:block;margin:.35em 0}.tiku-fill-blank{display:inline-block;min-width:3.5em;padding:0 4px;margin:0 2px;border-bottom:1.5px solid currentColor;line-height:1.2;height:1.15em;color:transparent;-webkit-user-select:none;user-select:none;vertical-align:baseline}.tiku-question-html u{display:inline-block;min-width:3.2em;padding:0 .2em;margin:0 .08em;border-bottom:1.5px solid currentColor;text-decoration:none;line-height:1.15;height:1.2em;vertical-align:baseline;box-sizing:border-box}.tiku-question-html img{display:block;vertical-align:middle;max-width:min(100%,760px);max-height:min(70vh,520px);width:auto!important;height:auto!important;object-fit:contain;margin:12px 0}.tiku-question-html--compact{max-height:120px;overflow:hidden}.tiku-question-html--compact img{max-width:min(120px,100%);max-height:88px}.tiku-question-html--diagram{max-height:none}.tiku-question-html--diagram img{max-width:min(280px,100%);max-height:200px}.tiku-question-plain{display:inline;word-break:break-word}.tiku-question-plain--compact .katex{font-size:.95em}.tiku-question-text{line-height:1.6}.detect-math-inline .katex{font-size:1em}.detect-question-stem-preview-box{padding:10px 12px;border:1px solid #e4e9dc;border-radius:8px;background:#fafcf7;max-height:240px;overflow:auto}.admin-btn-brand{background:#693!important;border-color:#693!important}.admin-page-title{margin:0 0 4px;font-size:22px;font-weight:600}.admin-page-desc{margin:0;color:#0000008c;font-size:14px;line-height:1.6}.handout-page-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:16px}.handout-list-stats{display:flex;flex-wrap:wrap;gap:16px;margin-bottom:12px;padding:10px 14px;background:linear-gradient(180deg,#fff,#fafcf7);border:1px solid #e5e7eb;border-radius:10px;font-size:14px;color:#000000a6;box-shadow:0 1px 2px #0f172a08}.handout-list-stats__warn{color:#d48806}.handout-list-toolbar{margin-bottom:12px}.handout-list-title-link{padding:0;height:auto;font-weight:600;text-align:left}.handout-course-list-table .ant-table-selection-column{text-align:center}.handout-course-list-table .handout-list-title-link{color:#3b6d1a}.handout-course-list-table .handout-list-title-link:hover{color:#693}.handout-progress-dots{display:flex;gap:6px;align-items:center}.handout-progress-dots__dot{width:10px;height:10px;border-radius:50%;background:#d9d9d9;display:inline-block}.handout-progress-dots__dot--done{background:#693}.handout-progress-dots__dot--current{background:#1677ff;box-shadow:0 0 0 2px #1677ff40}.handout-edit-page{width:100%;max-width:none}.handout-textbook-edit-page{gap:16px}.handout-textbook-edit-header{margin-bottom:4px}.handout-textbook-edit-subtitle{margin:4px 0 0;font-size:13px;line-height:1.5;color:#00000073;font-weight:400}.handout-textbook-edit-alert{margin-bottom:0}.handout-textbook-edit-alert--compact.ant-alert{padding:10px 14px}.handout-textbook-edit-alert--compact .ant-alert-message{font-size:13px}.handout-textbook-edit-alert--compact .ant-alert-description{font-size:12px;margin-top:2px}.handout-textbook-edit-card{border-radius:10px;overflow:hidden}.handout-textbook-edit-card .ant-card-head{min-height:42px}.handout-textbook-edit-card .ant-card-body{padding-bottom:0}.handout-textbook-form-section{margin-bottom:20px}.handout-textbook-form-section:last-of-type{margin-bottom:8px}.handout-textbook-form-section__title{margin:0 0 10px;font-size:13px;font-weight:600;color:#000000a6}.handout-textbook-form-section__hint{margin:-6px 0 10px;font-size:12px;color:#00000073}.handout-textbook-form-section--cover .ant-form-item-label{display:none}.handout-textbook-form-grid{display:grid;gap:0 16px}.handout-textbook-form-grid--identity{grid-template-columns:minmax(140px,180px) minmax(100px,130px) minmax(0,1fr)}.handout-textbook-form-grid--scope{grid-template-columns:repeat(5,minmax(0,1fr))}.handout-textbook-form-item--grow{min-width:0}.handout-textbook-form .ant-form-item{margin-bottom:12px}.handout-textbook-edit-footer{position:sticky;bottom:0;z-index:5;margin:16px -24px 0;padding:14px 24px;background:linear-gradient(180deg,#ffffffe0,#fff 24%);border-top:1px solid rgba(0,0,0,.06)}@media (max-width: 1100px){.handout-textbook-form-grid--scope{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width: 768px){.handout-textbook-form-grid--identity,.handout-textbook-form-grid--scope{grid-template-columns:1fr}.handout-textbook-edit-footer{margin-inline:-16px;padding-inline:16px}}.handout-textbook-edit-title-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.handout-textbook-lessons-card .ant-card-body{padding-top:12px}.handout-textbook-lessons-stats{font-size:12px;color:#00000073}.handout-textbook-lessons-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:12px}.handout-textbook-lessons-table .ant-table-thead>tr>th{background:#fafafa;font-weight:600}.handout-textbook-lessons-table .ant-table-tbody>tr>td{vertical-align:middle}.handout-textbook-lesson-index{display:flex;flex-direction:column;align-items:center;gap:2px;font-weight:600;color:#000000a6}.handout-textbook-lesson-move{opacity:.55}.handout-textbook-lesson-move .ant-btn{width:24px;height:24px;padding:0}.handout-textbook-lessons-table .ant-table-tbody>tr:hover .handout-textbook-lesson-move{opacity:1}.handout-edit-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:16px;flex-wrap:wrap}.handout-edit-header__main{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;flex:1;min-width:0}.handout-edit-header__title{margin:0;font-size:20px;font-weight:600}.handout-edit-header__code{font-size:13px;color:#00000073}.handout-wizard-card{margin-bottom:16px}.handout-wizard-steps .ant-steps-item-description{max-width:140px!important;font-size:12px}.handout-edit-step-card{margin-bottom:16px}.handout-edit-footer{display:flex;justify-content:space-between;align-items:center;margin-top:8px;padding-bottom:24px}.handout-step-hint{margin:0 0 12px;font-size:13px;color:#0000008c}.handout-step-alert{margin-bottom:16px}.handout-form-grid{display:grid;grid-template-columns:1fr 1fr;column-gap:16px;align-items:start}.handout-form-grid__full{grid-column:1 / -1}.handout-scope-fields .ant-form-item{margin-bottom:16px}.handout-scope-fields__extra{display:inline;white-space:normal}.handout-knowledge-tree-filter.ant-input-affix-wrapper,.handout-knowledge-tree-filter.ant-input{height:40px;padding-inline:12px;font-size:15px;border-radius:8px}.handout-knowledge-tree-filter.ant-input-affix-wrapper .ant-input{font-size:15px}.handout-knowledge-tree-filter .ant-input::placeholder{font-size:15px;color:#00000073}.handout-knowledge-tree-panel{border:1px solid rgba(0,0,0,.12);border-radius:8px;padding:8px;min-height:455px;max-height:555px;overflow:auto;background:#fafcf7}.handout-knowledge-tree-panel__loading,.handout-knowledge-tree-panel__error{display:grid;place-items:center;min-height:200px;padding:16px;text-align:center}.handout-knowledge-picker{display:flex;flex-direction:column;gap:4px}.handout-knowledge-picker__item{display:block;width:100%;margin-bottom:8px;padding:10px 12px;border:1.5px solid #4a7826;border-radius:8px;background:#fff;text-align:left;font-size:14px;font-weight:650;color:#31571a;cursor:pointer;box-shadow:0 1px 4px #31571a1a;transition:background .15s ease,border-color .15s ease,box-shadow .15s ease}.handout-knowledge-picker__item:hover:not(:disabled){background:#eef6e6;border-color:#31571a;box-shadow:0 2px 8px #31571a29}.handout-knowledge-picker__item--active{background:#e4f0d8;border-color:#31571a;color:#243f12;box-shadow:inset 0 0 0 1px #31571a}.handout-knowledge-picker__item:disabled{cursor:not-allowed;opacity:.55}.handout-knowledge-picker__empty{display:block;padding:12px 8px;font-size:13px}.handout-classic-rich__editor{position:relative;border:1px solid #d9d9d9;border-radius:8px;background:#fff;transition:border-color .2s,box-shadow .2s}.handout-classic-rich__editor.is-focused{border-color:#5a8f2e;box-shadow:0 0 0 2px #5a8f2e2e}.handout-classic-rich__editor.is-empty:before{content:attr(data-placeholder);position:absolute;left:12px;top:10px;right:12px;color:#00000059;pointer-events:none;white-space:pre-wrap;line-height:1.6;font-size:14px}.handout-classic-rich__editable{min-height:inherit;padding:10px 12px;outline:none;line-height:1.65;font-size:14px;word-break:break-word}.handout-classic-rich__editable img{max-width:100%;height:auto;vertical-align:middle;border-radius:4px;margin:6px 0}.handout-classic-rich__hint{margin-top:6px;font-size:12px;color:#00000073}@media (max-width: 768px){.handout-form-grid{grid-template-columns:1fr}}.handout-tagging-loading{display:grid;place-items:center;min-height:240px}.handout-tagging-start{display:grid;place-items:center;min-height:280px;padding:32px 16px;background:linear-gradient(180deg,#f9fcf5,#fff);border:1px dashed rgba(102,153,51,.35);border-radius:12px;margin-bottom:16px}.handout-tagging-start__content{max-width:480px;text-align:center}.handout-tagging-start__content h2{margin:0 0 12px;font-size:20px}.handout-tagging-start__content ol{text-align:left;margin:0 0 20px;padding-left:20px;color:#000000a6;line-height:1.8}.handout-tagging-toolbar{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px;align-items:center}.handout-tagging-workspace{display:grid;grid-template-columns:1.35fr 1fr;gap:16px;align-items:start}@media (max-width: 992px){.handout-tagging-workspace{grid-template-columns:1fr}}.handout-tagging-canvas-wrap{display:flex;flex-direction:column;gap:8px;overflow:auto;max-height:min(72vh,920px)}.handout-tagging-mode{display:flex;justify-content:flex-start}.handout-tagging-quick{display:flex;flex-wrap:wrap;gap:8px}.handout-tagging-quick__stem{background:#389e0d!important;border-color:#389e0d!important}.handout-tagging-quick__answer{background:#1677ff!important;border-color:#1677ff!important}.handout-tagging-quick__neutral{background:#8c8c8c!important;border-color:#8c8c8c!important;color:#fff!important}.handout-tagging-tool-switch{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:4px;color:#000000a6;font-size:13px}.handout-tagging-canvas__hint--neutral{background:#8c8c8ceb}.handout-tagging-canvas--tool-draw{cursor:crosshair}.handout-tagging-canvas:not(.handout-tagging-canvas--tool-draw){cursor:default}.handout-tagging-canvas{position:relative;width:100%;border:1px solid rgba(0,0,0,.1);border-radius:8px;overflow:hidden;touch-action:none;-webkit-user-select:none;user-select:none}.handout-tagging-canvas__hint{position:absolute;top:8px;left:50%;transform:translate(-50%);z-index:2;padding:6px 12px;border-radius:999px;font-size:13px;font-weight:500;color:#fff;pointer-events:none}.handout-tagging-canvas__hint--stem{background:#389e0deb}.handout-tagging-canvas__hint--answer{background:#1677ffeb}.handout-tagging-block{position:absolute;border:2px solid;border-radius:4px;box-sizing:border-box;z-index:1}.handout-tagging-block--selected{box-shadow:0 0 0 2px #1677ff59}.handout-tagging-block--draft{border-style:dashed;background:#ffffff26;z-index:3;pointer-events:none}.handout-tagging-block__badge{position:absolute;top:-1px;left:-1px;padding:1px 6px;font-size:11px;color:#fff;border-radius:4px 0;white-space:nowrap}.handout-tagging-ppt-midline{position:absolute;left:0;right:0;top:49.5%;height:1px;background:#1677ff40;pointer-events:none}.handout-tagging-pager{display:flex;align-items:center;justify-content:center;gap:12px}.handout-tagging-pager__label{font-size:13px;color:#0000008c}.handout-tagging-guide{display:flex;flex-direction:column;gap:12px}.handout-tagging-guide__hero h3{margin:0 0 8px;font-size:16px}.handout-tagging-guide__hero p{margin:0;font-size:13px;color:#000000a6;line-height:1.6}.handout-tagging-steps{list-style:none;margin:0;padding:0;display:grid;gap:8px}.handout-tagging-steps__item{display:flex;align-items:center;gap:8px;font-size:13px;color:#00000073}.handout-tagging-steps__item--active{color:#1677ff;font-weight:600}.handout-tagging-steps__item--done{color:#693}.handout-tagging-guide__preview{display:grid;gap:8px;padding:10px;background:#fafcf7;border-radius:8px;border:1px solid rgba(0,0,0,.06)}.handout-tagging-guide__preview-row span{display:block;font-size:12px;font-weight:600;margin-bottom:4px}.handout-tagging-guide__preview-row--stem span{color:#389e0d}.handout-tagging-guide__preview-row--answer span{color:#1677ff}.handout-tagging-guide__preview-row p{margin:0;font-size:13px;color:#000000a6}.handout-tagging-guide__actions{display:grid;gap:8px}.handout-tagging-done-list{list-style:none;margin:0;padding:0;display:grid;gap:10px}.handout-tagging-done-list li{padding-bottom:8px;border-bottom:1px solid rgba(0,0,0,.06)}.handout-tagging-done-list__status{margin-left:8px;font-size:12px;color:#d48806}.handout-tagging-done-list__status.is-ok{color:#693}.handout-tagging-canvas-pane{display:flex;flex-direction:column;gap:8px;min-width:0}.handout-tagging-workspace-mode{display:flex;justify-content:flex-start}.handout-tagging-editor-pager{display:flex;align-items:center;gap:8px;color:#000000a6;font-size:13px}.handout-tagging-editor{display:flex;flex-direction:column;gap:12px;flex:1;min-height:0;max-height:min(78vh,960px)}.handout-tagging-editor__toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px;flex-shrink:0}.handout-tagging-editor__toolbar p{margin:0;flex:1 1 240px;color:#000000a6;font-size:13px;line-height:1.6}.handout-tagging-editor__list{display:flex;flex-direction:column;gap:12px;flex:1;min-height:0;overflow:auto;padding-right:4px}.handout-tagging-editor__empty{padding:32px 16px;text-align:center;color:#00000073;border:1px dashed rgba(0,0,0,.12);border-radius:8px;background:#fafafa}.handout-tagging-editor__item{border:1px solid rgba(0,0,0,.08);border-radius:8px;background:#fff;overflow:hidden;flex:0 0 auto;min-height:120px}.handout-tagging-editor__item--stem{border-left:3px solid #389e0d}.handout-tagging-editor__item--answer{border-left:3px solid #1677ff}.handout-tagging-editor__item--cut{opacity:.55;outline:1px dashed #1677ff}.handout-tagging-editor__item--selected{box-shadow:0 0 0 2px #66993373}.handout-tagging-organize{display:flex;flex-direction:column;gap:12px;min-height:min(78vh,960px)}.handout-tagging-organize__footer{display:flex;justify-content:flex-end;padding-top:4px;flex-shrink:0}.handout-tagging-editor__item-head{display:flex;align-items:center;gap:8px;padding:8px 10px;background:#fafafa;border-bottom:1px solid rgba(0,0,0,.06);flex-shrink:0}.handout-tagging-editor__index{min-width:24px;font-size:12px;font-weight:600;color:#00000073}.handout-tagging-editor__item-actions{margin-left:auto;display:flex;align-items:center;flex-wrap:wrap}.handout-tagging-editor__textarea{display:block;width:100%;box-sizing:border-box;height:auto;min-height:96px;padding:12px 14px;border:0;resize:vertical;font:inherit;font-size:14px;line-height:1.7;color:#000000e0;background:#fff;flex-shrink:0}.handout-tagging-editor__textarea:focus{outline:none;box-shadow:inset 0 0 0 1px #66993359}.handout-tagging-segment{position:absolute;overflow:hidden;padding:4px 6px;font-size:12px;line-height:1.5;color:#000000d1;white-space:pre-wrap;word-break:break-word;pointer-events:none;box-sizing:border-box}.handout-tagging-segment--stem{background:#389e0d0f}.handout-tagging-segment--answer{background:#1677ff0f}.handout-tagging-canvas--text-flow{cursor:default;overflow:auto;max-height:min(72vh,920px)}.handout-tagging-doc{display:flex;flex-direction:column;gap:10px;padding:48px 12px 16px}.handout-tagging-doc__row{display:flex;gap:6px;align-items:flex-start}.handout-tagging-doc__row-actions{display:flex;flex-direction:column;padding-top:4px;position:relative;z-index:2;flex-shrink:0}.handout-tagging-doc__block{flex:1;width:100%;min-height:48px;padding:10px 12px;border:1px solid rgba(0,0,0,.08);border-radius:8px;font:inherit;line-height:1.65;color:#000000e0;resize:vertical;background:#fff}.handout-tagging-doc__block--stem{border-left:3px solid #389e0d;background:#389e0d0a}.handout-tagging-doc__block--answer{border-left:3px solid #1677ff;background:#1677ff0a}.handout-tagging-doc__block--neutral{border-left:3px solid #bfbfbf;background:#fafafa}.handout-tagging-doc__block:focus{outline:none;box-shadow:0 0 0 2px #6933}.admin-org-hierarchy--loading{display:grid;place-items:center;min-height:320px}.admin-org-hierarchy__stats{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:16px}.admin-org-hierarchy__stats>div{display:flex;flex-direction:column;gap:2px;min-width:88px;padding:12px 16px;border-radius:10px;background:#f8faf5;border:1px solid #e4ecd9}.admin-org-hierarchy__stats strong{font-size:20px;line-height:1.2;color:#27421a}.admin-org-hierarchy__stats span{font-size:12px;color:#71717a}.admin-org-hierarchy__toolbar{display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:space-between;margin-bottom:16px}.admin-org-hierarchy__tree-card{padding:12px 16px;border:1px solid #eef0f2;border-radius:12px;background:#fff;max-height:calc(100vh - 320px);overflow:auto}.admin-org-hierarchy__node{display:inline-flex;align-items:flex-start;gap:8px;padding:4px 0;max-width:100%}.admin-org-hierarchy__node-icon{color:#693;margin-top:2px}.admin-org-hierarchy__node-main{display:flex;flex-direction:column;gap:2px;min-width:0}.admin-org-hierarchy__node-title{display:inline-flex;flex-wrap:wrap;align-items:center;gap:6px}.admin-org-hierarchy__node-title strong{font-weight:600;color:#18181b}.admin-org-hierarchy__node-sub,.admin-org-hierarchy__node-count{font-size:12px;color:#71717a;line-height:1.5}.admin-org-hierarchy .ant-tree .ant-tree-node-content-wrapper{min-height:32px}.admin-report-panel{display:grid;gap:16px}.admin-report-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.admin-report-metrics--5{grid-template-columns:repeat(5,minmax(0,1fr))}.admin-report-metric{display:flex;flex-direction:column;gap:8px;min-width:0;padding:16px 18px;border-radius:14px;background:#fff;border:1px solid #f0f0f0;box-shadow:0 4px 16px #0f0f100a}.admin-report-metric--clickable{width:100%;margin:0;text-align:left;cursor:pointer;font:inherit;-webkit-appearance:none;-moz-appearance:none;appearance:none;transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease}.admin-report-metric--clickable:hover{border-color:#66993359;box-shadow:0 6px 18px #0f0f100f}.admin-report-metric--clickable:focus-visible{outline:2px solid rgb(102 153 51 / .45);outline-offset:2px}.admin-report-metric--active{border-color:#6699338c;box-shadow:0 0 0 1px #6933,0 6px 18px #0f0f100f}.admin-report-metric__label{font-size:12px;line-height:1.4;color:#71717a}.admin-report-metric__value{font-size:28px;font-weight:700;line-height:1.1;color:#18181b;font-variant-numeric:tabular-nums;letter-spacing:-.02em}.admin-report-metric__value--accent{color:#693}.admin-report-metric__value--warn{color:#d97706}.admin-report-metric__value--info{color:#2563eb}.admin-report-toolbar{display:flex;flex-wrap:wrap;gap:10px 12px;align-items:center;padding:14px 16px;border-radius:14px;background:#fff;border:1px solid #f0f0f0}.admin-report-toolbar__filters{display:flex;flex-wrap:wrap;gap:10px;align-items:center;width:100%;min-width:0}.admin-report-toolbar__actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-left:auto}.admin-report-switch{display:inline-flex;align-items:center;gap:8px;height:32px;padding:0 12px;border-radius:8px;background:#f8faf5;border:1px solid rgb(102 153 51 / .14);font-size:13px;color:#3f3f46;white-space:nowrap}.admin-report-section{display:grid;gap:12px}.admin-report-section__title{margin:0;font-size:15px;font-weight:600;color:#18181b}@media (max-width: 1100px){.admin-report-metrics--5{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width: 860px){.admin-report-metrics,.admin-report-metrics--5{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-report-toolbar__actions{margin-left:0;width:100%}}@media (max-width: 520px){.admin-report-metrics,.admin-report-metrics--5{grid-template-columns:1fr}.admin-report-metric__value{font-size:24px}}@font-face{font-display:block;font-family:KaTeX_AMS;font-style:normal;font-weight:400;src:url(/assets/KaTeX_AMS-Regular-BQhdFMY1.woff2) format("woff2"),url(/assets/KaTeX_AMS-Regular-DMm9YOAa.woff) format("woff"),url(/assets/KaTeX_AMS-Regular-DRggAlZN.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Caligraphic;font-style:normal;font-weight:700;src:url(/assets/KaTeX_Caligraphic-Bold-Dq_IR9rO.woff2) format("woff2"),url(/assets/KaTeX_Caligraphic-Bold-BEiXGLvX.woff) format("woff"),url(/assets/KaTeX_Caligraphic-Bold-ATXxdsX0.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Caligraphic;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Caligraphic-Regular-Di6jR-x-.woff2) format("woff2"),url(/assets/KaTeX_Caligraphic-Regular-CTRA-rTL.woff) format("woff"),url(/assets/KaTeX_Caligraphic-Regular-wX97UBjC.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Fraktur;font-style:normal;font-weight:700;src:url(/assets/KaTeX_Fraktur-Bold-CL6g_b3V.woff2) format("woff2"),url(/assets/KaTeX_Fraktur-Bold-BsDP51OF.woff) format("woff"),url(/assets/KaTeX_Fraktur-Bold-BdnERNNW.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Fraktur;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Fraktur-Regular-CTYiF6lA.woff2) format("woff2"),url(/assets/KaTeX_Fraktur-Regular-Dxdc4cR9.woff) format("woff"),url(/assets/KaTeX_Fraktur-Regular-CB_wures.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:normal;font-weight:700;src:url(/assets/KaTeX_Main-Bold-Cx986IdX.woff2) format("woff2"),url(/assets/KaTeX_Main-Bold-Jm3AIy58.woff) format("woff"),url(/assets/KaTeX_Main-Bold-waoOVXN0.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:italic;font-weight:700;src:url(/assets/KaTeX_Main-BoldItalic-DxDJ3AOS.woff2) format("woff2"),url(/assets/KaTeX_Main-BoldItalic-SpSLRI95.woff) format("woff"),url(/assets/KaTeX_Main-BoldItalic-DzxPMmG6.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:italic;font-weight:400;src:url(/assets/KaTeX_Main-Italic-NWA7e6Wa.woff2) format("woff2"),url(/assets/KaTeX_Main-Italic-BMLOBm91.woff) format("woff"),url(/assets/KaTeX_Main-Italic-3WenGoN9.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Main-Regular-B22Nviop.woff2) format("woff2"),url(/assets/KaTeX_Main-Regular-Dr94JaBh.woff) format("woff"),url(/assets/KaTeX_Main-Regular-ypZvNtVU.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Math;font-style:italic;font-weight:700;src:url(/assets/KaTeX_Math-BoldItalic-CZnvNsCZ.woff2) format("woff2"),url(/assets/KaTeX_Math-BoldItalic-iY-2wyZ7.woff) format("woff"),url(/assets/KaTeX_Math-BoldItalic-B3XSjfu4.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Math;font-style:italic;font-weight:400;src:url(/assets/KaTeX_Math-Italic-t53AETM-.woff2) format("woff2"),url(/assets/KaTeX_Math-Italic-DA0__PXp.woff) format("woff"),url(/assets/KaTeX_Math-Italic-flOr_0UB.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_SansSerif;font-style:normal;font-weight:700;src:url(/assets/KaTeX_SansSerif-Bold-D1sUS0GD.woff2) format("woff2"),url(/assets/KaTeX_SansSerif-Bold-DbIhKOiC.woff) format("woff"),url(/assets/KaTeX_SansSerif-Bold-CFMepnvq.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_SansSerif;font-style:italic;font-weight:400;src:url(/assets/KaTeX_SansSerif-Italic-C3H0VqGB.woff2) format("woff2"),url(/assets/KaTeX_SansSerif-Italic-DN2j7dab.woff) format("woff"),url(/assets/KaTeX_SansSerif-Italic-YYjJ1zSn.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_SansSerif;font-style:normal;font-weight:400;src:url(/assets/KaTeX_SansSerif-Regular-DDBCnlJ7.woff2) format("woff2"),url(/assets/KaTeX_SansSerif-Regular-CS6fqUqJ.woff) format("woff"),url(/assets/KaTeX_SansSerif-Regular-BNo7hRIc.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Script;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Script-Regular-D3wIWfF6.woff2) format("woff2"),url(/assets/KaTeX_Script-Regular-D5yQViql.woff) format("woff"),url(/assets/KaTeX_Script-Regular-C5JkGWo-.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size1;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Size1-Regular-mCD8mA8B.woff2) format("woff2"),url(/assets/KaTeX_Size1-Regular-C195tn64.woff) format("woff"),url(/assets/KaTeX_Size1-Regular-Dbsnue_I.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size2;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Size2-Regular-Dy4dx90m.woff2) format("woff2"),url(/assets/KaTeX_Size2-Regular-oD1tc_U0.woff) format("woff"),url(/assets/KaTeX_Size2-Regular-B7gKUWhC.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size3;font-style:normal;font-weight:400;src:url(data:font/woff2;base64,d09GMgABAAAAAA4oAA4AAAAAHbQAAA3TAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAABmAAgRQIDgmcDBEICo1oijYBNgIkA14LMgAEIAWJAAeBHAyBHBvbGiMRdnO0IkRRkiYDgr9KsJ1NUAf2kILNxgUmgqIgq1P89vcbIcmsQbRps3vCcXdYOKSWEPEKgZgQkprQQsxIXUgq0DqpGKmIvrgkeVGtEQD9DzAO29fM9jYhxZEsL2FeURH2JN4MIcTdO049NCVdxQ/w9NrSYFEBKTDKpLKfNkCGDc1RwjZLQcm3vqJ2UW9Xfa3tgAHz6ivp6vgC2yD4/6352ndnN0X0TL7seypkjZlMsjmZnf0Mm5Q+JykRWQBKCVCVPbARPXWyQtb5VgLB6Biq7/Uixcj2WGqdI8tGSgkuRG+t910GKP2D7AQH0DB9FMDW/obJZ8giFI3Wg8Cvevz0M+5m0rTh7XDBlvo9Y4vm13EXmfttwI4mBo1EG15fxJhUiCLbiiyCf/ZA6MFAhg3pGIZGdGIVjtPn6UcMk9A/UUr9PhoNsCENw1APAq0gpH73e+M+0ueyHbabc3vkbcdtzcf/fiy+NxQEjf9ud/ELBHAXJ0nk4z+MXH2Ev/kWyV4k7SkvpPc9Qr38F6RPWnM9cN6DJ0AdD1BhtgABtmoRoFCvPsBAumNm6soZG2Gk5GyVTo2sJncSyp0jQTYoR6WDvTwaaEcHsxHfvuWhHA3a6bN7twRKtcGok6NsCi7jYRrM2jExsUFMxMQYuJbMhuWNOumEJy9hi29Dmg5zMp/A5+hhPG19j1vBrq8JTLr8ki5VLPmG/PynJHVul440bxg5xuymHUFPBshC+nA9I1FmwbRBTNHAcik3Oae0cxKoI3MOriM42UrPe51nsaGxJ+WfXubAsP84aabUlQSJ1IiE0iPETLUU4CATgfXSCSpuRFRmCGbO+wSpAnzaeaCYW1VNEysRtuXCEL1kUFUbbtMv3Tilt/1c11jt3Q5bbMa84cpWipp8Elw3MZhOHsOlwwVUQM3lAR35JiFQbaYCRnMF2lxAWoOg2gyoIV4PouX8HytNIfLhqpJtXB4vjiViUI8IJ7bkC4ikkQvKksnOTKICwnqWSZ9YS5f0WCxmpgjbIq7EJcM4aI2nmhLNY2JIUgOjXZFWBHb+x5oh6cwb0Tv1ackHdKi0I9OO2wE9aogIOn540CCCziyhN+IaejtgAONKznHlHyutPrHGwCx9S6B8kfS4Mfi4Eyv7OU730bT1SCBjt834cXsf43zVjPUqqJjgrjeGnBxSG4aYAKFuVbeCfkDIjAqMb6yLNIbCuvXhMH2/+k2vkNpkORhR59N1CkzoOENvneIosjYmuTxlhUzaGEJQ/iWqx4dmwpmKjrwTiTGTCVozNAYqk/zXOndWxuWSmJkQpJw3pK5KX6QrLt5LATMqpmPAQhkhK6PUjzHUn7E0gHE0kPE0iKkolgkUx9SZmVAdDgpffdyJKg3k7VmzYGCwVXGz/tXmkOIp+vcWs+EMuhhvN0h9uhfzWJziBQmCREGSIFmQIkgVpAnSBRmC//6hkLZwaVhwxlrJSOdqlFtOYxlau9F2QN5Y98xmIAsiM1HVp2VFX+DHHGg6Ecjh3vmqtidX3qHI2qycTk/iwxSt5UzTmEP92ZBnEWTk4Mx8Mpl78ZDokxg/KWb+Q0QkvdKVmq3TMW+RXEgrsziSAfNXFMhDc60N5N9jQzjfO0kBKpUZl0ZmwJ41j/B9Hz6wmRaJB84niNmQrzp9eSlQCDDzazGDdVi3P36VZQ+Jy4f9UBNp+3zTjqI4abaFAm+GShVaXlsGdF3FYzZcDI6cori4kMxUECl9IjJZpzkvitAoxKue+90pDMvcKRxLl53TmOKCmV/xRolNKSqqUxc6LStOETmFOiLZZptlZepcKiAzteG8PEdpnQpbOMNcMsR4RR2Bs0cKFEvSmIjAFcnarqwUL4lDhHmnVkwu1IwshbiCcgvOheZuYyOteufZZwlcTlLgnZ3o/WcYdzZHW/WGaqaVfmTZ1aWCceJjkbZqsfbkOtcFlUZM/jy+hXHDbaUobWqqXaeWobbLO99yG5N3U4wxco0rQGGcOLASFMXeJoham8M+/x6O2WywK2l4HGbq1CoUyC/IZikQhdq3SiuNrvAEj0AVu9x2x3lp/xWzahaxidezFVtdcb5uEnzyl0ZmYiuKI0exvCd4Xc9CV1KB0db00z92wDPde0kukbvZIWN6jUWFTmPIC/Y4UPCm8UfDTFZpZNon1qLFTkBhxzB+FjQRA2Q/YRJT8pQigslMaUpFyAG8TMlXigiqmAZX4xgijKjRlGpLE0GdplRfCaJo0JQaSxNBk6ZmMzcya0FmrcisDdn0Q3HI2sWSppYigmlM1XT/kLQZSNpMJG0WkjYbSZuDpM1F0uYhFc1HxU4m1QJjDK6iL0S5uSj5rgXc3RejEigtcRBtqYPQsiTskmO5vosV+q4VGIKbOkDg0jtRrq+Em1YloaTFar3EGr1EUC8R0kus1Uus00usL97ABr2BjXoDm/QGNhuWtMVBKOwg/i78lT7hBsAvDmwHc/ao3vmUbBmhjeYySZNWvGkfZAgISDSaDo1SVpzGDsAEkF8B+gEapViUoZgUWXcRIGFZNm6gWbAKk0bp0k1MHG9fLYtV4iS2SmLEQFARzRcnf9PUS0LVn05/J9MiRRBU3v2IrvW974v4N00L7ZMk0wXP1409CHo/an8zTRHD3eSJ6m8D4YMkZNl3M79sqeuAsr/m3f+8/yl7A50aiAEJgeBeMWzu7ui9UfUBCe2TIqZIoOd/3/udRBOQidQZUERzb2/VwZN1H/Sju82ew2H2Wfr6qvfVf3hqwDvAIpkQVFy4B9Pe9e4/XvPeceu7h3dvO56iJPf0+A6cqA2ip18ER+iFgggiuOkvj24bby0N9j2UHIkgqIt+sVgfodC4YghLSMjSZbH0VR/6dMDrYJeKHilKTemt6v6kvzvn3/RrdWtr0GoN/xL+Sex/cPYLUpepx9cz/D46UPU5KXgAQa+NDps1v6J3xP1i2HtaDB0M9aX2deA7SYff//+gUCovMmIK/qfsFcOk+4Y5ZN97XlG6zebqtMbKgeRFi51vnxTQYBUik2rS/Cn6PC8ADR8FGxsRPB82dzfND90gIcshOcYUkfjherBz53odpm6TP8txlwOZ71xmfHHOvq053qFF/MRlS3jP0ELudrf2OeN8DHvp6ZceLe8qKYvWz/7yp0u4dKPfli3CYq0O13Ih71mylJ80tOi10On8wi+F4+LWgDPeJ30msSQt9/vkmHq9/Lvo2b461mP801v3W4xTcs6CbvF9UDdrSt+A8OUbpSh55qAUFXWznBBfdeJ8a4d7ugT5tvxUza3h9m4H7ptTqiG4z0g5dc0X29OcGlhpGFMpQo9ytTS+NViZpNdvU4kWx+LKxNY10kQ1yqGXrhe4/1nvP7E+nd5A92TtaRplbHSqoIdOqtRWti+fkB5/n1+/VvCmz12pG1kpQWsfi1ftlBobm0bpngs16CHkbIwdLnParxtTV3QYRlfJ0KFskH7pdN/YDn+yRuSd7sNH3aO0DYPggk6uWuXrfOc+fa3VTxFVvKaNxHsiHmsXyCLIE5yuOeN3/Jdf8HBL/5M6shjyhxHx9BjB1O0+4NLOnjLLSxwO7ukN4jMbOIcD879KLSi6Pk61Oqm2377n8079PXEEQ7cy7OKEC9nbpet118fxweTafpt69x/Bt8UqGzNQt7aelpc44dn5cqhwf71+qKp/Zf/+a0zcizOUWpl/iBcSXip0pplkatCchoH5c5aUM8I7/dWxAej8WicPL1URFZ9BDJelUwEwTkGqUhgSlydVes95YdXvhh9Gfz/aeFWvgVb4tuLbcv4+wLdutVZv/cUonwBD/6eDlE0aSiKK/uoH3+J1wDE/jMVqY2ysGufN84oIXB0sPzy8ollX/LegY74DgJXJR57sn+VGza0x3DnuIgABFM15LmajjjsNlYj+JEZGbuRYcAMOWxFkPN2w6Wd46xo4gVWQR/X4lyI/R6K/YK0110GzudPRW7Y+UOBGTfNNzHeYT0fiH0taunBpq9HEW8OKSaBGj21L0MqenEmNRWBAWDWAk4CpNoEZJ2tTaPFgbQYj8HxtFilErs3BTRwT8uO1NXQaWfIotchmPkAF5mMBAliEmZiOGVgCG9LgRzpscMAOOwowlT3JhusdazXGSC/hxR3UlmWVwWHpOIKheqONvjyhSiTHIkVUco5bnji8m//zL7PKaT1Vl5I6UE609f+gkr6MZKVyKc7zJRmCahLsdlyA5fdQkRSan9LgnnLEyGSkaKJCJog0wAgvepWBt80+1yKln1bMVtCljfNWDueKLsWwaEbBSfSPTEmVRsUcYYMnEjcjeyCZzBXK9E9BYBXLKjOSpUDR+nEV3TFSUdQaz+ot98QxgXwx0GQ+EEUAKB2qZPkQQ0GqFD8UPFMqyaCHM24BZmSGic9EYMagKizOw9Hz50DMrDLrqqLkTAhplMictiCAx5S3BIUQdeJeLnBy2CNtMfz6cV4u8XKoFZQesbf9YZiIERiHjaNodDW6LgcirX/mPnJIkBGDUpTBhSa0EIr38D5hCIszhCM8URGBqImoWjpvpt1ebu/v3Gl3qJfMnNM+9V+kiRFyROTPHQWOcs1dNW94/ukKMPZBvDi55i5CttdeJz84DLngLqjcdwEZ87bFFR8CIG35OAkDVN6VRDZ7aq67NteYqZ2lpT8oYB2CytoBd6VuAx4WgiAsnuj3WohG+LugzXiQRDeM3XYXlULv4dp5VFYC) format("woff2"),url(/assets/KaTeX_Size3-Regular-CTq5MqoE.woff) format("woff"),url(/assets/KaTeX_Size3-Regular-DgpXs0kz.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size4;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Size4-Regular-Dl5lxZxV.woff2) format("woff2"),url(/assets/KaTeX_Size4-Regular-BF-4gkZK.woff) format("woff"),url(/assets/KaTeX_Size4-Regular-DWFBv043.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Typewriter;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Typewriter-Regular-CO6r4hn1.woff2) format("woff2"),url(/assets/KaTeX_Typewriter-Regular-C0xS9mPB.woff) format("woff"),url(/assets/KaTeX_Typewriter-Regular-D3Ib7_Hf.ttf) format("truetype")}.katex{font: 1.21em KaTeX_Main,Times New Roman,serif;line-height:1.2;position:relative;text-indent:0;text-rendering:auto}.katex *{-ms-high-contrast-adjust:none!important;border-color:currentColor}.katex .katex-version:after{content:"0.17.0"}.katex .katex-mathml{border:0;-webkit-clip-path:inset(50%);clip-path:inset(50%);height:1px;overflow:hidden;padding:0;position:absolute;width:1px}.katex .katex-html>.newline{display:block}.katex .base{position:relative;white-space:nowrap;width:-webkit-min-content;width:-moz-min-content;width:min-content}.katex .base,.katex .strut{display:inline-block}.katex .textbf{font-weight:700}.katex .textit{font-style:italic}.katex .textrm{font-family:KaTeX_Main}.katex .textsf{font-family:KaTeX_SansSerif}.katex .texttt{font-family:KaTeX_Typewriter}.katex .mathnormal{font-family:KaTeX_Math;font-style:italic}.katex .mathit{font-family:KaTeX_Main;font-style:italic}.katex .mathrm{font-style:normal}.katex .mathbf{font-family:KaTeX_Main;font-weight:700}.katex .boldsymbol{font-family:KaTeX_Math;font-style:italic;font-weight:700}.katex .amsrm,.katex .mathbb,.katex .textbb{font-family:KaTeX_AMS}.katex .mathcal{font-family:KaTeX_Caligraphic}.katex .mathfrak,.katex .textfrak{font-family:KaTeX_Fraktur}.katex .mathboldfrak,.katex .textboldfrak{font-family:KaTeX_Fraktur;font-weight:700}.katex .mathtt{font-family:KaTeX_Typewriter}.katex .mathscr,.katex .textscr{font-family:KaTeX_Script}.katex .mathsf,.katex .textsf{font-family:KaTeX_SansSerif}.katex .mathboldsf,.katex .textboldsf{font-family:KaTeX_SansSerif;font-weight:700}.katex .mathitsf,.katex .mathsfit,.katex .textitsf{font-family:KaTeX_SansSerif;font-style:italic}.katex .mainrm{font-family:KaTeX_Main;font-style:normal}.katex .vlist-t{border-collapse:collapse;display:inline-table;table-layout:fixed}.katex .vlist-r{display:table-row}.katex .vlist{display:table-cell;position:relative;vertical-align:bottom}.katex .vlist>span{display:block;height:0;position:relative}.katex .vlist>span>span{display:inline-block}.katex .vlist>span>.pstrut{overflow:hidden;width:0}.katex .vlist-t2{margin-right:-2px}.katex .vlist-s{display:table-cell;font-size:1px;min-width:2px;vertical-align:bottom;width:2px}.katex .vbox{align-items:baseline;display:inline-flex;flex-direction:column}.katex .hbox{width:100%}.katex .hbox,.katex .thinbox{display:inline-flex;flex-direction:row}.katex .thinbox{max-width:0;width:0}.katex .msupsub{text-align:left}.katex .mfrac>span>span{text-align:center}.katex .mfrac .frac-line{border-bottom-style:solid;display:inline-block;width:100%}.katex .hdashline,.katex .hline,.katex .mfrac .frac-line,.katex .overline .overline-line,.katex .rule,.katex .underline .underline-line{min-height:1px}.katex .mspace{display:inline-block}.katex .smash{display:inline;line-height:0}.katex .clap,.katex .llap,.katex .rlap{position:relative;width:0}.katex .clap>.inner,.katex .llap>.inner,.katex .rlap>.inner{position:absolute}.katex .clap>.fix,.katex .llap>.fix,.katex .rlap>.fix{display:inline-block}.katex .llap>.inner{right:0}.katex .clap>.inner,.katex .rlap>.inner{left:0}.katex .clap>.inner>span{margin-left:-50%;margin-right:50%}.katex .rule{border:0 solid;display:inline-block;position:relative}.katex .hline,.katex .overline .overline-line,.katex .underline .underline-line{border-bottom-style:solid;display:inline-block;width:100%}.katex .hdashline{border-bottom-style:dashed;display:inline-block;width:100%}.katex .sqrt>.root{margin-left:.2777777778em;margin-right:-.5555555556em}.katex .fontsize-ensurer.reset-size1.size1,.katex .sizing.reset-size1.size1{font-size:1em}.katex .fontsize-ensurer.reset-size1.size2,.katex .sizing.reset-size1.size2{font-size:1.2em}.katex .fontsize-ensurer.reset-size1.size3,.katex .sizing.reset-size1.size3{font-size:1.4em}.katex .fontsize-ensurer.reset-size1.size4,.katex .sizing.reset-size1.size4{font-size:1.6em}.katex .fontsize-ensurer.reset-size1.size5,.katex .sizing.reset-size1.size5{font-size:1.8em}.katex .fontsize-ensurer.reset-size1.size6,.katex .sizing.reset-size1.size6{font-size:2em}.katex .fontsize-ensurer.reset-size1.size7,.katex .sizing.reset-size1.size7{font-size:2.4em}.katex .fontsize-ensurer.reset-size1.size8,.katex .sizing.reset-size1.size8{font-size:2.88em}.katex .fontsize-ensurer.reset-size1.size9,.katex .sizing.reset-size1.size9{font-size:3.456em}.katex .fontsize-ensurer.reset-size1.size10,.katex .sizing.reset-size1.size10{font-size:4.148em}.katex .fontsize-ensurer.reset-size1.size11,.katex .sizing.reset-size1.size11{font-size:4.976em}.katex .fontsize-ensurer.reset-size2.size1,.katex .sizing.reset-size2.size1{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size2.size2,.katex .sizing.reset-size2.size2{font-size:1em}.katex .fontsize-ensurer.reset-size2.size3,.katex .sizing.reset-size2.size3{font-size:1.1666666667em}.katex .fontsize-ensurer.reset-size2.size4,.katex .sizing.reset-size2.size4{font-size:1.3333333333em}.katex .fontsize-ensurer.reset-size2.size5,.katex .sizing.reset-size2.size5{font-size:1.5em}.katex .fontsize-ensurer.reset-size2.size6,.katex .sizing.reset-size2.size6{font-size:1.6666666667em}.katex .fontsize-ensurer.reset-size2.size7,.katex .sizing.reset-size2.size7{font-size:2em}.katex .fontsize-ensurer.reset-size2.size8,.katex .sizing.reset-size2.size8{font-size:2.4em}.katex .fontsize-ensurer.reset-size2.size9,.katex .sizing.reset-size2.size9{font-size:2.88em}.katex .fontsize-ensurer.reset-size2.size10,.katex .sizing.reset-size2.size10{font-size:3.4566666667em}.katex .fontsize-ensurer.reset-size2.size11,.katex .sizing.reset-size2.size11{font-size:4.1466666667em}.katex .fontsize-ensurer.reset-size3.size1,.katex .sizing.reset-size3.size1{font-size:.7142857143em}.katex .fontsize-ensurer.reset-size3.size2,.katex .sizing.reset-size3.size2{font-size:.8571428571em}.katex .fontsize-ensurer.reset-size3.size3,.katex .sizing.reset-size3.size3{font-size:1em}.katex .fontsize-ensurer.reset-size3.size4,.katex .sizing.reset-size3.size4{font-size:1.1428571429em}.katex .fontsize-ensurer.reset-size3.size5,.katex .sizing.reset-size3.size5{font-size:1.2857142857em}.katex .fontsize-ensurer.reset-size3.size6,.katex .sizing.reset-size3.size6{font-size:1.4285714286em}.katex .fontsize-ensurer.reset-size3.size7,.katex .sizing.reset-size3.size7{font-size:1.7142857143em}.katex .fontsize-ensurer.reset-size3.size8,.katex .sizing.reset-size3.size8{font-size:2.0571428571em}.katex .fontsize-ensurer.reset-size3.size9,.katex .sizing.reset-size3.size9{font-size:2.4685714286em}.katex .fontsize-ensurer.reset-size3.size10,.katex .sizing.reset-size3.size10{font-size:2.9628571429em}.katex .fontsize-ensurer.reset-size3.size11,.katex .sizing.reset-size3.size11{font-size:3.5542857143em}.katex .fontsize-ensurer.reset-size4.size1,.katex .sizing.reset-size4.size1{font-size:.625em}.katex .fontsize-ensurer.reset-size4.size2,.katex .sizing.reset-size4.size2{font-size:.75em}.katex .fontsize-ensurer.reset-size4.size3,.katex .sizing.reset-size4.size3{font-size:.875em}.katex .fontsize-ensurer.reset-size4.size4,.katex .sizing.reset-size4.size4{font-size:1em}.katex .fontsize-ensurer.reset-size4.size5,.katex .sizing.reset-size4.size5{font-size:1.125em}.katex .fontsize-ensurer.reset-size4.size6,.katex .sizing.reset-size4.size6{font-size:1.25em}.katex .fontsize-ensurer.reset-size4.size7,.katex .sizing.reset-size4.size7{font-size:1.5em}.katex .fontsize-ensurer.reset-size4.size8,.katex .sizing.reset-size4.size8{font-size:1.8em}.katex .fontsize-ensurer.reset-size4.size9,.katex .sizing.reset-size4.size9{font-size:2.16em}.katex .fontsize-ensurer.reset-size4.size10,.katex .sizing.reset-size4.size10{font-size:2.5925em}.katex .fontsize-ensurer.reset-size4.size11,.katex .sizing.reset-size4.size11{font-size:3.11em}.katex .fontsize-ensurer.reset-size5.size1,.katex .sizing.reset-size5.size1{font-size:.5555555556em}.katex .fontsize-ensurer.reset-size5.size2,.katex .sizing.reset-size5.size2{font-size:.6666666667em}.katex .fontsize-ensurer.reset-size5.size3,.katex .sizing.reset-size5.size3{font-size:.7777777778em}.katex .fontsize-ensurer.reset-size5.size4,.katex .sizing.reset-size5.size4{font-size:.8888888889em}.katex .fontsize-ensurer.reset-size5.size5,.katex .sizing.reset-size5.size5{font-size:1em}.katex .fontsize-ensurer.reset-size5.size6,.katex .sizing.reset-size5.size6{font-size:1.1111111111em}.katex .fontsize-ensurer.reset-size5.size7,.katex .sizing.reset-size5.size7{font-size:1.3333333333em}.katex .fontsize-ensurer.reset-size5.size8,.katex .sizing.reset-size5.size8{font-size:1.6em}.katex .fontsize-ensurer.reset-size5.size9,.katex .sizing.reset-size5.size9{font-size:1.92em}.katex .fontsize-ensurer.reset-size5.size10,.katex .sizing.reset-size5.size10{font-size:2.3044444444em}.katex .fontsize-ensurer.reset-size5.size11,.katex .sizing.reset-size5.size11{font-size:2.7644444444em}.katex .fontsize-ensurer.reset-size6.size1,.katex .sizing.reset-size6.size1{font-size:.5em}.katex .fontsize-ensurer.reset-size6.size2,.katex .sizing.reset-size6.size2{font-size:.6em}.katex .fontsize-ensurer.reset-size6.size3,.katex .sizing.reset-size6.size3{font-size:.7em}.katex .fontsize-ensurer.reset-size6.size4,.katex .sizing.reset-size6.size4{font-size:.8em}.katex .fontsize-ensurer.reset-size6.size5,.katex .sizing.reset-size6.size5{font-size:.9em}.katex .fontsize-ensurer.reset-size6.size6,.katex .sizing.reset-size6.size6{font-size:1em}.katex .fontsize-ensurer.reset-size6.size7,.katex .sizing.reset-size6.size7{font-size:1.2em}.katex .fontsize-ensurer.reset-size6.size8,.katex .sizing.reset-size6.size8{font-size:1.44em}.katex .fontsize-ensurer.reset-size6.size9,.katex .sizing.reset-size6.size9{font-size:1.728em}.katex .fontsize-ensurer.reset-size6.size10,.katex .sizing.reset-size6.size10{font-size:2.074em}.katex .fontsize-ensurer.reset-size6.size11,.katex .sizing.reset-size6.size11{font-size:2.488em}.katex .fontsize-ensurer.reset-size7.size1,.katex .sizing.reset-size7.size1{font-size:.4166666667em}.katex .fontsize-ensurer.reset-size7.size2,.katex .sizing.reset-size7.size2{font-size:.5em}.katex .fontsize-ensurer.reset-size7.size3,.katex .sizing.reset-size7.size3{font-size:.5833333333em}.katex .fontsize-ensurer.reset-size7.size4,.katex .sizing.reset-size7.size4{font-size:.6666666667em}.katex .fontsize-ensurer.reset-size7.size5,.katex .sizing.reset-size7.size5{font-size:.75em}.katex .fontsize-ensurer.reset-size7.size6,.katex .sizing.reset-size7.size6{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size7.size7,.katex .sizing.reset-size7.size7{font-size:1em}.katex .fontsize-ensurer.reset-size7.size8,.katex .sizing.reset-size7.size8{font-size:1.2em}.katex .fontsize-ensurer.reset-size7.size9,.katex .sizing.reset-size7.size9{font-size:1.44em}.katex .fontsize-ensurer.reset-size7.size10,.katex .sizing.reset-size7.size10{font-size:1.7283333333em}.katex .fontsize-ensurer.reset-size7.size11,.katex .sizing.reset-size7.size11{font-size:2.0733333333em}.katex .fontsize-ensurer.reset-size8.size1,.katex .sizing.reset-size8.size1{font-size:.3472222222em}.katex .fontsize-ensurer.reset-size8.size2,.katex .sizing.reset-size8.size2{font-size:.4166666667em}.katex .fontsize-ensurer.reset-size8.size3,.katex .sizing.reset-size8.size3{font-size:.4861111111em}.katex .fontsize-ensurer.reset-size8.size4,.katex .sizing.reset-size8.size4{font-size:.5555555556em}.katex .fontsize-ensurer.reset-size8.size5,.katex .sizing.reset-size8.size5{font-size:.625em}.katex .fontsize-ensurer.reset-size8.size6,.katex .sizing.reset-size8.size6{font-size:.6944444444em}.katex .fontsize-ensurer.reset-size8.size7,.katex .sizing.reset-size8.size7{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size8.size8,.katex .sizing.reset-size8.size8{font-size:1em}.katex .fontsize-ensurer.reset-size8.size9,.katex .sizing.reset-size8.size9{font-size:1.2em}.katex .fontsize-ensurer.reset-size8.size10,.katex .sizing.reset-size8.size10{font-size:1.4402777778em}.katex .fontsize-ensurer.reset-size8.size11,.katex .sizing.reset-size8.size11{font-size:1.7277777778em}.katex .fontsize-ensurer.reset-size9.size1,.katex .sizing.reset-size9.size1{font-size:.2893518519em}.katex .fontsize-ensurer.reset-size9.size2,.katex .sizing.reset-size9.size2{font-size:.3472222222em}.katex .fontsize-ensurer.reset-size9.size3,.katex .sizing.reset-size9.size3{font-size:.4050925926em}.katex .fontsize-ensurer.reset-size9.size4,.katex .sizing.reset-size9.size4{font-size:.462962963em}.katex .fontsize-ensurer.reset-size9.size5,.katex .sizing.reset-size9.size5{font-size:.5208333333em}.katex .fontsize-ensurer.reset-size9.size6,.katex .sizing.reset-size9.size6{font-size:.5787037037em}.katex .fontsize-ensurer.reset-size9.size7,.katex .sizing.reset-size9.size7{font-size:.6944444444em}.katex .fontsize-ensurer.reset-size9.size8,.katex .sizing.reset-size9.size8{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size9.size9,.katex .sizing.reset-size9.size9{font-size:1em}.katex .fontsize-ensurer.reset-size9.size10,.katex .sizing.reset-size9.size10{font-size:1.2002314815em}.katex .fontsize-ensurer.reset-size9.size11,.katex .sizing.reset-size9.size11{font-size:1.4398148148em}.katex .fontsize-ensurer.reset-size10.size1,.katex .sizing.reset-size10.size1{font-size:.2410800386em}.katex .fontsize-ensurer.reset-size10.size2,.katex .sizing.reset-size10.size2{font-size:.2892960463em}.katex .fontsize-ensurer.reset-size10.size3,.katex .sizing.reset-size10.size3{font-size:.337512054em}.katex .fontsize-ensurer.reset-size10.size4,.katex .sizing.reset-size10.size4{font-size:.3857280617em}.katex .fontsize-ensurer.reset-size10.size5,.katex .sizing.reset-size10.size5{font-size:.4339440694em}.katex .fontsize-ensurer.reset-size10.size6,.katex .sizing.reset-size10.size6{font-size:.4821600771em}.katex .fontsize-ensurer.reset-size10.size7,.katex .sizing.reset-size10.size7{font-size:.5785920926em}.katex .fontsize-ensurer.reset-size10.size8,.katex .sizing.reset-size10.size8{font-size:.6943105111em}.katex .fontsize-ensurer.reset-size10.size9,.katex .sizing.reset-size10.size9{font-size:.8331726133em}.katex .fontsize-ensurer.reset-size10.size10,.katex .sizing.reset-size10.size10{font-size:1em}.katex .fontsize-ensurer.reset-size10.size11,.katex .sizing.reset-size10.size11{font-size:1.1996142719em}.katex .fontsize-ensurer.reset-size11.size1,.katex .sizing.reset-size11.size1{font-size:.2009646302em}.katex .fontsize-ensurer.reset-size11.size2,.katex .sizing.reset-size11.size2{font-size:.2411575563em}.katex .fontsize-ensurer.reset-size11.size3,.katex .sizing.reset-size11.size3{font-size:.2813504823em}.katex .fontsize-ensurer.reset-size11.size4,.katex .sizing.reset-size11.size4{font-size:.3215434084em}.katex .fontsize-ensurer.reset-size11.size5,.katex .sizing.reset-size11.size5{font-size:.3617363344em}.katex .fontsize-ensurer.reset-size11.size6,.katex .sizing.reset-size11.size6{font-size:.4019292605em}.katex .fontsize-ensurer.reset-size11.size7,.katex .sizing.reset-size11.size7{font-size:.4823151125em}.katex .fontsize-ensurer.reset-size11.size8,.katex .sizing.reset-size11.size8{font-size:.578778135em}.katex .fontsize-ensurer.reset-size11.size9,.katex .sizing.reset-size11.size9{font-size:.6945337621em}.katex .fontsize-ensurer.reset-size11.size10,.katex .sizing.reset-size11.size10{font-size:.8336012862em}.katex .fontsize-ensurer.reset-size11.size11,.katex .sizing.reset-size11.size11{font-size:1em}.katex .delimsizing.size1{font-family:KaTeX_Size1}.katex .delimsizing.size2{font-family:KaTeX_Size2}.katex .delimsizing.size3{font-family:KaTeX_Size3}.katex .delimsizing.size4{font-family:KaTeX_Size4}.katex .delimsizing.mult .delim-size1>span{font-family:KaTeX_Size1}.katex .delimsizing.mult .delim-size4>span{font-family:KaTeX_Size4}.katex .nulldelimiter{display:inline-block;width:.12em}.katex .delimcenter,.katex .op-symbol{position:relative}.katex .op-symbol.small-op{font-family:KaTeX_Size1}.katex .op-symbol.large-op{font-family:KaTeX_Size2}.katex .accent>.vlist-t,.katex .op-limits>.vlist-t{text-align:center}.katex .accent .accent-body{position:relative}.katex .accent .accent-body:not(.accent-full){width:0}.katex .overlay{display:block}.katex .mtable .vertical-separator{display:inline-block;min-width:1px}.katex .mtable .arraycolsep{display:inline-block}.katex .mtable .col-align-c>.vlist-t{text-align:center}.katex .mtable .col-align-l>.vlist-t{text-align:left}.katex .mtable .col-align-r>.vlist-t{text-align:right}.katex .svg-align{text-align:left}.katex svg{fill:currentColor;stroke:currentColor;display:block;height:inherit;position:absolute;width:100%}.katex svg path{stroke:none}.katex svg{fill-rule:nonzero;fill-opacity:1;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1}.katex img{border-style:none;max-height:none;max-width:none;min-height:0;min-width:0}.katex .stretchy{display:block;overflow:hidden;position:relative;width:100%}.katex .stretchy:after,.katex .stretchy:before{content:""}.katex .hide-tail{overflow:hidden;position:relative;width:100%}.katex .halfarrow-left{left:0;overflow:hidden;position:absolute;width:50.2%}.katex .halfarrow-right{overflow:hidden;position:absolute;right:0;width:50.2%}.katex .brace-left{left:0;overflow:hidden;position:absolute;width:25.1%}.katex .brace-center{left:25%;overflow:hidden;position:absolute;width:50%}.katex .brace-right{overflow:hidden;position:absolute;right:0;width:25.1%}.katex .x-arrow-pad{padding:0 .5em}.katex .cd-arrow-pad{padding:0 .55556em 0 .27778em}.katex .mover,.katex .munder,.katex .x-arrow{text-align:center}.katex .boxpad{padding:0 .3em}.katex .fbox,.katex .fcolorbox{border:.04em solid;box-sizing:border-box}.katex .cancel-pad{padding:0 .2em}.katex .cancel-lap{margin-left:-.2em;margin-right:-.2em}.katex .sout{border-bottom-style:solid;border-bottom-width:.08em}.katex .angl{border-right:.049em solid;border-top:.049em solid;box-sizing:border-box;margin-right:.03889em}.katex .anglpad{padding:0 .03889em}.katex .eqn-num:before{content:"(" counter(katexEqnNo) ")";counter-increment:katexEqnNo}.katex .mml-eqn-num:before{content:"(" counter(mmlEqnNo) ")";counter-increment:mmlEqnNo}.katex .mtr-glue{width:50%}.katex .cd-vert-arrow{display:inline-block;position:relative}.katex .cd-label-left{display:inline-block;position:absolute;right:calc(50% + .3em);text-align:left}.katex .cd-label-right{display:inline-block;left:calc(50% + .3em);position:absolute;text-align:right}.katex-display{display:block;margin:1em 0;text-align:center}.katex-display>.katex{display:block;text-align:center;white-space:nowrap}.katex-display>.katex>.katex-html{display:block;position:relative}.katex-display>.katex>.katex-html>.tag{position:absolute;right:0}.katex-display.leqno>.katex>.katex-html>.tag{left:0;right:auto}.katex-display.fleqn>.katex{padding-left:2em;text-align:left}body{counter-reset:katexEqnNo mmlEqnNo}.draw-rules-page{width:100%;max-width:none}.draw-rules-page-intro{margin-bottom:16px}.draw-rules-step-card{margin-bottom:14px;background:#fafafa;border:1px solid #f0f0f0!important;border-radius:10px}.draw-rules-step-card .ant-card-body{padding:16px 18px 18px}.draw-rules-step-title{display:flex;gap:12px;align-items:flex-start;margin-bottom:14px}.draw-rules-step-index{flex:none;width:28px;height:28px;border-radius:50%;background:#693;color:#fff;font-size:14px;font-weight:650;display:inline-flex;align-items:center;justify-content:center;line-height:1}.draw-rules-step-heading{font-size:15px;font-weight:650;color:#000000e0;line-height:1.4}.draw-rules-step-hint{margin-top:2px;font-size:13px;color:#00000073;line-height:1.5}.draw-rules-mode-radio.ant-radio-group{display:flex;flex-wrap:wrap;gap:8px}.draw-rules-mode-radio .ant-radio-button-wrapper{border-radius:8px!important;height:36px;line-height:34px;padding-inline:14px}.draw-rules-mode-extra{display:block;margin-top:10px;font-size:13px}.draw-rules-editor-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px 16px;margin-bottom:4px}@media (max-width: 720px){.draw-rules-editor-grid{grid-template-columns:1fr}}.draw-rules-field-label{display:block;margin-bottom:6px;font-size:13px;color:#000000a6}.draw-rules-type-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:16px 0 10px;flex-wrap:wrap}.draw-rules-type-head strong{font-size:14px}.draw-rules-pool-cell{font-size:13px;color:#00000073;white-space:nowrap}.draw-rules-pool-cell.is-ok{color:#0000008c}.draw-rules-pool-cell.is-lack{color:#cf1322;font-weight:600}.draw-rules-pool-summary{margin-top:10px;font-size:13px;color:#00000073}.draw-rules-scope-summary{margin-bottom:12px;padding:10px 12px;border-radius:8px;background:#f6ffed;border:1px solid #b7eb8f;color:#000000bf;font-size:13px;line-height:1.55}.draw-rules-scope-summary strong{font-weight:650}.draw-rules-scope-toolbar{margin-bottom:12px}:root{--hm-answer: #f97316;--hm-answer-bg: rgba(249, 115, 22, .16);--hm-analysis: #3b82f6;--hm-analysis-bg: rgba(59, 130, 246, .14);--hm-ink: #1e293b;--hm-muted: #64748b;--hm-line: #e2e8f0;--hm-bg: #f1f5f9}.handout-mask-root{--answer: var(--hm-answer);--answer-bg: var(--hm-answer-bg);--analysis: var(--hm-analysis);--analysis-bg: var(--hm-analysis-bg);--ink: var(--hm-ink);--muted: var(--hm-muted);--line: var(--hm-line);--bg: var(--hm-bg)}.handout-mask-root .workspace{height:min(78vh,920px);min-height:480px;display:flex;flex-direction:column;border:1px solid var(--hm-line);border-radius:12px;overflow:hidden;background:var(--hm-bg)}.handout-mask-root .toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 14px;background:#fff;border-bottom:1px solid var(--hm-line);flex-wrap:nowrap;overflow-x:auto;z-index:10}.handout-mask-root .toolbar-main,.handout-mask-root .toolbar-actions{display:flex;align-items:center;gap:10px;flex-shrink:0}.handout-mask-root .toolbar-main{min-width:0;flex:1}.handout-mask-root .toolbar-actions{margin-left:auto}.handout-mask-root .toolbar-leading{display:inline-flex;align-items:center;gap:8px;padding-right:10px;margin-right:2px;border-right:1px solid var(--hm-line);flex-shrink:0}.handout-mask-root .btn{display:inline-flex;align-items:center;justify-content:center;padding:5px 12px;font-size:13px;line-height:1;white-space:nowrap;border:1px solid var(--hm-line);border-radius:6px;background:#fff;color:var(--hm-ink);cursor:pointer}.handout-mask-root .btn:hover{border-color:#cbd5e1;background:#f8fafc}.handout-mask-root .doc-title{font-weight:600;font-size:13px;max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex-shrink:1}.handout-mask-root .tool-group{display:flex;align-items:center;gap:6px;padding-left:10px;border-left:1px solid var(--hm-line);flex-shrink:0}.handout-mask-root .spacer{flex:1}.handout-mask-root .stat{color:var(--hm-muted);font-size:12px;white-space:nowrap;flex-shrink:0}.handout-mask-root .zoom-label{font-size:12px;color:var(--hm-muted);min-width:42px;text-align:center;white-space:nowrap}.pages-scroll{flex:1;overflow:auto;padding:24px 16px 60px}.pages{display:flex;flex-direction:column;align-items:center;gap:18px}.loading{text-align:center;color:var(--hm-muted);padding:60px 0}.pdf-page{position:relative;background:#fff;box-shadow:0 2px 12px #0f172a1f;border-radius:4px;overflow:visible}.pdf-page canvas{display:block}.mask-layer{position:absolute;top:0;right:0;bottom:0;left:0;touch-action:none}.mask-layer.drawing{cursor:crosshair}.mask-box{position:absolute;border:1.5px solid;border-radius:3px;cursor:move}.mask-box.answer{border-color:var(--hm-answer);background:var(--hm-answer-bg)}.mask-box.analysis{border-color:var(--hm-analysis);background:var(--hm-analysis-bg)}.mask-box.selected{box-shadow:0 0 0 2px #2563eb73}.mask-box.draft{pointer-events:none;border-style:dashed}.mask-tag{position:absolute;top:-20px;left:-1px;font-size:11px;line-height:1;padding:3px 7px;border-radius:4px 4px 4px 0;color:#fff;white-space:nowrap;-webkit-user-select:none;user-select:none}.mask-box.answer .mask-tag{background:var(--hm-answer)}.mask-box.analysis .mask-tag{background:var(--hm-analysis)}.handle{position:absolute;width:10px;height:10px;background:#fff;border:1.5px solid #2563eb;border-radius:50%;z-index:2}.handle-nw{top:-5px;left:-5px;cursor:nwse-resize}.handle-n{top:-5px;left:calc(50% - 5px);cursor:ns-resize}.handle-ne{top:-5px;right:-5px;cursor:nesw-resize}.handle-e{top:calc(50% - 5px);right:-5px;cursor:ew-resize}.handle-se{bottom:-5px;right:-5px;cursor:nwse-resize}.handle-s{bottom:-5px;left:calc(50% - 5px);cursor:ns-resize}.handle-sw{bottom:-5px;left:-5px;cursor:nesw-resize}.handle-w{top:calc(50% - 5px);left:-5px;cursor:ew-resize}.mask-layer.reader{pointer-events:none}.reader-mask{position:absolute;border-radius:4px;pointer-events:auto}.reader-mask .cover{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;border-radius:4px;background:repeating-linear-gradient(-45deg,#ffffff0d 0,#ffffff0d 8px,#00000008 8px,#00000008 16px),#e9edf3;border:1px solid #d3dae4}.reader-mask.answer .cover{background:repeating-linear-gradient(-45deg,#ffffff59 0,#ffffff59 8px,#f973160f 8px,#f973160f 16px),#fdf0e5;border-color:#f5cba6}.reader-mask.analysis .cover{background:repeating-linear-gradient(-45deg,#ffffff59 0,#ffffff59 8px,#3b82f60f 8px,#3b82f60f 16px),#e8f0fd;border-color:#b3ccf5}.reveal-btn{display:inline-flex;align-items:center;justify-content:center;gap:5px;padding:6px 14px;font-size:13px;line-height:1;white-space:nowrap;border-radius:999px;border:none;cursor:pointer;color:#fff;box-shadow:0 2px 6px #0f172a40;transition:transform .1s;flex-shrink:0}.reveal-btn.compact{padding:0;width:24px;height:24px;border-radius:50%}.reveal-btn:hover{transform:scale(1.04)}.reader-mask.answer .reveal-btn{background:var(--hm-answer)}.reader-mask.analysis .reveal-btn{background:var(--hm-analysis)}.reveal-btn.corner{position:absolute;top:-12px;right:6px;padding:3px 10px;font-size:11px;opacity:.92;z-index:3}.reader-mask.open{border:1.5px dashed rgba(100,116,139,.55)}.handout-mask-present{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10000}.handout-mask-present .present-root{width:100%;height:100%;min-height:100%;border-radius:0;overflow:hidden}.handout-mask-present .present-root:fullscreen,.handout-mask-present .present-root:-webkit-full-screen{width:100%;height:100%;border-radius:0}.present-root{height:100vh;display:flex;flex-direction:column;background:#0f172a;color:#e2e8f0}.present-bar{display:flex;align-items:center;gap:8px;padding:8px 14px;background:#0f172ae6;border-bottom:1px solid rgba(148,163,184,.18);z-index:20}.present-spacer{flex:1}.present-indicator{font-size:13px;color:#94a3b8;font-variant-numeric:tabular-nums;white-space:nowrap}.pbtn{display:inline-flex;align-items:center;gap:5px;padding:6px 13px;font-size:13px;border-radius:8px;border:1px solid rgba(148,163,184,.3);background:#1e293bcc;color:#e2e8f0;cursor:pointer;text-decoration:none;white-space:nowrap;transition:background .15s}.pbtn:hover{background:#334155e6}.pbtn:disabled{opacity:.35;cursor:default}.present-stage{flex:1;display:flex;align-items:center;justify-content:center;overflow:hidden;cursor:pointer;-webkit-user-select:none;user-select:none}.present-msg{color:#94a3b8;font-size:14px}.present-page{position:relative;box-shadow:0 8px 40px #0000008c;border-radius:4px;overflow:visible;transition:opacity .12s ease}.present-page--loading{opacity:.92}.present-page canvas{display:block}.anim-cover{position:absolute;opacity:0;pointer-events:none;transition:opacity .45s ease;z-index:1}.anim-cover.on{opacity:1}.present-page .mask-layer.reader{z-index:2}.present-anno-tools{display:inline-flex;align-items:center;margin-left:8px}.toast{position:fixed;bottom:28px;left:50%;transform:translate(-50%);background:#1e293b;color:#fff;padding:10px 20px;border-radius:999px;font-size:13px;box-shadow:0 4px 16px #0f172a4d;z-index:100}.handout-lesson-content--fullscreen-target:fullscreen,.handout-lesson-content--fullscreen-target:-webkit-full-screen{display:flex;flex-direction:column;width:100%;height:100%;max-height:100vh;max-height:100dvh;padding:0;margin:0;background:var(--hm-bg);overflow:hidden;zoom:1!important}.handout-lesson-content--fullscreen-target:fullscreen .handout-annotation-layer,.handout-lesson-content--fullscreen-target:-webkit-full-screen .handout-annotation-layer{flex:1;min-height:0;height:auto;display:flex;flex-direction:column}.handout-lesson-content--fullscreen-target:fullscreen .handout-mask-lesson,.handout-lesson-content--fullscreen-target:-webkit-full-screen .handout-mask-lesson{flex:1;min-height:0;height:auto;display:flex;flex-direction:column}.handout-lesson-content--fullscreen-target:fullscreen .handout-mask-lesson__present-btn,.handout-lesson-content--fullscreen-target:-webkit-full-screen .handout-mask-lesson__present-btn,.handout-lesson-content--fullscreen-target:fullscreen .handout-mask-lesson__hint,.handout-lesson-content--fullscreen-target:-webkit-full-screen .handout-mask-lesson__hint,.handout-lesson-content--fullscreen-target:fullscreen .toolbar-leading,.handout-lesson-content--fullscreen-target:-webkit-full-screen .toolbar-leading{display:none}.handout-lesson-content--fullscreen-target:fullscreen .handout-mask-root,.handout-lesson-content--fullscreen-target:-webkit-full-screen .handout-mask-root{flex:1;min-height:0;height:auto;display:flex;flex-direction:column}.handout-lesson-content--fullscreen-target:fullscreen .handout-mask-root .workspace,.handout-lesson-content--fullscreen-target:-webkit-full-screen .handout-mask-root .workspace{flex:1;height:auto;min-height:0;max-height:none;border:none;border-radius:0;overflow:hidden}.handout-lesson-content--fullscreen-target:fullscreen .handout-mask-root .toolbar,.handout-lesson-content--fullscreen-target:-webkit-full-screen .handout-mask-root .toolbar{flex-shrink:0}.handout-lesson-content--fullscreen-target:fullscreen .handout-mask-root .pages-scroll,.handout-lesson-content--fullscreen-target:-webkit-full-screen .handout-mask-root .pages-scroll{flex:1;min-height:0;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;touch-action:pan-y}.btn-exit-fs{font-weight:600;color:#0f172a;border-color:#94a3b8}.handout-mask-lesson__present-btn{display:inline-flex;align-items:center;padding:7px 14px;border:1px solid #cbd5e1;border-radius:8px;background:#1e293b;color:#fff;font-size:13px;cursor:pointer}.handout-mask-lesson__present-btn:hover{background:#0f172a}.handout-mask-lesson__hint{font-size:12px;color:#64748b;white-space:nowrap}@media (max-width: 1280px){.handout-mask-lesson__hint{display:none}}
