:root{--vt-c-white:#fff;--vt-c-white-soft:#f8f8f8;--vt-c-white-mute:#f2f2f2;--vt-c-black:#181818;--vt-c-black-soft:#222;--vt-c-black-mute:#282828;--vt-c-indigo:#2c3e50;--vt-c-divider-light-1:rgba(60,60,60,.29);--vt-c-divider-light-2:rgba(60,60,60,.12);--vt-c-divider-dark-1:rgba(84,84,84,.65);--vt-c-divider-dark-2:rgba(84,84,84,.48);--vt-c-text-light-1:var(--vt-c-indigo);--vt-c-text-light-2:rgba(60,60,60,.66);--vt-c-text-dark-1:var(--vt-c-white);--vt-c-text-dark-2:hsla(0,0%,92%,.64);--color-background:var(--vt-c-white);--color-background-soft:var(--vt-c-white-soft);--color-background-mute:var(--vt-c-white-mute);--color-border:var(--vt-c-divider-light-2);--color-border-hover:var(--vt-c-divider-light-1);--color-heading:var(--vt-c-text-light-1);--color-text:var(--vt-c-text-light-1);--section-gap:160px}*,:after,:before{box-sizing:border-box;margin:0;font-weight:400}body{min-height:100vh;color:var(--color-text);background:var(--color-background);transition:color .5s,background-color .5s;line-height:1.6;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;font-size:15px;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#app{margin:0 auto;padding:2rem;font-weight:400}.green,a{text-decoration:none;color:#00bd7e;transition:.4s;padding:3px}@media (hover:hover){a:hover{background-color:rgba(0,189,126,.2)}}@media (min-width:1024px){body{display:flex;place-items:center}#app{display:grid;grid-template-columns:1fr 1fr;padding:0 2rem}}.download-task-center[data-v-765cc8c2]{position:fixed;bottom:24px;right:24px;z-index:2000}.trigger-btn[data-v-765cc8c2]{font-size:20px}.task-badge[data-v-765cc8c2] .el-badge__content{font-size:12px}.task-badge[data-v-765cc8c2] .el-button{width:48px!important;height:48px!important;min-width:48px!important;min-height:48px!important;padding:0!important;border-radius:50%!important}.task-list[data-v-765cc8c2]{display:flex;flex-direction:column;gap:12px}.task-item[data-v-765cc8c2]{padding:12px;border-radius:8px;background:var(--el-fill-color-light);border:1px solid var(--el-border-color-lighter)}.task-item.running[data-v-765cc8c2]{border-color:var(--el-color-warning-light-5)}.task-item.success[data-v-765cc8c2]{border-color:var(--el-color-success-light-5)}.task-item.error[data-v-765cc8c2]{border-color:var(--el-color-danger-light-5)}.task-header[data-v-765cc8c2]{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.task-label[data-v-765cc8c2]{font-size:14px;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:220px}.task-progress[data-v-765cc8c2]{margin-top:4px}.task-message[data-v-765cc8c2]{font-size:12px;color:var(--el-text-color-secondary);margin-top:6px}.task-actions[data-v-765cc8c2]{margin-top:8px;display:flex;align-items:center;gap:8px;flex-wrap:wrap}.task-download-status[data-v-765cc8c2]{font-size:13px;color:var(--el-text-color-secondary);display:inline-flex;align-items:center;gap:4px}.task-download-status.success[data-v-765cc8c2]{color:var(--el-color-success)}.task-download-status.error[data-v-765cc8c2]{color:var(--el-color-danger)}.task-error[data-v-765cc8c2]{font-size:12px;color:var(--el-color-danger);margin-top:4px;display:flex;justify-content:space-between;align-items:center}.light-theme{color-scheme:light}.MJXc-display,.MathJax,.katex,.katex-display,.katex-html,.mjx-math,mjx-container{font-size:1em!important;line-height:inherit!important}.katex,mjx-container[display=false]{vertical-align:baseline!important}.katex-display,mjx-container[display=true]{font-size:1em!important;margin:.5em 0!important}.base-button[data-v-64bd3f85]{border-radius:var(--radius-md);font-weight:500;letter-spacing:.1px;transition:transform var(--motion-fast) var(--ease-standard),box-shadow var(--motion-fast) var(--ease-standard),background-color var(--motion-fast) var(--ease-standard),border-color var(--motion-fast) var(--ease-standard),color var(--motion-fast) var(--ease-standard)}.base-button[data-v-64bd3f85]:not(.is-disabled):hover{transform:translateY(-1px);box-shadow:var(--shadow-sm)}.base-button[data-v-64bd3f85]:not(.is-disabled):active{transform:translateY(0);box-shadow:none}.base-button[data-v-64bd3f85]:focus-visible{outline:none;box-shadow:var(--focus-ring)}.base-button--default[data-v-64bd3f85]{min-height:36px}.base-button--small[data-v-64bd3f85]{min-height:32px}.base-button--large[data-v-64bd3f85]{min-height:40px}.base-button--primary[data-v-64bd3f85]{--el-button-bg-color:var(--color-primary);--el-button-border-color:var(--color-primary);--el-button-hover-bg-color:var(--color-primary-hover);--el-button-hover-border-color:var(--color-primary-hover);--el-button-active-bg-color:var(--color-primary-active);--el-button-active-border-color:var(--color-primary-active)}.base-button--outline[data-v-64bd3f85]{--el-button-text-color:var(--color-primary);--el-button-border-color:var(--color-primary);--el-button-hover-text-color:var(--color-primary);--el-button-hover-bg-color:var(--color-primary-soft);--el-button-hover-border-color:var(--color-primary);--el-button-active-bg-color:var(--color-primary-soft);--el-button-active-text-color:var(--color-primary-active)}.base-button--text[data-v-64bd3f85]{--el-button-text-color:var(--color-primary);--el-button-hover-text-color:var(--color-primary-hover);--el-button-active-text-color:var(--color-primary-active)}.base-button--danger[data-v-64bd3f85]{--el-button-bg-color:var(--color-danger);--el-button-border-color:var(--color-danger)}.is-block[data-v-64bd3f85]{width:100%}.base-input[data-v-8dbc774e] .el-input__wrapper{border-radius:var(--radius-md);box-shadow:0 0 0 1px var(--color-border) inset;transition:box-shadow var(--motion-fast) var(--ease-standard),border-color var(--motion-fast) var(--ease-standard)}.base-input[data-v-8dbc774e] .el-input__wrapper:hover{box-shadow:inset 0 0 0 1px #b8b8be}.base-input[data-v-8dbc774e] .el-input__wrapper.is-focus{box-shadow:0 0 0 1px var(--color-primary) inset,var(--focus-ring)}.is-block[data-v-8dbc774e]{width:100%}.user-manage[data-v-427cee03]{height:100%;background:transparent}.toolbar[data-v-427cee03]{margin-bottom:var(--space-5);padding:var(--space-4);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);display:flex;justify-content:space-between;align-items:flex-start;gap:var(--space-4)}.filter[data-v-427cee03]{flex:1}.filter[data-v-427cee03] .el-form{display:flex;gap:var(--space-3);flex-wrap:wrap}.filter[data-v-427cee03] .el-form-item{margin-bottom:0}.actions[data-v-427cee03]{display:inline-flex;align-items:center;gap:var(--space-2)}.el-table[data-v-427cee03]{border:1px solid var(--color-border);border-radius:var(--radius-lg);overflow:hidden;--el-table-header-bg-color:var(--color-surface-muted);--el-table-row-hover-bg-color:var(--color-primary-soft)}[data-v-427cee03] .el-table__header th{color:var(--color-text-primary);font-size:var(--font-size-body-sm);font-weight:600}[data-v-427cee03] .el-table__body td,[data-v-427cee03] .el-table__header th{border-bottom:1px solid var(--color-border)}.user-info[data-v-427cee03]{display:flex;align-items:center}.username[data-v-427cee03]{font-weight:600;color:var(--color-text-primary)}.pagination[data-v-427cee03]{display:flex;justify-content:flex-end;padding:var(--space-4);background:var(--color-surface);border:1px solid var(--color-border);border-top:none;border-radius:0 0 var(--radius-lg) var(--radius-lg)}[data-v-427cee03] .el-dialog{border-radius:var(--radius-lg);box-shadow:var(--shadow-md)}[data-v-427cee03] .el-dialog__header{margin:0;padding:var(--space-4);background:var(--color-surface-muted);border-bottom:1px solid var(--color-border)}[data-v-427cee03] .el-dialog__title{color:var(--color-text-primary);font-size:var(--font-size-h3);font-weight:600}[data-v-427cee03] .el-dialog__body,[data-v-427cee03] .el-dialog__footer{padding:var(--space-4)}[data-v-427cee03] .el-dialog__footer{border-top:1px solid var(--color-border)}@media(max-width:768px){.toolbar[data-v-427cee03]{flex-direction:column;padding:var(--space-3)}.actions[data-v-427cee03]{width:100%}.actions[data-v-427cee03] .base-button{flex:1}}.base-card[data-v-2fcc9b6e]{border-radius:var(--radius-lg);background:var(--color-surface);border:1px solid var(--color-border);box-shadow:var(--shadow-sm);padding:var(--space-4)}.base-card__header[data-v-2fcc9b6e]{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-3);margin-bottom:var(--space-3)}.base-card__title[data-v-2fcc9b6e]{margin:0;font-size:var(--font-size-h3);line-height:var(--line-height-h3);font-weight:600;color:var(--color-text-primary)}.base-card__desc[data-v-2fcc9b6e]{margin-top:var(--space-1);font-size:var(--font-size-body-sm);line-height:var(--line-height-body-sm);color:var(--color-text-secondary)}.base-card__actions[data-v-2fcc9b6e]{display:inline-flex;align-items:center;gap:var(--space-2)}.base-card__body[data-v-2fcc9b6e]{color:var(--color-text-primary);font-size:var(--font-size-body);line-height:var(--line-height-body)}.is-hoverable[data-v-2fcc9b6e]:hover{transform:translateY(-1px);box-shadow:var(--shadow-md)}.permission-groups[data-v-29fc0cb2]{height:100%;padding:var(--space-5);background:var(--color-bg)}.permission-groups__header[data-v-29fc0cb2]{margin-bottom:var(--space-4)}.permission-groups__header .header-left[data-v-29fc0cb2]{display:flex;gap:var(--space-3);align-items:center}.permission-groups__list[data-v-29fc0cb2]{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:var(--space-4)}.permission-group-card[data-v-29fc0cb2] .base-card__body{padding-top:0}.permission-group-card__header[data-v-29fc0cb2]{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-2)}.permission-group-card__name[data-v-29fc0cb2]{font-size:var(--font-size-body-lg);font-weight:600;cursor:pointer;color:var(--color-text-primary)}.permission-group-card__name[data-v-29fc0cb2]:hover{color:var(--color-primary)}.permission-group-card__actions[data-v-29fc0cb2]{display:flex;gap:var(--space-2)}.permission-group-card__description[data-v-29fc0cb2]{color:var(--color-text-secondary);font-size:var(--font-size-body-sm)}.permissions-container[data-v-29fc0cb2]{max-height:60vh;overflow-y:auto;padding:0 var(--space-4);margin:0 calc(var(--space-4)*-1)}.permissions-container[data-v-29fc0cb2]::-webkit-scrollbar{width:6px}.permissions-container[data-v-29fc0cb2]::-webkit-scrollbar-thumb{background-color:var(--el-border-color-lighter);border-radius:3px}.permissions-container[data-v-29fc0cb2]::-webkit-scrollbar-track{background-color:transparent}.permission-group[data-v-29fc0cb2]{background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-4);width:100%;box-shadow:var(--shadow-sm)}.permission-group .permission-section[data-v-29fc0cb2]{margin-bottom:var(--space-5)}.permission-group .permission-section[data-v-29fc0cb2]:last-child{margin-bottom:0}.permission-group .permission-section .section-header[data-v-29fc0cb2]{margin-bottom:var(--space-3)}.permission-group .permission-section .section-header .section-title[data-v-29fc0cb2]{color:var(--color-text-primary);font-weight:500;font-size:var(--font-size-body-sm)}.permission-group .permission-section .section-header .el-divider[data-v-29fc0cb2]{margin:var(--space-2) 0}.permission-group .permission-section .el-checkbox-group[data-v-29fc0cb2]{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px}.permission-group .permission-section .el-checkbox-group .permission-checkbox[data-v-29fc0cb2]{margin-right:0;padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);transition:all var(--motion-fast) var(--ease-standard)}.permission-group .permission-section .el-checkbox-group .permission-checkbox[data-v-29fc0cb2]:hover{background-color:var(--color-surface-muted)}.permission-group .permission-section .el-checkbox-group .permission-checkbox.is-checked[data-v-29fc0cb2]{background-color:var(--color-primary-soft)}.permission-group .permission-section .el-checkbox-group .permission-checkbox[data-v-29fc0cb2] .el-checkbox__label{font-size:var(--font-size-body-sm)}[data-v-29fc0cb2]::deep(.el-dialog){border-radius:var(--radius-lg);box-shadow:var(--shadow-md)}[data-v-29fc0cb2]::deep(.el-dialog__header){margin:0;padding:var(--space-4);background:var(--color-surface-muted);border-bottom:1px solid var(--color-border)}[data-v-29fc0cb2]::deep(.el-dialog__title){color:var(--color-text-primary);font-size:var(--font-size-h3);font-weight:600}[data-v-29fc0cb2]::deep(.el-dialog__body),[data-v-29fc0cb2]::deep(.el-dialog__footer){padding:var(--space-4)}[data-v-29fc0cb2]::deep(.el-dialog__footer){border-top:1px solid var(--color-border)}.voucher-wrapper[data-v-44d637ac]{display:flex;flex-direction:column;gap:20px}.voucher-actions[data-v-44d637ac]{display:flex;justify-content:center;gap:16px}.voucher-container[data-v-44d637ac]{width:210mm;padding:20px;margin:0 auto;background:#fff;box-shadow:0 0 10px rgba(0,0,0,.1)}.voucher-header[data-v-44d637ac]{text-align:center;margin-bottom:20px}.title[data-v-44d637ac]{font-size:24px;font-weight:700}.voucher-info[data-v-44d637ac]{margin-bottom:20px}.info-row[data-v-44d637ac]{display:flex;justify-content:space-between;flex-wrap:wrap;gap:20px}.order-number[data-v-44d637ac]{font-weight:700}.voucher-table[data-v-44d637ac]{width:100%;border-collapse:collapse;margin-bottom:20px}.voucher-table td[data-v-44d637ac],.voucher-table th[data-v-44d637ac]{border:1px solid #ddd;padding:8px;text-align:center}.voucher-table th[data-v-44d637ac]{background-color:#f5f5f5}.voucher-remarks[data-v-44d637ac],.voucher-summary[data-v-44d637ac]{margin:20px 0}.summary-row[data-v-44d637ac]{display:flex;justify-content:space-between;font-weight:700}.voucher-footer[data-v-44d637ac]{margin-top:40px}.footer-row[data-v-44d637ac]{display:flex;justify-content:space-between;margin-top:20px}@media print{.el-dialog__wrapper[data-v-44d637ac],.voucher-actions[data-v-44d637ac]{display:none!important}.voucher-container[data-v-44d637ac]{box-shadow:none}@page{margin:0;size:58mm auto}body[data-v-44d637ac]{margin:0}.thermal-voucher[data-v-44d637ac]{width:100%}}.thermal-voucher[data-v-44d637ac]{width:58mm;padding:10px;font-size:12px;line-height:1.5;font-family:monospace;margin:0 auto;background:#fff}.thermal-voucher .header[data-v-44d637ac]{text-align:center;margin-bottom:10px}.thermal-voucher .header h1[data-v-44d637ac]{font-size:14px;margin:0 0 5px 0}.thermal-voucher .divider[data-v-44d637ac]{margin:8px 0;color:#999}.thermal-voucher .content[data-v-44d637ac]{margin:10px 0}.thermal-voucher .row[data-v-44d637ac]{display:flex;justify-content:space-between;margin:3px 0}.thermal-voucher .footer>div[data-v-44d637ac],.thermal-voucher .payment-info>div[data-v-44d637ac],.thermal-voucher .student-info>div[data-v-44d637ac],.thermal-voucher .total-info>div[data-v-44d637ac]{margin:3px 0}.thermal-voucher .total-info[data-v-44d637ac]{font-weight:700}.thermal-voucher .footer[data-v-44d637ac]{text-align:center;margin-top:10px;font-size:11px}[data-v-44d637ac] .thermal-dialog{.el-dialog__body{display:flex;justify-content:center;background-color:#f5f5f5;padding:20px}}.class-info[data-v-44d637ac]{margin:10px 0;padding:5px 0}.class-info .payment-info[data-v-44d637ac]{margin-left:10px;margin-top:5px;padding-top:5px;border-top:1px dashed #eee}.voucher-table td[data-v-44d637ac]{vertical-align:top}.thermal-voucher .class-info+.class-info[data-v-44d637ac]{border-top:1px dashed #eee;margin-top:10px;padding-top:10px}.order-list[data-v-297109b4]{padding:var(--space-5);background:var(--color-bg);color:var(--color-text-primary);font-size:var(--font-size-body);line-height:var(--line-height-body);display:flex;flex-direction:column;gap:var(--space-4)}.order-list .table-card[data-v-297109b4] .base-card__body,.order-list .toolbar-card[data-v-297109b4] .base-card__body{padding:0}.order-list .table-card[data-v-297109b4] .base-card__body,.order-list .toolbar-card[data-v-297109b4] .base-card__body{padding:var(--space-4)}.order-list .filters[data-v-297109b4]{display:flex;align-items:center;gap:var(--space-3);width:100%}.order-list .filters .date-picker[data-v-297109b4]{width:260px}.order-list .filters .filter-select[data-v-297109b4]{width:140px}.order-list .filters .flex-spacer[data-v-297109b4]{flex:1}.order-list .filters .search-input[data-v-297109b4]{width:280px}.order-list .filters[data-v-297109b4] .el-date-editor .el-input__wrapper,.order-list .filters[data-v-297109b4] .el-input__wrapper,.order-list .filters[data-v-297109b4] .el-select .el-input__wrapper{border-radius:var(--radius-md);box-shadow:0 0 0 1px var(--color-border) inset;transition:box-shadow var(--motion-fast) var(--ease-standard),border-color var(--motion-fast) var(--ease-standard)}.order-list .filters[data-v-297109b4] .el-date-editor .el-input__wrapper:hover,.order-list .filters[data-v-297109b4] .el-input__wrapper:hover,.order-list .filters[data-v-297109b4] .el-select .el-input__wrapper:hover{box-shadow:inset 0 0 0 1px #b8b8be}.order-list .filters[data-v-297109b4] .el-date-editor .el-input__wrapper.is-focus,.order-list .filters[data-v-297109b4] .el-input__wrapper.is-focus,.order-list .filters[data-v-297109b4] .el-select .el-input__wrapper.is-focus{box-shadow:0 0 0 1px var(--color-primary) inset,var(--focus-ring)}.order-list .text-gray[data-v-297109b4]{color:var(--color-text-secondary);font-size:var(--font-size-body-sm);line-height:var(--line-height-body-sm)}.order-list .pagination[data-v-297109b4]{margin-top:var(--space-4);display:flex;justify-content:flex-end}.order-list .pagination[data-v-297109b4] .el-pagination .el-pager .number{border-radius:var(--radius-md);transition:background-color var(--motion-fast) var(--ease-standard),color var(--motion-fast) var(--ease-standard),transform var(--motion-fast) var(--ease-standard);font-weight:500}.order-list .pagination[data-v-297109b4] .el-pagination .el-pager .number:hover{color:var(--color-primary);background:var(--color-primary-soft);transform:translateY(-1px)}.order-list .pagination[data-v-297109b4] .el-pagination .el-pager .number.is-active{background:var(--color-primary);color:#fff}.order-list[data-v-297109b4] .el-dropdown .base-button{min-width:52px;justify-content:center}.order-list[data-v-297109b4] .el-tag{padding:0 var(--space-3);height:24px;line-height:24px;border-radius:999px;font-weight:500}.order-list[data-v-297109b4] .el-table{--el-table-header-bg-color:var(--color-surface-muted);--el-table-row-hover-bg-color:var(--color-primary-soft)}.order-list[data-v-297109b4] .el-table th.el-table__cell{font-size:var(--font-size-body-sm);color:var(--color-text-secondary);font-weight:600}.order-list[data-v-297109b4] .el-table td.el-table__cell{font-size:14px;color:var(--color-text-primary)}.order-list[data-v-297109b4] .el-table .el-table__row{transition:background-color var(--motion-fast) var(--ease-standard)}@media print{.dialog-footer[data-v-297109b4],.el-dialog[data-v-297109b4]{display:none}}[data-v-297109b4] .thermal-dialog .el-dialog__body{display:flex;justify-content:center;background-color:#f5f5f5;padding:20px}:root{--color-bg:#f5f5f7;--color-surface:#fff;--color-surface-muted:#fbfbfd;--color-text-primary:#1d1d1f;--color-text-secondary:#6e6e73;--color-border:#d2d2d7;--color-primary:#0071e3;--color-primary-hover:#0077ed;--color-primary-active:#0068d1;--color-primary-soft:rgba(0,113,227,.12);--color-success:#34c759;--color-warning:#ff9f0a;--color-danger:#ff3b30;--color-info:#5ac8fa;--font-family-system:-apple-system,BlinkMacSystemFont,"SF Pro Text","PingFang SC","Helvetica Neue",Arial,sans-serif;--font-size-display:40px;--font-size-h1:32px;--font-size-h2:24px;--font-size-h3:20px;--font-size-body-lg:17px;--font-size-body:15px;--font-size-body-sm:13px;--font-size-caption:12px;--line-height-display:48px;--line-height-h1:40px;--line-height-h2:32px;--line-height-h3:28px;--line-height-body-lg:26px;--line-height-body:24px;--line-height-body-sm:20px;--line-height-caption:18px;--radius-sm:8px;--radius-md:10px;--radius-lg:12px;--radius-xl:16px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--space-7:40px;--space-8:48px;--space-9:64px;--motion-fast:120ms;--motion-normal:180ms;--motion-enter:240ms;--ease-standard:cubic-bezier(0.2,0.8,0.2,1);--shadow-sm:0 2px 8px rgba(0,0,0,.06);--shadow-md:0 6px 18px rgba(0,0,0,.1);--focus-ring:0 0 0 3px rgba(0,113,227,.24);--primary-color:var(--color-primary);--primary-light:var(--color-primary-hover);--primary-lighter:#4da2f0;--primary-dark:var(--color-primary-active);--primary-darker:#005bb8;--gradient-primary:linear-gradient(135deg,#0071e3,#2997ff);--gradient-secondary:linear-gradient(135deg,#2997ff,#06c);--gradient-light:linear-gradient(135deg,#eef6ff,#dceeff);--success-color:var(--color-success);--warning-color:var(--color-warning);--danger-color:var(--color-danger);--info-color:var(--color-info);--text-primary:var(--color-text-primary);--text-regular:var(--color-text-primary);--text-secondary:var(--color-text-secondary);--border-color:var(--color-border);--border-light:var(--color-border);--bg-color:var(--color-surface);--bg-color-page:var(--color-bg);--shadow-primary:rgba(0,113,227,.3);--shadow-primary-light:rgba(0,113,227,.15)}[data-theme=dark]{--color-bg:#000;--color-surface:#1c1c1e;--color-surface-muted:#2c2c2e;--color-text-primary:#f5f5f7;--color-text-secondary:#aeaeb2;--color-border:#3a3a3c}*{margin:0;padding:0;box-sizing:border-box}body,html{overflow-x:hidden;background:var(--color-bg);color:var(--color-text-primary);font-size:var(--font-size-body);line-height:var(--line-height-body)}#app,body,html{height:100%;width:100%;margin:0;padding:0}#app{max-width:none;font-family:var(--font-family-system)}#app,body{overflow:hidden}body{margin:0;padding:0}.container{width:100%;max-width:1200px;margin:0 auto;padding:0 20px}@media(max-width:768px){.container{padding:0 16px}}.el-main{background-color:var(--color-surface)!important}.apple-focus-ring:focus-visible{outline:none;box-shadow:var(--focus-ring)}.apple-surface{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}.apple-ease{transition:all var(--motion-normal) var(--ease-standard)}.arrange-class-view,.class-report-view,.class-schedule-view,.class-student-view,.class-view,.schedule-template-view,.student-list-view{padding:var(--space-5);background:var(--color-bg);color:var(--color-text-primary);font-size:var(--font-size-body);line-height:var(--line-height-body)}.arrange-class-view .el-card,.class-report-view .el-card,.class-schedule-view .el-card,.class-student-view .el-card,.class-view .el-card,.schedule-template-view .el-card,.student-list-view .el-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);transition:transform var(--motion-fast) var(--ease-standard),box-shadow var(--motion-fast) var(--ease-standard)}.arrange-class-view .el-card:hover,.class-report-view .el-card:hover,.class-schedule-view .el-card:hover,.class-student-view .el-card:hover,.class-view .el-card:hover,.schedule-template-view .el-card:hover,.student-list-view .el-card:hover{transform:translateY(-1px);box-shadow:var(--shadow-md)}.arrange-class-view .el-card__header,.class-report-view .el-card__header,.class-schedule-view .el-card__header,.class-student-view .el-card__header,.class-view .el-card__header,.schedule-template-view .el-card__header,.student-list-view .el-card__header{border-bottom:1px solid var(--color-border);padding:var(--space-4)}.arrange-class-view .el-card__body,.class-report-view .el-card__body,.class-schedule-view .el-card__body,.class-student-view .el-card__body,.class-view .el-card__body,.schedule-template-view .el-card__body,.student-list-view .el-card__body{padding:var(--space-4)}.arrange-class-view .card-header,.arrange-class-view .header-content,.arrange-class-view .section-header,.class-report-view .card-header,.class-report-view .header-content,.class-report-view .section-header,.class-schedule-view .card-header,.class-schedule-view .header-content,.class-schedule-view .section-header,.class-student-view .card-header,.class-student-view .header-content,.class-student-view .section-header,.class-view .card-header,.class-view .header-content,.class-view .section-header,.schedule-template-view .card-header,.schedule-template-view .header-content,.schedule-template-view .section-header,.student-list-view .card-header,.student-list-view .header-content,.student-list-view .section-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3)}.arrange-class-view .title,.arrange-class-view h2,.arrange-class-view h3,.class-report-view .title,.class-report-view h2,.class-report-view h3,.class-schedule-view .title,.class-schedule-view h2,.class-schedule-view h3,.class-student-view .title,.class-student-view h2,.class-student-view h3,.class-view .title,.class-view h2,.class-view h3,.schedule-template-view .title,.schedule-template-view h2,.schedule-template-view h3,.student-list-view .title,.student-list-view h2,.student-list-view h3{color:var(--color-text-primary)}.arrange-class-view .el-button,.class-report-view .el-button,.class-schedule-view .el-button,.class-student-view .el-button,.class-view .el-button,.schedule-template-view .el-button,.student-list-view .el-button{border-radius:var(--radius-md);font-weight:500;transition:transform var(--motion-fast) var(--ease-standard),box-shadow var(--motion-fast) var(--ease-standard),background-color var(--motion-fast) var(--ease-standard),border-color var(--motion-fast) var(--ease-standard),color var(--motion-fast) var(--ease-standard)}.arrange-class-view .el-button:focus-visible,.class-report-view .el-button:focus-visible,.class-schedule-view .el-button:focus-visible,.class-student-view .el-button:focus-visible,.class-view .el-button:focus-visible,.schedule-template-view .el-button:focus-visible,.student-list-view .el-button:focus-visible{outline:none;box-shadow:var(--focus-ring)}.arrange-class-view .el-button:not(.is-disabled):hover,.class-report-view .el-button:not(.is-disabled):hover,.class-schedule-view .el-button:not(.is-disabled):hover,.class-student-view .el-button:not(.is-disabled):hover,.class-view .el-button:not(.is-disabled):hover,.schedule-template-view .el-button:not(.is-disabled):hover,.student-list-view .el-button:not(.is-disabled):hover{transform:translateY(-1px);box-shadow:var(--shadow-sm)}.arrange-class-view .el-button:not(.is-disabled):active,.class-report-view .el-button:not(.is-disabled):active,.class-schedule-view .el-button:not(.is-disabled):active,.class-student-view .el-button:not(.is-disabled):active,.class-view .el-button:not(.is-disabled):active,.schedule-template-view .el-button:not(.is-disabled):active,.student-list-view .el-button:not(.is-disabled):active{transform:translateY(0);box-shadow:none}.arrange-class-view .el-input__wrapper,.arrange-class-view .el-select__wrapper,.arrange-class-view .el-textarea__inner,.class-report-view .el-input__wrapper,.class-report-view .el-select__wrapper,.class-report-view .el-textarea__inner,.class-schedule-view .el-input__wrapper,.class-schedule-view .el-select__wrapper,.class-schedule-view .el-textarea__inner,.class-student-view .el-input__wrapper,.class-student-view .el-select__wrapper,.class-student-view .el-textarea__inner,.class-view .el-input__wrapper,.class-view .el-select__wrapper,.class-view .el-textarea__inner,.schedule-template-view .el-input__wrapper,.schedule-template-view .el-select__wrapper,.schedule-template-view .el-textarea__inner,.student-list-view .el-input__wrapper,.student-list-view .el-select__wrapper,.student-list-view .el-textarea__inner{border-radius:var(--radius-md);box-shadow:0 0 0 1px var(--color-border) inset;transition:box-shadow var(--motion-fast) var(--ease-standard),border-color var(--motion-fast) var(--ease-standard)}.arrange-class-view .el-input__wrapper:hover,.arrange-class-view .el-select__wrapper:hover,.arrange-class-view .el-textarea__inner:hover,.class-report-view .el-input__wrapper:hover,.class-report-view .el-select__wrapper:hover,.class-report-view .el-textarea__inner:hover,.class-schedule-view .el-input__wrapper:hover,.class-schedule-view .el-select__wrapper:hover,.class-schedule-view .el-textarea__inner:hover,.class-student-view .el-input__wrapper:hover,.class-student-view .el-select__wrapper:hover,.class-student-view .el-textarea__inner:hover,.class-view .el-input__wrapper:hover,.class-view .el-select__wrapper:hover,.class-view .el-textarea__inner:hover,.schedule-template-view .el-input__wrapper:hover,.schedule-template-view .el-select__wrapper:hover,.schedule-template-view .el-textarea__inner:hover,.student-list-view .el-input__wrapper:hover,.student-list-view .el-select__wrapper:hover,.student-list-view .el-textarea__inner:hover{box-shadow:inset 0 0 0 1px #b8b8be}.arrange-class-view .el-input__wrapper.is-focus,.arrange-class-view .el-select__wrapper.is-focused,.arrange-class-view .el-textarea__inner:focus,.class-report-view .el-input__wrapper.is-focus,.class-report-view .el-select__wrapper.is-focused,.class-report-view .el-textarea__inner:focus,.class-schedule-view .el-input__wrapper.is-focus,.class-schedule-view .el-select__wrapper.is-focused,.class-schedule-view .el-textarea__inner:focus,.class-student-view .el-input__wrapper.is-focus,.class-student-view .el-select__wrapper.is-focused,.class-student-view .el-textarea__inner:focus,.class-view .el-input__wrapper.is-focus,.class-view .el-select__wrapper.is-focused,.class-view .el-textarea__inner:focus,.schedule-template-view .el-input__wrapper.is-focus,.schedule-template-view .el-select__wrapper.is-focused,.schedule-template-view .el-textarea__inner:focus,.student-list-view .el-input__wrapper.is-focus,.student-list-view .el-select__wrapper.is-focused,.student-list-view .el-textarea__inner:focus{box-shadow:0 0 0 1px var(--color-primary) inset,var(--focus-ring)}.arrange-class-view .el-descriptions__label,.class-report-view .el-descriptions__label,.class-schedule-view .el-descriptions__label,.class-student-view .el-descriptions__label,.class-view .el-descriptions__label,.schedule-template-view .el-descriptions__label,.student-list-view .el-descriptions__label{color:var(--color-text-secondary);font-size:var(--font-size-body-sm)}.arrange-class-view .el-descriptions__content,.class-report-view .el-descriptions__content,.class-schedule-view .el-descriptions__content,.class-student-view .el-descriptions__content,.class-view .el-descriptions__content,.schedule-template-view .el-descriptions__content,.student-list-view .el-descriptions__content{color:var(--color-text-primary)}.arrange-class-view .el-table,.class-report-view .el-table,.class-schedule-view .el-table,.class-student-view .el-table,.class-view .el-table,.schedule-template-view .el-table,.student-list-view .el-table{--el-table-header-bg-color:var(--color-surface-muted);--el-table-row-hover-bg-color:var(--color-primary-soft)}.class-student-view .header-buttons,.class-view .filter-section,.class-view .right,.class-view .toolbar,.schedule-template-view .header-content{gap:var(--space-3)}