:root{--primary-color:#1677ff;--primary-hover:#4096ff;--primary-active:#0958d9;--primary-light:#e6f4ff;--primary-border:#91caff;--success-color:#52c41a;--success-bg:#f6ffed;--warning-color:#faad14;--warning-bg:#fffbe6;--danger-color:#ff4d4f;--danger-bg:#fff2f0;--info-color:#1677ff;--bg-body:#f0f2f5;--bg-primary:#fff;--bg-secondary:#fafafa;--bg-tertiary:#f5f5f5;--text-primary:#000000d9;--text-secondary:#00000073;--text-tertiary:#00000040;--text-inverse:#fff;--text-disabled:#00000026;--border-color:#d9d9d9;--border-light:#f0f0f0;--divider:#f0f0f0;--shadow-sm:0 1px 2px rgba(0,0,0,.06);--shadow-md:0 2px 8px rgba(0,0,0,.08);--shadow-lg:0 4px 16px rgba(0,0,0,.1);--shadow-card:0 1px 4px rgba(0,21,41,.08);--spacing-xs:4px;--spacing-sm:8px;--spacing-md:16px;--spacing-lg:24px;--spacing-xl:32px;--spacing-2xl:48px;--font-family:-apple-system,"PingFang SC","Microsoft YaHei","Helvetica Neue",Arial,sans-serif;--font-weight-light:300;--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--radius-sm:4px;--radius-md:6px;--radius-lg:8px;--radius-xl:12px;--transition-fast:0.15s ease;--transition-normal:0.2s ease;--transition-slow:0.3s ease;--sidebar-width:220px;--header-height:56px}*{margin:0;padding:0;box-sizing:border-box}html{font-size:14px;line-height:1.5715}body{font-family:var(--font-family);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:var(--text-primary)}#app,body{background-color:var(--bg-body)}#app{min-height:100vh}.container{max-width:1200px;margin:0 auto}.card,.container{padding:var(--spacing-lg)}.card{background:var(--bg-primary);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);border:1px solid var(--border-light)}.card,.card-header{margin-bottom:var(--spacing-md)}.card-header{display:flex;align-items:center;justify-content:space-between;padding-bottom:var(--spacing-md);border-bottom:1px solid var(--divider)}.card-title{font-size:16px;font-weight:var(--font-weight-semibold);color:var(--text-primary)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--spacing-xs);padding:5px 15px;border:1px solid transparent;border-radius:var(--radius-sm);cursor:pointer;font-size:14px;font-weight:var(--font-weight-normal);font-family:var(--font-family);transition:all var(--transition-fast);text-decoration:none;white-space:nowrap;line-height:1.5715;min-height:32px;outline:none}.btn:focus-visible{outline:2px solid var(--primary-color);outline-offset:2px}.btn-primary{background-color:var(--primary-color);border-color:var(--primary-color);color:var(--text-inverse)}.btn-primary:hover{background-color:var(--primary-hover);border-color:var(--primary-hover)}.btn-primary:active{background-color:var(--primary-active);border-color:var(--primary-active)}.btn-primary:disabled{opacity:.4;cursor:not-allowed}.btn-default{background-color:var(--bg-primary);border-color:var(--border-color);color:var(--text-primary)}.btn-default:hover{border-color:var(--primary-color);color:var(--primary-color)}.btn-success{background-color:var(--success-color);border-color:var(--success-color);color:var(--text-inverse)}.btn-success:hover{background-color:#73d13d;border-color:#73d13d}.btn-danger{background-color:var(--danger-color);border-color:var(--danger-color);color:var(--text-inverse)}.btn-danger:hover{background-color:#ff7875;border-color:#ff7875}.btn-secondary{background-color:var(--bg-primary);border-color:var(--border-color);color:var(--text-primary)}.btn-secondary:hover{border-color:var(--primary-color);color:var(--primary-color)}.btn-large{padding:8px 20px;font-size:16px;min-height:40px;border-radius:var(--radius-md)}.btn-small{padding:1px 8px;font-size:12px;min-height:24px}.form-group{margin-bottom:var(--spacing-md)}.form-label,label{display:block;margin-bottom:6px;font-weight:var(--font-weight-normal);color:var(--text-primary);font-size:13px}.form-input,input[type=date]:not(.el-input__inner),input[type=email]:not(.el-input__inner),input[type=number]:not(.el-input__inner),input[type=password]:not(.el-input__inner),input[type=search]:not(.el-input__inner),input[type=tel]:not(.el-input__inner),input[type=text]:not(.el-input__inner):not(.el-range-input),input[type=url]:not(.el-input__inner),select:not(.el-select__input):not(.el-input__inner),textarea:not(.el-textarea__inner){width:100%;padding:6px 11px;border:1px solid var(--border-color);border-radius:var(--radius-sm);font-size:13px;font-family:var(--font-family);transition:border-color var(--transition-fast),box-shadow var(--transition-fast);background-color:var(--bg-primary);color:var(--text-primary);line-height:1.5715;outline:none;height:32px}textarea:not(.el-textarea__inner){height:auto;min-height:60px;resize:vertical}select:not(.el-select__input){-webkit-appearance:auto;-moz-appearance:auto;appearance:auto}input[type=date]:not(.el-input__inner):hover,input[type=email]:not(.el-input__inner):hover,input[type=number]:not(.el-input__inner):hover,input[type=password]:not(.el-input__inner):hover,input[type=search]:not(.el-input__inner):hover,input[type=tel]:not(.el-input__inner):hover,input[type=text]:not(.el-input__inner):hover,input[type=url]:not(.el-input__inner):hover,select:not(.el-select__input):hover,textarea:not(.el-textarea__inner):hover{border-color:var(--primary-hover)}input[type=date]:not(.el-input__inner):focus,input[type=email]:not(.el-input__inner):focus,input[type=number]:not(.el-input__inner):focus,input[type=password]:not(.el-input__inner):focus,input[type=search]:not(.el-input__inner):focus,input[type=tel]:not(.el-input__inner):focus,input[type=text]:not(.el-input__inner):focus,input[type=url]:not(.el-input__inner):focus,select:not(.el-select__input):focus,textarea:not(.el-textarea__inner):focus{border-color:var(--primary-color);box-shadow:0 0 0 2px rgba(22,119,255,.1)}input:disabled:not(.el-input__inner),select:disabled,textarea:disabled:not(.el-textarea__inner){background-color:var(--bg-tertiary);color:var(--text-disabled);cursor:not-allowed;border-color:var(--border-color)}input:not(.el-input__inner)::-moz-placeholder,textarea:not(.el-textarea__inner)::-moz-placeholder{color:var(--text-tertiary)}input:not(.el-input__inner)::placeholder,textarea:not(.el-textarea__inner)::placeholder{color:var(--text-tertiary)}.table-container{width:100%;overflow-x:auto}.data-table{width:100%;border-collapse:collapse;font-size:14px}.data-table th{background:var(--bg-secondary);color:var(--text-secondary);font-weight:var(--font-weight-medium);text-align:left;white-space:nowrap}.data-table td,.data-table th{padding:12px 16px;border-bottom:1px solid var(--border-light)}.data-table td{color:var(--text-primary)}.data-table tr:hover td{background:var(--bg-secondary)}.data-table tr:last-child td{border-bottom:none}.tag{display:inline-flex;align-items:center;padding:2px 8px;border-radius:var(--radius-sm);font-size:12px;font-weight:var(--font-weight-medium);border:1px solid}.tag-blue{background:#e6f4ff;color:#1677ff;border-color:#91caff}.tag-green{background:#f6ffed;color:#52c41a;border-color:#b7eb8f}.tag-orange{background:#fff7e6;color:#fa8c16;border-color:#ffd591}.tag-red{background:#fff2f0;color:#ff4d4f;border-color:#ffccc7}.tag-gray{background:#fafafa;color:#8c8c8c;border-color:#d9d9d9}.page-wrapper{min-height:100vh;background:var(--bg-body)}.page-header{background:var(--bg-primary);border-bottom:1px solid var(--border-light);padding:var(--spacing-md) var(--spacing-lg);display:flex;align-items:center;justify-content:space-between}.page-title{font-size:20px;font-weight:var(--font-weight-semibold);color:var(--text-primary)}.page-subtitle{font-size:14px;color:var(--text-secondary);margin-top:2px}.page-content{padding:var(--spacing-lg)}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.text-primary{color:var(--primary-color)}.text-success{color:var(--success-color)}.text-danger{color:var(--danger-color)}.text-warning{color:var(--warning-color)}.text-muted{color:var(--text-secondary)}.mt-20{margin-top:var(--spacing-md)}.mb-20{margin-bottom:var(--spacing-md)}.ml-auto{margin-left:auto}.mr-auto{margin-right:auto}.d-flex{display:flex}.align-center{align-items:center}.gap-sm{gap:var(--spacing-sm)}.gap-md{gap:var(--spacing-md)}.under-construction{text-align:center;padding:var(--spacing-2xl) var(--spacing-lg);color:var(--text-secondary);background:var(--bg-primary);border-radius:var(--radius-lg);border:1px solid var(--border-light);margin:var(--spacing-xl)}.under-construction h2{font-size:20px;margin-bottom:var(--spacing-md);color:var(--text-primary);font-weight:var(--font-weight-semibold)}.under-construction p{font-size:14px;color:var(--text-secondary)}.animate-slide-up{animation:slideUpFadeIn .3s ease-out forwards;opacity:0;transform:translateY(16px)}@keyframes slideUpFadeIn{to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.animate-slide-up{animation:none;opacity:1;transform:none}}@media (max-width:768px){.card,.container,.page-content{padding:var(--spacing-md)}}@media (max-width:480px){html{font-size:13px}}.login-page[data-v-2f4eb9a2]{min-height:100vh;display:flex}.login-left[data-v-2f4eb9a2]{flex:1;background:#1677ff;display:flex;flex-direction:column;justify-content:center;padding:60px 56px;position:relative;overflow:hidden}.login-left[data-v-2f4eb9a2]:before{content:"";position:absolute;top:-80px;right:-80px;width:300px;height:300px;border-radius:50%;background:hsla(0,0%,100%,.06);pointer-events:none}.login-left[data-v-2f4eb9a2]:after{content:"";position:absolute;bottom:-60px;left:-60px;width:240px;height:240px;border-radius:50%;background:hsla(0,0%,100%,.04);pointer-events:none}.brand-wrap[data-v-2f4eb9a2]{margin-bottom:56px}.brand-logo[data-v-2f4eb9a2]{margin-bottom:20px}.brand-name[data-v-2f4eb9a2]{font-size:28px;font-weight:600;color:#fff;margin-bottom:8px;letter-spacing:.5px}.brand-desc[data-v-2f4eb9a2]{font-size:14px;color:hsla(0,0%,100%,.65);letter-spacing:1px}.brand-features[data-v-2f4eb9a2]{display:flex;flex-direction:column;gap:24px;position:relative;z-index:1}.feature-item[data-v-2f4eb9a2]{display:flex;align-items:flex-start;gap:14px;padding:16px 20px;background:hsla(0,0%,100%,.08);border-radius:8px;border:1px solid hsla(0,0%,100%,.12)}.feature-icon[data-v-2f4eb9a2]{flex-shrink:0;width:36px;height:36px;background:hsla(0,0%,100%,.9);border-radius:6px;display:flex;align-items:center;justify-content:center}.feature-title[data-v-2f4eb9a2]{font-size:15px;font-weight:500;color:#fff;margin-bottom:4px}.feature-desc[data-v-2f4eb9a2]{font-size:13px;color:hsla(0,0%,100%,.65);line-height:1.5}.login-right[data-v-2f4eb9a2]{width:480px;flex-shrink:0;background:#f0f2f5;display:flex;align-items:center;justify-content:center;padding:40px}.login-card[data-v-2f4eb9a2]{width:100%;max-width:380px;background:#fff;border-radius:8px;border:1px solid #f0f0f0;box-shadow:0 2px 12px rgba(0,0,0,.08);padding:40px}.login-header[data-v-2f4eb9a2]{text-align:center;margin-bottom:32px}.login-header h2[data-v-2f4eb9a2]{font-size:24px;font-weight:600;color:#000000d9;margin-bottom:6px}.login-header p[data-v-2f4eb9a2]{font-size:14px;color:#00000073}.login-form .form-input[data-v-2f4eb9a2]{height:40px}.form-row-check[data-v-2f4eb9a2]{margin-bottom:20px}.checkbox-label[data-v-2f4eb9a2]{display:flex;align-items:center;gap:8px;font-size:14px;color:#00000073;cursor:pointer}.checkbox-label input[type=checkbox][data-v-2f4eb9a2]{width:14px;height:14px;accent-color:#1677ff;cursor:pointer}.btn-block[data-v-2f4eb9a2]{width:100%;justify-content:center;letter-spacing:1px}.spin-icon[data-v-2f4eb9a2]{width:16px;height:16px;border:2px solid hsla(0,0%,100%,.4);border-top-color:#fff;border-radius:50%;animation:spin-2f4eb9a2 .6s linear infinite;flex-shrink:0}@keyframes spin-2f4eb9a2{to{transform:rotate(1turn)}}.login-footer[data-v-2f4eb9a2]{text-align:center;margin-top:24px;padding-top:20px;border-top:1px solid #f0f0f0;font-size:14px}.footer-text[data-v-2f4eb9a2]{color:#00000073}.register-link[data-v-2f4eb9a2]{color:#1677ff;text-decoration:none;margin-left:4px;font-weight:500}.register-link[data-v-2f4eb9a2]:hover{color:#4096ff;text-decoration:underline}@media (max-width:1024px){.login-left[data-v-2f4eb9a2]{padding:40px 32px}.login-right[data-v-2f4eb9a2]{width:420px}}@media (max-width:768px){.login-page[data-v-2f4eb9a2]{flex-direction:column}.login-left[data-v-2f4eb9a2]{padding:32px 24px;flex:none}.brand-features[data-v-2f4eb9a2]{display:none}.login-right[data-v-2f4eb9a2]{width:100%;flex:1;padding:24px 16px}}.register-container[data-v-f7479d86]{min-height:100vh;display:flex;align-items:center;justify-content:center;background:#f0f2f5;padding:24px 16px}.register-card[data-v-f7479d86]{background:#fff;border-radius:8px;border:1px solid #f0f0f0;box-shadow:0 2px 12px rgba(0,0,0,.08);padding:40px;width:100%;max-width:460px}.register-header[data-v-f7479d86]{text-align:center;margin-bottom:28px}.register-header h1[data-v-f7479d86]{color:#000000d9;font-size:22px;margin-bottom:6px;font-weight:600}.register-header p[data-v-f7479d86]{color:#00000073;font-size:14px}.form-group[data-v-f7479d86]{margin-bottom:16px}.form-label[data-v-f7479d86]{display:block;margin-bottom:6px;color:#000000d9;font-weight:400;font-size:14px}.form-input[data-v-f7479d86]{width:100%;padding:8px 12px;border:1px solid #d9d9d9;border-radius:4px;font-size:14px;height:40px;transition:border-color .15s,box-shadow .15s;outline:none;font-family:inherit;box-sizing:border-box}.form-input[data-v-f7479d86]:hover{border-color:#4096ff}.form-input[data-v-f7479d86]:focus{border-color:#1677ff;box-shadow:0 0 0 2px rgba(22,119,255,.2)}.form-input[data-v-f7479d86]:disabled{background:#fafafa;color:#00000073;cursor:not-allowed}.field-error[data-v-f7479d86]{margin:4px 0 0;font-size:12px;color:#ff4d4f}.verification-container[data-v-f7479d86]{display:flex;gap:10px;align-items:center}.verification-input[data-v-f7479d86]{flex:1}.default-code-hint[data-v-f7479d86]{display:inline-flex;align-items:center;height:40px;padding:0 12px;background:#f6ffed;border:1px solid #b7eb8f;border-radius:4px;font-size:12px;color:#389e0d;white-space:nowrap;flex-shrink:0}.register-btn[data-v-f7479d86]{width:100%;padding:0 20px;height:40px;background:#1677ff;color:#fff;border:none;border-radius:4px;font-size:15px;font-weight:500;cursor:pointer;transition:background .15s;letter-spacing:1px;font-family:inherit;margin-top:4px}.register-btn[data-v-f7479d86]:hover:not(:disabled){background:#4096ff}.register-btn[data-v-f7479d86]:disabled{opacity:.5;cursor:not-allowed}.register-footer[data-v-f7479d86]{text-align:center;margin-top:20px;padding-top:16px;border-top:1px solid #f0f0f0;color:#00000073;font-size:14px}.login-link[data-v-f7479d86]{color:#1677ff;text-decoration:none;font-weight:500;margin-left:4px}.login-link[data-v-f7479d86]:hover{color:#4096ff;text-decoration:underline}.cred-overlay[data-v-f7479d86]{position:fixed;inset:0;background:rgba(0,0,0,.5);display:flex;align-items:center;justify-content:center;z-index:1000;padding:16px}.cred-modal[data-v-f7479d86]{background:#fff;border-radius:10px;width:100%;max-width:440px;box-shadow:0 12px 40px rgba(0,0,0,.15);overflow:hidden}.cred-header[data-v-f7479d86]{background:#f6ffed;border-bottom:1px solid #b7eb8f;padding:16px 20px}.cred-title-wrap[data-v-f7479d86]{display:flex;align-items:center;gap:8px}.cred-title-wrap h3[data-v-f7479d86]{margin:0;color:#389e0d;font-size:16px;font-weight:600}.cred-icon[data-v-f7479d86]{width:20px;height:20px;color:#52c41a;flex-shrink:0}.cred-body[data-v-f7479d86]{padding:20px}.cred-notice[data-v-f7479d86]{display:flex;align-items:flex-start;gap:8px;background:#fffbe6;border:1px solid #ffe58f;border-radius:6px;padding:10px 12px;font-size:13px;color:#874d00;margin-bottom:16px;line-height:1.5}.cred-notice svg[data-v-f7479d86]{width:16px;height:16px;color:#faad14;flex-shrink:0;margin-top:1px}.cred-name-row[data-v-f7479d86]{display:flex;align-items:center;gap:8px;margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid #f0f0f0}.cred-name[data-v-f7479d86]{font-size:16px;font-weight:600;color:#000000d9}.cred-role-tag[data-v-f7479d86]{display:inline-flex;align-items:center;padding:2px 8px;background:#fff7e6;color:#fa8c16;border:1px solid #ffd591;border-radius:4px;font-size:12px;font-weight:500}.cred-item[data-v-f7479d86]{margin-bottom:14px}.cred-label[data-v-f7479d86]{font-size:12px;color:#00000073;margin-bottom:6px}.cred-value-row[data-v-f7479d86]{display:flex;align-items:center;gap:8px;background:#fafafa;border:1px solid #d9d9d9;border-radius:6px;padding:10px 12px}.cred-value[data-v-f7479d86]{flex:1;font-size:15px;font-family:SFMono-Regular,Consolas,monospace;color:#000000d9;word-break:break-all}.cred-password[data-v-f7479d86]{color:#1677ff;font-weight:700;font-size:17px;letter-spacing:1px}.copy-btn[data-v-f7479d86]{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;background:#fff;border:1px solid #d9d9d9;border-radius:4px;font-size:12px;color:#00000073;cursor:pointer;transition:border-color .15s,color .15s;white-space:nowrap;font-family:inherit;flex-shrink:0}.copy-btn svg[data-v-f7479d86]{width:13px;height:13px}.copy-btn[data-v-f7479d86]:hover{border-color:#1677ff;color:#1677ff}.copy-all-btn[data-v-f7479d86]{display:flex;align-items:center;justify-content:center;gap:6px;width:100%;margin-top:4px;padding:9px;background:#e6f4ff;border:1px solid #91caff;border-radius:6px;font-size:14px;color:#1677ff;cursor:pointer;transition:background .15s;font-family:inherit}.copy-all-btn svg[data-v-f7479d86]{width:15px;height:15px}.copy-all-btn[data-v-f7479d86]:hover{background:#bae0ff}.cred-footer[data-v-f7479d86]{padding:14px 20px;border-top:1px solid #f0f0f0;display:flex;justify-content:flex-end}.go-login-btn[data-v-f7479d86]{padding:8px 20px;background:#1677ff;color:#fff;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:background .15s;font-family:inherit}.go-login-btn[data-v-f7479d86]:hover{background:#4096ff}.app-layout[data-v-62f99274]{min-height:100vh;display:flex;flex-direction:column;background:var(--bg-body)}.app-header[data-v-62f99274]{height:var(--header-height);background:#fff;border-bottom:1px solid var(--border-light);flex-shrink:0;z-index:100}.header-inner[data-v-62f99274]{height:100%;padding:0 16px;display:flex;align-items:center;justify-content:space-between}.header-left[data-v-62f99274]{display:flex;align-items:center;gap:12px}.sidebar-toggle-btn[data-v-62f99274]{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:none;background:none;border-radius:var(--radius-sm);cursor:pointer;color:var(--text-secondary);transition:background var(--transition-fast)}.sidebar-toggle-btn[data-v-62f99274]:hover{background:var(--bg-tertiary);color:var(--text-primary)}.sidebar-toggle-btn svg[data-v-62f99274]{width:18px;height:18px}.logo[data-v-62f99274]{display:flex;align-items:center;gap:10px}.logo-icon[data-v-62f99274]{width:32px;height:32px;background:var(--primary-color);border-radius:6px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.logo-text[data-v-62f99274]{font-size:15px;font-weight:600;color:var(--text-primary);white-space:nowrap}.header-right[data-v-62f99274]{display:flex;align-items:center;gap:12px}.school-tag[data-v-62f99274]{padding:3px 10px;background:var(--primary-light);color:var(--primary-color);border:1px solid var(--primary-border);border-radius:var(--radius-sm);font-size:12px;font-weight:500}.user-dropdown[data-v-62f99274]{display:flex;align-items:center;gap:8px;position:relative;cursor:pointer;padding:4px 0}.user-name[data-v-62f99274]{font-size:13px;color:var(--text-primary)}.avatar[data-v-62f99274]{width:28px;height:28px;background:var(--primary-color);border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-size:12px;font-weight:600}.dropdown-menu[data-v-62f99274]{position:absolute;top:calc(100% + 6px);right:0;background:#fff;border-radius:var(--radius-md);box-shadow:0 6px 16px rgba(0,0,0,.1),0 0 0 1px rgba(0,0,0,.05);padding:4px;min-width:150px;opacity:0;visibility:hidden;transform:translateY(-4px);transition:all var(--transition-fast);z-index:200}.user-dropdown:hover .dropdown-menu[data-v-62f99274]{opacity:1;visibility:visible;transform:translateY(0)}.dropdown-item[data-v-62f99274]{display:flex;align-items:center;gap:8px;width:100%;padding:6px 10px;border:none;background:none;border-radius:var(--radius-sm);font-size:13px;color:var(--text-primary);cursor:pointer;text-align:left;font-family:inherit;transition:background var(--transition-fast)}.dropdown-item[data-v-62f99274]:hover{background:var(--bg-tertiary);color:var(--primary-color)}.dropdown-item.danger[data-v-62f99274]:hover{background:var(--danger-bg);color:var(--danger-color)}.dropdown-divider[data-v-62f99274]{height:1px;background:var(--border-light);margin:4px 8px}.impersonate-bar[data-v-62f99274]{background:#722ed1;color:#fff;text-align:center;padding:6px 16px;font-size:13px;display:flex;align-items:center;justify-content:center;gap:16px;flex-shrink:0}.impersonate-bar button[data-v-62f99274]{background:#fff;color:#722ed1;border:none;padding:2px 12px;border-radius:var(--radius-sm);cursor:pointer;font-size:12px;font-weight:500}.app-body[data-v-62f99274]{flex:1;display:flex;overflow:hidden}.sidebar[data-v-62f99274]{width:var(--sidebar-width);background:#fff;border-right:1px solid var(--border-light);overflow-y:auto;overflow-x:hidden;flex-shrink:0;transition:width .2s ease}.sidebar.collapsed[data-v-62f99274]{width:0;border-right:none}.sidebar-nav[data-v-62f99274]{padding:8px 0}.nav-item[data-v-62f99274]{display:flex;align-items:center;padding:0 16px;height:36px;font-size:13px;color:var(--text-primary);cursor:pointer;transition:background var(--transition-fast),color var(--transition-fast);text-decoration:none;border-left:3px solid transparent}.nav-item[data-v-62f99274]:hover{background:var(--bg-tertiary);color:var(--primary-color)}.nav-item.active[data-v-62f99274]{background:var(--primary-light);color:var(--primary-color);border-left-color:var(--primary-color);font-weight:500}.nav-item.depth-1[data-v-62f99274]{padding-left:32px}.nav-item.depth-2[data-v-62f99274]{padding-left:48px;font-size:12px}.nav-group[data-v-62f99274]{-webkit-user-select:none;-moz-user-select:none;user-select:none}.nav-group-title[data-v-62f99274]{display:flex;align-items:center;justify-content:space-between;padding:0 16px;height:36px;font-size:13px;font-weight:500;color:var(--text-secondary);cursor:pointer;transition:background var(--transition-fast),color var(--transition-fast)}.nav-group-title[data-v-62f99274]:hover{background:var(--bg-tertiary);color:var(--text-primary)}.nav-group-title.sub[data-v-62f99274]{padding-left:32px;font-weight:400;font-size:13px;color:var(--text-secondary)}.nav-arrow[data-v-62f99274]{transition:transform .2s;flex-shrink:0}.nav-group.nested.open>.nav-group-title .nav-arrow[data-v-62f99274],.nav-group.open>.nav-group-title .nav-arrow[data-v-62f99274]{transform:rotate(180deg)}.nav-group-children[data-v-62f99274]{overflow:hidden}.app-content[data-v-62f99274]{flex:1;overflow-y:auto;min-width:0}@media (max-width:768px){.sidebar[data-v-62f99274]{position:fixed;top:var(--header-height);bottom:0;left:0;z-index:99;box-shadow:2px 0 8px rgba(0,0,0,.1)}.sidebar.collapsed[data-v-62f99274]{width:0}.logo-text[data-v-62f99274],.user-name[data-v-62f99274]{display:none}}.dashboard-page[data-v-08ab1a01]{padding:24px;max-width:1200px;margin:0 auto}.welcome-section[data-v-08ab1a01]{background:#fff;border:1px solid var(--border-light);border-radius:var(--radius-lg);padding:28px 32px;margin-bottom:24px}.welcome-inner[data-v-08ab1a01]{display:flex;align-items:center;justify-content:space-between;gap:24px}.welcome-title[data-v-08ab1a01]{font-size:20px;font-weight:600;color:var(--text-primary);margin:0 0 4px}.welcome-sub[data-v-08ab1a01]{font-size:14px;color:var(--text-secondary);margin:0}.welcome-stats[data-v-08ab1a01]{display:flex;align-items:center;gap:20px;flex-shrink:0}.ws-item[data-v-08ab1a01]{display:flex;flex-direction:column;align-items:center}.ws-num[data-v-08ab1a01]{font-size:20px;font-weight:700;color:var(--primary-color);line-height:1}.ws-label[data-v-08ab1a01]{font-size:11px;color:var(--text-secondary);margin-top:4px}.ws-sep[data-v-08ab1a01]{width:1px;height:32px;background:var(--border-light)}.section-title[data-v-08ab1a01]{font-size:15px;font-weight:500;color:var(--text-primary);margin:0 0 14px}.quick-grid[data-v-08ab1a01]{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:12px}.quick-card[data-v-08ab1a01]{background:#fff;border:1px solid var(--border-light);border-radius:var(--radius-md);padding:16px 20px;cursor:pointer;transition:border-color .15s,box-shadow .15s}.quick-card[data-v-08ab1a01]:hover{border-color:var(--primary-border);box-shadow:0 2px 8px rgba(22,119,255,.08)}.qc-title[data-v-08ab1a01]{font-size:14px;font-weight:500;color:var(--text-primary);margin-bottom:4px}.qc-desc[data-v-08ab1a01]{font-size:12px;color:var(--text-secondary)}@media (max-width:768px){.dashboard-page[data-v-08ab1a01]{padding:16px}.welcome-inner[data-v-08ab1a01]{flex-direction:column;align-items:flex-start}.welcome-section[data-v-08ab1a01]{padding:20px}.quick-grid[data-v-08ab1a01]{grid-template-columns:1fr 1fr}}@media (max-width:480px){.quick-grid[data-v-08ab1a01]{grid-template-columns:1fr}}.user-profile[data-v-7493c0a7]{padding:24px;background:var(--bg-body);min-height:100vh}.profile-header[data-v-7493c0a7]{display:flex;align-items:center;gap:14px;margin-bottom:20px}.profile-header h2[data-v-7493c0a7]{margin:0;color:#000000d9;font-size:18px;font-weight:500}.profile-container[data-v-7493c0a7]{max-width:1100px;margin:0 auto}.profile-card[data-v-7493c0a7]{background:#fff;border-radius:8px;padding:24px;border:1px solid var(--border-light);box-shadow:var(--shadow-card);margin-bottom:16px;display:flex;gap:24px}.profile-avatar[data-v-7493c0a7]{display:flex;flex-direction:column;align-items:center;gap:12px}.avatar-container[data-v-7493c0a7]{width:96px;height:96px;border-radius:50%;overflow:hidden;border:2px solid var(--border-light)}.avatar-img[data-v-7493c0a7]{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.avatar-placeholder[data-v-7493c0a7]{width:100%;height:100%;background:#1677ff;display:flex;align-items:center;justify-content:center;font-size:36px;color:#fff;font-weight:600}.profile-info[data-v-7493c0a7]{flex:1;display:flex;flex-direction:column;gap:10px}.info-item[data-v-7493c0a7]{display:flex;align-items:center;gap:10px;font-size:14px}.info-item label[data-v-7493c0a7]{font-weight:400;color:#00000073;min-width:72px}.role-badge[data-v-7493c0a7]{border-radius:4px;background:#e6f4ff;color:#1677ff;border:1px solid #91caff}.role-badge[data-v-7493c0a7],.status-badge[data-v-7493c0a7]{display:inline-flex;align-items:center;padding:2px 8px;font-size:12px}.status-badge[data-v-7493c0a7]{border-radius:4px;border:1px solid}.status-badge.active[data-v-7493c0a7]{background:#f6ffed;color:#52c41a;border-color:#b7eb8f}.edit-section[data-v-7493c0a7]{background:#fff;border-radius:8px;padding:20px 24px;border:1px solid var(--border-light);box-shadow:var(--shadow-card);margin-bottom:16px}.section-header[data-v-7493c0a7]{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid var(--border-light)}.section-header h3[data-v-7493c0a7]{margin:0;color:#000000d9;font-size:15px;font-weight:500}.info-grid[data-v-7493c0a7]{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px}.info-card[data-v-7493c0a7]{border:1px solid var(--border-light);border-radius:6px;padding:14px 16px;background:#fafafa}.info-card h4[data-v-7493c0a7]{margin:0 0 10px 0;color:#1677ff;font-size:14px;font-weight:500}.info-list[data-v-7493c0a7]{display:flex;flex-direction:column}.info-row[data-v-7493c0a7]{display:flex;justify-content:space-between;align-items:center;padding:7px 0;border-bottom:1px solid var(--border-light);font-size:14px}.info-row[data-v-7493c0a7]:last-child{border-bottom:none}.info-row .label[data-v-7493c0a7]{color:#00000073}.info-row .value[data-v-7493c0a7]{color:#000000d9;font-weight:400}.stats-section[data-v-7493c0a7]{background:#fff;border-radius:8px;padding:20px 24px;border:1px solid var(--border-light);box-shadow:var(--shadow-card)}.stats-section h3[data-v-7493c0a7]{margin:0 0 16px 0;color:#000000d9;font-size:15px;font-weight:500}.stats-grid[data-v-7493c0a7]{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px}.stat-card[data-v-7493c0a7]{border:1px solid var(--border-light);border-radius:6px;padding:14px 16px;background:#fafafa;display:flex;align-items:center;gap:12px}.stat-icon[data-v-7493c0a7]{font-size:20px;color:#1677ff}.stat-info h4[data-v-7493c0a7]{margin:0 0 3px 0;font-size:13px;color:#00000073;font-weight:400}.stat-info p[data-v-7493c0a7]{margin:0;font-size:18px;font-weight:700;color:#000000d9}.modal-overlay[data-v-7493c0a7]{position:fixed;inset:0;background:rgba(0,0,0,.45);display:flex;align-items:center;justify-content:center;z-index:1000}.modal-content[data-v-7493c0a7]{background:#fff;border-radius:8px;max-width:500px;width:90%;max-height:90vh;overflow-y:auto;box-shadow:0 8px 32px rgba(0,0,0,.12)}.modal-header[data-v-7493c0a7]{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid var(--border-light)}.modal-header h3[data-v-7493c0a7]{margin:0;color:#000000d9;font-size:16px;font-weight:500}.close-btn[data-v-7493c0a7]{background:none;border:none;font-size:18px;cursor:pointer;color:#00000073;line-height:1;padding:0}.close-btn[data-v-7493c0a7]:hover{color:#000000d9}.modal-body[data-v-7493c0a7]{padding:20px}.form-group[data-v-7493c0a7]{margin-bottom:14px}.form-group label[data-v-7493c0a7]{display:block;margin-bottom:6px;color:#000000d9;font-size:14px}.form-group input[data-v-7493c0a7],.form-group select[data-v-7493c0a7],.form-group textarea[data-v-7493c0a7]{width:100%;padding:7px 11px;border:1px solid var(--border-color);border-radius:4px;font-size:14px;font-family:inherit;outline:none;transition:border-color .15s,box-shadow .15s}.form-group input[data-v-7493c0a7]:hover,.form-group select[data-v-7493c0a7]:hover,.form-group textarea[data-v-7493c0a7]:hover{border-color:#4096ff}.form-group input[data-v-7493c0a7]:focus,.form-group select[data-v-7493c0a7]:focus,.form-group textarea[data-v-7493c0a7]:focus{border-color:#1677ff;box-shadow:0 0 0 2px rgba(22,119,255,.2)}.password-strength[data-v-7493c0a7]{margin-top:6px;display:flex;align-items:center;gap:8px}.strength-meter[data-v-7493c0a7]{width:80px;height:4px;background:#f0f0f0;border-radius:2px;overflow:hidden}.strength-bar[data-v-7493c0a7]{height:100%;transition:width .2s,background .2s}.strength-meter.very-weak .strength-bar[data-v-7493c0a7]{width:20%;background:#ff4d4f}.strength-meter.weak .strength-bar[data-v-7493c0a7]{width:40%;background:#faad14}.strength-meter.fair .strength-bar[data-v-7493c0a7]{width:60%;background:#ffd666}.strength-meter.good .strength-bar[data-v-7493c0a7]{width:80%;background:#52c41a}.strength-meter.strong .strength-bar[data-v-7493c0a7]{width:100%;background:#1677ff}.strength-text[data-v-7493c0a7]{font-size:12px;color:#00000073}.password-requirements[data-v-7493c0a7]{margin-top:12px;padding:10px 12px;background:#fafafa;border-radius:4px;border:1px solid var(--border-light)}.password-requirements h5[data-v-7493c0a7]{margin:0 0 6px 0;color:#000000d9;font-size:13px;font-weight:500}.password-requirements ul[data-v-7493c0a7]{margin:0;padding-left:16px;color:#00000073;font-size:12px}.password-requirements li.met[data-v-7493c0a7]{color:#52c41a}.avatar-upload[data-v-7493c0a7]{text-align:center}.upload-area[data-v-7493c0a7]{border:1px dashed var(--border-color);border-radius:6px;padding:24px;cursor:pointer;transition:border-color .15s}.upload-area[data-v-7493c0a7]:hover{border-color:#1677ff}.preview-container[data-v-7493c0a7]{display:inline-block;width:100px;height:100px;border-radius:50%;overflow:hidden}.preview-img[data-v-7493c0a7]{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.upload-placeholder[data-v-7493c0a7]{color:#00000073}.upload-icon[data-v-7493c0a7]{font-size:36px;margin-bottom:8px;color:#00000040}.upload-hint[data-v-7493c0a7]{font-size:12px;margin-top:4px;color:#00000073}.upload-progress[data-v-7493c0a7]{margin-top:12px}.progress-bar[data-v-7493c0a7]{width:100%;height:6px;background:#f0f0f0;border-radius:3px;overflow:hidden}.progress-fill[data-v-7493c0a7]{height:100%;background:#1677ff;transition:width .3s}.modal-actions[data-v-7493c0a7]{display:flex;gap:10px;justify-content:flex-end;margin-top:20px}.btn[data-v-7493c0a7]{display:inline-flex;align-items:center;justify-content:center;padding:5px 14px;border:1px solid transparent;border-radius:4px;cursor:pointer;font-size:14px;font-family:inherit;transition:background .15s,border-color .15s;height:32px}.btn-primary[data-v-7493c0a7]{background:#1677ff;border-color:#1677ff;color:#fff}.btn-primary[data-v-7493c0a7]:hover{background:#4096ff;border-color:#4096ff}.btn-primary[data-v-7493c0a7]:disabled{opacity:.5;cursor:not-allowed}.btn-secondary[data-v-7493c0a7]{background:#fff;border-color:var(--border-color);color:#000000d9}.btn-secondary[data-v-7493c0a7]:hover{border-color:#1677ff;color:#1677ff}.btn-outline-primary[data-v-7493c0a7]{background:#fff;border-color:#1677ff;color:#1677ff}.btn-outline-primary[data-v-7493c0a7]:hover{background:#e6f4ff}.btn-small[data-v-7493c0a7]{padding:2px 8px;height:24px;font-size:12px}@media (max-width:768px){.user-profile[data-v-7493c0a7]{padding:16px}.profile-card[data-v-7493c0a7]{flex-direction:column;align-items:center}.info-grid[data-v-7493c0a7]{grid-template-columns:1fr}.stats-grid[data-v-7493c0a7]{grid-template-columns:repeat(2,1fr)}}.admin-management[data-v-36c617a4]{min-height:100vh;background:var(--bg-body)}.page-header[data-v-36c617a4]{background:#fff;border-bottom:1px solid var(--border-light);position:sticky;top:0;z-index:100;box-shadow:var(--shadow-sm)}.header-container[data-v-36c617a4]{max-width:1400px;margin:0 auto;padding:0 24px;display:flex;justify-content:space-between;align-items:center;height:var(--header-height)}.header-left[data-v-36c617a4]{display:flex;align-items:center;gap:16px}.back-btn[data-v-36c617a4]{display:flex;align-items:center;gap:6px;padding:5px 12px;background:#fff;border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-primary);cursor:pointer;transition:border-color .15s,color .15s;font-size:14px;font-family:inherit}.back-btn[data-v-36c617a4]:hover{border-color:#1677ff;color:#1677ff}.back-btn svg[data-v-36c617a4]{width:16px;height:16px}.page-info[data-v-36c617a4]{display:flex;flex-direction:column}.page-title[data-v-36c617a4]{font-size:18px;font-weight:600;color:#000000d9;margin:0}.page-subtitle[data-v-36c617a4]{font-size:12px;color:#00000073;margin-top:1px}.role-indicator[data-v-36c617a4]{margin-left:8px}.role-badge[data-v-36c617a4]{display:inline-flex;align-items:center;padding:2px 8px;border-radius:var(--radius-sm);font-size:12px;font-weight:500;border:1px solid}.role-badge.premium[data-v-36c617a4]{background:#e6f4ff;color:#1677ff;border-color:#91caff}.header-actions[data-v-36c617a4]{display:flex;align-items:center;gap:8px}.action-btn[data-v-36c617a4]{display:inline-flex;align-items:center;gap:6px;padding:5px 12px;border:1px solid transparent;border-radius:var(--radius-sm);font-size:14px;font-weight:400;cursor:pointer;transition:background .15s,border-color .15s,color .15s;font-family:inherit;height:32px}.action-btn svg[data-v-36c617a4]{width:16px;height:16px}.action-btn.primary[data-v-36c617a4]{background:#1677ff;border-color:#1677ff;color:#fff}.action-btn.primary[data-v-36c617a4]:hover{background:#4096ff;border-color:#4096ff}.action-btn.secondary[data-v-36c617a4]{background:#fff;border-color:var(--border-color);color:var(--text-primary)}.action-btn.secondary[data-v-36c617a4]:hover{border-color:#1677ff;color:#1677ff}.action-btn.refresh[data-v-36c617a4]{background:#fff;border-color:var(--border-color);color:var(--text-secondary);padding:5px 8px}.action-btn.refresh[data-v-36c617a4]:hover{border-color:#1677ff;color:#1677ff}.action-btn.refresh svg[data-v-36c617a4]{transition:transform .3s}.action-btn.refresh:hover svg[data-v-36c617a4]{transform:rotate(180deg)}.main-content[data-v-36c617a4]{padding:24px 0}.content-container[data-v-36c617a4]{max-width:1400px;margin:0 auto;padding:0 24px}.stats-section[data-v-36c617a4]{margin-bottom:20px}.stats-grid[data-v-36c617a4]{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px}.stat-card[data-v-36c617a4]{background:#fff;border-radius:8px;padding:16px 20px;display:flex;align-items:center;gap:14px;border:1px solid var(--border-light);box-shadow:var(--shadow-card)}.stat-icon[data-v-36c617a4]{width:44px;height:44px;border-radius:8px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.stat-card.student .stat-icon[data-v-36c617a4]{background:#e6f4ff;color:#1677ff}.stat-card.teacher .stat-icon[data-v-36c617a4]{background:#fff7e6;color:#d46b08}.stat-card.admin .stat-icon[data-v-36c617a4]{background:#f9f0ff;color:#722ed1}.stat-card.online .stat-icon[data-v-36c617a4]{background:#f6ffed;color:#389e0d}.stat-icon svg[data-v-36c617a4]{width:22px;height:22px}.stat-content[data-v-36c617a4]{flex:1;min-width:0}.stat-content h3[data-v-36c617a4]{font-size:13px;color:#00000073;font-weight:400;margin:0 0 4px 0}.stat-number[data-v-36c617a4]{font-size:24px;font-weight:700;color:#000000d9;margin:0;line-height:1}.stat-label[data-v-36c617a4]{font-size:12px;color:#00000073;margin-top:2px;display:block}.filter-section[data-v-36c617a4]{background:#fff;border-radius:8px;padding:16px 20px;border:1px solid var(--border-light);box-shadow:var(--shadow-card);margin-bottom:16px}.filter-header[data-v-36c617a4]{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}.filter-title[data-v-36c617a4]{font-size:15px;font-weight:500;color:#000000d9;margin:0}.filter-actions[data-v-36c617a4]{display:flex;gap:8px}.filter-reset[data-v-36c617a4]{padding:4px 10px;background:#fff;border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-secondary);font-size:13px;cursor:pointer;transition:border-color .15s,color .15s;font-family:inherit}.filter-reset[data-v-36c617a4]:hover{border-color:#1677ff;color:#1677ff}.filter-form[data-v-36c617a4]{margin-top:0}.filter-row[data-v-36c617a4]{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}.filter-group[data-v-36c617a4]{display:flex;flex-direction:column;gap:6px}.filter-label[data-v-36c617a4]{display:flex;align-items:center;gap:6px;font-size:13px;font-weight:400;color:#000000d9}.filter-label svg[data-v-36c617a4]{width:14px;height:14px;color:#00000073}.filter-input[data-v-36c617a4],.filter-select[data-v-36c617a4]{padding:7px 11px;border:1px solid var(--border-color);border-radius:var(--radius-sm);font-size:14px;background:#fff;color:#000000d9;transition:border-color .15s,box-shadow .15s;outline:none;font-family:inherit;height:32px}.filter-input[data-v-36c617a4]:hover,.filter-select[data-v-36c617a4]:hover{border-color:#4096ff}.filter-input[data-v-36c617a4]:focus,.filter-select[data-v-36c617a4]:focus{border-color:#1677ff;box-shadow:0 0 0 2px rgba(22,119,255,.2)}.bulk-actions[data-v-36c617a4]{background:#e6f4ff;border:1px solid #91caff;border-radius:6px;padding:10px 16px;margin-bottom:12px;display:flex;justify-content:space-between;align-items:center}.bulk-info[data-v-36c617a4]{font-weight:500;color:#1677ff;font-size:14px}.bulk-buttons[data-v-36c617a4]{display:flex;gap:8px}.users-section[data-v-36c617a4]{background:#fff;border-radius:8px;border:1px solid var(--border-light);box-shadow:var(--shadow-card);margin-bottom:16px}.users-section h3[data-v-36c617a4]{margin:0;padding:16px 20px 0;color:#000000d9;font-size:15px;font-weight:500}.table-container[data-v-36c617a4]{overflow-x:auto;padding:0 0 0 0}.users-table[data-v-36c617a4]{width:100%;border-collapse:collapse}.users-table td[data-v-36c617a4],.users-table th[data-v-36c617a4]{padding:12px 16px;text-align:left;border-bottom:1px solid var(--border-light);font-size:14px}.users-table th[data-v-36c617a4]{background:#fafafa;font-weight:500;color:#00000073}.users-table tr:last-child td[data-v-36c617a4]{border-bottom:none}.users-table tr:hover td[data-v-36c617a4]{background:#fafafa}.role-badge.student[data-v-36c617a4]{background:#f6ffed;color:#52c41a;border-color:#b7eb8f}.role-badge.teacher[data-v-36c617a4]{background:#fff7e6;color:#fa8c16;border-color:#ffd591}.role-badge.counselor[data-v-36c617a4]{background:#e6fffb;color:#08979c;border-color:#87e8de}.role-badge.department_admin[data-v-36c617a4]{background:#e6f4ff;color:#1677ff;border-color:#91caff}.role-badge.school_admin[data-v-36c617a4]{background:#fafafa;color:#8c8c8c;border-color:#d9d9d9}.role-badge.super_admin[data-v-36c617a4]{background:#fff2f0;color:#ff4d4f;border-color:#ffccc7}.status-badge[data-v-36c617a4]{display:inline-flex;align-items:center;padding:2px 8px;border-radius:var(--radius-sm);font-size:12px;border:1px solid}.status-badge.active[data-v-36c617a4]{background:#f6ffed;color:#52c41a;border-color:#b7eb8f}.status-badge.suspended[data-v-36c617a4]{background:#fff2f0;color:#ff4d4f;border-color:#ffccc7}.action-buttons[data-v-36c617a4]{display:flex;gap:6px;flex-wrap:wrap}.btn[data-v-36c617a4]{display:inline-flex;align-items:center;justify-content:center;padding:4px 10px;border:1px solid transparent;border-radius:var(--radius-sm);cursor:pointer;font-size:12px;font-family:inherit;transition:background .15s,border-color .15s;height:28px;white-space:nowrap}.btn-small[data-v-36c617a4]{padding:2px 8px;height:24px;font-size:11px}.btn-primary[data-v-36c617a4]{background:#1677ff;border-color:#1677ff;color:#fff}.btn-primary[data-v-36c617a4]:hover{background:#4096ff;border-color:#4096ff}.btn-warning[data-v-36c617a4]{background:#faad14;border-color:#faad14;color:#fff}.btn-warning[data-v-36c617a4]:hover{background:#ffc53d;border-color:#ffc53d}.btn-danger[data-v-36c617a4]{background:#ff4d4f;border-color:#ff4d4f;color:#fff}.btn-danger[data-v-36c617a4]:hover{background:#ff7875;border-color:#ff7875}.btn-success[data-v-36c617a4]{background:#52c41a;border-color:#52c41a;color:#fff}.btn-success[data-v-36c617a4]:hover{background:#73d13d;border-color:#73d13d}.btn-info[data-v-36c617a4]{background:#13c2c2;border-color:#13c2c2;color:#fff}.btn-info[data-v-36c617a4]:hover{background:#36cfc9;border-color:#36cfc9}.btn-secondary[data-v-36c617a4]{background:#fff;border-color:var(--border-color);color:var(--text-primary)}.btn-secondary[data-v-36c617a4]:hover{border-color:#1677ff;color:#1677ff}.loading[data-v-36c617a4],.no-data[data-v-36c617a4]{text-align:center;padding:40px;color:#00000073;font-size:14px}.pagination[data-v-36c617a4]{display:flex;justify-content:space-between;align-items:center;padding:12px 20px;border-top:1px solid var(--border-light)}.page-info[data-v-36c617a4],.pagination[data-v-36c617a4]{font-size:14px;color:#00000073}.modal-overlay[data-v-36c617a4]{position:fixed;inset:0;background:rgba(0,0,0,.45);display:flex;align-items:center;justify-content:center;z-index:1000}.modal-content[data-v-36c617a4]{background:#fff;border-radius:8px;max-width:520px;width:90%;max-height:90vh;overflow-y:auto;box-shadow:0 8px 32px rgba(0,0,0,.12)}.large-modal[data-v-36c617a4]{max-width:800px}.modal-header[data-v-36c617a4]{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid var(--border-light)}.modal-header h3[data-v-36c617a4]{margin:0;color:#000000d9;font-size:16px;font-weight:500}.close-btn[data-v-36c617a4]{background:none;border:none;font-size:20px;cursor:pointer;color:#00000073;line-height:1;padding:0}.close-btn[data-v-36c617a4]:hover{color:#000000d9}.modal-body[data-v-36c617a4]{padding:20px}.form-row[data-v-36c617a4]{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:12px}.user-detail-grid[data-v-36c617a4]{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px}.detail-section h4[data-v-36c617a4]{margin:0 0 12px 0;color:#000000d9;font-size:14px;font-weight:500;padding-bottom:8px;border-bottom:1px solid var(--border-light)}.detail-item[data-v-36c617a4]{display:flex;justify-content:space-between;align-items:center;padding:6px 0;border-bottom:1px solid #fafafa;font-size:14px}.detail-item label[data-v-36c617a4]{color:#00000073;font-weight:400}.log-container[data-v-36c617a4]{max-height:360px;overflow-y:auto}.log-item[data-v-36c617a4]{border:1px solid var(--border-light);border-radius:6px;margin-bottom:10px;padding:12px}.log-header[data-v-36c617a4]{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px}.log-time[data-v-36c617a4]{font-size:12px;color:#00000073}.log-action[data-v-36c617a4]{display:inline-flex;align-items:center;padding:2px 8px;border-radius:4px;font-size:12px;font-weight:500}.log-action.role_promote[data-v-36c617a4]{background:#e6f4ff;color:#1677ff}.log-action.role_demote[data-v-36c617a4]{background:#fff2f0;color:#ff4d4f}.log-action.status_suspend[data-v-36c617a4]{background:#fffbe6;color:#d48806}.log-action.status_activate[data-v-36c617a4]{background:#f6ffed;color:#52c41a}.log-details p[data-v-36c617a4]{margin:3px 0;font-size:13px;color:#00000073}.no-logs[data-v-36c617a4]{text-align:center;color:#00000073;padding:32px;font-size:14px}.role-change[data-v-36c617a4]{text-align:center;margin:12px 0;padding:14px;background:#fafafa;border-radius:6px}.old-role[data-v-36c617a4]{display:inline;padding:4px 10px;background:#fffbe6;color:#d48806;border-radius:4px;font-size:13px}.arrow[data-v-36c617a4]{margin:0 10px;color:#00000073;font-size:16px}.new-role[data-v-36c617a4]{display:inline;padding:4px 10px;background:#f6ffed;color:#52c41a;border-radius:4px;font-size:13px}.warning[data-v-36c617a4]{color:#d48806;font-size:13px;background:#fffbe6;padding:10px 12px;border-radius:4px;border-left:3px solid #faad14}.password-hint[data-v-36c617a4]{margin-top:10px;padding:10px 12px;background:#f0f5ff;border-radius:4px;border-left:3px solid #1677ff}.password-hint p[data-v-36c617a4]{margin:0 0 6px 0;font-weight:500;color:#000000d9;font-size:13px}.password-hint ul[data-v-36c617a4]{margin:0;padding-left:16px;color:#00000073;font-size:12px}.password-hint li[data-v-36c617a4]{margin-bottom:3px}.checkbox-container[data-v-36c617a4]{display:flex;align-items:center;cursor:pointer;font-size:14px;color:#00000073;margin-bottom:8px;gap:8px}.checkbox-container input[type=checkbox][data-v-36c617a4]{width:14px;height:14px;accent-color:#1677ff}.modal-actions[data-v-36c617a4]{display:flex;gap:10px;justify-content:flex-end;padding:16px 20px;border-top:1px solid var(--border-light)}.stats-section h3[data-v-36c617a4]{margin:0 0 16px 0;color:#000000d9;font-size:15px;font-weight:500}.stat-info h4[data-v-36c617a4]{margin:0 0 3px 0;font-size:13px;color:#00000073;font-weight:400}.stat-info p[data-v-36c617a4]{margin:0;font-size:20px;font-weight:700;color:#000000d9}@media (max-width:768px){.header-container[data-v-36c617a4]{padding:0 16px}.header-left[data-v-36c617a4]{gap:10px}.header-actions[data-v-36c617a4]{gap:6px}.content-container[data-v-36c617a4]{padding:0 16px}.filter-row[data-v-36c617a4],.form-row[data-v-36c617a4]{grid-template-columns:1fr}.bulk-actions[data-v-36c617a4]{flex-direction:column;gap:10px;align-items:flex-start}.action-buttons[data-v-36c617a4]{flex-direction:column}.pagination[data-v-36c617a4]{flex-direction:column;gap:10px}.stats-grid[data-v-36c617a4]{grid-template-columns:repeat(2,1fr)}.user-detail-grid[data-v-36c617a4]{grid-template-columns:1fr}}.action-btn.import-btn[data-v-36c617a4]{background:#f6ffed;color:#52c41a;border:1px solid #b7eb8f}.action-btn.import-btn[data-v-36c617a4]:hover{background:#d9f7be}.action-btn.stats-btn[data-v-36c617a4]{background:#e6f4ff;color:#1677ff;border:1px solid #91caff}.action-btn.stats-btn[data-v-36c617a4]:hover{background:#bae0ff}.action-btn.school-account-btn[data-v-36c617a4]{background:#f9f0ff;color:#722ed1;border:1px solid #d3adf7}.action-btn.school-account-btn[data-v-36c617a4]:hover{background:#efdbff}.action-btn.face-btn[data-v-36c617a4]{background:#fff0f6;color:#c41d7f;border:1px solid #ffadd2}.action-btn.face-btn[data-v-36c617a4]:hover{background:#ffd6e7}.action-btn.counselor-btn[data-v-36c617a4]{background:#fffbe6;color:#ad8b00;border:1px solid #ffe58f}.action-btn.counselor-btn[data-v-36c617a4]:hover{background:#fff1b8}.stat-badge[data-v-36c617a4]{display:inline-block;padding:2px 8px;border-radius:4px;font-size:12px;font-weight:500}.student-badge[data-v-36c617a4]{background:#e6f4ff;color:#1677ff}.teacher-badge[data-v-36c617a4]{background:#fff7e6;color:#d46b08}.zero-badge[data-v-36c617a4]{background:#fafafa;color:#bfbfbf}.stats-total-row td[data-v-36c617a4]{background:#fafafa;border-top:2px solid #d9d9d9;padding:10px 16px}.face-tip[data-v-36c617a4]{display:flex;gap:10px;align-items:flex-start;background:#e6f4ff;border:1px solid #91caff;border-radius:6px;padding:10px 14px;font-size:13px;color:#003a8c;margin-bottom:16px;line-height:1.6}.face-tip svg[data-v-36c617a4]{width:16px;height:16px;flex-shrink:0;margin-top:2px;color:#1677ff}.face-upload-area[data-v-36c617a4]{border:2px dashed #d9d9d9;border-radius:8px;padding:28px 20px;text-align:center;cursor:pointer;transition:border-color .2s,background .2s;margin-bottom:12px;position:relative}.face-upload-area[data-v-36c617a4]:hover{border-color:#1677ff;background:#f0f7ff}.face-upload-area.has-file[data-v-36c617a4]{border-color:#52c41a;background:#f6ffed}.upload-icon[data-v-36c617a4]{width:36px;height:36px;color:#bfbfbf;margin-bottom:8px}.file-ok-icon[data-v-36c617a4]{color:#52c41a}.upload-hint[data-v-36c617a4]{color:#00000073;font-size:13px;margin:0}.upload-filename[data-v-36c617a4]{color:#000000d9;font-size:14px;font-weight:500;margin:0}.upload-filesize[data-v-36c617a4]{color:#00000073;font-size:12px;margin-left:4px}.remove-file-btn[data-v-36c617a4]{margin-top:8px;padding:2px 10px;background:#fff;border:1px solid #ff4d4f;color:#ff4d4f;border-radius:4px;font-size:12px;cursor:pointer;font-family:inherit}.remove-file-btn[data-v-36c617a4]:hover{background:#fff2f0}.overwrite-label[data-v-36c617a4]{display:flex;align-items:center;gap:6px;font-size:13px;color:#000000d9;cursor:pointer;margin-bottom:12px}.overwrite-label input[data-v-36c617a4]{accent-color:#1677ff}.face-result[data-v-36c617a4]{margin-top:12px}.face-result-summary[data-v-36c617a4]{border-radius:6px;padding:10px 14px;font-size:13px;display:flex;gap:12px;flex-wrap:wrap}.result-ok[data-v-36c617a4]{background:#f6ffed;border:1px solid #b7eb8f;color:#237804}.result-warn[data-v-36c617a4]{background:#fffbe6;border:1px solid #ffe58f;color:#874d00}.face-result-errors[data-v-36c617a4]{margin-top:8px;max-height:120px;overflow-y:auto}.face-error-item[data-v-36c617a4]{font-size:12px;color:#ff4d4f;padding:2px 0;border-bottom:1px solid #fff2f0}.notice-section[data-v-36c617a4]{border-radius:8px;padding:16px 20px;margin-bottom:16px;border:1px solid}.notice-blue[data-v-36c617a4]{background:#e6f4ff;border-color:#91caff}.notice-orange[data-v-36c617a4]{background:#fff7e6;border-color:#ffd591}.notice-header[data-v-36c617a4]{display:flex;align-items:center;gap:7px;margin-bottom:10px}.notice-icon[data-v-36c617a4]{width:16px;height:16px;flex-shrink:0}.notice-blue .notice-icon[data-v-36c617a4]{color:#1677ff}.notice-orange .notice-icon[data-v-36c617a4]{color:#d46b08}.notice-title[data-v-36c617a4]{font-size:14px;font-weight:600}.notice-blue .notice-title[data-v-36c617a4]{color:#003a8c}.notice-orange .notice-title[data-v-36c617a4]{color:#7c3c00}.notice-desc[data-v-36c617a4]{font-size:13px;color:#003a8c;margin:0 0 10px;line-height:1.6}.notice-steps[data-v-36c617a4]{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:6px}.notice-steps li[data-v-36c617a4]{display:flex;align-items:baseline;gap:8px;font-size:13px;color:#003a8c;line-height:1.6}.step-num[data-v-36c617a4]{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;background:#1677ff;color:#fff;border-radius:50%;font-size:11px;font-weight:600;flex-shrink:0}.notice-role-rows[data-v-36c617a4]{display:flex;flex-direction:column;gap:8px}.notice-role-item[data-v-36c617a4]{display:flex;align-items:baseline;gap:10px;font-size:13px;color:#7c3c00;line-height:1.6}.role-tag[data-v-36c617a4]{display:inline-flex;align-items:center;padding:1px 8px;border-radius:4px;font-size:12px;font-weight:500;white-space:nowrap;flex-shrink:0;border:1px solid}.teacher-tag[data-v-36c617a4]{background:#fff7e6;color:#d46b08;border-color:#ffd591}.counselor-tag[data-v-36c617a4]{background:#e6fffb;color:#08979c;border-color:#87e8de}.student-tag[data-v-36c617a4]{background:#f6ffed;color:#389e0d;border-color:#b7eb8f}.import-section[data-v-36c617a4]{padding:8px 0}.import-tip[data-v-36c617a4]{font-size:13px;color:#606266;background:#f5f7fa;border-radius:6px;padding:10px 14px;margin-bottom:14px;line-height:1.8}.import-actions[data-v-36c617a4]{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.import-result[data-v-36c617a4]{margin-top:16px}.credentials-modal[data-v-36c617a4]{max-width:460px}.credentials-header[data-v-36c617a4]{background:#f6ffed;border-bottom:1px solid #b7eb8f}.credentials-title-wrap[data-v-36c617a4]{display:flex;align-items:center;gap:8px}.credentials-title-wrap h3[data-v-36c617a4]{color:#389e0d;margin:0;font-size:16px}.credentials-icon[data-v-36c617a4]{width:20px;height:20px;color:#52c41a;flex-shrink:0}.credentials-notice[data-v-36c617a4]{display:flex;align-items:flex-start;gap:8px;background:#fffbe6;border:1px solid #ffe58f;border-radius:6px;padding:10px 12px;font-size:13px;color:#874d00;margin-bottom:16px;line-height:1.5}.credentials-notice svg[data-v-36c617a4]{width:16px;height:16px;color:#faad14;flex-shrink:0;margin-top:1px}.credentials-user-info[data-v-36c617a4]{display:flex;align-items:center;gap:8px;margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid var(--border-light)}.credentials-name[data-v-36c617a4]{font-size:16px;font-weight:600;color:#000000d9}.credentials-item[data-v-36c617a4]{margin-bottom:14px}.credentials-label[data-v-36c617a4]{font-size:12px;color:#00000073;margin-bottom:6px;font-weight:400}.credentials-value-row[data-v-36c617a4]{display:flex;align-items:center;gap:8px;background:#fafafa;border:1px solid var(--border-color);border-radius:6px;padding:10px 12px}.credentials-value[data-v-36c617a4]{flex:1;font-size:15px;font-family:SFMono-Regular,Consolas,monospace;color:#000000d9;word-break:break-all}.credentials-password[data-v-36c617a4]{color:#1677ff;font-weight:600;font-size:17px;letter-spacing:1px}.copy-btn[data-v-36c617a4]{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;background:#fff;border:1px solid var(--border-color);border-radius:var(--radius-sm);font-size:12px;color:#00000073;cursor:pointer;transition:border-color .15s,color .15s;white-space:nowrap;font-family:inherit;flex-shrink:0}.copy-btn svg[data-v-36c617a4]{width:13px;height:13px}.copy-btn[data-v-36c617a4]:hover{border-color:#1677ff;color:#1677ff}.copy-all-btn[data-v-36c617a4]{display:flex;align-items:center;justify-content:center;gap:6px;width:100%;margin-top:6px;padding:9px;background:#e6f4ff;border:1px solid #91caff;border-radius:6px;font-size:14px;color:#1677ff;cursor:pointer;transition:background .15s;font-family:inherit}.copy-all-btn svg[data-v-36c617a4]{width:15px;height:15px}.copy-all-btn[data-v-36c617a4]:hover{background:#bae0ff}.school-account-page[data-v-5a40af49]{min-height:100vh;background:#f5f7fa;--border:#e8e8e8;--primary:#1677ff}.page-header[data-v-5a40af49]{background:#fff;border-bottom:1px solid var(--border);padding:16px 0}.header-container[data-v-5a40af49]{max-width:1200px;margin:0 auto;padding:0 24px;display:flex;align-items:center;gap:16px;flex-wrap:wrap}.back-btn[data-v-5a40af49]{display:inline-flex;align-items:center;gap:8px;padding:8px 14px;background:#fafafa;border:1px solid var(--border);border-radius:8px;cursor:pointer;font-size:14px}.back-btn svg[data-v-5a40af49]{width:18px;height:18px}.page-info[data-v-5a40af49]{flex:1;min-width:200px}.page-title[data-v-5a40af49]{margin:0;font-size:20px;font-weight:600}.page-subtitle[data-v-5a40af49]{margin:4px 0 0;font-size:13px;color:#666}.header-actions-right[data-v-5a40af49]{display:flex;align-items:center;gap:10px}.help-btn[data-v-5a40af49]{padding:8px 14px;background:#e6f7ff;color:#1890ff;border:1px solid #91d5ff;border-radius:8px;cursor:pointer;font-size:13px}.help-btn[data-v-5a40af49]:hover{background:#bae7ff}.create-school-top[data-v-5a40af49]{padding:10px 18px;background:#722ed1;color:#fff;border:none;border-radius:8px;cursor:pointer;font-size:14px}.create-school-top[data-v-5a40af49]:hover{filter:brightness(1.05)}.help-content h4[data-v-5a40af49]{margin:16px 0 8px;font-size:15px;color:#333}.help-content ol[data-v-5a40af49],.help-content ul[data-v-5a40af49]{padding-left:20px;margin:8px 0}.help-content li[data-v-5a40af49]{margin:6px 0;line-height:1.6;font-size:14px;color:#555}.main-content[data-v-5a40af49]{max-width:1200px;margin:0 auto;padding:24px}.error-banner[data-v-5a40af49]{background:#fff2f0;border:1px solid #ffccc7;color:#cf1322;padding:10px 14px;border-radius:8px;margin-bottom:16px}.loading-state[data-v-5a40af49]{padding:40px;text-align:center;color:#666}.school-grid[data-v-5a40af49]{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:14px}.school-card[data-v-5a40af49]{text-align:left;padding:16px;border-radius:12px;border:1px solid var(--border);background:#fff;cursor:pointer;transition:box-shadow .15s,border-color .15s}.school-card[data-v-5a40af49]:hover{box-shadow:0 4px 12px rgba(0,0,0,.06)}.school-card.active[data-v-5a40af49]{border-color:#722ed1;box-shadow:0 0 0 2px #d3adf7}.school-name[data-v-5a40af49]{display:block;font-weight:600;font-size:16px;margin-bottom:10px}.school-stats[data-v-5a40af49]{display:flex;flex-direction:column;gap:6px;font-size:12px;color:#666}.empty-hint[data-v-5a40af49]{grid-column:1/-1;color:#999;padding:24px}.detail-panel[data-v-5a40af49]{margin-top:32px;background:#fff;border:1px solid var(--border);border-radius:12px;padding:20px}.detail-header[data-v-5a40af49]{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:20px}.detail-header h2[data-v-5a40af49]{margin:0;font-size:18px}.pill[data-v-5a40af49]{font-size:12px;padding:4px 10px;background:#e6f4ff;color:var(--primary);border-radius:20px}.link-btn[data-v-5a40af49]{background:none;border:none;color:var(--primary);cursor:pointer;font-size:14px}.subsection-title[data-v-5a40af49]{font-size:15px;margin:24px 0 12px}.loading-inline[data-v-5a40af49]{color:#888;margin-bottom:12px}.data-table[data-v-5a40af49]{width:100%;border-collapse:collapse;font-size:13px}.data-table td[data-v-5a40af49],.data-table th[data-v-5a40af49]{border:1px solid var(--border);padding:10px 12px;text-align:left}.data-table th[data-v-5a40af49]{background:#fafafa;font-weight:600}.muted-cell[data-v-5a40af49]{color:#999;text-align:center}.tag[data-v-5a40af49]{display:inline-block;padding:2px 8px;border-radius:4px;font-size:12px}.tag.ok[data-v-5a40af49]{background:#f6ffed;color:#389e0d}.tag.muted[data-v-5a40af49]{background:#f5f5f5;color:#8c8c8c}.small-btn[data-v-5a40af49]{padding:4px 12px;border-radius:6px;font-size:12px;cursor:pointer;border:1px solid var(--border);background:#fff}.small-btn.primary[data-v-5a40af49]{background:var(--primary);color:#fff;border-color:var(--primary)}.small-btn.warn[data-v-5a40af49]{background:#fff7e6;color:#d46b08;border-color:#ffd591}.small-btn.warn[data-v-5a40af49]:hover{background:#ffe7ba}.small-btn[data-v-5a40af49]:disabled{opacity:.5;cursor:not-allowed}.add-teacher-box[data-v-5a40af49]{margin-top:28px;padding-top:20px;border-top:1px dashed var(--border)}.hint[data-v-5a40af49]{font-size:13px;color:#666;margin:0 0 12px}.form-grid[data-v-5a40af49]{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px;margin-bottom:14px}.form-grid label[data-v-5a40af49]{display:flex;flex-direction:column;gap:6px;font-size:13px;color:#333}.form-grid input[data-v-5a40af49],.form-grid select[data-v-5a40af49]{padding:8px 10px;border:1px solid var(--border);border-radius:6px;font-size:14px}.action-btn.primary[data-v-5a40af49]{padding:10px 20px;background:var(--primary);color:#fff;border:none;border-radius:8px;cursor:pointer;font-size:14px}.action-btn.secondary[data-v-5a40af49]{padding:10px 20px;background:#fff;border:1px solid var(--border);border-radius:8px;cursor:pointer}.modal-overlay[data-v-5a40af49]{position:fixed;inset:0;background:rgba(0,0,0,.45);display:flex;align-items:center;justify-content:center;z-index:1000;padding:16px}.modal[data-v-5a40af49]{background:#fff;border-radius:12px;padding:24px;max-width:420px;width:100%;box-shadow:0 8px 24px rgba(0,0,0,.12)}.modal.wide[data-v-5a40af49]{max-width:520px}.modal h3[data-v-5a40af49]{margin:0 0 16px;font-size:17px}.modal label[data-v-5a40af49]{display:flex;flex-direction:column;gap:6px;margin-bottom:14px;font-size:13px}.modal input[data-v-5a40af49],.modal select[data-v-5a40af49]{padding:8px 10px;border:1px solid var(--border);border-radius:6px}.modal-actions[data-v-5a40af49]{display:flex;justify-content:flex-end;gap:10px;margin-top:16px}.teacher-teaching[data-v-1cd17bc0]{padding:20px}.header[data-v-1cd17bc0]{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;flex-wrap:wrap;gap:12px}.header h2[data-v-1cd17bc0]{margin:0;color:#000000d9}.header-actions[data-v-1cd17bc0]{display:flex;gap:8px}.btn[data-v-1cd17bc0]{padding:8px 16px;border:1px solid #d9d9d9;border-radius:6px;cursor:pointer;font-size:14px;background:#fff;transition:all .2s}.btn-primary[data-v-1cd17bc0]{background:#1677ff;color:#fff;border-color:#1677ff}.btn-outline[data-v-1cd17bc0]{background:#fff}.btn-outline.active[data-v-1cd17bc0]{border-color:#1677ff;color:#1677ff;background:#e6f4ff}.btn-sm[data-v-1cd17bc0]{padding:4px 12px;font-size:12px}.btn-small[data-v-1cd17bc0]{padding:4px 10px;font-size:12px}.btn[data-v-1cd17bc0]:hover{opacity:.85}.stats-grid[data-v-1cd17bc0]{display:flex;gap:16px;flex-wrap:wrap}.stat-card[data-v-1cd17bc0]{background:#fff;border-radius:8px;padding:20px;flex:1;min-width:150px;text-align:center;box-shadow:0 1px 4px rgba(0,0,0,.08)}.stat-number[data-v-1cd17bc0]{font-size:28px;font-weight:700;color:#1677ff}.stat-label[data-v-1cd17bc0]{font-size:13px;color:#666;margin-top:4px}.filter-bar[data-v-1cd17bc0]{display:flex;gap:12px;margin-bottom:20px;align-items:center;flex-wrap:wrap}.date-input[data-v-1cd17bc0],.search-input[data-v-1cd17bc0]{padding:8px 12px;border:1px solid #d9d9d9;border-radius:6px;font-size:14px}.search-input[data-v-1cd17bc0]{flex:1;max-width:300px}.courses-grid[data-v-1cd17bc0]{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:16px}.course-card[data-v-1cd17bc0]{background:#fff;border-radius:8px;padding:16px;box-shadow:0 1px 4px rgba(0,0,0,.08);border-left:4px solid #1677ff}.course-card.has-attendance[data-v-1cd17bc0]{border-left-color:#52c41a}.course-header[data-v-1cd17bc0]{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.course-name[data-v-1cd17bc0]{font-size:16px;font-weight:600}.course-status[data-v-1cd17bc0]{padding:2px 8px;border-radius:4px;font-size:12px;background:#f5f5f5;color:#666}.course-status.ongoing[data-v-1cd17bc0]{background:#e6f4ff;color:#1677ff}.course-status.completed[data-v-1cd17bc0]{background:#f6ffed;color:#52c41a}.course-info[data-v-1cd17bc0]{font-size:12px;color:#999;display:flex;gap:12px;margin-bottom:8px;flex-wrap:wrap}.course-teacher[data-v-1cd17bc0]{font-size:13px;color:#666;margin-bottom:12px}.course-actions[data-v-1cd17bc0]{display:flex;gap:8px}.attendance-table-wrap[data-v-1cd17bc0]{background:#fff;border-radius:8px;box-shadow:0 1px 4px rgba(0,0,0,.08);overflow:hidden}.attendance-table[data-v-1cd17bc0]{width:100%;border-collapse:collapse}.attendance-table th[data-v-1cd17bc0]{background:#fafafa;padding:12px 16px;text-align:left;font-size:13px;color:#666;border-bottom:1px solid #f0f0f0}.attendance-table td[data-v-1cd17bc0]{padding:12px 16px;font-size:13px;border-bottom:1px solid #f5f5f5}.attendance-table tr[data-v-1cd17bc0]:hover{background:#fafafa}.status-tag[data-v-1cd17bc0]{padding:2px 8px;border-radius:4px;font-size:12px}.status-checked_in[data-v-1cd17bc0]{background:#f6ffed;color:#52c41a}.status-checked_out[data-v-1cd17bc0]{background:#e6f4ff;color:#1677ff}.status-absent[data-v-1cd17bc0]{background:#fff1f0;color:#ff4d4f}.status-late[data-v-1cd17bc0]{background:#fffbe6;color:#faad14}.empty-row[data-v-1cd17bc0],.empty-state[data-v-1cd17bc0]{text-align:center;padding:60px 20px;color:#999;font-size:14px}.loading-overlay[data-v-1cd17bc0]{position:fixed;top:0;left:0;right:0;bottom:0;background:hsla(0,0%,100%,.7);display:flex;align-items:center;justify-content:center;z-index:100}.spinner[data-v-1cd17bc0]{width:40px;height:40px;border:3px solid #f0f0f0;border-top-color:#1677ff;border-radius:50%;animation:spin-1cd17bc0 .8s linear infinite}@keyframes spin-1cd17bc0{to{transform:rotate(1turn)}}.course-detail[data-v-db089c68]{padding:20px;background:var(--bg-body);min-height:100vh}.page-header[data-v-db089c68]{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px;background:#fff;padding:20px;border-radius:8px;box-shadow:var(--shadow-card);border:1px solid var(--border-light)}.header-left[data-v-db089c68]{display:flex;align-items:center;gap:15px}.header-left h1[data-v-db089c68]{margin:0;color:#000000d9;font-size:24px}.error-state[data-v-db089c68],.loading[data-v-db089c68]{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px;background:#fff;border-radius:8px;box-shadow:var(--shadow-card);border:1px solid var(--border-light)}.spinner[data-v-db089c68]{width:40px;height:40px;border:4px solid #f3f3f3;border-top:4px solid #409eff;border-radius:50%;animation:spin-db089c68 1s linear infinite;margin-bottom:15px}.spinner-sm[data-v-db089c68]{width:20px;height:20px;border:2px solid #f3f3f3;border-top:2px solid #409eff;border-radius:50%;animation:spin-db089c68 1s linear infinite}@keyframes spin-db089c68{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.error-icon[data-v-db089c68]{font-size:48px;margin-bottom:15px}.content[data-v-db089c68]{display:flex;flex-direction:column;gap:30px}.attendance-card[data-v-db089c68],.course-info-card[data-v-db089c68],.history-card[data-v-db089c68],.photo-card[data-v-db089c68]{background:#fff;border-radius:8px;box-shadow:var(--shadow-card);border:1px solid var(--border-light);overflow:hidden}.card-header[data-v-db089c68]{display:flex;justify-content:space-between;align-items:center;padding:20px;border-bottom:1px solid var(--border-light);background-color:#fafafa}.card-header h2[data-v-db089c68]{margin:0;color:#000000d9;font-size:18px}.info-grid[data-v-db089c68]{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:15px;padding:20px}.info-item[data-v-db089c68]{display:flex;align-items:center}.info-item .label[data-v-db089c68]{font-weight:500;color:#00000073;width:100px;flex-shrink:0}.info-item .value[data-v-db089c68]{color:#000000d9;flex:1}.status-badge[data-v-db089c68]{padding:4px 12px;border-radius:4px;font-size:12px;font-weight:700}.status-completed[data-v-db089c68]{background-color:#f0f9ff;color:#67c23a}.status-pending[data-v-db089c68]{background-color:#fdf6ec;color:#e6a23c}.status-late[data-v-db089c68]{background-color:#fef0f0;color:#f56c6c}.status-text[data-v-db089c68]{font-weight:500}.late-duration[data-v-db089c68]{color:#f56c6c;font-weight:500}.no-attendance[data-v-db089c68]{display:flex;flex-direction:column;align-items:center;padding:40px}.no-attendance-icon[data-v-db089c68]{font-size:48px;margin-bottom:15px}.attendance-info[data-v-db089c68]{padding:20px}.attendance-grid[data-v-db089c68]{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:15px}.attendance-item[data-v-db089c68]{display:flex;align-items:center}.attendance-item.full-width[data-v-db089c68]{grid-column:1/-1;flex-direction:column;align-items:flex-start;gap:5px}.attendance-item .label[data-v-db089c68]{font-weight:500;color:#00000073;width:80px;flex-shrink:0}.attendance-item .value[data-v-db089c68]{color:#000000d9;flex:1}.loading-photos[data-v-db089c68],.no-photos[data-v-db089c68]{display:flex;flex-direction:column;align-items:center;padding:40px}.no-photos-icon[data-v-db089c68]{font-size:48px;margin-bottom:15px}.photos-grid[data-v-db089c68]{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:15px;padding:20px}.photo-item[data-v-db089c68]{position:relative;aspect-ratio:1;cursor:pointer;border-radius:4px;overflow:hidden;transition:transform .3s}.photo-item[data-v-db089c68]:hover{transform:scale(1.05)}.photo-item img[data-v-db089c68]{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.photo-overlay[data-v-db089c68]{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(transparent,rgba(0,0,0,.7));color:#fff;padding:10px;transform:translateY(100%);transition:transform .3s}.photo-item:hover .photo-overlay[data-v-db089c68]{transform:translateY(0)}.photo-info p[data-v-db089c68]{margin:2px 0;font-size:12px}.loading-history[data-v-db089c68],.no-history[data-v-db089c68]{display:flex;flex-direction:column;align-items:center;padding:40px}.history-table[data-v-db089c68]{overflow-x:auto}.history-table table[data-v-db089c68]{width:100%;border-collapse:collapse}.history-table td[data-v-db089c68],.history-table th[data-v-db089c68]{padding:12px;text-align:left;border-bottom:1px solid var(--border-light)}.history-table th[data-v-db089c68]{background-color:#fafafa;font-weight:500;color:#00000073}.history-table td[data-v-db089c68]{color:#000000d9}.photo-viewer-overlay[data-v-db089c68]{position:fixed;top:0;left:0;right:0;bottom:0;background-color:rgba(0,0,0,.9);display:flex;align-items:center;justify-content:center;z-index:1000}.photo-viewer[data-v-db089c68]{background:#fff;border-radius:8px;max-width:90vw;max-height:90vh;display:flex;flex-direction:column}.viewer-header[data-v-db089c68]{display:flex;justify-content:space-between;align-items:center;padding:15px 20px;border-bottom:1px solid var(--border-light)}.viewer-header h3[data-v-db089c68]{margin:0;color:#000000d9}.close-btn[data-v-db089c68]{background:none;border:none;font-size:24px;cursor:pointer;color:#00000040;padding:0;width:30px;height:30px;display:flex;align-items:center;justify-content:center}.viewer-body[data-v-db089c68]{position:relative;display:flex;align-items:center;justify-content:center;min-height:400px}.photo-container[data-v-db089c68]{max-width:800px;max-height:600px;display:flex;align-items:center;justify-content:center}.photo-container img[data-v-db089c68]{max-width:100%;max-height:100%;border-radius:4px}.nav-btn[data-v-db089c68]{position:absolute;top:50%;transform:translateY(-50%);background:rgba(0,0,0,.5);color:#fff;border:none;width:40px;height:40px;border-radius:50%;font-size:20px;cursor:pointer;transition:background-color .3s}.nav-btn[data-v-db089c68]:hover:not(:disabled){background:rgba(0,0,0,.7)}.nav-btn[data-v-db089c68]:disabled{opacity:.3;cursor:not-allowed}.prev-btn[data-v-db089c68]{left:20px}.next-btn[data-v-db089c68]{right:20px}.viewer-footer[data-v-db089c68]{display:flex;justify-content:space-between;align-items:center;padding:15px 20px;border-top:1px solid var(--border-light);background-color:#fafafa}.photo-details p[data-v-db089c68]{margin:2px 0;font-size:14px;color:#00000073}.btn[data-v-db089c68]{padding:8px 16px;border:none;border-radius:4px;cursor:pointer;font-size:14px;transition:all .3s;text-decoration:none;display:inline-flex;align-items:center;gap:5px}.btn-primary[data-v-db089c68]{background-color:#1677ff;color:#fff}.btn-primary[data-v-db089c68]:hover{background-color:#337ecc}.btn-secondary[data-v-db089c68]{background-color:#00000040;color:#fff}.btn-secondary[data-v-db089c68]:hover{background-color:#767a82}.btn-info[data-v-db089c68]{background-color:#00000040;color:#fff}.btn-info[data-v-db089c68]:hover{background-color:#767a82}.btn-link[data-v-db089c68]{background:none;color:#1677ff;padding:4px 8px}.btn-link[data-v-db089c68]:hover{color:#337ecc;text-decoration:underline}.btn-sm[data-v-db089c68]{padding:6px 12px;font-size:12px}.btn[data-v-db089c68]:disabled{opacity:.6;cursor:not-allowed}.icon-refresh[data-v-db089c68]:before{content:""}@media (max-width:768px){.attendance-grid[data-v-db089c68],.info-grid[data-v-db089c68]{grid-template-columns:1fr}.photos-grid[data-v-db089c68]{grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}}.schedule-import[data-v-ed3ec11e]{padding:20px;min-height:100vh;background:#f5f7fa}.page-header[data-v-ed3ec11e]{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;background:#fff;padding:16px 24px;border-radius:8px;box-shadow:0 1px 4px rgba(0,0,0,.08)}.header-left[data-v-ed3ec11e]{display:flex;align-items:center;gap:16px}.header-left h1[data-v-ed3ec11e]{margin:0;font-size:22px;color:#303133}.card-title[data-v-ed3ec11e]{font-size:16px;font-weight:600;color:#303133}.import-section[data-v-ed3ec11e]{margin-bottom:24px}.import-form[data-v-ed3ec11e]{display:flex;align-items:flex-start;flex-wrap:wrap;gap:12px}.upload-row[data-v-ed3ec11e]{display:flex;align-items:center;flex-wrap:wrap;gap:12px}.template-link[data-v-ed3ec11e]{font-size:14px;color:var(--el-color-primary);text-decoration:none}.template-link[data-v-ed3ec11e]:hover{text-decoration:underline}.table-section[data-v-ed3ec11e]{margin-bottom:24px}.table-header[data-v-ed3ec11e]{display:flex;justify-content:space-between;align-items:center}.pagination-wrap[data-v-ed3ec11e]{display:flex;justify-content:flex-end;margin-top:16px}.section-label[data-v-ed3ec11e]{margin:0 0 10px;font-size:14px;font-weight:500;color:#303133;display:flex;align-items:center;gap:8px}.dialog-footer[data-v-ed3ec11e]{display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap}.class-selection-window[data-v-074bf5fe]{padding:20px;min-height:100vh;background:#f5f7fa}.page-header[data-v-074bf5fe]{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;background:#fff;padding:16px 24px;border-radius:8px;box-shadow:0 1px 4px rgba(0,0,0,.08)}.header-left[data-v-074bf5fe]{display:flex;align-items:center;gap:16px}.header-left h1[data-v-074bf5fe]{margin:0;font-size:22px;color:#303133}.card-title[data-v-074bf5fe]{font-size:16px;font-weight:600;color:#303133}.status-section[data-v-074bf5fe]{margin-bottom:24px}.status-content[data-v-074bf5fe]{min-height:80px}.remaining-time[data-v-074bf5fe]{color:#e6a23c;font-weight:600;font-size:15px}.form-section[data-v-074bf5fe]{margin-bottom:24px}.temp-class-management[data-v-41928bf2]{padding:20px;min-height:100vh;background:#f5f7fa}.page-header[data-v-41928bf2]{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;background:#fff;padding:16px 24px;border-radius:8px;box-shadow:0 1px 4px rgba(0,0,0,.08)}.header-left[data-v-41928bf2]{display:flex;align-items:center;gap:16px}.header-left h1[data-v-41928bf2]{margin:0;font-size:22px;color:#303133}.card-title[data-v-41928bf2]{font-size:16px;font-weight:600;color:#303133}.filter-section[data-v-41928bf2],.table-section[data-v-41928bf2]{margin-bottom:24px}.pagination-wrap[data-v-41928bf2]{display:flex;justify-content:flex-end;margin-top:16px}.capacity-full[data-v-41928bf2]{color:#f56c6c;font-weight:600}.morning-exercise[data-v-0d1e78de]{padding:20px}.header-row[data-v-0d1e78de]{display:flex;align-items:baseline;gap:12px}.page-title[data-v-0d1e78de]{font-size:18px;font-weight:700;color:#000000d9}.page-sub[data-v-0d1e78de]{font-size:13px;color:#909399}.dashboard-section[data-v-0d1e78de]{padding-bottom:8px}.dashboard-alert[data-v-0d1e78de]{margin-bottom:16px}.dashboard-notice-multiline[data-v-0d1e78de] .el-alert__title{white-space:pre-line;line-height:1.55}.dashboard-toolbar[data-v-0d1e78de]{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:16px}.dashboard-summary[data-v-0d1e78de]{min-height:120px}.summary-text[data-v-0d1e78de]{margin:0 0 16px;color:#606266;font-size:14px}.block-title[data-v-0d1e78de]{margin:20px 0 8px;font-size:16px;font-weight:600}.block-hint[data-v-0d1e78de]{margin:0 0 12px;font-size:12px;color:#909399}.table-block[data-v-0d1e78de]{margin-bottom:24px}.tab-content[data-v-0d1e78de]{padding:12px 0 0}.action-bar[data-v-0d1e78de]{margin-bottom:20px;padding:15px;background:var(--bg-body);border-radius:6px}.dialog-footer[data-v-0d1e78de]{text-align:right}.el-descriptions[data-v-0d1e78de],.mb-20[data-v-0d1e78de]{margin-bottom:20px}.sunshine-run-dashboard[data-v-51df2d70]{background:var(--bg-body);padding:14px;min-height:100vh}.dashboard-header[data-v-51df2d70]{display:flex;justify-content:space-between;align-items:center;background:#fff;padding:12px 20px;border-radius:8px;margin-bottom:12px;box-shadow:0 1px 4px rgba(0,0,0,.06)}.dashboard-header h1[data-v-51df2d70]{font-size:18px;font-weight:600;color:#2c3e50;margin:0}.header-actions[data-v-51df2d70]{display:flex;gap:10px;align-items:center}.weekly-completion-strip[data-v-51df2d70]{background:linear-gradient(90deg,#e8f4fc,#f0f9ff);border-radius:8px;padding:10px 16px;margin-bottom:12px;display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 12px;font-size:13px;border:1px solid #bae0ff}.wc-title[data-v-51df2d70]{font-weight:600;color:#1677ff}.wc-dates[data-v-51df2d70]{color:#666;font-size:12px}.wc-rate[data-v-51df2d70]{font-size:18px;font-weight:700;color:#389e0d}.wc-sub[data-v-51df2d70]{color:#666;font-size:12px}.wc-muted[data-v-51df2d70]{color:#999;font-size:12px}.loading-container[data-v-51df2d70]{align-items:center;justify-content:center;height:300px;color:#00000040;font-size:14px}.dashboard-content[data-v-51df2d70],.loading-container[data-v-51df2d70]{display:flex;flex-direction:column;gap:12px}.stats-cards[data-v-51df2d70]{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.stat-card[data-v-51df2d70]{background:#fff;border-radius:8px;padding:14px 16px;display:flex;justify-content:space-between;align-items:center;box-shadow:0 1px 4px rgba(0,0,0,.06);transition:box-shadow .2s}.stat-card[data-v-51df2d70]:hover{box-shadow:0 3px 12px rgba(0,0,0,.1)}.stat-label[data-v-51df2d70]{font-size:12px;color:#00000040;margin-bottom:6px}.stat-value[data-v-51df2d70]{font-size:24px;font-weight:700;color:#2c3e50;line-height:1}.stat-unit[data-v-51df2d70]{font-size:12px;font-weight:400;color:#00000040;margin-left:3px}.stat-trend[data-v-51df2d70]{font-size:28px;opacity:.7}.charts-row[data-v-51df2d70]{display:grid;grid-template-columns:320px 1fr;gap:12px;align-items:start}.charts-right[data-v-51df2d70]{display:flex;flex-direction:column;gap:12px}.chart-card[data-v-51df2d70]{background:#fff;border-radius:8px;padding:14px 16px;box-shadow:0 1px 4px rgba(0,0,0,.06)}.card-header[data-v-51df2d70]{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.card-header h3[data-v-51df2d70]{font-size:14px;font-weight:600;color:#2c3e50;margin:0}.subtitle[data-v-51df2d70]{font-size:11px;color:#c0c4cc}.ranking-card[data-v-51df2d70]{max-height:480px}.ranking-list[data-v-51df2d70]{overflow-y:auto;max-height:420px}.ranking-list[data-v-51df2d70]::-webkit-scrollbar{width:4px}.ranking-list[data-v-51df2d70]::-webkit-scrollbar-thumb{background:#e4e7ed;border-radius:2px}.ranking-item[data-v-51df2d70]{display:flex;align-items:flex-start;gap:10px;padding:8px 6px;border-radius:6px;cursor:pointer;transition:background .15s}.ranking-item[data-v-51df2d70]:hover{background:var(--bg-body)}.ranking-item.top-three[data-v-51df2d70]{background:linear-gradient(90deg,rgba(102,126,234,.04),transparent)}.rank-badge[data-v-51df2d70]{width:26px;height:26px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:12px;background:#f0f2f5;color:#00000040;flex-shrink:0;margin-top:2px}.rank-badge.rank-first[data-v-51df2d70]{background:gold;color:#fff}.rank-badge.rank-second[data-v-51df2d70]{background:#b0b0b0;color:#fff}.rank-badge.rank-third[data-v-51df2d70]{background:#cd7f32;color:#fff}.rank-info[data-v-51df2d70]{flex:1;min-width:0}.rank-name[data-v-51df2d70]{font-size:13px;color:#000000d9;margin-bottom:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rank-wc[data-v-51df2d70]{font-size:11px;color:#389e0d;margin-bottom:4px;line-height:1.3;white-space:normal}.rank-bar-wrap[data-v-51df2d70]{height:4px;background:#f0f2f5;border-radius:2px;overflow:hidden}.rank-bar[data-v-51df2d70]{height:100%;border-radius:2px;transition:width .4s ease}.rank-dist[data-v-51df2d70]{font-size:13px;font-weight:600;color:#2c3e50;white-space:nowrap;flex-shrink:0;margin-top:2px}.rank-dist em[data-v-51df2d70]{font-style:normal;font-size:10px;color:#00000040;margin-left:1px}.wc-cell-rate[data-v-51df2d70]{font-weight:600;color:#389e0d}.wc-cell-sub[data-v-51df2d70]{font-size:11px;color:#888;margin-top:2px}.wc-cell-empty[data-v-51df2d70]{color:#ccc}.detail-section[data-v-51df2d70]{background:#fff;border-radius:8px;padding:14px 16px;box-shadow:0 1px 4px rgba(0,0,0,.06)}.section-header[data-v-51df2d70]{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.section-header h3[data-v-51df2d70]{font-size:14px;font-weight:600;color:#2c3e50;margin:0}[data-v-51df2d70] .el-table{font-size:12px}[data-v-51df2d70] .el-table th.el-table__cell{background:#f8f9fa;color:#00000073;font-weight:600;padding:6px 0}[data-v-51df2d70] .el-table td.el-table__cell{padding:5px 0}[data-v-51df2d70] .el-table .top-row td.el-table__cell{background:#f0f9ff;font-weight:500}@media (max-width:1100px){.charts-row[data-v-51df2d70]{grid-template-columns:1fr}.stats-cards[data-v-51df2d70]{grid-template-columns:repeat(2,1fr)}}.homework-dashboard[data-v-cc6945c0]{background:var(--bg-body,#f5f7fa);padding:14px;min-height:100vh}.dashboard-header[data-v-cc6945c0]{display:flex;justify-content:space-between;align-items:center;background:#fff;padding:12px 20px;border-radius:8px;margin-bottom:12px;box-shadow:0 1px 4px rgba(0,0,0,.06)}.header-left[data-v-cc6945c0]{display:flex;align-items:center;gap:8px}.header-left h1[data-v-cc6945c0]{margin:0;font-size:18px;font-weight:600;color:#2c3e50}.header-actions[data-v-cc6945c0]{display:flex;gap:10px;align-items:center}.hw-weekly-strip[data-v-cc6945c0]{background:linear-gradient(90deg,#f6ffed,#f0fdf4);border-radius:8px;padding:10px 16px;margin-bottom:12px;display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 12px;font-size:13px;border:1px solid #b7eb8f}.hw-wc-title[data-v-cc6945c0]{font-weight:600;color:#389e0d}.hw-wc-dates[data-v-cc6945c0]{color:#666;font-size:12px}.hw-wc-rate[data-v-cc6945c0]{font-size:18px;font-weight:700;color:#389e0d}.hw-wc-sub[data-v-cc6945c0]{color:#666;font-size:12px}.hw-wc-muted[data-v-cc6945c0]{color:#999;font-size:12px}.rank-wc[data-v-cc6945c0]{font-size:11px;color:#389e0d;margin-bottom:4px;line-height:1.3;white-space:normal}.hw-cell-rate[data-v-cc6945c0]{font-weight:600;color:#389e0d}.hw-cell-sub[data-v-cc6945c0]{font-size:11px;color:#888;margin-top:2px}.hw-cell-empty[data-v-cc6945c0]{color:#ccc}.loading-container[data-v-cc6945c0]{align-items:center;justify-content:center;height:300px;color:#00000040;font-size:14px}.dashboard-content[data-v-cc6945c0],.loading-container[data-v-cc6945c0]{display:flex;flex-direction:column;gap:12px}.stats-cards[data-v-cc6945c0]{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px}.stat-card[data-v-cc6945c0]{background:#fff;border-radius:8px;padding:14px 16px;display:flex;justify-content:space-between;align-items:center;box-shadow:0 1px 4px rgba(0,0,0,.06);transition:box-shadow .2s}.stat-card[data-v-cc6945c0]:hover{box-shadow:0 3px 12px rgba(0,0,0,.1)}.stat-label[data-v-cc6945c0]{font-size:12px;color:#00000040;margin-bottom:6px}.stat-value[data-v-cc6945c0]{font-size:24px;font-weight:700;color:#2c3e50;line-height:1}.stat-unit[data-v-cc6945c0]{font-size:12px;font-weight:400;color:#00000040;margin-left:3px}.stat-trend[data-v-cc6945c0]{font-size:28px;opacity:.7}.charts-row[data-v-cc6945c0]{display:grid;grid-template-columns:1fr 1fr 1fr 1.4fr;gap:12px}.chart-card[data-v-cc6945c0]{background:#fff;border-radius:8px;padding:14px 16px;box-shadow:0 1px 4px rgba(0,0,0,.06)}.card-header[data-v-cc6945c0]{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.card-header h3[data-v-cc6945c0]{margin:0;font-size:14px;font-weight:600;color:#2c3e50}.subtitle[data-v-cc6945c0]{font-size:11px;color:#c0c4cc}.trend-full[data-v-cc6945c0]{grid-column:1/-1}.type-list[data-v-cc6945c0]{display:flex;flex-direction:column;gap:12px}.type-item[data-v-cc6945c0]{display:flex;align-items:center;gap:10px}.type-info[data-v-cc6945c0]{flex:1;min-width:0}.type-name[data-v-cc6945c0]{font-size:13px;color:#333;margin-bottom:4px}.type-bar-wrap[data-v-cc6945c0]{height:5px;background:#f0f2f5;border-radius:3px;overflow:hidden}.type-bar[data-v-cc6945c0]{height:100%;border-radius:3px;transition:width .6s ease}.type-nums[data-v-cc6945c0]{text-align:right;flex-shrink:0}.type-reps[data-v-cc6945c0]{display:block;font-size:14px;font-weight:600;color:#2c3e50}.type-sub[data-v-cc6945c0]{font-size:11px;color:#00000040}.rank-card[data-v-cc6945c0]{max-height:480px}.ranking-list[data-v-cc6945c0]{overflow-y:auto;max-height:420px}.ranking-list[data-v-cc6945c0]::-webkit-scrollbar{width:4px}.ranking-list[data-v-cc6945c0]::-webkit-scrollbar-thumb{background:#e4e7ed;border-radius:2px}.ranking-item[data-v-cc6945c0]{display:flex;align-items:center;gap:10px;padding:8px 6px;border-radius:6px;transition:background .15s}.ranking-item[data-v-cc6945c0]:hover{background:#f5f7fa}.ranking-item.top-three[data-v-cc6945c0]{background:linear-gradient(90deg,rgba(22,119,255,.04),transparent)}.rank-badge[data-v-cc6945c0]{width:26px;height:26px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:12px;background:#f0f2f5;color:#00000040;flex-shrink:0}.rank-badge.rank-first[data-v-cc6945c0]{background:gold;color:#fff}.rank-badge.rank-second[data-v-cc6945c0]{background:#b0b0b0;color:#fff}.rank-badge.rank-third[data-v-cc6945c0]{background:#cd7f32;color:#fff}.rank-info[data-v-cc6945c0]{flex:1;min-width:0}.rank-name[data-v-cc6945c0]{font-size:13px;color:#000000d9;margin-bottom:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rank-meta[data-v-cc6945c0]{font-size:11px;color:#00000040;margin-bottom:3px}.rank-bar-wrap[data-v-cc6945c0]{height:4px;background:#f0f2f5;border-radius:2px;overflow:hidden}.rank-bar[data-v-cc6945c0]{height:100%;border-radius:2px;transition:width .4s ease}.rank-nums[data-v-cc6945c0]{text-align:right;flex-shrink:0}.rank-main[data-v-cc6945c0]{display:block;font-size:14px;font-weight:600;color:#2c3e50}.rank-sub[data-v-cc6945c0]{font-size:11px;color:#00000040}.trend-card[data-v-cc6945c0]{display:flex;flex-direction:column}.legend[data-v-cc6945c0]{display:flex;flex-wrap:wrap;gap:12px;margin-top:10px;padding-top:10px;border-top:1px solid #f0f0f0}.legend-item[data-v-cc6945c0]{display:flex;align-items:center;gap:4px;font-size:12px;color:#666}.legend-dot[data-v-cc6945c0]{width:10px;height:10px;border-radius:50%;flex-shrink:0}.detail-section[data-v-cc6945c0]{background:#fff;border-radius:8px;padding:14px 16px;box-shadow:0 1px 4px rgba(0,0,0,.06)}.section-header[data-v-cc6945c0]{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.section-header h3[data-v-cc6945c0]{font-size:14px;font-weight:600;color:#2c3e50;margin:0}[data-v-cc6945c0] .el-table{font-size:12px}[data-v-cc6945c0] .el-table th.el-table__cell{background:#f8f9fa;color:#00000073;font-weight:600;padding:6px 0}[data-v-cc6945c0] .el-table td.el-table__cell{padding:5px 0}[data-v-cc6945c0] .el-table .top-row td.el-table__cell{background:#f0f9ff;font-weight:500}.empty-tip[data-v-cc6945c0]{text-align:center;color:#bfbfbf;font-size:13px;padding:40px 0}@media (max-width:1400px){.charts-row[data-v-cc6945c0]{grid-template-columns:1fr 1fr}.trend-card[data-v-cc6945c0],.trend-full[data-v-cc6945c0]{grid-column:1/-1}}@media (max-width:1200px){.stats-cards[data-v-cc6945c0]{grid-template-columns:repeat(3,1fr)}}@media (max-width:768px){.stats-cards[data-v-cc6945c0]{grid-template-columns:repeat(2,1fr)}.charts-row[data-v-cc6945c0]{grid-template-columns:1fr}}.homework-assignment[data-v-37d198b2]{padding:20px;background:#f5f7fa;min-height:100vh}.list-card[data-v-37d198b2],.publish-card[data-v-37d198b2]{border-radius:12px;margin-bottom:20px}.card-title[data-v-37d198b2]{display:flex;align-items:center;gap:8px;font-size:16px;font-weight:600;color:#303133}.refresh-btn[data-v-37d198b2]{margin-left:auto}.form-grid[data-v-37d198b2]{display:grid;grid-template-columns:1fr 1fr;gap:0 24px}.form-actions[data-v-37d198b2]{display:flex;justify-content:flex-end;gap:12px;margin-top:8px;padding-top:16px;border-top:1px solid #f0f0f0}.completion-summary[data-v-37d198b2]{display:flex;gap:24px;margin-bottom:20px;padding:16px 20px;background:#f8f9fb;border-radius:8px}.summary-item[data-v-37d198b2]{display:flex;flex-direction:column;align-items:center;gap:4px}.summary-label[data-v-37d198b2]{font-size:12px;color:#909399}.summary-value[data-v-37d198b2]{font-size:24px;font-weight:700;color:#303133}.summary-value.success[data-v-37d198b2]{color:#67c23a}.summary-value.primary[data-v-37d198b2]{color:#409eff}[data-v-37d198b2] .el-table th.el-table__cell{background:#f8f9fa;color:#606266;font-weight:600}@media (max-width:768px){.form-grid[data-v-37d198b2]{grid-template-columns:1fr}.homework-assignment[data-v-37d198b2]{padding:12px}}.completion-dashboard[data-v-39822bb8]{padding:20px;background:#f5f7fa;min-height:100vh}.filter-bar[data-v-39822bb8]{display:flex;justify-content:space-between;align-items:center;background:#fff;padding:16px 24px;border-radius:12px;margin-bottom:16px;box-shadow:0 1px 4px rgba(0,0,0,.06)}.page-title[data-v-39822bb8]{margin:0;font-size:20px;font-weight:700;color:#303133}.filter-controls[data-v-39822bb8]{display:flex;gap:12px;align-items:center}.stats-row[data-v-39822bb8]{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:16px}.stat-card[data-v-39822bb8]{background:#fff;border-radius:12px;padding:20px 24px;display:flex;align-items:center;gap:16px;box-shadow:0 1px 4px rgba(0,0,0,.06);transition:transform .2s,box-shadow .2s}.stat-card[data-v-39822bb8]:hover{transform:translateY(-2px);box-shadow:0 4px 16px rgba(0,0,0,.1)}.stat-icon[data-v-39822bb8]{width:52px;height:52px;border-radius:14px;display:flex;align-items:center;justify-content:center;font-size:24px;flex-shrink:0}.stat-body[data-v-39822bb8]{flex:1}.stat-label[data-v-39822bb8]{font-size:13px;color:#909399;margin-bottom:4px}.stat-value[data-v-39822bb8]{font-size:28px;font-weight:700;color:#303133;line-height:1.1}.stat-unit[data-v-39822bb8]{font-size:13px;font-weight:400;color:#909399;margin-left:4px}.main-content[data-v-39822bb8]{display:flex;flex-direction:column;gap:16px}.chart-card[data-v-39822bb8],.table-card[data-v-39822bb8]{border-radius:12px}.card-header[data-v-39822bb8]{display:flex;justify-content:space-between;align-items:center}.card-title[data-v-39822bb8]{font-size:15px;font-weight:600;color:#303133}.rate-cell[data-v-39822bb8]{display:flex;align-items:center}.echart-container[data-v-39822bb8]{width:100%;height:380px}[data-v-39822bb8] .el-table th.el-table__cell{background:#f8f9fa;color:#606266;font-weight:600}@media (max-width:768px){.stats-row[data-v-39822bb8]{grid-template-columns:1fr}.filter-bar[data-v-39822bb8]{flex-direction:column;gap:12px;align-items:flex-start}.completion-dashboard[data-v-39822bb8]{padding:12px}.echart-container[data-v-39822bb8]{height:280px}}.pe-management[data-v-5196857a]{min-height:100vh;background:#f5f5f5}.page-header[data-v-5196857a]{background:#fff;border-bottom:1px solid #e8e8e8;position:sticky;top:0;z-index:1000;box-shadow:0 1px 4px rgba(0,21,41,.08)}.header-container[data-v-5196857a]{max-width:1400px;margin:0 auto;padding:0 24px;display:flex;align-items:center;height:56px}.header-left[data-v-5196857a]{display:flex;align-items:center;gap:16px}.back-btn[data-v-5196857a]{display:flex;align-items:center;gap:6px;padding:6px 12px;background:#fafafa;border:1px solid #d9d9d9;border-radius:6px;color:#434343;cursor:pointer;transition:all .2s;font-size:13px}.back-btn[data-v-5196857a]:hover{border-color:#1677ff;color:#1677ff}.back-btn svg[data-v-5196857a]{width:16px;height:16px}.page-info[data-v-5196857a]{display:flex;flex-direction:column}.page-title[data-v-5196857a]{font-size:17px;font-weight:600;color:#000000d9;margin:0}.page-subtitle[data-v-5196857a]{font-size:11px;color:#00000073;font-weight:500;letter-spacing:.5px;text-transform:uppercase;margin-top:2px}.breadcrumb-nav[data-v-5196857a]{background:#fff;border-bottom:1px solid #f0f0f0;padding:0 24px}.breadcrumb-container[data-v-5196857a]{max-width:1400px;margin:0 auto;padding:10px 0;display:flex;align-items:center;gap:4px;font-size:13px}.breadcrumb-item[data-v-5196857a]{color:#1677ff;cursor:pointer;padding:2px 6px;border-radius:4px;transition:background .15s}.breadcrumb-item[data-v-5196857a]:hover{background:#e6f4ff}.breadcrumb-item.active[data-v-5196857a]{color:#000000d9;cursor:default;font-weight:500}.breadcrumb-item.active[data-v-5196857a]:hover{background:transparent}.breadcrumb-sep[data-v-5196857a]{color:#d9d9d9;margin:0 2px}.main-content[data-v-5196857a]{padding:20px 0}.content-container[data-v-5196857a]{max-width:1400px;margin:0 auto;padding:0 24px}.card-section[data-v-5196857a]{background:#fff;border-radius:8px;padding:24px;border:1px solid #f0f0f0;box-shadow:0 1px 4px rgba(0,21,41,.08)}.section-header[data-v-5196857a]{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.section-title[data-v-5196857a]{font-size:16px;font-weight:600;color:#000000d9;margin:0}.section-count[data-v-5196857a]{font-size:13px;color:#00000073;background:#fafafa;padding:4px 10px;border-radius:12px;border:1px solid #f0f0f0}.empty-box[data-v-5196857a],.loading-box[data-v-5196857a]{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 0;color:#00000073}.spinner[data-v-5196857a]{width:28px;height:28px;border:3px solid #f0f0f0;border-left-color:#1677ff;border-radius:50%;animation:spin-5196857a .8s linear infinite;margin-bottom:12px}@keyframes spin-5196857a{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.card-grid[data-v-5196857a]{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:12px}.hierarchy-card[data-v-5196857a]{display:flex;align-items:center;padding:16px;background:#fafafa;border:1px solid #f0f0f0;border-radius:8px;cursor:pointer;transition:all .2s;gap:14px}.hierarchy-card[data-v-5196857a]:hover{border-color:#91caff;background:#e6f4ff;box-shadow:0 2px 8px rgba(22,119,255,.1)}.card-icon[data-v-5196857a]{width:44px;height:44px;border-radius:10px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.card-icon svg[data-v-5196857a]{width:22px;height:22px}.school-icon[data-v-5196857a]{background:#e6f4ff;color:#1677ff}.college-icon[data-v-5196857a]{background:#f6ffed;color:#52c41a}.class-icon[data-v-5196857a]{background:#fff7e6;color:#fa8c16}.card-body[data-v-5196857a]{flex:1;min-width:0}.card-name[data-v-5196857a]{font-size:15px;font-weight:600;color:#000000d9;margin:0 0 6px 0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.card-stats[data-v-5196857a]{display:flex;flex-wrap:wrap;gap:6px}.stat-tag[data-v-5196857a]{font-size:12px;padding:2px 8px;border-radius:10px;background:#fff;border:1px solid #e8e8e8;color:#595959}.role-tag.checker[data-v-5196857a]{background:#f6ffed;border-color:#b7eb8f;color:#389e0d}.role-tag.sub-checker[data-v-5196857a]{background:#fff7e6;border-color:#ffd591;color:#d46b08}.card-arrow[data-v-5196857a]{color:#bfbfbf;flex-shrink:0;transition:color .2s}.hierarchy-card:hover .card-arrow[data-v-5196857a]{color:#1677ff}.card-arrow svg[data-v-5196857a]{width:18px;height:18px}.role-overview[data-v-5196857a]{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:20px}.role-card[data-v-5196857a]{display:flex;flex-direction:column;padding:18px;border-radius:8px;border:1px solid #f0f0f0;gap:10px}.checker-card[data-v-5196857a]{background:#f6ffed;border-color:#b7eb8f}.sub-checker-card[data-v-5196857a]{background:#fff7e6;border-color:#ffd591}.role-card-icon[data-v-5196857a]{width:36px;height:36px;display:flex;align-items:center;justify-content:center}.checker-card .role-card-icon[data-v-5196857a]{color:#52c41a}.sub-checker-card .role-card-icon[data-v-5196857a]{color:#fa8c16}.role-card-icon svg[data-v-5196857a]{width:24px;height:24px}.role-card-info[data-v-5196857a]{display:flex;align-items:baseline;gap:8px}.role-card-count[data-v-5196857a]{font-size:28px;font-weight:700;line-height:1}.checker-card .role-card-count[data-v-5196857a]{color:#389e0d}.sub-checker-card .role-card-count[data-v-5196857a]{color:#d46b08}.role-card-label[data-v-5196857a]{font-size:14px;color:#595959;font-weight:500}.role-card-names[data-v-5196857a]{display:flex;flex-wrap:wrap;gap:6px}.name-tag[data-v-5196857a]{font-size:12px;padding:3px 10px;border-radius:12px;background:hsla(0,0%,100%,.8);border:1px solid rgba(0,0,0,.06);color:#262626;font-weight:500}.role-card-empty[data-v-5196857a]{font-size:13px;color:#00000040}.users-section[data-v-5196857a]{background:#fff;border-radius:8px;padding:24px;border:1px solid #f0f0f0;box-shadow:0 1px 4px rgba(0,21,41,.08)}.filter-section[data-v-5196857a]{margin-bottom:20px}.filter-header[data-v-5196857a]{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}.filter-title[data-v-5196857a]{font-size:16px;font-weight:600;color:#000000d9;margin:0}.filter-reset[data-v-5196857a]{padding:4px 12px;background:#fff;border:1px solid #d9d9d9;border-radius:4px;color:#595959;font-size:12px;cursor:pointer;transition:all .2s}.filter-reset[data-v-5196857a]:hover{border-color:#1677ff;color:#1677ff}.filter-form[data-v-5196857a]{margin-top:12px}.filter-row[data-v-5196857a]{display:grid;grid-template-columns:1fr 1fr;gap:16px;align-items:end}.filter-group[data-v-5196857a]{display:flex;flex-direction:column;gap:6px}.filter-label[data-v-5196857a]{font-size:13px;font-weight:500;color:#434343}.role-text-plain[data-v-5196857a]{color:#595959;font-size:13px}.table-section[data-v-5196857a]{background:#fff;border-radius:8px;overflow:hidden;border:1px solid #f0f0f0}.table-container[data-v-5196857a]{overflow-x:auto}.modern-table[data-v-5196857a]{width:100%}.action-buttons[data-v-5196857a]{display:flex;gap:6px;align-items:center}.action-buttons .el-button[data-v-5196857a]{margin:0}.pagination-section[data-v-5196857a]{padding:16px;background:#fafafa;border-top:1px solid #f0f0f0;display:flex;justify-content:center}.user-detail-dialog[data-v-5196857a] .el-dialog{border-radius:8px;overflow:hidden}.user-detail-dialog[data-v-5196857a] .el-dialog__header{background:linear-gradient(135deg,#1677ff,#4096ff);color:#fff;padding:16px 24px}.user-detail-dialog[data-v-5196857a] .el-dialog__title{color:#fff;font-weight:600}.user-detail-content[data-v-5196857a]{padding:24px}.user-header[data-v-5196857a]{display:flex;align-items:center;gap:16px;padding:20px;background:#fafafa;border-radius:8px;margin-bottom:20px}.user-avatar[data-v-5196857a]{width:64px;height:64px;border-radius:50%;overflow:hidden;background:#fff;display:flex;align-items:center;justify-content:center;border:2px solid #fff;box-shadow:0 2px 8px rgba(0,0,0,.1)}.user-avatar img[data-v-5196857a]{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.avatar-placeholder[data-v-5196857a]{color:#bfbfbf;display:flex;align-items:center;justify-content:center}.avatar-placeholder svg[data-v-5196857a]{width:32px;height:32px}.user-info[data-v-5196857a]{flex:1}.user-name[data-v-5196857a]{font-size:20px;font-weight:700;color:#000000d9;margin:0 0 4px 0}.user-id[data-v-5196857a]{color:#595959;margin:0 0 8px 0;font-size:13px}.user-status[data-v-5196857a]{display:flex;gap:6px}.detail-sections[data-v-5196857a]{display:flex;flex-direction:column;gap:16px}.detail-section[data-v-5196857a]{background:#fafafa;border-radius:8px;padding:20px;border:1px solid #f0f0f0}.section-title-detail[data-v-5196857a]{font-size:15px;font-weight:600;color:#000000d9;margin:0 0 14px 0;padding-bottom:8px;border-bottom:2px solid #1677ff}.info-grid[data-v-5196857a]{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}.info-item[data-v-5196857a]{display:flex;justify-content:space-between;align-items:center;padding:10px 12px;background:#fff;border-radius:6px;border:1px solid #f0f0f0}.info-item label[data-v-5196857a]{font-size:13px;color:#595959;font-weight:500}.info-item span[data-v-5196857a]{color:#262626;font-weight:500;font-size:13px}.score-grid[data-v-5196857a]{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:12px}.score-item[data-v-5196857a]{text-align:center;padding:14px;background:#fff;border-radius:8px;border:1px solid #f0f0f0;transition:box-shadow .2s}.score-item[data-v-5196857a]:hover{box-shadow:0 2px 8px rgba(0,0,0,.08)}.score-value[data-v-5196857a]{font-size:20px;font-weight:700;color:#1677ff;line-height:1;margin-bottom:6px}.score-label[data-v-5196857a]{font-size:12px;color:#595959;font-weight:500}.dialog-footer[data-v-5196857a]{display:flex;justify-content:flex-end;gap:8px;padding:12px 24px;background:#fafafa;border-top:1px solid #f0f0f0}@media (max-width:1024px){.card-grid[data-v-5196857a],.filter-row[data-v-5196857a],.role-overview[data-v-5196857a]{grid-template-columns:1fr}.user-detail-dialog[data-v-5196857a] .el-dialog{width:90%!important}.info-grid[data-v-5196857a]{grid-template-columns:1fr}}@media (max-width:768px){.breadcrumb-nav[data-v-5196857a],.header-container[data-v-5196857a]{padding:0 16px}.content-container[data-v-5196857a]{padding:0 12px}.card-section[data-v-5196857a],.users-section[data-v-5196857a]{padding:16px}.user-header[data-v-5196857a]{flex-direction:column;text-align:center}.user-detail-dialog[data-v-5196857a] .el-dialog{width:95%!important}.user-detail-content[data-v-5196857a]{padding:16px}}.activity-management[data-v-bb11423c]{padding:20px}.page-title[data-v-bb11423c]{font-size:18px;font-weight:700;color:#000000d9}.tab-content[data-v-bb11423c]{padding:20px 0}.filter-bar[data-v-bb11423c]{margin-bottom:20px;padding:15px;background:var(--bg-body);border-radius:6px}.filter-form[data-v-bb11423c]{margin:0}.clearfix[data-v-bb11423c]:after,.clearfix[data-v-bb11423c]:before{display:table;content:""}.clearfix[data-v-bb11423c]:after{clear:both}.activity-action-buttons[data-v-bb11423c]{display:flex;gap:4px;align-items:center;justify-content:flex-start;flex-wrap:nowrap}.activity-action-buttons .el-button[data-v-bb11423c]{margin:0;font-size:12px;padding:4px 8px;white-space:nowrap}.el-pagination[data-v-bb11423c]{margin-top:20px;text-align:right}.race-results[data-v-c02765c6]{min-height:100vh;background:var(--bg-body)}.page-header[data-v-c02765c6]{background:#fff;border-bottom:1px solid var(--border-light);position:sticky;top:0;z-index:100;box-shadow:var(--shadow-sm)}.header-container[data-v-c02765c6]{max-width:1400px;margin:0 auto;padding:0 var(--spacing-xl);display:flex;align-items:center;justify-content:space-between;height:var(--header-height)}.header-left[data-v-c02765c6]{display:flex;align-items:center;gap:var(--spacing-lg)}.header-right[data-v-c02765c6]{display:flex;align-items:center;gap:10px}.back-btn[data-v-c02765c6]{display:flex;align-items:center;gap:6px;padding:5px 12px;background:#fff;border:1px solid var(--border-color);border-radius:var(--radius-sm);color:#000000d9;cursor:pointer;font-size:14px;font-family:inherit;transition:border-color .15s,color .15s}.back-btn[data-v-c02765c6]:hover{border-color:#1677ff;color:#1677ff}.back-btn svg[data-v-c02765c6]{width:16px;height:16px}.page-info[data-v-c02765c6]{display:flex;flex-direction:column}.page-title[data-v-c02765c6]{font-size:18px;font-weight:600;color:#000000d9;margin:0}.page-subtitle[data-v-c02765c6]{font-size:12px;color:#00000073;margin-top:2px}.upload-trigger-btn[data-v-c02765c6]{display:flex;align-items:center;gap:6px;height:34px;padding:0 16px;background:#1677ff;border:none;border-radius:var(--radius-sm);color:#fff;font-size:13px;cursor:pointer;font-family:inherit;transition:background .15s}.upload-trigger-btn[data-v-c02765c6]:hover{background:#4096ff}.upload-trigger-btn svg[data-v-c02765c6]{width:16px;height:16px}.main-content[data-v-c02765c6]{padding:var(--spacing-xl) 0}.content-container[data-v-c02765c6]{max-width:1400px;margin:0 auto;padding:0 var(--spacing-xl)}.filter-section[data-v-c02765c6]{background:#fff;border:1px solid var(--border-light);border-radius:8px;padding:16px 20px;margin-bottom:var(--spacing-xl);box-shadow:var(--shadow-card)}.filter-form[data-v-c02765c6]{display:flex;gap:16px;flex-wrap:wrap;align-items:flex-end}.filter-group[data-v-c02765c6]{display:flex;flex-direction:column;gap:4px;min-width:160px}.filter-label[data-v-c02765c6]{font-size:12px;color:#00000073;font-weight:500}.filter-input[data-v-c02765c6]{height:32px;padding:0 10px;border:1px solid var(--border-color);border-radius:var(--radius-sm);font-size:13px;color:#000000d9;background:#fff;outline:none;transition:border-color .15s;font-family:inherit}.filter-input[data-v-c02765c6]:focus{border-color:#1677ff}.filter-actions-group[data-v-c02765c6]{flex-direction:row;gap:8px;min-width:unset;align-items:flex-end}.search-btn[data-v-c02765c6]{display:flex;align-items:center;gap:6px;height:32px;padding:0 14px;background:#1677ff;border:none;border-radius:var(--radius-sm);color:#fff;font-size:13px;cursor:pointer;font-family:inherit;transition:background .15s}.search-btn[data-v-c02765c6]:hover{background:#4096ff}.search-btn svg[data-v-c02765c6]{width:14px;height:14px}.reset-btn[data-v-c02765c6]{height:32px;padding:0 14px;background:#fff;border:1px solid var(--border-color);border-radius:var(--radius-sm);color:#000000d9;font-size:13px;cursor:pointer;font-family:inherit;transition:border-color .15s}.reset-btn[data-v-c02765c6]:hover{border-color:#1677ff;color:#1677ff}.table-section[data-v-c02765c6]{background:#fff;border:1px solid var(--border-light);border-radius:8px;overflow:hidden;box-shadow:var(--shadow-card)}.table-toolbar[data-v-c02765c6]{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;border-bottom:1px solid var(--border-light)}.result-count[data-v-c02765c6]{font-size:13px;color:#00000073}.table-wrapper[data-v-c02765c6]{overflow-x:auto}.table-loading[data-v-c02765c6]{display:flex;align-items:center;justify-content:center;gap:10px;padding:60px 0;color:#00000073;font-size:14px}.data-table[data-v-c02765c6]{width:100%;border-collapse:collapse;font-size:13px}.data-table thead th[data-v-c02765c6]{background:#f8f9fa;font-weight:600;text-align:left;white-space:nowrap}.data-row td[data-v-c02765c6],.data-table thead th[data-v-c02765c6]{color:#000000d9;padding:12px 14px;border-bottom:1px solid var(--border-light)}.data-row td[data-v-c02765c6]{vertical-align:middle}.data-row:last-child td[data-v-c02765c6]{border-bottom:none}.data-row:hover td[data-v-c02765c6]{background:#f5f7ff}.empty-row td[data-v-c02765c6]{padding:60px 0}.empty-state[data-v-c02765c6]{display:flex;flex-direction:column;align-items:center;gap:10px;color:#00000040;font-size:14px}.empty-state svg[data-v-c02765c6]{width:40px;height:40px}.filename-cell[data-v-c02765c6]{display:flex;align-items:center;gap:8px}.file-icon[data-v-c02765c6]{width:18px;height:18px;color:#52c41a;flex-shrink:0}.filename-text[data-v-c02765c6]{font-weight:500;color:#000000d9;word-break:break-all}.filename-link[data-v-c02765c6]{color:#1677ff;cursor:pointer;text-decoration:underline;text-underline-offset:2px}.filename-link[data-v-c02765c6]:hover{color:#4096ff}.date-cell[data-v-c02765c6]{color:#00000073;white-space:nowrap}.size-cell[data-v-c02765c6]{color:#00000073}.action-btns[data-v-c02765c6]{display:flex;gap:6px}.action-btn[data-v-c02765c6]{padding:3px 10px;border-radius:var(--radius-sm);font-size:12px;cursor:pointer;font-family:inherit;transition:background .15s;border:1px solid}.action-btn.preview[data-v-c02765c6]{background:#f0f5ff;border-color:#adc6ff;color:#2f54eb}.action-btn.preview[data-v-c02765c6]:hover:not(:disabled){background:#d6e4ff}.action-btn.preview[data-v-c02765c6]:disabled{opacity:.5;cursor:not-allowed}.action-btn.preview.parsed[data-v-c02765c6]{background:#f6ffed;border-color:#b7eb8f;color:#52c41a;cursor:default}.action-btn.download[data-v-c02765c6]{background:#e6f4ff;border-color:#91caff;color:#1677ff}.action-btn.download[data-v-c02765c6]:hover:not(:disabled){background:#bae0ff}.action-btn.download[data-v-c02765c6]:disabled{opacity:.5;cursor:not-allowed}.action-btn.delete[data-v-c02765c6]{background:#fff1f0;border-color:#ffa39e;color:#ff4d4f}.action-btn.delete[data-v-c02765c6]:hover{background:#ffccc7}.pagination[data-v-c02765c6]{display:flex;align-items:center;justify-content:flex-end;gap:10px;padding:12px 16px;border-top:1px solid var(--border-light)}.page-btn[data-v-c02765c6]{padding:5px 14px;border:1px solid var(--border-color);border-radius:var(--radius-sm);background:#fff;color:#000000d9;font-size:13px;cursor:pointer;font-family:inherit;transition:border-color .15s}.page-btn[data-v-c02765c6]:hover:not(:disabled){border-color:#1677ff;color:#1677ff}.page-btn[data-v-c02765c6]:disabled{opacity:.45;cursor:not-allowed}.page-info-text[data-v-c02765c6]{font-size:13px;color:#00000073}.page-size-select[data-v-c02765c6]{height:30px;padding:0 8px;border:1px solid var(--border-color);border-radius:var(--radius-sm);font-size:13px;background:#fff;cursor:pointer}.modal-overlay[data-v-c02765c6]{position:fixed;inset:0;background:rgba(0,0,0,.45);display:flex;align-items:center;justify-content:center;z-index:1000}.upload-card[data-v-c02765c6]{background:#fff;border-radius:10px;width:520px;max-width:92vw;box-shadow:0 12px 40px rgba(0,0,0,.18);display:flex;flex-direction:column}.modal-header[data-v-c02765c6]{display:flex;justify-content:space-between;align-items:center;padding:18px 24px;border-bottom:1px solid var(--border-light)}.modal-title[data-v-c02765c6]{font-size:16px;font-weight:600;color:#000000d9;margin:0}.modal-close[data-v-c02765c6]{width:28px;height:28px;display:flex;align-items:center;justify-content:center;border:none;background:transparent;cursor:pointer;border-radius:4px;color:#00000073}.modal-close[data-v-c02765c6]:hover{background:#f5f5f5;color:#000000d9}.modal-close svg[data-v-c02765c6]{width:16px;height:16px}.upload-body[data-v-c02765c6]{padding:20px 24px;display:flex;flex-direction:column;gap:16px}.drop-zone[data-v-c02765c6]{border:2px dashed var(--border-color);border-radius:8px;padding:32px 20px;text-align:center;cursor:pointer;transition:border-color .2s,background .2s;display:flex;flex-direction:column;align-items:center;gap:10px;color:#00000073}.drop-zone svg[data-v-c02765c6]{width:36px;height:36px}.drop-zone.drag-over[data-v-c02765c6],.drop-zone[data-v-c02765c6]:hover{border-color:#1677ff;background:#e6f4ff22}.drop-zone.has-file[data-v-c02765c6]{border-color:#52c41a;background:#f6ffed33}.drop-hint[data-v-c02765c6]{font-size:14px;margin:0}.drop-hint strong[data-v-c02765c6]{color:#1677ff}.file-ok-icon[data-v-c02765c6]{width:36px;height:36px;color:#52c41a}.selected-filename[data-v-c02765c6]{font-size:14px;font-weight:600;color:#000000d9;margin:0;word-break:break-all}.selected-size[data-v-c02765c6]{font-size:12px;color:#00000073;margin:0}.reselect-btn[data-v-c02765c6]{padding:3px 12px;border:1px solid var(--border-color);border-radius:var(--radius-sm);background:#fff;color:#000000d9;font-size:12px;cursor:pointer;font-family:inherit}.reselect-btn[data-v-c02765c6]:hover{border-color:#1677ff;color:#1677ff}.upload-fields[data-v-c02765c6]{display:flex;flex-direction:column;gap:12px}.field-group[data-v-c02765c6]{display:flex;flex-direction:column;gap:4px}.field-label[data-v-c02765c6]{font-size:12px;color:#00000073;font-weight:500}.required[data-v-c02765c6]{color:#ff4d4f}.field-input[data-v-c02765c6]{height:34px;padding:0 10px;border:1px solid var(--border-color);border-radius:var(--radius-sm);font-size:13px;color:#000000d9;outline:none;font-family:inherit;transition:border-color .15s}.field-input[data-v-c02765c6]:focus{border-color:#1677ff}.upload-error[data-v-c02765c6]{font-size:13px;color:#ff4d4f;background:#fff1f0;border:1px solid #ffa39e;border-radius:6px;padding:8px 12px}.upload-success[data-v-c02765c6]{font-size:13px;color:#52c41a;background:#f6ffed;border:1px solid #b7eb8f;border-radius:6px;padding:8px 12px}.modal-footer[data-v-c02765c6]{display:flex;justify-content:flex-end;gap:10px;padding:14px 24px;border-top:1px solid var(--border-light)}.cancel-btn[data-v-c02765c6]{padding:6px 18px;border:1px solid var(--border-color);border-radius:var(--radius-sm);background:#fff;color:#000000d9;font-size:14px;cursor:pointer;font-family:inherit}.cancel-btn[data-v-c02765c6]:hover{border-color:#1677ff}.submit-btn[data-v-c02765c6]{padding:6px 18px;border:none;border-radius:var(--radius-sm);background:#1677ff;color:#fff;font-size:14px;cursor:pointer;font-family:inherit;transition:background .15s}.submit-btn[data-v-c02765c6]:hover:not(:disabled){background:#4096ff}.submit-btn[data-v-c02765c6]:disabled{opacity:.5;cursor:not-allowed}.confirm-card[data-v-c02765c6]{background:#fff;border-radius:10px;width:400px;max-width:90vw;padding:32px 28px 24px;text-align:center;box-shadow:0 12px 40px rgba(0,0,0,.18)}.confirm-icon[data-v-c02765c6]{width:56px;height:56px;border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 16px}.confirm-icon.danger[data-v-c02765c6]{background:#fff1f0;color:#ff4d4f}.confirm-icon svg[data-v-c02765c6]{width:26px;height:26px}.confirm-title[data-v-c02765c6]{font-size:16px;font-weight:600;color:#000000d9;margin:0 0 8px}.confirm-msg[data-v-c02765c6]{font-size:14px;color:#00000073;line-height:1.6;margin:0 0 24px;word-break:break-all}.confirm-actions[data-v-c02765c6]{display:flex;gap:10px;justify-content:center}.confirm-cancel[data-v-c02765c6]{flex:1;max-width:140px;height:36px;border:1px solid var(--border-color);border-radius:var(--radius-sm);background:#fff;color:#000000d9;font-size:14px;cursor:pointer;font-family:inherit}.confirm-cancel[data-v-c02765c6]:hover{border-color:#1677ff}.confirm-ok[data-v-c02765c6]{flex:1;max-width:140px;height:36px;border:none;border-radius:var(--radius-sm);font-size:14px;cursor:pointer;font-family:inherit}.confirm-ok.danger[data-v-c02765c6]{background:#ff4d4f;color:#fff}.confirm-ok.danger[data-v-c02765c6]:hover{background:#ff7875}.confirm-ok[data-v-c02765c6]:disabled{opacity:.5;cursor:not-allowed}.loading-spinner[data-v-c02765c6]{width:20px;height:20px;border:2px solid #e8e8e8;border-top-color:#1677ff;border-radius:50%;animation:spin-c02765c6 .8s linear infinite}@keyframes spin-c02765c6{to{transform:rotate(1turn)}}.message-toast[data-v-c02765c6]{position:fixed;top:24px;left:50%;transform:translateX(-50%);padding:10px 20px;border-radius:6px;font-size:14px;z-index:2000;box-shadow:0 4px 12px rgba(0,0,0,.15)}.message-toast.success[data-v-c02765c6]{background:#f6ffed;color:#52c41a;border:1px solid #b7eb8f}.message-toast.error[data-v-c02765c6]{background:#fff1f0;color:#ff4d4f;border:1px solid #ffa39e}.msg-fade-enter-active[data-v-c02765c6],.msg-fade-leave-active[data-v-c02765c6]{transition:opacity .3s,transform .3s}.msg-fade-enter-from[data-v-c02765c6],.msg-fade-leave-to[data-v-c02765c6]{opacity:0;transform:translateX(-50%) translateY(-10px)}@media (max-width:768px){.content-container[data-v-c02765c6],.header-container[data-v-c02765c6]{padding:0 var(--spacing-md)}.filter-form[data-v-c02765c6]{flex-direction:column}.filter-group[data-v-c02765c6]{min-width:unset;width:100%}}.tab-bar[data-v-c02765c6]{display:flex;gap:2px;margin-bottom:var(--spacing-xl);background:#fff;border:1px solid var(--border-light);border-radius:8px;padding:4px;box-shadow:var(--shadow-card);width:-moz-fit-content;width:fit-content}.tab-btn[data-v-c02765c6]{display:flex;align-items:center;gap:6px;padding:7px 20px;border:none;border-radius:6px;background:transparent;color:#00000073;font-size:13px;font-weight:500;cursor:pointer;font-family:inherit;transition:background .15s,color .15s}.tab-btn svg[data-v-c02765c6]{width:15px;height:15px}.tab-btn[data-v-c02765c6]:hover{background:#f5f5f5;color:#000000d9}.tab-btn.active[data-v-c02765c6]{background:#1677ff;color:#fff}.stats-row[data-v-c02765c6]{display:flex;gap:12px;margin-bottom:var(--spacing-xl);flex-wrap:wrap}.stat-card[data-v-c02765c6]{background:#fff;border:1px solid var(--border-light);border-radius:8px;padding:16px 24px;box-shadow:var(--shadow-card);min-width:130px}.stat-value[data-v-c02765c6]{font-size:28px;font-weight:700;color:#1677ff;line-height:1}.stat-value.school-name[data-v-c02765c6]{font-size:16px}.stat-label[data-v-c02765c6]{font-size:12px;color:#00000073;margin-top:6px}.stat-card.finished .stat-value[data-v-c02765c6]{color:#52c41a}.stat-card.unfinished .stat-value[data-v-c02765c6]{color:#ff4d4f}.stat-card.school .stat-value[data-v-c02765c6]{color:#722ed1}.name-cell[data-v-c02765c6]{font-weight:600}.mono-cell[data-v-c02765c6]{font-family:Courier New,monospace;font-size:12px;color:#00000073}.time-cell[data-v-c02765c6]{font-family:Courier New,monospace;color:#1677ff;font-weight:600}.center-cell[data-v-c02765c6]{text-align:center}.school-cell[data-v-c02765c6]{font-size:12px;color:#00000073}.data-row.row-dnf td[data-v-c02765c6]{color:#00000073}.data-row.row-dnf .time-cell[data-v-c02765c6]{color:#00000040}.gender-badge[data-v-c02765c6]{padding:1px 8px;border-radius:10px;font-size:12px;font-weight:500}.gender-badge.male[data-v-c02765c6]{background:#e6f4ff;color:#1677ff}.gender-badge.female[data-v-c02765c6]{background:#fff0f6;color:#eb2f96}.status-badge[data-v-c02765c6]{padding:2px 8px;border-radius:10px;font-size:12px;font-weight:500}.status-badge.finished[data-v-c02765c6]{background:#f6ffed;color:#52c41a;border:1px solid #b7eb8f}.status-badge.dnf[data-v-c02765c6]{background:#fff1f0;color:#ff4d4f;border:1px solid #ffa39e}.preview-card[data-v-c02765c6]{background:#fff;border-radius:10px;width:900px;max-width:96vw;max-height:88vh;box-shadow:0 12px 40px rgba(0,0,0,.18);display:flex;flex-direction:column;overflow:hidden}.preview-header-left[data-v-c02765c6]{display:flex;align-items:center;gap:10px}.preview-badge[data-v-c02765c6]{padding:2px 10px;border-radius:12px;font-size:12px;font-weight:500;background:#e6f4ff;color:#1677ff;border:1px solid #91caff}.preview-badge.secondary[data-v-c02765c6]{background:#f6ffed;color:#52c41a;border-color:#b7eb8f}.preview-toolbar[data-v-c02765c6]{display:flex;align-items:center;justify-content:space-between;padding:10px 20px;border-bottom:1px solid var(--border-light);background:#fafafa}.preview-count[data-v-c02765c6]{font-size:13px;color:#00000073}.preview-toolbar-right[data-v-c02765c6]{display:flex;gap:8px}.add-row-btn[data-v-c02765c6]{padding:4px 14px;border:1px solid #91caff;border-radius:var(--radius-sm);background:#e6f4ff;color:#1677ff;font-size:13px;cursor:pointer;font-family:inherit}.add-row-btn[data-v-c02765c6]:hover{background:#bae0ff}.preview-table-wrapper[data-v-c02765c6]{flex:1;overflow:auto}.preview-table[data-v-c02765c6]{width:100%;border-collapse:collapse;font-size:13px}.preview-table thead th[data-v-c02765c6]{background:#f8f9fa;color:#000000d9;font-weight:600;padding:10px 8px;text-align:left;border-bottom:1px solid var(--border-light);white-space:nowrap;position:sticky;top:0;z-index:1}.preview-table tbody tr td[data-v-c02765c6]{padding:6px 8px;border-bottom:1px solid #f0f0f0}.preview-table tbody tr:hover td[data-v-c02765c6]{background:#f5f7ff}.preview-table tbody tr.row-unfinished td[data-v-c02765c6]{background:#fffbe6}.preview-table tbody tr.row-unfinished:hover td[data-v-c02765c6]{background:#fff1b8}.row-num[data-v-c02765c6]{color:#00000040;font-size:12px;text-align:center}.cell-input[data-v-c02765c6]{width:100%;height:28px;padding:0 8px;border:1px solid transparent;border-radius:4px;font-size:13px;color:#000000d9;background:transparent;outline:none;font-family:inherit;box-sizing:border-box;transition:border-color .15s,background .15s}.cell-input[data-v-c02765c6]:focus{border-color:#1677ff;background:#fff}.cell-input[data-v-c02765c6]:hover{border-color:#d9d9d9}.number-input[data-v-c02765c6]{width:72px}.cell-select[data-v-c02765c6]{height:28px;padding:0 6px;border:1px solid transparent;border-radius:4px;font-size:13px;background:transparent;cursor:pointer;font-family:inherit;transition:border-color .15s}.cell-select[data-v-c02765c6]:focus,.cell-select[data-v-c02765c6]:hover{border-color:#1677ff;background:#fff;outline:none}.del-row-btn[data-v-c02765c6]{width:24px;height:24px;border-radius:4px;border:none;background:transparent;color:#ff4d4f;font-size:16px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s}.del-row-btn[data-v-c02765c6]:hover{background:#fff1f0}.parse-result[data-v-c02765c6]{margin:0 20px 4px;padding:10px 14px;border-radius:6px;font-size:13px}.parse-result.all-ok[data-v-c02765c6]{background:#f6ffed;color:#52c41a;border:1px solid #b7eb8f}.parse-result.partial[data-v-c02765c6]{background:#fffbe6;color:#d48806;border:1px solid #ffe58f}.parse-fail-count[data-v-c02765c6]{color:#ff4d4f}.parse-fail-list[data-v-c02765c6]{margin:6px 0 0 16px;padding:0;color:#ff4d4f}.parse-error[data-v-c02765c6]{margin:0 20px 4px;padding:10px 14px;border-radius:6px;font-size:13px;background:#fff1f0;color:#ff4d4f;border:1px solid #ffa39e}.parse-btn[data-v-c02765c6]{background:#52c41a!important}.parse-btn[data-v-c02765c6]:hover:not(:disabled){background:#73d13d!important}.parsed-notice[data-v-c02765c6]{display:flex;align-items:center;gap:6px;padding:6px 14px;border-radius:6px;background:#f6ffed;color:#52c41a;border:1px solid #b7eb8f;font-size:13px;font-weight:500}.sports-management[data-v-f969fac4]{min-height:100vh;background:var(--bg-primary,#f5f7fa)}.page-header[data-v-f969fac4]{background:var(--bg-card,#fff);border-bottom:1px solid var(--border-color,#e4e7ed);padding:14px 24px;position:sticky;top:0;z-index:10}.header-container[data-v-f969fac4]{max-width:1200px;margin:0 auto;display:flex;justify-content:space-between;align-items:center}.header-left[data-v-f969fac4]{display:flex;align-items:center;gap:16px}.back-btn[data-v-f969fac4]{display:flex;align-items:center;gap:6px;background:none;border:1px solid var(--border-color,#dcdfe6);border-radius:8px;padding:7px 14px;cursor:pointer;font-size:13px;color:var(--text-secondary,#606266);transition:all .2s}.back-btn[data-v-f969fac4]:hover{border-color:var(--primary-color,#409eff);color:var(--primary-color,#409eff)}.back-btn svg[data-v-f969fac4]{width:16px;height:16px}.module-title[data-v-f969fac4]{font-size:18px;font-weight:700;color:var(--text-primary,#303133);margin:0}.module-subtitle[data-v-f969fac4]{font-size:12px;color:var(--text-secondary,#909399);margin:2px 0 0}.btn-primary[data-v-f969fac4]{display:inline-flex;align-items:center;gap:6px;background:var(--primary-color,#409eff);color:#fff;border:none;border-radius:8px;padding:9px 18px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.btn-primary[data-v-f969fac4]:hover:not(:disabled){opacity:.9;transform:translateY(-1px)}.btn-primary[data-v-f969fac4]:disabled{opacity:.6;cursor:not-allowed;transform:none}.btn-primary.btn-lg[data-v-f969fac4]{padding:12px 24px;font-size:15px}.btn-cancel[data-v-f969fac4]{background:var(--bg-primary,#f5f7fa);border:1px solid var(--border-color,#dcdfe6);border-radius:8px;padding:9px 18px;font-size:14px;cursor:pointer;color:var(--text-secondary,#606266)}.btn-danger[data-v-f969fac4]{background:#f56c6c;color:#fff;border:none;border-radius:8px;padding:9px 18px;font-size:14px;cursor:pointer}.btn-text[data-v-f969fac4]{background:none;border:none;padding:4px 8px;font-size:13px;color:var(--primary-color,#409eff);cursor:pointer;border-radius:4px;transition:background .15s}.btn-text[data-v-f969fac4]:hover{background:rgba(64,158,255,.1)}.btn-text.danger[data-v-f969fac4]{color:#f56c6c}.btn-text.danger[data-v-f969fac4]:hover{background:hsla(0,87%,69%,.1)}.btn-spinner[data-v-f969fac4]{display:inline-block;width:14px;height:14px;border:2px solid hsla(0,0%,100%,.3);border-top-color:#fff;border-radius:50%;animation:spin-f969fac4 .6s linear infinite}@keyframes spin-f969fac4{to{transform:rotate(1turn)}}.page-content[data-v-f969fac4]{max-width:1200px;margin:0 auto;padding:24px}.stats-bar[data-v-f969fac4]{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:24px}.stat-card[data-v-f969fac4]{background:var(--bg-card,#fff);border-radius:12px;padding:18px;text-align:center;border:1px solid var(--border-color,#e4e7ed);transition:transform .2s,box-shadow .2s}.stat-card[data-v-f969fac4]:hover{transform:translateY(-2px);box-shadow:0 4px 12px rgba(0,0,0,.06)}.stat-number[data-v-f969fac4]{display:block;font-size:28px;font-weight:700}.stat-label[data-v-f969fac4]{font-size:13px;color:var(--text-secondary,#909399);margin-top:4px;display:block}.skeleton-grid[data-v-f969fac4]{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:16px}.skeleton-card[data-v-f969fac4]{background:var(--bg-card,#fff);border-radius:12px;padding:20px;border:1px solid var(--border-color,#e4e7ed)}.sk-line[data-v-f969fac4]{border-radius:4px;background:linear-gradient(90deg,#f0f0f0 25%,#e8e8e8 50%,#f0f0f0 75%);background-size:200% 100%;animation:shimmer-f969fac4 1.5s infinite}.sk-title[data-v-f969fac4]{height:20px;width:60%;margin-bottom:12px}.sk-desc[data-v-f969fac4]{height:14px;width:90%;margin-bottom:10px}.sk-meta[data-v-f969fac4]{height:14px;width:40%;margin-bottom:16px}.sk-actions[data-v-f969fac4]{height:14px;width:30%}@keyframes shimmer-f969fac4{0%{background-position:200% 0}to{background-position:-200% 0}}.empty-state[data-v-f969fac4]{text-align:center;padding:80px 20px}.empty-illustration[data-v-f969fac4]{color:var(--text-placeholder,#c0c4cc);margin-bottom:16px}.empty-state h3[data-v-f969fac4]{font-size:18px;color:var(--text-primary,#303133);margin:0 0 8px}.empty-state p[data-v-f969fac4]{font-size:14px;color:var(--text-secondary,#909399);margin:0 0 24px}.meeting-cards[data-v-f969fac4]{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:16px}.meeting-card[data-v-f969fac4]{background:var(--bg-card,#fff);border-radius:12px;padding:20px;border:1px solid var(--border-color,#e4e7ed);cursor:pointer;transition:all .25s;animation:cardIn-f969fac4 .35s ease backwards}.meeting-card[data-v-f969fac4]:hover{border-color:var(--primary-color,#409eff);box-shadow:0 6px 20px rgba(64,158,255,.1);transform:translateY(-3px)}@keyframes cardIn-f969fac4{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.card-top[data-v-f969fac4]{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:8px}.meeting-name[data-v-f969fac4]{font-size:16px;font-weight:600;color:var(--text-primary,#303133);margin:0}.status-badge[data-v-f969fac4]{padding:2px 10px;border-radius:12px;font-size:12px;font-weight:500;flex-shrink:0}.status-draft[data-v-f969fac4]{background:#f0f0f0;color:#909399}.status-registration[data-v-f969fac4]{background:#fdf6ec;color:#e6a23c}.status-scheduling[data-v-f969fac4]{background:#ecf5ff;color:#409eff}.status-in_progress[data-v-f969fac4]{background:#f0f9eb;color:#67c23a}.status-completed[data-v-f969fac4]{background:#f4f4f5;color:#909399}.status-cancelled[data-v-f969fac4]{background:#fef0f0;color:#f56c6c}.meeting-desc[data-v-f969fac4]{font-size:13px;color:var(--text-secondary,#606266);margin:0 0 12px;line-height:1.5;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.meeting-meta[data-v-f969fac4]{display:flex;flex-wrap:wrap;gap:14px;margin-bottom:12px}.meta-item[data-v-f969fac4]{display:flex;align-items:center;gap:4px;font-size:13px;color:var(--text-secondary,#909399)}.card-footer[data-v-f969fac4]{display:flex;justify-content:space-between;align-items:center;padding-top:12px;border-top:1px solid var(--border-color,#f0f0f0)}.card-time[data-v-f969fac4]{font-size:12px;color:var(--text-placeholder,#c0c4cc)}.card-actions[data-v-f969fac4]{display:flex;gap:8px}.dialog-overlay[data-v-f969fac4]{position:fixed;inset:0;background:rgba(0,0,0,.45);display:flex;align-items:center;justify-content:center;z-index:1000}.dialog-box[data-v-f969fac4]{background:var(--bg-card,#fff);border-radius:16px;width:560px;max-width:90vw;max-height:85vh;overflow-y:auto;box-shadow:0 20px 60px rgba(0,0,0,.15)}.confirm-dialog[data-v-f969fac4]{width:420px}.confirm-message[data-v-f969fac4]{font-size:14px;color:var(--text-primary,#303133);line-height:1.6;margin:0}.dialog-header[data-v-f969fac4]{display:flex;justify-content:space-between;align-items:center;padding:20px 24px 0}.dialog-header h3[data-v-f969fac4]{margin:0;font-size:17px;font-weight:600}.close-btn[data-v-f969fac4]{background:none;border:none;font-size:22px;cursor:pointer;color:var(--text-secondary,#909399);padding:0;line-height:1;transition:color .15s}.close-btn[data-v-f969fac4]:hover{color:var(--text-primary,#303133)}.dialog-body[data-v-f969fac4]{padding:18px 24px}.dialog-footer[data-v-f969fac4]{padding:14px 24px 20px;display:flex;justify-content:flex-end;gap:10px}.dialog-fade-enter-active[data-v-f969fac4]{animation:dialogIn-f969fac4 .25s ease}.dialog-fade-leave-active[data-v-f969fac4]{animation:dialogOut-f969fac4 .2s ease}@keyframes dialogIn-f969fac4{0%{opacity:0}to{opacity:1}}@keyframes dialogOut-f969fac4{0%{opacity:1}to{opacity:0}}.dialog-fade-enter-active .dialog-box[data-v-f969fac4]{animation:dialogBoxIn-f969fac4 .25s ease}@keyframes dialogBoxIn-f969fac4{0%{opacity:0;transform:scale(.95) translateY(10px)}to{opacity:1;transform:scale(1) translateY(0)}}.form-group[data-v-f969fac4]{margin-bottom:14px}.form-group label[data-v-f969fac4]{display:block;font-size:13px;font-weight:500;color:var(--text-primary,#303133);margin-bottom:5px}.required[data-v-f969fac4]{color:#f56c6c}.form-group input[data-v-f969fac4],.form-group select[data-v-f969fac4],.form-group textarea[data-v-f969fac4]{width:100%;padding:9px 12px;border:1px solid var(--border-color,#dcdfe6);border-radius:8px;font-size:14px;background:var(--bg-primary,#fff);color:var(--text-primary,#303133);box-sizing:border-box;outline:none;transition:border-color .2s}.form-group input[data-v-f969fac4]:focus,.form-group select[data-v-f969fac4]:focus,.form-group textarea[data-v-f969fac4]:focus{border-color:var(--primary-color,#409eff);box-shadow:0 0 0 2px rgba(64,158,255,.08)}.form-row[data-v-f969fac4]{display:grid;grid-template-columns:1fr 1fr;gap:14px}.toast-container[data-v-f969fac4]{position:fixed;top:20px;right:20px;z-index:9999;display:flex;flex-direction:column;gap:8px}.toast[data-v-f969fac4]{display:flex;align-items:center;gap:10px;padding:12px 16px;border-radius:10px;font-size:14px;box-shadow:0 6px 20px rgba(0,0,0,.12);min-width:260px;max-width:420px}.toast-success[data-v-f969fac4]{background:#f0f9eb;border:1px solid #e1f3d8;color:#67c23a}.toast-error[data-v-f969fac4]{background:#fef0f0;border:1px solid #fde2e2;color:#f56c6c}.toast-warning[data-v-f969fac4]{background:#fdf6ec;border:1px solid #faecd8;color:#e6a23c}.toast-info[data-v-f969fac4]{background:#ecf5ff;border:1px solid #d9ecff;color:#409eff}.toast-icon[data-v-f969fac4]{width:20px;height:20px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;flex-shrink:0}.toast-success .toast-icon[data-v-f969fac4]{background:#67c23a;color:#fff}.toast-error .toast-icon[data-v-f969fac4]{background:#f56c6c;color:#fff}.toast-warning .toast-icon[data-v-f969fac4]{background:#e6a23c;color:#fff}.toast-info .toast-icon[data-v-f969fac4]{background:#409eff;color:#fff}.toast-msg[data-v-f969fac4]{flex:1}.toast-close[data-v-f969fac4]{background:none;border:none;font-size:16px;cursor:pointer;color:inherit;opacity:.6}.toast-close[data-v-f969fac4]:hover{opacity:1}.toast-slide-enter-active[data-v-f969fac4]{animation:toastIn-f969fac4 .3s ease}.toast-slide-leave-active[data-v-f969fac4]{animation:toastOut-f969fac4 .25s ease}@keyframes toastIn-f969fac4{0%{opacity:0;transform:translateX(40px)}to{opacity:1;transform:translateX(0)}}@keyframes toastOut-f969fac4{0%{opacity:1}to{opacity:0;transform:translateX(40px)}}@media (max-width:768px){.stats-bar[data-v-f969fac4]{grid-template-columns:repeat(2,1fr)}.form-row[data-v-f969fac4],.meeting-cards[data-v-f969fac4],.skeleton-grid[data-v-f969fac4]{grid-template-columns:1fr}}.meeting-detail[data-v-619d25be]{min-height:100vh;background:var(--bg-primary,#f5f7fa)}.page-header[data-v-619d25be]{background:var(--bg-card,#fff);border-bottom:1px solid var(--border-color,#e4e7ed);padding:14px 24px;position:sticky;top:0;z-index:20}.header-container[data-v-619d25be]{max-width:1400px;margin:0 auto;display:flex;justify-content:space-between;align-items:center;gap:16px}.header-left[data-v-619d25be]{display:flex;align-items:center;gap:16px;min-width:0}.back-btn[data-v-619d25be]{display:flex;align-items:center;gap:6px;background:none;border:1px solid var(--border-color,#dcdfe6);border-radius:8px;padding:7px 14px;cursor:pointer;font-size:13px;color:var(--text-secondary,#606266);transition:all .2s;flex-shrink:0}.back-btn[data-v-619d25be]:hover{border-color:var(--primary-color,#409eff);color:var(--primary-color,#409eff)}.back-btn svg[data-v-619d25be]{width:16px;height:16px}.module-title[data-v-619d25be]{font-size:18px;font-weight:700;color:var(--text-primary,#303133);margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.module-subtitle[data-v-619d25be]{font-size:13px;color:var(--text-secondary,#909399);margin:3px 0 0;display:flex;align-items:center;gap:10px;flex-wrap:wrap}.header-date[data-v-619d25be],.header-location[data-v-619d25be]{opacity:.8;font-size:12px}.status-select[data-v-619d25be]{padding:7px 12px;border:1px solid var(--border-color,#dcdfe6);border-radius:8px;font-size:13px;background:var(--bg-card,#fff);cursor:pointer;flex-shrink:0}.main-area[data-v-619d25be]{max-width:1400px;margin:0 auto;padding:16px 24px 40px}.guidance-banner[data-v-619d25be]{display:flex;align-items:center;gap:10px;background:linear-gradient(135deg,#ecf5ff,#f0f9ff);border:1px solid #d9ecff;border-radius:10px;padding:12px 18px;margin-bottom:16px;cursor:pointer;transition:all .2s}.guidance-banner[data-v-619d25be]:hover{border-color:#a0cfff;box-shadow:0 2px 8px rgba(64,158,255,.1)}.guidance-icon[data-v-619d25be]{font-size:18px}.guidance-text[data-v-619d25be]{flex:1;font-size:14px;color:#409eff;font-weight:500}.guidance-action[data-v-619d25be]{font-size:13px;color:#409eff;font-weight:600;white-space:nowrap}.overview-stats[data-v-619d25be]{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:16px}.ov-card[data-v-619d25be]{background:var(--bg-card,#fff);border-radius:10px;padding:14px 16px;text-align:center;border:1px solid var(--border-color,#e4e7ed)}.ov-num[data-v-619d25be]{display:block;font-size:24px;font-weight:700;color:var(--primary-color,#409eff)}.ov-label[data-v-619d25be]{font-size:12px;color:var(--text-secondary,#909399)}.tabs-nav[data-v-619d25be]{display:flex;gap:2px;background:var(--bg-card,#fff);border-radius:12px 12px 0 0;padding:10px 16px 0;border:1px solid var(--border-color,#e4e7ed);border-bottom:none;overflow-x:auto}.tab-btn[data-v-619d25be]{padding:10px 18px;border:none;background:none;font-size:14px;font-weight:500;color:var(--text-secondary,#606266);cursor:pointer;border-bottom:2px solid transparent;transition:all .2s;white-space:nowrap;display:flex;align-items:center;gap:6px}.tab-btn.active[data-v-619d25be],.tab-btn[data-v-619d25be]:hover{color:var(--primary-color,#409eff)}.tab-btn.active[data-v-619d25be]{border-bottom-color:var(--primary-color,#409eff)}.tab-badge[data-v-619d25be]{background:var(--primary-color,#409eff);color:#fff;font-size:11px;padding:1px 6px;border-radius:10px}.tab-content[data-v-619d25be]{background:var(--bg-card,#fff);border:1px solid var(--border-color,#e4e7ed);border-top:none;border-radius:0 0 12px 12px;min-height:400px}.tab-pane[data-v-619d25be]{padding:20px}.tab-toolbar[data-v-619d25be]{display:flex;gap:12px;align-items:center;margin-bottom:16px;flex-wrap:wrap}.tab-fade-enter-active[data-v-619d25be]{animation:tabIn-619d25be .2s ease}.tab-fade-leave-active[data-v-619d25be]{animation:tabOut-619d25be .15s ease}@keyframes tabIn-619d25be{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes tabOut-619d25be{0%{opacity:1}to{opacity:0}}.btn-primary[data-v-619d25be]{display:inline-flex;align-items:center;gap:6px;background:var(--primary-color,#409eff);color:#fff;border:none;border-radius:8px;padding:8px 16px;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s}.btn-primary[data-v-619d25be]:hover:not(:disabled){opacity:.9;transform:translateY(-1px)}.btn-primary[data-v-619d25be]:disabled{opacity:.6;cursor:not-allowed;transform:none}.btn-secondary[data-v-619d25be]{display:inline-flex;align-items:center;gap:6px;background:var(--bg-primary,#f5f7fa);color:var(--text-primary,#303133);border:1px solid var(--border-color,#dcdfe6);border-radius:8px;padding:8px 16px;font-size:13px;cursor:pointer;transition:all .2s}.btn-secondary[data-v-619d25be]:hover{border-color:var(--primary-color,#409eff);color:var(--primary-color,#409eff)}.btn-danger[data-v-619d25be]{background:#f56c6c;color:#fff;border:none;border-radius:8px;padding:8px 16px;font-size:13px;cursor:pointer}.btn-danger[data-v-619d25be]:hover{opacity:.9}.btn-danger-outline[data-v-619d25be]{background:none;color:#f56c6c;border:1px solid #f56c6c;border-radius:8px;padding:8px 16px;font-size:13px;cursor:pointer;transition:all .2s}.btn-danger-outline[data-v-619d25be]:hover{background:#fef0f0}.btn-cancel[data-v-619d25be]{background:var(--bg-primary,#f5f7fa);border:1px solid var(--border-color,#dcdfe6);border-radius:8px;padding:8px 16px;font-size:13px;cursor:pointer}.btn-text-sm[data-v-619d25be]{background:none;border:none;font-size:13px;color:var(--primary-color,#409eff);cursor:pointer;padding:2px 6px}.btn-text-sm.danger[data-v-619d25be]{color:#f56c6c}.btn-spinner[data-v-619d25be]{display:inline-block;width:14px;height:14px;border:2px solid hsla(0,0%,100%,.3);border-top-color:#fff;border-radius:50%;animation:spin-619d25be .6s linear infinite}@keyframes spin-619d25be{to{transform:rotate(1turn)}}.spinner-ring[data-v-619d25be]{width:32px;height:32px;border:3px solid var(--border-color,#e4e7ed);border-top-color:var(--primary-color,#409eff);border-radius:50%;animation:spin-619d25be .8s linear infinite;margin:0 auto}.spinner-ring.large[data-v-619d25be]{width:40px;height:40px}.loading-placeholder[data-v-619d25be]{text-align:center;padding:40px;color:var(--text-secondary,#909399)}.loading-placeholder p[data-v-619d25be]{margin-top:12px}.empty-state-card[data-v-619d25be]{text-align:center;padding:48px 20px;color:var(--text-secondary,#909399)}.empty-state-card.small[data-v-619d25be]{padding:32px 20px}.empty-icon[data-v-619d25be]{font-size:36px;margin-bottom:10px}.empty-state-card p[data-v-619d25be]{font-size:14px;margin:0 0 16px}.empty-actions[data-v-619d25be]{display:flex;gap:12px;justify-content:center}.empty-hint[data-v-619d25be]{text-align:center;padding:24px;color:var(--text-secondary,#909399);font-size:13px}.empty-hint.small[data-v-619d25be]{padding:16px}.table-wrapper[data-v-619d25be]{overflow-x:auto}.data-table[data-v-619d25be]{width:100%;border-collapse:collapse;font-size:13px}.data-table th[data-v-619d25be]{background:var(--bg-primary,#fafafa);padding:10px 12px;text-align:left;font-weight:600;color:var(--text-secondary,#606266);border-bottom:1px solid var(--border-color,#ebeef5);white-space:nowrap;position:sticky;top:0}.data-table td[data-v-619d25be]{padding:9px 12px;border-bottom:1px solid var(--border-color,#f0f0f0);color:var(--text-primary,#303133)}.data-table tbody tr[data-v-619d25be]{transition:background .15s}.data-table tbody tr[data-v-619d25be]:hover{background:rgba(64,158,255,.04)}.action-cell[data-v-619d25be]{white-space:nowrap}.relay-tag[data-v-619d25be]{background:#ecf5ff;color:#409eff;font-size:11px;padding:1px 6px;border-radius:4px;margin-left:6px}.row-animate[data-v-619d25be]{animation:rowSlide-619d25be .3s ease backwards}@keyframes rowSlide-619d25be{0%{opacity:0;transform:translateX(-8px)}}.mini-badge[data-v-619d25be],.status-badge[data-v-619d25be]{padding:2px 10px;border-radius:12px;font-size:12px;font-weight:500;display:inline-block}.mini-badge[data-v-619d25be]{padding:1px 8px;font-size:11px}.status-draft[data-v-619d25be]{background:#f0f0f0;color:#909399}.status-registration[data-v-619d25be]{background:#fdf6ec;color:#e6a23c}.status-scheduling[data-v-619d25be]{background:#ecf5ff;color:#409eff}.status-in_progress[data-v-619d25be],.status-scheduled[data-v-619d25be]{background:#f0f9eb;color:#67c23a}.status-completed[data-v-619d25be]{background:#f4f4f5;color:#909399}.status-cancelled[data-v-619d25be]{background:#fef0f0;color:#f56c6c}.status-pending[data-v-619d25be]{background:#fdf6ec;color:#e6a23c}.filter-bar[data-v-619d25be]{display:flex;gap:10px;align-items:center;margin-bottom:16px;flex-wrap:wrap}.search-input-wrap[data-v-619d25be]{position:relative}.search-input-wrap svg[data-v-619d25be]{position:absolute;left:10px;top:50%;transform:translateY(-50%);color:var(--text-placeholder,#c0c4cc)}.search-input[data-v-619d25be]{padding:8px 12px 8px 32px;border:1px solid var(--border-color,#dcdfe6);border-radius:8px;font-size:13px;width:200px;outline:none;transition:border-color .2s}.search-input[data-v-619d25be]:focus{border-color:var(--primary-color,#409eff)}.filter-bar select[data-v-619d25be]{padding:8px 12px;border:1px solid var(--border-color,#dcdfe6);border-radius:8px;font-size:13px;background:var(--bg-card,#fff)}.filter-info[data-v-619d25be]{font-size:13px;color:var(--text-secondary,#909399);margin-left:auto}.upload-zone[data-v-619d25be]{border:2px dashed var(--border-color,#dcdfe6);border-radius:12px;padding:28px;text-align:center;margin-bottom:16px;transition:all .25s;background:var(--bg-primary,#fafbfc)}.upload-zone[data-v-619d25be]:hover{border-color:#a0cfff}.upload-zone.drag-over[data-v-619d25be]{border-color:var(--primary-color,#409eff);background:#ecf5ff;transform:scale(1.01)}.upload-zone.uploading[data-v-619d25be]{border-color:var(--primary-color,#409eff);background:#f0f7ff}.upload-prompt svg[data-v-619d25be]{color:var(--text-placeholder,#c0c4cc);margin-bottom:8px}.upload-prompt p[data-v-619d25be]{font-size:14px;color:var(--text-secondary,#606266);margin:0 0 4px}.upload-link[data-v-619d25be]{color:var(--primary-color,#409eff);cursor:pointer;font-weight:500;text-decoration:underline}.upload-link input[data-v-619d25be]{display:none}.upload-hint[data-v-619d25be]{font-size:12px;color:var(--text-placeholder,#c0c4cc)}.upload-progress[data-v-619d25be]{padding:12px}.upload-progress p[data-v-619d25be]{margin:10px 0 0;font-size:14px;color:var(--primary-color,#409eff)}.import-feedback[data-v-619d25be]{padding:12px 16px;border-radius:10px;margin-bottom:16px;font-size:13px}.import-feedback.all-success[data-v-619d25be]{background:#f0f9eb;border:1px solid #e1f3d8;color:#67c23a}.import-feedback.has-errors[data-v-619d25be]{background:#fdf6ec;border:1px solid #faecd8;color:#e6a23c}.feedback-header[data-v-619d25be]{display:flex;justify-content:space-between;align-items:center}.feedback-close[data-v-619d25be]{background:none;border:none;font-size:18px;cursor:pointer;color:inherit;opacity:.7}.error-list[data-v-619d25be]{margin-top:8px;max-height:180px;overflow-y:auto}.error-list p[data-v-619d25be]{margin:2px 0;font-size:12px;color:#f56c6c}.error-more[data-v-619d25be]{font-style:italic;color:#909399!important}.schedule-events[data-v-619d25be]{display:flex;flex-direction:column;gap:10px}.schedule-event-card[data-v-619d25be]{border:1px solid var(--border-color,#e4e7ed);border-radius:10px;overflow:hidden;transition:border-color .2s}.schedule-event-card.expanded[data-v-619d25be]{border-color:#a0cfff}.event-card-header[data-v-619d25be]{display:flex;justify-content:space-between;align-items:center;padding:10px 16px;background:var(--bg-primary,#fafafa);cursor:pointer;transition:background .15s}.event-card-header[data-v-619d25be]:hover{background:#f0f5ff}.event-card-left[data-v-619d25be]{display:flex;align-items:center;gap:8px}.expand-arrow[data-v-619d25be]{width:14px;transition:transform .2s}.event-meta[data-v-619d25be],.expand-arrow[data-v-619d25be]{font-size:12px;color:var(--text-secondary,#909399)}.heat-count-badge[data-v-619d25be]{background:#ecf5ff;color:#409eff;font-size:11px;padding:1px 8px;border-radius:10px}.no-schedule-hint[data-v-619d25be]{font-size:12px;color:var(--text-placeholder,#c0c4cc)}.event-card-actions[data-v-619d25be]{display:flex;gap:8px}.expand-enter-active[data-v-619d25be],.expand-leave-active[data-v-619d25be]{transition:all .25s ease;overflow:hidden}.expand-enter-from[data-v-619d25be],.expand-leave-to[data-v-619d25be]{opacity:0;max-height:0;padding-top:0;padding-bottom:0}.expand-enter-to[data-v-619d25be],.expand-leave-from[data-v-619d25be]{opacity:1;max-height:1200px}.heats-container[data-v-619d25be]{padding:12px 16px;display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:10px}.heat-card[data-v-619d25be]{border:1px solid var(--border-color,#ebeef5);border-radius:8px;padding:10px}.heat-header[data-v-619d25be]{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px;font-size:13px;font-weight:600}.lanes-list[data-v-619d25be]{display:flex;flex-direction:column;gap:3px}.lane-item[data-v-619d25be]{display:flex;gap:8px;align-items:center;font-size:13px;padding:4px 8px;background:var(--bg-primary,#fafafa);border-radius:4px}.lane-number[data-v-619d25be]{font-weight:600;color:var(--primary-color,#409eff);min-width:40px;font-size:12px}.lane-athlete[data-v-619d25be]{font-weight:500}.lane-dept[data-v-619d25be]{color:var(--text-secondary,#909399);font-size:12px;margin-left:auto}.lanes-input[data-v-619d25be]{display:flex;align-items:center;gap:6px;font-size:13px}.lanes-input input[data-v-619d25be]{padding:6px 8px;border:1px solid var(--border-color,#dcdfe6);border-radius:6px;text-align:center;width:56px}.event-select[data-v-619d25be]{min-width:220px}.result-entry-section[data-v-619d25be]{margin-bottom:24px}.result-entry-section h4[data-v-619d25be],.results-table-section h4[data-v-619d25be]{margin:0 0 12px;font-size:15px;font-weight:600}.section-sub[data-v-619d25be]{font-weight:400;color:var(--text-secondary,#909399);font-size:13px}.result-entry-header[data-v-619d25be]{display:flex;align-items:center;gap:12px;padding:6px 12px;font-size:12px;font-weight:600;color:var(--text-secondary,#909399)}.reh-seq[data-v-619d25be]{width:24px}.reh-name[data-v-619d25be]{width:80px}.reh-sn[data-v-619d25be]{width:90px}.reh-dept[data-v-619d25be]{width:100px}.reh-val[data-v-619d25be]{width:120px}.reh-remark[data-v-619d25be]{width:80px}.result-entry-list[data-v-619d25be]{display:flex;flex-direction:column;gap:4px}.result-entry-row[data-v-619d25be]{display:flex;align-items:center;gap:12px;padding:8px 12px;background:var(--bg-primary,#fafafa);border-radius:8px;transition:background .15s}.result-entry-row[data-v-619d25be]:hover{background:#f0f5ff}.entry-seq[data-v-619d25be]{width:24px;font-size:12px;color:var(--text-secondary,#909399);text-align:center}.entry-name[data-v-619d25be]{font-weight:500;width:80px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.entry-sn[data-v-619d25be]{width:90px;font-size:12px;color:var(--text-secondary,#909399)}.entry-dept[data-v-619d25be]{color:var(--text-secondary,#909399);font-size:13px;width:100px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.result-input[data-v-619d25be]{padding:6px 10px;border:1px solid var(--border-color,#dcdfe6);border-radius:6px;width:120px;font-size:14px;outline:none;transition:border-color .2s}.result-input[data-v-619d25be]:focus{border-color:var(--primary-color,#409eff);box-shadow:0 0 0 2px rgba(64,158,255,.1)}.remark-select[data-v-619d25be]{padding:6px 8px;border:1px solid var(--border-color,#dcdfe6);border-radius:6px;font-size:12px;width:80px}.result-val[data-v-619d25be]{font-family:SF Mono,Monaco,Consolas,monospace;font-weight:600}.score-pill[data-v-619d25be]{background:#ecf5ff;color:#409eff;font-weight:600;padding:2px 8px;border-radius:10px;font-size:12px}.rank-display[data-v-619d25be]{font-size:16px;color:var(--primary-color,#409eff)}.rank-display.rank-lg[data-v-619d25be]{font-size:20px}.rank-gold[data-v-619d25be]{background:rgba(255,215,0,.06)}.rank-gold .rank-display[data-v-619d25be]{color:#d4a017}.rank-silver[data-v-619d25be]{background:hsla(0,0%,75%,.06)}.rank-silver .rank-display[data-v-619d25be]{color:#8e8e8e}.rank-bronze[data-v-619d25be]{background:rgba(205,127,50,.06)}.rank-bronze .rank-display[data-v-619d25be]{color:#cd7f32}.rankings-table .medal[data-v-619d25be]{display:inline-flex;width:28px;height:28px;align-items:center;justify-content:center;border-radius:50%;font-weight:700;font-size:14px}.medal.gold[data-v-619d25be]{background:#fff7e6;color:#d4a017}.medal.silver[data-v-619d25be]{background:#f5f5f5;color:#8e8e8e}.medal.bronze[data-v-619d25be]{background:#fef3e8;color:#cd7f32}.score-total[data-v-619d25be]{font-size:16px;color:var(--primary-color,#409eff)}.rules-section[data-v-619d25be]{max-width:600px}.rules-hint[data-v-619d25be]{font-size:13px;color:var(--text-secondary,#909399);margin:0 0 16px}.rules-grid[data-v-619d25be]{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin-bottom:20px}.rule-item[data-v-619d25be]{display:flex;align-items:center;gap:8px;background:var(--bg-primary,#fafafa);padding:8px 12px;border-radius:8px}.rule-rank[data-v-619d25be]{background:var(--primary-color,#409eff);color:#fff;width:24px;height:24px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:700;flex-shrink:0}.rule-input[data-v-619d25be]{width:56px;padding:6px 8px;border:1px solid var(--border-color,#dcdfe6);border-radius:6px;text-align:center;font-size:14px;font-weight:600;outline:none}.rule-input[data-v-619d25be]:focus{border-color:var(--primary-color,#409eff)}.rule-unit[data-v-619d25be]{font-size:13px;color:var(--text-secondary,#909399)}.rules-actions[data-v-619d25be]{display:flex;gap:12px}.dialog-overlay[data-v-619d25be]{position:fixed;inset:0;background:rgba(0,0,0,.45);display:flex;align-items:center;justify-content:center;z-index:1000}.dialog-box[data-v-619d25be]{background:var(--bg-card,#fff);border-radius:16px;width:560px;max-width:90vw;max-height:85vh;overflow-y:auto;box-shadow:0 20px 60px rgba(0,0,0,.15)}.dialog-box.wide[data-v-619d25be]{width:720px}.confirm-dialog[data-v-619d25be]{width:420px}.confirm-dialog .confirm-message[data-v-619d25be]{font-size:14px;color:var(--text-primary,#303133);line-height:1.6;margin:0}.confirm-danger .btn-danger[data-v-619d25be]{background:#f56c6c}.dialog-header[data-v-619d25be]{display:flex;justify-content:space-between;align-items:center;padding:20px 24px 0}.dialog-header h3[data-v-619d25be]{margin:0;font-size:17px;font-weight:600}.close-btn[data-v-619d25be]{background:none;border:none;font-size:22px;cursor:pointer;color:var(--text-secondary,#909399);padding:0;line-height:1;transition:color .15s}.close-btn[data-v-619d25be]:hover{color:var(--text-primary,#303133)}.dialog-body[data-v-619d25be]{padding:18px 24px}.dialog-footer[data-v-619d25be]{padding:14px 24px 20px;display:flex;justify-content:flex-end;gap:10px}.dialog-fade-enter-active[data-v-619d25be]{animation:dialogIn-619d25be .25s ease}.dialog-fade-leave-active[data-v-619d25be]{animation:dialogOut-619d25be .2s ease}@keyframes dialogIn-619d25be{0%{opacity:0}to{opacity:1}}@keyframes dialogOut-619d25be{0%{opacity:1}to{opacity:0}}.dialog-fade-enter-active .dialog-box[data-v-619d25be]{animation:dialogBoxIn-619d25be .25s ease}@keyframes dialogBoxIn-619d25be{0%{opacity:0;transform:scale(.95) translateY(10px)}to{opacity:1;transform:scale(1) translateY(0)}}.form-group[data-v-619d25be]{margin-bottom:14px}.form-group label[data-v-619d25be]{display:block;font-size:13px;font-weight:500;color:var(--text-primary,#303133);margin-bottom:5px}.required[data-v-619d25be]{color:#f56c6c}.form-group input[data-v-619d25be]:not([type=checkbox]),.form-group select[data-v-619d25be],.form-group textarea[data-v-619d25be]{width:100%;padding:9px 12px;border:1px solid var(--border-color,#dcdfe6);border-radius:8px;font-size:14px;background:var(--bg-primary,#fff);color:var(--text-primary,#303133);box-sizing:border-box;outline:none;transition:border-color .2s}.form-group input[data-v-619d25be]:focus,.form-group select[data-v-619d25be]:focus{border-color:var(--primary-color,#409eff)}.form-row[data-v-619d25be]{display:grid;grid-template-columns:1fr 1fr;gap:14px}.checkbox-group label[data-v-619d25be]{display:flex;align-items:center;gap:6px;cursor:pointer}.checkbox-group input[type=checkbox][data-v-619d25be]{width:auto;margin:0}.preset-toolbar[data-v-619d25be]{display:flex;gap:12px;align-items:center;margin-bottom:14px}.preset-count[data-v-619d25be]{font-size:13px;color:var(--primary-color,#409eff);font-weight:600;margin-left:auto}.preset-section[data-v-619d25be]{margin-bottom:16px}.preset-section h4[data-v-619d25be]{font-size:14px;margin:0 0 8px;color:var(--text-primary,#303133)}.preset-grid[data-v-619d25be]{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:6px}.preset-item[data-v-619d25be]{display:flex;align-items:center;gap:6px;font-size:13px;padding:7px 10px;border:1px solid var(--border-color,#e4e7ed);border-radius:6px;cursor:pointer;transition:all .15s}.preset-item.selected[data-v-619d25be],.preset-item[data-v-619d25be]:hover{border-color:var(--primary-color,#409eff)}.preset-item.selected[data-v-619d25be]{background:#ecf5ff;color:#409eff}.preset-item input[type=checkbox][data-v-619d25be]{margin:0}.toast-container[data-v-619d25be]{position:fixed;top:20px;right:20px;z-index:9999;display:flex;flex-direction:column;gap:8px}.toast[data-v-619d25be]{display:flex;align-items:center;gap:10px;padding:12px 16px;border-radius:10px;font-size:14px;box-shadow:0 6px 20px rgba(0,0,0,.12);min-width:260px;max-width:420px;backdrop-filter:blur(8px)}.toast-success[data-v-619d25be]{background:#f0f9eb;border:1px solid #e1f3d8;color:#67c23a}.toast-error[data-v-619d25be]{background:#fef0f0;border:1px solid #fde2e2;color:#f56c6c}.toast-warning[data-v-619d25be]{background:#fdf6ec;border:1px solid #faecd8;color:#e6a23c}.toast-info[data-v-619d25be]{background:#ecf5ff;border:1px solid #d9ecff;color:#409eff}.toast-icon[data-v-619d25be]{width:20px;height:20px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;flex-shrink:0}.toast-success .toast-icon[data-v-619d25be]{background:#67c23a;color:#fff}.toast-error .toast-icon[data-v-619d25be]{background:#f56c6c;color:#fff}.toast-warning .toast-icon[data-v-619d25be]{background:#e6a23c;color:#fff}.toast-info .toast-icon[data-v-619d25be]{background:#409eff;color:#fff}.toast-msg[data-v-619d25be]{flex:1}.toast-close[data-v-619d25be]{background:none;border:none;font-size:16px;cursor:pointer;color:inherit;opacity:.6;padding:0 0 0 4px}.toast-close[data-v-619d25be]:hover{opacity:1}.toast-slide-enter-active[data-v-619d25be]{animation:toastIn-619d25be .3s ease}.toast-slide-leave-active[data-v-619d25be]{animation:toastOut-619d25be .25s ease}@keyframes toastIn-619d25be{0%{opacity:0;transform:translateX(40px)}to{opacity:1;transform:translateX(0)}}@keyframes toastOut-619d25be{0%{opacity:1;transform:translateX(0)}to{opacity:0;transform:translateX(40px)}}.fade-enter-active[data-v-619d25be],.fade-leave-active[data-v-619d25be]{transition:opacity .25s}.fade-enter-from[data-v-619d25be],.fade-leave-to[data-v-619d25be]{opacity:0}.full-loading[data-v-619d25be]{position:fixed;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;background:hsla(0,0%,100%,.85);z-index:100;gap:12px}.full-loading p[data-v-619d25be]{font-size:14px;color:var(--text-secondary,#909399);margin:0}@media (max-width:768px){.overview-stats[data-v-619d25be]{grid-template-columns:repeat(2,1fr)}.tabs-nav[data-v-619d25be]{overflow-x:auto}.form-row[data-v-619d25be],.heats-container[data-v-619d25be],.preset-grid[data-v-619d25be],.rules-grid[data-v-619d25be]{grid-template-columns:1fr}.header-container[data-v-619d25be]{flex-direction:column;align-items:flex-start}.search-input[data-v-619d25be]{width:100%}}.teacher-training[data-v-0332507b]{padding:20px}.header[data-v-0332507b]{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;flex-wrap:wrap;gap:12px}.header-left[data-v-0332507b]{display:flex;align-items:center;gap:16px}.header-left h2[data-v-0332507b]{margin:0;color:#000000d9}.header-right[data-v-0332507b]{display:flex;gap:8px;align-items:center}.btn[data-v-0332507b]{padding:8px 16px;border:1px solid #d9d9d9;border-radius:6px;cursor:pointer;font-size:14px;transition:all .2s;background:#fff}.btn-primary[data-v-0332507b]{background:#1677ff;color:#fff;border-color:#1677ff}.btn-secondary[data-v-0332507b]{background:#f5f5f5}.btn-outline[data-v-0332507b]{background:#fff;border-color:#d9d9d9}.btn-outline.active[data-v-0332507b]{border-color:#1677ff;color:#1677ff;background:#e6f4ff}.btn-danger[data-v-0332507b]{background:#ff4d4f;color:#fff;border-color:#ff4d4f}.btn-sm[data-v-0332507b]{padding:4px 12px;font-size:12px}.btn-small[data-v-0332507b]{padding:4px 10px;font-size:12px}.btn[data-v-0332507b]:hover{opacity:.85}.btn[data-v-0332507b]:disabled{opacity:.5;cursor:not-allowed}.filter-bar[data-v-0332507b]{display:flex;gap:12px;margin-bottom:20px;align-items:center}.search-input[data-v-0332507b],.select-input[data-v-0332507b]{padding:8px 12px;border:1px solid #d9d9d9;border-radius:6px;font-size:14px}.select-input[data-v-0332507b]{min-width:180px}.search-input[data-v-0332507b]{flex:1;max-width:300px}.class-overview[data-v-0332507b]{background:#fff;border-radius:8px;padding:20px;margin-bottom:20px;box-shadow:0 1px 4px rgba(0,0,0,.08)}.class-overview h3[data-v-0332507b]{margin:0 0 16px;font-size:16px}.overview-cards[data-v-0332507b]{display:flex;gap:16px;flex-wrap:wrap}.overview-card[data-v-0332507b]{background:#f8f9fa;border-radius:8px;padding:16px 24px;text-align:center;min-width:80px}.ov-number[data-v-0332507b]{font-size:24px;font-weight:700;color:#1677ff}.ov-label[data-v-0332507b]{font-size:12px;color:#666;margin-top:4px}.profiles-grid[data-v-0332507b]{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px}.profile-card[data-v-0332507b]{background:#fff;border-radius:8px;padding:16px;box-shadow:0 1px 4px rgba(0,0,0,.08);cursor:pointer;transition:all .2s;border:1px solid #f0f0f0}.profile-card[data-v-0332507b]:hover{box-shadow:0 4px 12px rgba(0,0,0,.12);transform:translateY(-2px)}.profile-header[data-v-0332507b]{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.profile-name[data-v-0332507b]{font-size:16px;font-weight:600}.profile-level[data-v-0332507b]{padding:2px 8px;border-radius:4px;font-size:12px;font-weight:700}.level-A[data-v-0332507b]{background:#f6ffed;color:#52c41a}.level-B[data-v-0332507b]{background:#e6f4ff;color:#1677ff}.level-C[data-v-0332507b]{background:#fffbe6;color:#faad14}.level-D[data-v-0332507b]{background:#fff2e8;color:#fa8c16}.level-E[data-v-0332507b]{background:#fff1f0;color:#ff4d4f}.level-N[data-v-0332507b]{background:#f5f5f5;color:#999}.profile-info[data-v-0332507b]{font-size:12px;color:#999;margin-bottom:12px;display:flex;gap:12px}.profile-metrics[data-v-0332507b]{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:8px}.metric[data-v-0332507b]{text-align:center}.metric-label[data-v-0332507b]{display:block;font-size:11px;color:#999}.metric-value[data-v-0332507b]{display:block;font-size:14px;font-weight:600;color:#333}.profile-tags[data-v-0332507b]{display:flex;gap:4px;flex-wrap:wrap;margin-top:4px}.tag[data-v-0332507b]{padding:2px 6px;border-radius:3px;font-size:11px}.tag-green[data-v-0332507b]{background:#f6ffed;color:#52c41a}.tag-red[data-v-0332507b]{background:#fff1f0;color:#ff4d4f}.stats-grid[data-v-0332507b]{display:flex;gap:16px;margin-bottom:20px}.stat-card[data-v-0332507b]{background:#fff;border-radius:8px;padding:20px;flex:1;text-align:center;box-shadow:0 1px 4px rgba(0,0,0,.08)}.stat-number[data-v-0332507b]{font-size:28px;font-weight:700;color:#1677ff}.stat-label[data-v-0332507b]{font-size:13px;color:#666;margin-top:4px}.filter-tabs[data-v-0332507b]{display:flex;gap:8px;margin-bottom:20px}.tab[data-v-0332507b]{padding:6px 16px;border:1px solid #d9d9d9;border-radius:20px;background:#fff;cursor:pointer;font-size:13px;transition:all .2s}.tab.active[data-v-0332507b]{background:#1677ff;color:#fff;border-color:#1677ff}.tasks-grid[data-v-0332507b]{display:grid;grid-template-columns:repeat(auto-fill,minmax(360px,1fr));gap:16px}.task-card[data-v-0332507b]{background:#fff;border-radius:8px;padding:20px;box-shadow:0 1px 4px rgba(0,0,0,.08);border-left:4px solid #1677ff}.task-card.status-completed[data-v-0332507b]{border-left-color:#52c41a}.task-card.status-cancelled[data-v-0332507b]{border-left-color:#d9d9d9;opacity:.7}.task-header[data-v-0332507b]{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.task-title[data-v-0332507b]{font-size:16px;font-weight:600}.task-type[data-v-0332507b]{padding:2px 8px;border-radius:4px;font-size:12px;background:#e6f4ff;color:#1677ff}.task-type.strength[data-v-0332507b]{background:#fff2e8;color:#fa8c16}.task-type.flexibility[data-v-0332507b]{background:#f6ffed;color:#52c41a}.task-type.skill[data-v-0332507b]{background:#f9f0ff;color:#722ed1}.task-type.comprehensive[data-v-0332507b]{background:#e6fffb;color:#13c2c2}.task-meta[data-v-0332507b]{font-size:12px;color:#999;display:flex;gap:12px;margin-bottom:8px;flex-wrap:wrap}.task-description[data-v-0332507b]{font-size:13px;color:#666;margin-bottom:12px;line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.task-progress[data-v-0332507b]{margin-bottom:12px}.progress-info[data-v-0332507b]{display:flex;justify-content:space-between;font-size:12px;color:#666;margin-bottom:4px}.progress-bar[data-v-0332507b]{height:6px;background:#f0f0f0;border-radius:3px;overflow:hidden}.progress-fill[data-v-0332507b]{height:100%;background:#1677ff;border-radius:3px;transition:width .3s}.ai-badge[data-v-0332507b]{display:inline-block;padding:2px 8px;background:#f0f5ff;color:#2f54eb;border-radius:4px;font-size:11px;margin-bottom:8px}.task-actions[data-v-0332507b]{display:flex;gap:8px}.modal-overlay[data-v-0332507b]{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.45);display:flex;align-items:center;justify-content:center;z-index:1000}.modal-content[data-v-0332507b]{background:#fff;border-radius:12px;padding:24px;width:90%;max-width:600px;max-height:85vh;overflow-y:auto}.modal-large[data-v-0332507b]{max-width:800px}.modal-header[data-v-0332507b]{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.modal-header h3[data-v-0332507b]{margin:0}.close-btn[data-v-0332507b]{background:none;border:none;font-size:20px;cursor:pointer;color:#999}.create-form .form-group[data-v-0332507b]{margin-bottom:16px}.create-form label[data-v-0332507b]{display:block;font-size:13px;color:#333;margin-bottom:6px;font-weight:500}.create-form input[type=date][data-v-0332507b],.create-form input[type=text][data-v-0332507b],.create-form select[data-v-0332507b],.create-form textarea[data-v-0332507b]{width:100%;padding:8px 12px;border:1px solid #d9d9d9;border-radius:6px;font-size:14px;box-sizing:border-box}.form-row[data-v-0332507b]{display:grid;grid-template-columns:1fr 1fr;gap:16px}.class-selector[data-v-0332507b]{display:flex;flex-wrap:wrap;gap:8px}.checkbox-label[data-v-0332507b]{display:flex;align-items:center;gap:4px;padding:4px 10px;background:#f5f5f5;border-radius:4px;font-size:13px;cursor:pointer}.checkbox-label input:checked+span[data-v-0332507b]{color:#1677ff;font-weight:600}.form-actions[data-v-0332507b]{display:flex;justify-content:flex-end;gap:12px;margin-top:20px}.hint[data-v-0332507b]{font-size:12px;color:#999;margin-top:4px}.ai-suggestion-box[data-v-0332507b]{background:#f0f5ff;border:1px solid #d6e4ff;border-radius:8px;padding:16px;margin-bottom:16px}.ai-suggestion-box h4[data-v-0332507b]{margin:0 0 8px;font-size:14px;color:#2f54eb}.ai-suggestion-box pre[data-v-0332507b]{white-space:pre-wrap;font-size:13px;color:#333;margin:0;font-family:inherit;line-height:1.6}.detail-section[data-v-0332507b]{margin-bottom:20px}.detail-section h4[data-v-0332507b]{margin:0 0 12px;font-size:15px;color:#333;border-bottom:1px solid #f0f0f0;padding-bottom:8px}.detail-grid[data-v-0332507b]{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:8px}.detail-grid .label[data-v-0332507b]{color:#999;font-size:13px}.level-badge[data-v-0332507b]{padding:2px 8px;border-radius:4px;font-weight:700;font-size:13px}.ai-recommendation[data-v-0332507b]{background:#f8f9fa;border-radius:8px;padding:16px}.rec-section[data-v-0332507b]{margin-bottom:8px}.rec-text[data-v-0332507b]{white-space:pre-wrap;font-size:13px;color:#333;margin:8px 0 0;font-family:inherit;line-height:1.6}.empty-state[data-v-0332507b]{text-align:center;padding:60px 20px;color:#999;font-size:14px}.pagination[data-v-0332507b]{display:flex;justify-content:center;align-items:center;gap:16px;margin-top:20px}.pagination button[data-v-0332507b]{padding:6px 16px;border:1px solid #d9d9d9;border-radius:4px;background:#fff;cursor:pointer}.pagination button[data-v-0332507b]:disabled{opacity:.4;cursor:not-allowed}.student-training-admin[data-v-5e6f1d29]{padding:20px}.header[data-v-5e6f1d29]{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;flex-wrap:wrap;gap:12px}.header-left[data-v-5e6f1d29]{display:flex;align-items:center;gap:16px}.header-left h2[data-v-5e6f1d29]{margin:0;color:#000000d9}.select-input[data-v-5e6f1d29]{padding:8px 12px;min-width:300px}.btn[data-v-5e6f1d29],.select-input[data-v-5e6f1d29]{border:1px solid #d9d9d9;border-radius:6px;font-size:14px}.btn[data-v-5e6f1d29]{padding:8px 16px;cursor:pointer;background:#fff}.btn-secondary[data-v-5e6f1d29]{background:#f5f5f5}.task-overview[data-v-5e6f1d29]{background:#fff;border-radius:8px;padding:20px;margin-bottom:20px;box-shadow:0 1px 4px rgba(0,0,0,.08);display:flex;justify-content:space-between;gap:24px;flex-wrap:wrap}.overview-info[data-v-5e6f1d29]{flex:1}.overview-info h3[data-v-5e6f1d29]{margin:0 0 8px;font-size:18px}.overview-meta[data-v-5e6f1d29]{display:flex;gap:12px;font-size:13px;color:#666;align-items:center;flex-wrap:wrap}.overview-desc[data-v-5e6f1d29]{font-size:13px;color:#666;margin:8px 0 0;line-height:1.5}.badge[data-v-5e6f1d29]{padding:2px 8px;border-radius:4px;font-size:12px;background:#e6f4ff;color:#1677ff}.badge.strength[data-v-5e6f1d29]{background:#fff2e8;color:#fa8c16}.badge.flexibility[data-v-5e6f1d29]{background:#f6ffed;color:#52c41a}.badge.skill[data-v-5e6f1d29]{background:#f9f0ff;color:#722ed1}.badge.comprehensive[data-v-5e6f1d29]{background:#e6fffb;color:#13c2c2}.overview-stats[data-v-5e6f1d29]{display:flex;gap:24px;align-items:center}.os-item[data-v-5e6f1d29]{text-align:center;min-width:70px}.os-number[data-v-5e6f1d29]{font-size:28px;font-weight:700;color:#333}.os-label[data-v-5e6f1d29]{font-size:12px;color:#999}.text-green[data-v-5e6f1d29]{color:#52c41a}.text-blue[data-v-5e6f1d29]{color:#1677ff}.filter-bar[data-v-5e6f1d29]{margin-bottom:16px}.filter-tabs[data-v-5e6f1d29]{display:flex;gap:8px}.tab[data-v-5e6f1d29]{padding:6px 16px;border:1px solid #d9d9d9;border-radius:20px;background:#fff;cursor:pointer;font-size:13px}.tab.active[data-v-5e6f1d29]{background:#1677ff;color:#fff;border-color:#1677ff}.records-table-wrap[data-v-5e6f1d29]{background:#fff;border-radius:8px;box-shadow:0 1px 4px rgba(0,0,0,.08);overflow:hidden}.records-table[data-v-5e6f1d29]{width:100%;border-collapse:collapse}.records-table th[data-v-5e6f1d29]{background:#fafafa;padding:12px 16px;text-align:left;font-size:13px;color:#666;border-bottom:1px solid #f0f0f0}.records-table td[data-v-5e6f1d29]{padding:12px 16px;font-size:13px;border-bottom:1px solid #f5f5f5}.records-table tr[data-v-5e6f1d29]:hover{background:#fafafa}.status-tag[data-v-5e6f1d29]{padding:2px 8px;border-radius:4px;font-size:12px}.status-pending[data-v-5e6f1d29]{background:#f5f5f5;color:#999}.status-in_progress[data-v-5e6f1d29]{background:#e6f4ff;color:#1677ff}.status-completed[data-v-5e6f1d29]{background:#f6ffed;color:#52c41a}.status-overdue[data-v-5e6f1d29]{background:#fff1f0;color:#ff4d4f}.mini-progress[data-v-5e6f1d29]{display:flex;align-items:center;gap:8px}.mini-bar[data-v-5e6f1d29]{width:60px;height:4px;background:#f0f0f0;border-radius:2px;overflow:hidden}.mini-fill[data-v-5e6f1d29]{height:100%;background:#1677ff;border-radius:2px}.empty-row[data-v-5e6f1d29]{text-align:center;padding:40px;color:#999}.empty-state[data-v-5e6f1d29]{text-align:center;padding:80px 20px;color:#999}.empty-icon[data-v-5e6f1d29]{font-size:48px;margin-bottom:16px}.pe-score[data-v-55c45a8b]{padding:20px}.header[data-v-55c45a8b]{display:flex;align-items:center;gap:16px;margin-bottom:24px}.header h2[data-v-55c45a8b]{margin:0;color:#000000d9}.btn[data-v-55c45a8b]{padding:8px 16px;border:1px solid #d9d9d9;border-radius:6px;cursor:pointer;font-size:14px;background:#fff}.btn-secondary[data-v-55c45a8b]{background:#f5f5f5}.btn-primary[data-v-55c45a8b]{background:#1677ff;color:#fff;border-color:#1677ff}.btn-small[data-v-55c45a8b]{padding:4px 10px;font-size:12px}.btn-danger[data-v-55c45a8b]{color:#ff4d4f;border-color:#ff4d4f}.stats-row[data-v-55c45a8b]{display:flex;gap:16px;margin-bottom:24px;flex-wrap:wrap}.stat-card[data-v-55c45a8b]{background:#fff;border-radius:8px;padding:20px;flex:1;min-width:140px;text-align:center;box-shadow:0 1px 4px rgba(0,0,0,.08)}.stat-num[data-v-55c45a8b]{font-size:28px;font-weight:700;color:#333}.stat-label[data-v-55c45a8b]{font-size:13px;color:#666;margin-top:4px}.text-blue[data-v-55c45a8b]{color:#1677ff}.text-green[data-v-55c45a8b]{color:#52c41a}.text-orange[data-v-55c45a8b]{color:#fa8c16}.text-bold[data-v-55c45a8b]{font-weight:600}.tab-bar[data-v-55c45a8b]{display:flex;gap:8px;margin-bottom:20px}.tab[data-v-55c45a8b]{padding:8px 20px;border:1px solid #d9d9d9;border-radius:20px;background:#fff;cursor:pointer;font-size:14px}.tab.active[data-v-55c45a8b]{background:#1677ff;color:#fff;border-color:#1677ff}.filter-bar[data-v-55c45a8b]{margin-bottom:16px}.search-input[data-v-55c45a8b]{padding:8px 12px;border:1px solid #d9d9d9;border-radius:6px;font-size:14px;width:300px}.table-wrap[data-v-55c45a8b]{background:#fff;border-radius:8px;box-shadow:0 1px 4px rgba(0,0,0,.08);overflow:hidden}.data-table[data-v-55c45a8b]{width:100%;border-collapse:collapse}.data-table th[data-v-55c45a8b]{background:#fafafa;padding:12px 16px;text-align:left;font-size:13px;color:#666;border-bottom:1px solid #f0f0f0}.data-table td[data-v-55c45a8b]{padding:12px 16px;font-size:13px;border-bottom:1px solid #f5f5f5}.data-table tr[data-v-55c45a8b]:hover{background:#fafafa}.college-grid[data-v-55c45a8b]{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:12px}.college-card[data-v-55c45a8b]{background:#fff;border-radius:8px;padding:16px;box-shadow:0 1px 4px rgba(0,0,0,.08)}.college-name[data-v-55c45a8b]{font-size:15px;font-weight:600;margin-bottom:8px}.college-data[data-v-55c45a8b]{display:flex;gap:16px;font-size:13px;color:#666}.targets-form[data-v-55c45a8b]{background:#fff;border-radius:8px;padding:24px;max-width:500px;box-shadow:0 1px 4px rgba(0,0,0,.08)}.targets-form h3[data-v-55c45a8b]{margin:0 0 20px}.form-row[data-v-55c45a8b]{margin-bottom:16px}.form-row label[data-v-55c45a8b]{display:block;font-size:14px;color:#333;margin-bottom:6px}.form-input[data-v-55c45a8b]{width:100%;padding:8px 12px;border:1px solid #d9d9d9;border-radius:6px;font-size:14px}.empty[data-v-55c45a8b]{text-align:center;padding:60px 20px;color:#999}.physical-test[data-v-1b92b502]{padding:20px}.header[data-v-1b92b502]{display:flex;align-items:center;gap:16px;margin-bottom:24px}.header h2[data-v-1b92b502]{margin:0;color:#000000d9}.btn[data-v-1b92b502]{padding:8px 16px;border:1px solid #d9d9d9;border-radius:6px;cursor:pointer;font-size:14px;background:#fff}.btn-secondary[data-v-1b92b502]{background:#f5f5f5}.card-grid[data-v-1b92b502]{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px;margin-bottom:24px}.action-card[data-v-1b92b502]{background:#fff;border-radius:12px;padding:24px;box-shadow:0 1px 4px rgba(0,0,0,.08);cursor:pointer;transition:all .2s;border:1px solid #f0f0f0}.action-card[data-v-1b92b502]:hover{transform:translateY(-2px);box-shadow:0 4px 12px rgba(0,0,0,.12);border-color:#1677ff}.card-icon[data-v-1b92b502]{font-size:36px;margin-bottom:12px}.action-card h3[data-v-1b92b502]{margin:0 0 8px;font-size:16px;color:#000000d9}.action-card p[data-v-1b92b502]{margin:0 0 12px;font-size:13px;color:#666;line-height:1.5}.card-link[data-v-1b92b502]{color:#1677ff;font-size:13px;font-weight:500}.info-section[data-v-1b92b502]{background:#fff;border-radius:12px;padding:24px;box-shadow:0 1px 4px rgba(0,0,0,.08)}.info-section h3[data-v-1b92b502]{margin:0 0 16px;font-size:16px;color:#000000d9}.test-items[data-v-1b92b502]{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px}.test-item[data-v-1b92b502]{display:flex;justify-content:space-between;padding:10px 16px;background:#fafafa;border-radius:6px}.item-name[data-v-1b92b502]{font-size:14px;color:#333}.item-unit[data-v-1b92b502]{font-size:13px;color:#999}.teacher-equipment[data-v-bea43fde]{padding:20px}.header-section[data-v-bea43fde]{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.header-section h2[data-v-bea43fde]{color:#000000d9;margin:0}.header-actions[data-v-bea43fde]{display:flex;gap:12px}.search-section[data-v-bea43fde]{margin-bottom:24px;padding:20px}.search-row[data-v-bea43fde]{display:flex;align-items:end;gap:20px;flex-wrap:wrap}.search-item[data-v-bea43fde]{display:flex;flex-direction:column;gap:8px}.search-item label[data-v-bea43fde]{font-weight:500;color:#00000073}.search-item input[data-v-bea43fde],.search-item select[data-v-bea43fde]{padding:8px 12px;border:1px solid var(--border-color);border-radius:4px;min-width:200px}.equipment-list[data-v-bea43fde]{background:#fff;border-radius:8px;padding:20px;box-shadow:var(--shadow-card);border:1px solid var(--border-light);margin-bottom:24px}.list-header[data-v-bea43fde]{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.list-header h3[data-v-bea43fde]{margin:0;color:#000000d9}.total-count[data-v-bea43fde]{color:#00000040;font-size:14px}.equipment-table table[data-v-bea43fde]{width:100%;border-collapse:collapse}.equipment-table td[data-v-bea43fde],.equipment-table th[data-v-bea43fde]{padding:12px;text-align:left;border-bottom:1px solid #ebeef5}.equipment-table th[data-v-bea43fde]{background-color:#fafafa;font-weight:600;color:#00000073}.equipment-name strong[data-v-bea43fde]{color:#000000d9}.specification[data-v-bea43fde]{max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.quantity-total[data-v-bea43fde]{color:#000000d9;font-weight:600}.quantity-available[data-v-bea43fde]{color:#67c23a;font-weight:600}.quantity-borrowed[data-v-bea43fde]{color:#e6a23c;font-weight:600}.quantity-damaged[data-v-bea43fde]{color:#f56c6c;font-weight:600}.actions[data-v-bea43fde]{display:flex;gap:8px}.btn-small[data-v-bea43fde]{padding:6px 12px;font-size:12px}.empty-state[data-v-bea43fde],.loading-state[data-v-bea43fde]{text-align:center;padding:40px;color:#00000040}.applications-section[data-v-bea43fde]{background:#fff;border-radius:8px;padding:20px;box-shadow:var(--shadow-card);border:1px solid var(--border-light)}.section-header[data-v-bea43fde]{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.section-header h3[data-v-bea43fde]{margin:0;color:#000000d9}.pending-count[data-v-bea43fde]{background:#f56c6c;color:#fff;padding:4px 8px;border-radius:12px;font-size:12px;font-weight:600}.applications-list[data-v-bea43fde]{display:flex;flex-direction:column;gap:16px}.application-card[data-v-bea43fde]{border:1px solid #ebeef5;border-radius:8px;padding:16px;display:flex;justify-content:space-between;align-items:center;transition:all .3s}.application-card[data-v-bea43fde]:hover{border-color:#1677ff;box-shadow:0 2px 8px rgba(64,158,255,.1)}.application-info[data-v-bea43fde]{flex:1}.applicant[data-v-bea43fde]{margin-bottom:8px}.applicant strong[data-v-bea43fde]{color:#000000d9;margin-right:8px}.user-type[data-v-bea43fde]{background:#e6f7ff;color:#1890ff;padding:2px 6px;border-radius:4px;font-size:12px}.equipment-info[data-v-bea43fde],.purpose[data-v-bea43fde],.time-info[data-v-bea43fde]{color:#00000073;font-size:14px;margin-bottom:4px}.application-actions[data-v-bea43fde]{display:flex;gap:8px}.btn-danger[data-v-bea43fde]{background-color:#f56c6c;color:#fff}.btn-danger[data-v-bea43fde]:hover{background-color:#f78989}.modal-overlay[data-v-bea43fde]{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.5);display:flex;align-items:center;justify-content:center;z-index:1000}.modal-content[data-v-bea43fde]{background:#fff;border-radius:8px;width:90%;max-width:600px;max-height:90vh;overflow-y:auto}.modal-header[data-v-bea43fde]{display:flex;justify-content:space-between;align-items:center;padding:20px;border-bottom:1px solid #ebeef5}.modal-header h3[data-v-bea43fde]{margin:0;color:#000000d9}.close-btn[data-v-bea43fde]{background:none;border:none;font-size:24px;cursor:pointer;color:#00000040}.close-btn[data-v-bea43fde]:hover{color:#000000d9}.modal-body[data-v-bea43fde]{padding:20px}.form-row[data-v-bea43fde]{display:flex;gap:20px}.form-group[data-v-bea43fde]{flex:1;margin-bottom:20px}.form-group label[data-v-bea43fde]{display:block;margin-bottom:8px;font-weight:500;color:#00000073}.form-group input[data-v-bea43fde],.form-group select[data-v-bea43fde],.form-group textarea[data-v-bea43fde]{width:100%;padding:12px;border:1px solid var(--border-color);border-radius:6px;font-size:14px;transition:border-color .3s}.form-group input[data-v-bea43fde]:focus,.form-group select[data-v-bea43fde]:focus,.form-group textarea[data-v-bea43fde]:focus{outline:none;border-color:#1677ff}.modal-actions[data-v-bea43fde]{display:flex;justify-content:flex-end;gap:12px;margin-top:24px;padding-top:20px;border-top:1px solid #ebeef5}.btn-secondary[data-v-bea43fde]{background:var(--bg-body);color:#00000073}.btn-secondary[data-v-bea43fde]:hover{background-color:#ebeef5}.stock-info[data-v-bea43fde]{background:var(--bg-body);border-radius:6px;padding:16px;margin-bottom:20px}.stock-item[data-v-bea43fde]{display:flex;justify-content:space-between;margin-bottom:8px}.stock-item[data-v-bea43fde]:last-child{margin-bottom:0}.stock-item label[data-v-bea43fde]{color:#00000073}.stock-item span[data-v-bea43fde]{font-weight:600;color:#000000d9}.import-label[data-v-bea43fde]{cursor:pointer;display:inline-flex;align-items:center}.import-result[data-v-bea43fde]{padding:14px 20px;margin-bottom:16px;display:flex;align-items:flex-start;gap:16px;flex-wrap:wrap;font-size:14px;color:#000000d9}.error-list[data-v-bea43fde]{margin:4px 0 0 16px;padding:0;color:#f56c6c;font-size:13px}.teacher-equipment[data-v-5f28ec89]{padding:24px}.header-section[data-v-5f28ec89]{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.header-section h2[data-v-5f28ec89]{font-size:22px;font-weight:600;color:#000000d9;margin:0}.header-actions[data-v-5f28ec89]{display:flex;gap:10px}.stats-row[data-v-5f28ec89]{display:flex;align-items:center;gap:0;padding:16px 24px;margin-bottom:20px}.stat-box[data-v-5f28ec89]{display:flex;flex-direction:column;align-items:center;padding:0 32px}.stat-num[data-v-5f28ec89]{font-size:28px;font-weight:700;color:#000000d9;line-height:1.2}.stat-num.available[data-v-5f28ec89]{color:#67c23a}.stat-num.warning[data-v-5f28ec89]{color:#e6a23c}.stat-num.danger[data-v-5f28ec89]{color:#f56c6c}.stat-label[data-v-5f28ec89]{font-size:12px;color:#00000073;margin-top:2px}.stat-divider[data-v-5f28ec89]{width:1px;height:40px;background:#ebeef5}.card[data-v-5f28ec89]{background:#fff;border-radius:8px;box-shadow:var(--shadow-card);border:1px solid var(--border-light)}.search-section[data-v-5f28ec89]{margin-bottom:20px;padding:20px}.search-row[data-v-5f28ec89]{display:flex;align-items:flex-end;gap:20px;flex-wrap:wrap}.search-item[data-v-5f28ec89]{display:flex;flex-direction:column;gap:6px}.search-item label[data-v-5f28ec89]{font-size:13px;font-weight:500;color:#00000073}.search-item input[data-v-5f28ec89],.search-item select[data-v-5f28ec89]{padding:8px 12px;border:1px solid var(--border-color);border-radius:4px;min-width:160px;font-size:14px;outline:none}.search-item input[data-v-5f28ec89]:focus,.search-item select[data-v-5f28ec89]:focus{border-color:#1677ff}.equipment-list[data-v-5f28ec89]{background:#fff;border-radius:8px;padding:20px;box-shadow:var(--shadow-card);border:1px solid var(--border-light);margin-bottom:20px}.list-header[data-v-5f28ec89]{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.list-header h3[data-v-5f28ec89]{margin:0;color:#000000d9;font-size:16px;font-weight:600}.total-count[data-v-5f28ec89]{color:#00000040;font-size:14px}.equipment-table table[data-v-5f28ec89]{width:100%;border-collapse:collapse}.equipment-table td[data-v-5f28ec89],.equipment-table th[data-v-5f28ec89]{padding:12px;text-align:left;border-bottom:1px solid #ebeef5;font-size:14px}.equipment-table th[data-v-5f28ec89]{background-color:#fafafa;font-weight:600;color:#00000073}.equipment-name strong[data-v-5f28ec89]{color:#000000d9}.actions[data-v-5f28ec89]{display:flex;gap:6px;flex-wrap:wrap}.status-badge[data-v-5f28ec89]{display:inline-block;padding:2px 10px;border-radius:10px;font-size:12px;font-weight:500}.status-badge.available[data-v-5f28ec89]{background:#f0f9e8;color:#67c23a}.status-badge.maintenance[data-v-5f28ec89]{background:#fdf6ec;color:#e6a23c}.status-badge.closed[data-v-5f28ec89]{background:#fef0f0;color:#f56c6c}.status-badge.pending[data-v-5f28ec89]{background:#fdf6ec;color:#e6a23c}.status-badge.approved[data-v-5f28ec89]{background:#f0f9e8;color:#67c23a}.status-badge.rejected[data-v-5f28ec89]{background:#fef0f0;color:#f56c6c}.status-badge.cancelled[data-v-5f28ec89]{background:#f4f4f5;color:#909399}.status-badge.completed[data-v-5f28ec89]{background:#ecf5ff;color:#1677ff}.applications-section[data-v-5f28ec89]{background:#fff;border-radius:8px;padding:20px;box-shadow:var(--shadow-card);border:1px solid var(--border-light);margin-bottom:20px}.section-header[data-v-5f28ec89]{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;flex-wrap:wrap;gap:10px}.section-header h3[data-v-5f28ec89]{margin:0;font-size:16px;font-weight:600;color:#000000d9}.section-tools[data-v-5f28ec89]{display:flex;align-items:center;gap:8px}.section-tools input[type=date][data-v-5f28ec89]{padding:6px 10px;border:1px solid var(--border-color);border-radius:4px;font-size:13px}.applications-list[data-v-5f28ec89]{display:flex;flex-direction:column;gap:10px}.application-card[data-v-5f28ec89]{display:flex;justify-content:space-between;align-items:center;padding:14px 16px;border:1px solid #ebeef5;border-radius:6px;background:#fafafa;gap:16px}.application-info[data-v-5f28ec89]{flex:1}.applicant[data-v-5f28ec89]{display:flex;align-items:center;gap:8px;margin-bottom:4px}.applicant strong[data-v-5f28ec89]{color:#000000d9;font-size:14px}.user-type[data-v-5f28ec89]{font-size:12px;color:#00000040;background:#f4f4f5;padding:1px 8px;border-radius:8px}.equipment-info[data-v-5f28ec89],.time-info[data-v-5f28ec89]{font-size:13px;color:#00000073;margin-top:3px}.application-actions[data-v-5f28ec89]{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.btn[data-v-5f28ec89]{padding:8px 16px;border:none;border-radius:4px;cursor:pointer;font-size:14px;transition:all .2s}.btn[data-v-5f28ec89]:disabled{opacity:.6;cursor:not-allowed}.btn-primary[data-v-5f28ec89]{background:#1677ff;color:#fff}.btn-primary[data-v-5f28ec89]:hover:not(:disabled){background:#0958d9}.btn-success[data-v-5f28ec89]{background:#67c23a;color:#fff}.btn-success[data-v-5f28ec89]:hover{background:#5daf34}.btn-warning[data-v-5f28ec89]{background:#e6a23c;color:#fff}.btn-warning[data-v-5f28ec89]:hover{background:#d1940a}.btn-danger[data-v-5f28ec89]{background:#f56c6c;color:#fff}.btn-danger[data-v-5f28ec89]:hover{background:#e05555}.btn-small[data-v-5f28ec89]{padding:5px 10px;font-size:12px}.empty-state[data-v-5f28ec89],.loading-state[data-v-5f28ec89]{text-align:center;padding:40px;color:#00000040;font-size:15px}.modal-overlay[data-v-5f28ec89]{position:fixed;inset:0;background:rgba(0,0,0,.45);display:flex;align-items:center;justify-content:center;z-index:1000}.modal-content[data-v-5f28ec89]{background:#fff;border-radius:8px;width:560px;max-width:94vw;max-height:88vh;overflow-y:auto}.modal-header[data-v-5f28ec89]{display:flex;justify-content:space-between;align-items:center;padding:18px 20px;border-bottom:1px solid #ebeef5}.modal-header h3[data-v-5f28ec89]{margin:0;font-size:16px;color:#000000d9}.close-btn[data-v-5f28ec89]{background:none;border:none;font-size:20px;cursor:pointer;color:#00000040;padding:0;line-height:1}.close-btn[data-v-5f28ec89]:hover{color:#000000d9}.modal-body[data-v-5f28ec89]{padding:20px}.form-row[data-v-5f28ec89]{display:grid;grid-template-columns:1fr 1fr;gap:16px}.form-group[data-v-5f28ec89]{margin-bottom:16px}.form-group label[data-v-5f28ec89]{display:block;margin-bottom:6px;font-size:13px;color:#00000073;font-weight:500}.form-group input[data-v-5f28ec89],.form-group select[data-v-5f28ec89],.form-group textarea[data-v-5f28ec89]{width:100%;padding:8px 12px;border:1px solid var(--border-color);border-radius:4px;font-size:14px;box-sizing:border-box;outline:none}.form-group input[data-v-5f28ec89]:focus,.form-group select[data-v-5f28ec89]:focus,.form-group textarea[data-v-5f28ec89]:focus{border-color:#1677ff}.form-actions[data-v-5f28ec89]{display:flex;justify-content:flex-end;gap:10px;margin-top:8px}.import-label[data-v-5f28ec89]{cursor:pointer;display:inline-flex;align-items:center}.import-result[data-v-5f28ec89]{padding:14px 20px;margin-bottom:16px;display:flex;align-items:flex-start;gap:16px;flex-wrap:wrap;font-size:14px;color:#000000d9}.error-list[data-v-5f28ec89]{margin:4px 0 0 16px;padding:0;color:#f56c6c;font-size:13px}.toast[data-v-5f28ec89]{position:fixed;bottom:28px;left:50%;transform:translateX(-50%);padding:10px 24px;border-radius:4px;font-size:14px;z-index:9999;box-shadow:0 4px 12px rgba(0,0,0,.15)}.toast.success[data-v-5f28ec89]{background:#67c23a;color:#fff}.toast.error[data-v-5f28ec89]{background:#f56c6c;color:#fff}.listening-management[data-v-f6f7b016]{min-height:100vh;background:#fafafa;border:1px solid var(--border-light)}.page-header[data-v-f6f7b016]{background:#fff;border-bottom:1px solid var(--border-light);position:sticky;top:0;z-index:1000;box-shadow:var(--shadow-sm)}.header-container[data-v-f6f7b016]{max-width:1400px;margin:0 auto;padding:0 var(--spacing-xl);display:flex;justify-content:space-between;align-items:center;height:var(--header-height)}.header-left[data-v-f6f7b016]{display:flex;align-items:center;gap:var(--spacing-lg)}.back-btn[data-v-f6f7b016]{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);background:var(--bg-secondary);border:1px solid var(--divider);border-radius:var(--radius-md);color:var(--text-primary);text-decoration:none;cursor:pointer;transition:border-color .15s,color .15s;font-size:14px}.back-btn[data-v-f6f7b016]:hover{background:var(--bg-surface);border-color:var(--primary-color);color:var(--primary-color)}.back-btn svg[data-v-f6f7b016]{width:18px;height:18px}.page-info[data-v-f6f7b016]{display:flex;flex-direction:column}.page-title[data-v-f6f7b016]{font-size:18px;font-weight:600;color:#000000d9;margin:0;color:var(--text-primary)}.page-subtitle[data-v-f6f7b016]{font-size:12px;color:var(--text-secondary);font-weight:var(--font-weight-medium);letter-spacing:.5px;text-transform:uppercase;margin-top:var(--spacing-xs)}.role-indicator[data-v-f6f7b016]{margin-left:var(--spacing-md)}.role-badge[data-v-f6f7b016]{padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm);font-size:12px;font-weight:var(--font-weight-semibold)}.role-badge.premium[data-v-f6f7b016]{background:linear-gradient(135deg,var(--accent-color) 0,#ff8a65 100%);color:#fff;box-shadow:var(--shadow-sm)}.header-actions[data-v-f6f7b016]{display:flex;align-items:center;gap:var(--spacing-md)}.action-btn[data-v-f6f7b016]{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);border:none;border-radius:var(--radius-md);font-size:14px;font-weight:var(--font-weight-medium);cursor:pointer;transition:all var(--transition-normal);position:relative;overflow:hidden}.action-btn svg[data-v-f6f7b016]{width:18px;height:18px}.action-btn.primary[data-v-f6f7b016]{background:var(--primary-gradient);color:#fff;box-shadow:var(--shadow-sm)}.action-btn.primary[data-v-f6f7b016]:hover{box-shadow:var(--shadow-md)}.action-btn.secondary[data-v-f6f7b016]{background:var(--bg-secondary);color:var(--text-primary);border:1px solid var(--divider)}.action-btn.secondary[data-v-f6f7b016]:hover{background:var(--bg-surface);border-color:var(--primary-color)}.action-btn.refresh[data-v-f6f7b016]{background:var(--bg-secondary);color:var(--text-secondary);border:1px solid var(--divider);padding:var(--spacing-sm);min-width:44px;justify-content:center}.action-btn.refresh[data-v-f6f7b016]:hover{color:var(--primary-color);border-color:var(--primary-color)}.action-btn.refresh svg[data-v-f6f7b016]{transition:transform var(--transition-normal)}.action-btn.refresh:hover svg[data-v-f6f7b016]{transform:rotate(180deg)}.main-content[data-v-f6f7b016]{padding:var(--spacing-xl) 0}.content-container[data-v-f6f7b016]{max-width:1400px;margin:0 auto;padding:0 var(--spacing-xl)}.statistics-section[data-v-f6f7b016]{margin-bottom:var(--spacing-2xl)}.stats-grid[data-v-f6f7b016]{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:var(--spacing-lg)}.stat-card[data-v-f6f7b016]{background:var(--bg-secondary);border-radius:var(--radius-lg);padding:var(--spacing-xl);gap:var(--spacing-lg);transition:all var(--transition-normal);box-shadow:var(--shadow-md);position:relative;overflow:hidden}.stat-card[data-v-f6f7b016]:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;transition:transform var(--transition-normal)}.stat-card[data-v-f6f7b016]:hover{box-shadow:var(--shadow-lg)}.stat-card[data-v-f6f7b016]:hover:before{transform:scaleX(1)}.stat-card.observations[data-v-f6f7b016]:before{background:linear-gradient(135deg,#4facfe,#00f2fe)}.stat-card.monthly[data-v-f6f7b016]:before{background:linear-gradient(135deg,#fa709a,#fee140)}.stat-card.teachers[data-v-f6f7b016]:before{background:linear-gradient(135deg,#a8edea,#fed6e3)}.stat-card.files[data-v-f6f7b016]:before{background:linear-gradient(135deg,#43e97b,#38f9d7)}.stat-icon[data-v-f6f7b016]{width:60px;height:60px;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;position:relative}.stat-card.observations .stat-icon[data-v-f6f7b016]{background:linear-gradient(135deg,#4facfe,#00f2fe)}.stat-card.monthly .stat-icon[data-v-f6f7b016]{background:linear-gradient(135deg,#fa709a,#fee140)}.stat-card.teachers .stat-icon[data-v-f6f7b016]{background:linear-gradient(135deg,#a8edea,#fed6e3)}.stat-card.files .stat-icon[data-v-f6f7b016]{background:linear-gradient(135deg,#43e97b,#38f9d7)}.stat-icon svg[data-v-f6f7b016]{width:28px;height:28px;color:#fff}.stat-content[data-v-f6f7b016]{flex:1}.stat-content h3[data-v-f6f7b016]{font-size:16px;font-weight:var(--font-weight-semibold);color:var(--text-primary);margin:0 0 var(--spacing-xs) 0}.stat-number[data-v-f6f7b016]{font-size:18px;font-weight:var(--font-weight-bold);color:var(--text-primary);margin:0;line-height:1}.stat-label[data-v-f6f7b016]{font-size:12px;color:var(--text-secondary);font-weight:var(--font-weight-medium);margin-top:var(--spacing-xs);display:block}.function-section[data-v-f6f7b016]{margin-bottom:var(--spacing-xl)}.function-tabs[data-v-f6f7b016]{gap:var(--spacing-sm);background:var(--bg-secondary);padding:var(--spacing-sm);border-radius:var(--radius-lg);box-shadow:var(--shadow-md)}.tab-btn[data-v-f6f7b016]{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-md) var(--spacing-lg);border-radius:var(--radius-md);color:var(--text-secondary);font-weight:var(--font-weight-medium);transition:all var(--transition-normal);position:relative}.tab-btn svg[data-v-f6f7b016]{width:18px;height:18px}.tab-btn[data-v-f6f7b016]:hover{background:rgba(26,35,126,.1);color:var(--primary-color)}.tab-btn.active[data-v-f6f7b016]{background:var(--primary-gradient);box-shadow:var(--shadow-sm)}.tab-btn.active svg[data-v-f6f7b016]{color:#fff}.statistics-panel[data-v-f6f7b016]{background:#fff;padding:24px;border-radius:8px;box-shadow:var(--shadow-card);border:1px solid var(--border-light);margin-bottom:24px}.statistics-panel h3[data-v-f6f7b016]{margin:0 0 20px 0;color:#000000d9}.stats-grid[data-v-f6f7b016]{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px}.stat-card[data-v-f6f7b016]{background:#fafafa;border:1px solid var(--border-light);color:#fff;padding:20px;border-radius:8px;display:flex;align-items:center;gap:16px}.stat-icon[data-v-f6f7b016]{font-size:24px}.stat-info h4[data-v-f6f7b016]{margin:0 0 4px 0;font-size:24px;font-weight:700}.stat-info p[data-v-f6f7b016]{margin:0;font-size:14px;opacity:.9}.function-tabs[data-v-f6f7b016]{display:flex;gap:8px;margin-bottom:24px;background:#fff;padding:8px;border-radius:8px;box-shadow:var(--shadow-card);border:1px solid var(--border-light)}.tab-btn[data-v-f6f7b016]{padding:12px 20px;border:none;background:transparent;color:#00000073;border-radius:6px;cursor:pointer;transition:all .3s;font-size:14px;font-weight:500}.tab-btn[data-v-f6f7b016]:hover{background:var(--bg-body);color:#1677ff}.tab-btn.active[data-v-f6f7b016]{background:#1677ff;color:#fff}.tab-content[data-v-f6f7b016]{background:#fff;border-radius:8px;box-shadow:var(--shadow-card);border:1px solid var(--border-light);overflow:hidden}.content-header[data-v-f6f7b016]{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid var(--border-light)}.content-header h3[data-v-f6f7b016]{margin:0;color:#000000d9}.permission-notice[data-v-f6f7b016]{background:#fff7e6;border:1px solid #ffd591;border-radius:4px;padding:8px 12px;margin:16px 0}.notice-text[data-v-f6f7b016]{font-size:14px;color:#d48806}.filters[data-v-f6f7b016]{display:flex;gap:12px;align-items:center}.filters input[data-v-f6f7b016],.filters select[data-v-f6f7b016]{padding:8px 12px;border:1px solid var(--border-color);border-radius:4px;font-size:14px}.observations-table[data-v-f6f7b016]{overflow-x:auto}.observations-table table[data-v-f6f7b016]{width:100%;border-collapse:collapse}.observations-table td[data-v-f6f7b016],.observations-table th[data-v-f6f7b016]{padding:16px;text-align:left;border-bottom:1px solid var(--border-light)}.observations-table th[data-v-f6f7b016]{background:var(--bg-body);font-weight:600;color:#000000d9}.observations-table tr[data-v-f6f7b016]:hover{background:#f8f9fa}.course-info strong[data-v-f6f7b016]{color:#000000d9;font-size:14px}.course-meta[data-v-f6f7b016]{font-size:12px;color:#00000040;margin-top:4px}.observer-info[data-v-f6f7b016]{font-size:14px}.observer-type[data-v-f6f7b016]{font-size:12px;color:#00000040}.file-status[data-v-f6f7b016]{display:flex;flex-direction:column;gap:4px}.status-badge[data-v-f6f7b016]{padding:2px 8px;border-radius:4px;font-size:12px;text-align:center}.file-uploaded[data-v-f6f7b016]{background:#67c23a;color:#fff}.video-uploaded[data-v-f6f7b016]{background:#1677ff;color:#fff}.no-files[data-v-f6f7b016]{background:#e6a23c;color:#fff}.action-buttons[data-v-f6f7b016]{display:flex;gap:8px;flex-wrap:wrap}.templates-grid[data-v-f6f7b016]{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px;padding:24px}.template-card[data-v-f6f7b016]{border:1px solid var(--border-light);border-radius:8px;padding:16px;display:flex;align-items:center;gap:16px;transition:all .3s}.template-card[data-v-f6f7b016]:hover{box-shadow:0 4px 12px rgba(0,0,0,.1)}.file-icon[data-v-f6f7b016]{font-size:32px;color:#1677ff}.file-info[data-v-f6f7b016]{flex:1}.file-info h4[data-v-f6f7b016]{margin:0 0 8px 0;color:#000000d9;font-size:14px}.file-info p[data-v-f6f7b016]{margin:0;font-size:12px;color:#00000040}.default-badge[data-v-f6f7b016]{color:#67c23a!important;font-weight:700}.file-actions[data-v-f6f7b016]{display:flex;gap:8px;flex-direction:column}.course-search[data-v-f6f7b016]{position:relative}.course-suggestions[data-v-f6f7b016]{position:absolute;top:100%;left:0;right:0;background:#fff;border:1px solid var(--border-color);border-top:none;border-radius:0 0 4px 4px;max-height:200px;overflow-y:auto;z-index:10}.course-item[data-v-f6f7b016]{padding:12px;cursor:pointer;border-bottom:1px solid #f0f0f0}.course-item[data-v-f6f7b016]:hover{background:var(--bg-body)}.course-item[data-v-f6f7b016]:last-child{border-bottom:none}.selected-course[data-v-f6f7b016]{margin-top:16px;padding:16px;background:#f0f9ff;border-radius:4px;border-left:4px solid #409eff}.selected-course h4[data-v-f6f7b016]{margin:0 0 8px 0;color:#1677ff}.selected-course p[data-v-f6f7b016]{margin:4px 0;color:#000000d9}.upload-section[data-v-f6f7b016]{padding:24px}.file-upload[data-v-f6f7b016],.template-download[data-v-f6f7b016],.video-upload[data-v-f6f7b016]{margin-bottom:24px}.file-upload h4[data-v-f6f7b016],.template-download h4[data-v-f6f7b016],.video-upload h4[data-v-f6f7b016]{margin:0 0 12px 0;color:#000000d9}.help-text[data-v-f6f7b016]{margin:8px 0 0 0;font-size:12px;color:#00000040}.upload-area[data-v-f6f7b016]{border:2px dashed #dcdfe6;border-radius:8px;padding:40px;text-align:center;cursor:pointer;transition:all .3s}.upload-area[data-v-f6f7b016]:hover{border-color:#1677ff;background:#f0f9ff}.upload-icon[data-v-f6f7b016]{font-size:48px;margin-bottom:16px}.upload-area p[data-v-f6f7b016]{margin:8px 0;color:#00000073}.upload-hint[data-v-f6f7b016]{font-size:12px;color:#00000040}.upload-progress[data-v-f6f7b016]{margin-top:20px}.progress-bar[data-v-f6f7b016]{width:100%;height:8px;background:var(--bg-body);border-radius:4px;overflow:hidden}.progress-fill[data-v-f6f7b016]{height:100%;background:#1677ff;transition:width .3s}.btn[data-v-f6f7b016]{padding:8px 16px;border:none;border-radius:4px;cursor:pointer;font-size:14px;transition:all .3s;text-decoration:none;display:inline-flex;align-items:center;justify-content:center}.btn-small[data-v-f6f7b016]{padding:4px 8px;font-size:12px}.btn-primary[data-v-f6f7b016]{background-color:#1677ff;color:#fff}.btn-primary[data-v-f6f7b016]:hover{background-color:#337ecc}.btn-success[data-v-f6f7b016]{background-color:#67c23a;color:#fff}.btn-success[data-v-f6f7b016]:hover{background-color:#5daf34}.btn-warning[data-v-f6f7b016]{background-color:#e6a23c;color:#fff}.btn-warning[data-v-f6f7b016]:hover{background-color:#cf9236}.btn-danger[data-v-f6f7b016]{background-color:#f56c6c;color:#fff}.btn-danger[data-v-f6f7b016]:hover{background-color:#f14343}.btn-info[data-v-f6f7b016]{background-color:#17a2b8;color:#fff}.btn-info[data-v-f6f7b016]:hover{background-color:#138496}.btn-secondary[data-v-f6f7b016]{background-color:#ddd;color:#666}.btn-secondary[data-v-f6f7b016]:hover{background-color:#ccc}.btn[data-v-f6f7b016]:disabled{opacity:.6;cursor:not-allowed}.modal-overlay[data-v-f6f7b016]{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.5);display:flex;align-items:center;justify-content:center;z-index:1000}.modal-content[data-v-f6f7b016]{background:#fff;border-radius:8px;max-width:600px;width:90%;max-height:90vh;overflow-y:auto}.large-modal[data-v-f6f7b016]{max-width:900px}.modal-header[data-v-f6f7b016]{display:flex;justify-content:space-between;align-items:center;padding:20px;border-bottom:1px solid var(--border-light)}.modal-header h3[data-v-f6f7b016]{margin:0;color:#000000d9}.close-btn[data-v-f6f7b016]{background:none;border:none;font-size:24px;cursor:pointer;color:#00000040}.close-btn[data-v-f6f7b016]:hover{color:#00000073}.modal-body[data-v-f6f7b016]{padding:20px}.modal-actions[data-v-f6f7b016]{display:flex;gap:12px;justify-content:flex-end;padding:20px;border-top:1px solid var(--border-light)}.form-group[data-v-f6f7b016]{display:flex;flex-direction:column;gap:8px;margin-bottom:16px}.form-group label[data-v-f6f7b016]{font-size:14px;color:#00000073;font-weight:500}.form-group input[data-v-f6f7b016],.form-group select[data-v-f6f7b016],.form-group textarea[data-v-f6f7b016]{padding:8px 12px;border:1px solid var(--border-color);border-radius:4px;font-size:14px}.form-group textarea[data-v-f6f7b016]{resize:vertical}.detail-section[data-v-f6f7b016]{margin-bottom:24px}.detail-section h4[data-v-f6f7b016]{margin:0 0 16px 0;color:#000000d9;border-bottom:2px solid #1677ff;padding-bottom:8px}.detail-grid[data-v-f6f7b016]{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:16px}.detail-item[data-v-f6f7b016]{display:flex;justify-content:space-between;align-items:center;padding:8px 0;border-bottom:1px solid #f0f0f0}.detail-item label[data-v-f6f7b016]{font-weight:500;color:#00000073}.file-item[data-v-f6f7b016]{display:flex;align-items:center;gap:12px;padding:12px;background:var(--bg-body);border-radius:4px}.file-item i[data-v-f6f7b016]{color:#1677ff;font-size:20px}.video-section video[data-v-f6f7b016]{border-radius:8px}.pagination[data-v-f6f7b016]{display:flex;justify-content:space-between;align-items:center;padding:16px 24px;border-top:1px solid var(--border-light)}.page-info[data-v-f6f7b016]{color:#00000073;font-size:14px}.loading[data-v-f6f7b016],.no-data[data-v-f6f7b016]{text-align:center;padding:40px;color:#00000040}@media (max-width:768px){.listening-management[data-v-f6f7b016]{padding:12px}.header-section[data-v-f6f7b016]{flex-direction:column;gap:16px}.header-actions[data-v-f6f7b016]{flex-wrap:wrap}.function-tabs[data-v-f6f7b016]{overflow-x:auto;flex-wrap:nowrap}.filters[data-v-f6f7b016]{flex-direction:column;align-items:stretch}.stats-grid[data-v-f6f7b016]{grid-template-columns:repeat(2,1fr)}.templates-grid[data-v-f6f7b016]{grid-template-columns:1fr}.modal-content[data-v-f6f7b016]{width:95%}.detail-grid[data-v-f6f7b016]{grid-template-columns:1fr}.action-buttons[data-v-f6f7b016]{flex-direction:column}.pagination[data-v-f6f7b016]{flex-direction:column;gap:12px}.file-actions[data-v-f6f7b016]{flex-direction:row}}.module-page[data-v-a3fb0bfe]{min-height:100vh;background:var(--bg-body)}.module-header[data-v-a3fb0bfe]{background:#fff;padding:20px;box-shadow:0 2px 8px rgba(0,0,0,.1);display:flex;align-items:center;gap:20px}.module-header h1[data-v-a3fb0bfe]{color:#000000d9;font-size:24px;margin:0}.module-nav[data-v-a3fb0bfe]{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:24px;margin:40px 0}.nav-card[data-v-a3fb0bfe]{background:#fff;border-radius:8px;padding:24px;text-align:center;cursor:pointer;transition:all .3s;box-shadow:var(--shadow-card);border:1px solid var(--border-light)}.nav-card[data-v-a3fb0bfe]:hover{box-shadow:0 4px 20px rgba(0,0,0,.15)}.nav-icon[data-v-a3fb0bfe]{font-size:48px;margin-bottom:16px}.nav-card h3[data-v-a3fb0bfe]{color:#000000d9;margin-bottom:12px}.nav-card p[data-v-a3fb0bfe]{color:#00000040;font-size:14px;line-height:1.5}.equipment-sharing[data-v-7bf77bea]{max-width:1200px;margin:0 auto;padding:20px}.header[data-v-7bf77bea]{text-align:center;margin-bottom:40px}.header h1[data-v-7bf77bea]{font-size:28px;color:#2c3e50;margin-bottom:8px;font-weight:500}.subtitle[data-v-7bf77bea]{color:#7f8c8d;font-size:16px}.equipment-grid[data-v-7bf77bea]{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:24px;margin-bottom:40px}.equipment-card[data-v-7bf77bea]{background:#fff;border:1px solid #e1e8ed;border-radius:8px;overflow:hidden;transition:box-shadow .2s ease}.equipment-card[data-v-7bf77bea]:hover{box-shadow:0 4px 12px rgba(0,0,0,.1)}.equipment-image[data-v-7bf77bea]{height:200px;background:#f8f9fa;overflow:hidden;display:flex;align-items:center;justify-content:center}.equipment-image img[data-v-7bf77bea]{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;transition:transform .2s ease}.equipment-image img[data-v-7bf77bea]:hover{transform:scale(1.05)}.image-placeholder[data-v-7bf77bea]{color:#adb5bd;font-size:14px;text-align:center;width:100%;height:100%;display:flex;align-items:center;justify-content:center}.equipment-info[data-v-7bf77bea]{padding:16px}.equipment-info h3[data-v-7bf77bea]{font-size:18px;color:#2c3e50;margin-bottom:8px;font-weight:500}.description[data-v-7bf77bea]{color:#7f8c8d;font-size:14px;margin-bottom:12px;line-height:1.4}.meta[data-v-7bf77bea]{display:flex;justify-content:space-between;align-items:center;font-size:12px}.owner[data-v-7bf77bea]{color:#3498db;font-weight:500}.status[data-v-7bf77bea]{color:#27ae60;font-weight:500}.equipment-actions[data-v-7bf77bea]{padding:16px;padding-top:0}.btn-primary[data-v-7bf77bea]{background:#3498db;color:#fff;border:none;padding:10px 20px;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;width:100%;transition:background-color .2s ease}.btn-primary[data-v-7bf77bea]:hover{background:#2980b9}.add-equipment[data-v-7bf77bea]{text-align:center;margin-bottom:40px}.btn-secondary[data-v-7bf77bea]{background:#ecf0f1;color:#2c3e50;border:1px solid #bdc3c7;padding:12px 24px;border-radius:6px;cursor:pointer;font-size:16px;font-weight:500;transition:all .2s ease}.btn-secondary[data-v-7bf77bea]:hover{background:#d5dbdb;border-color:#95a5a6}.add-form-overlay[data-v-7bf77bea]{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.5);display:flex;align-items:center;justify-content:center;z-index:1000}.add-form[data-v-7bf77bea]{background:#fff;border-radius:8px;padding:24px;width:90%;max-width:500px;max-height:80vh;overflow-y:auto}.add-form h2[data-v-7bf77bea]{margin-bottom:20px;color:#2c3e50;font-size:20px;font-weight:500}.form-group[data-v-7bf77bea]{margin-bottom:16px}.form-group label[data-v-7bf77bea]{display:block;margin-bottom:6px;color:#2c3e50;font-weight:500;font-size:14px}.form-group input[data-v-7bf77bea],.form-group textarea[data-v-7bf77bea]{width:100%;padding:10px;border:1px solid #bdc3c7;border-radius:4px;font-size:14px;font-family:inherit}.form-group textarea[data-v-7bf77bea]{resize:vertical;min-height:var(--header-height)}.image-upload[data-v-7bf77bea]{border:2px dashed #bdc3c7;border-radius:4px;padding:20px;text-align:center;cursor:pointer;transition:border-color .2s ease}.image-upload[data-v-7bf77bea]:hover{border-color:#3498db}.upload-placeholder[data-v-7bf77bea]{color:#7f8c8d;font-size:14px}.form-actions[data-v-7bf77bea]{display:flex;gap:12px;margin-top:20px}.btn-cancel[data-v-7bf77bea]{flex:1;background:#ecf0f1;color:#2c3e50;border:1px solid #bdc3c7;padding:10px;border-radius:4px;cursor:pointer;font-size:14px;font-weight:500;transition:background-color .2s ease}.btn-cancel[data-v-7bf77bea]:hover{background:#d5dbdb}@media (max-width:768px){.equipment-sharing[data-v-7bf77bea]{padding:15px}.equipment-grid[data-v-7bf77bea]{grid-template-columns:1fr;gap:16px}.header h1[data-v-7bf77bea]{font-size:24px}.form-actions[data-v-7bf77bea]{flex-direction:column}}.compact-school-stats[data-v-d4b4ac1c]{height:100%;overflow-y:auto}.loading-state[data-v-d4b4ac1c],.no-data[data-v-d4b4ac1c]{display:flex;flex-direction:column;align-items:center;justify-content:center;height:200px;color:#595959}.loading-spinner[data-v-d4b4ac1c]{width:30px;height:30px;border:3px solid #f0f0f0;border-left-color:#1677ff;border-radius:50%;animation:spin-d4b4ac1c 1s linear infinite;margin-bottom:15px}@keyframes spin-d4b4ac1c{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.no-data-icon[data-v-d4b4ac1c]{font-size:32px;margin-bottom:10px}.stats-container[data-v-d4b4ac1c]{display:flex;flex-direction:column;gap:20px;padding:10px 0}.stats-card[data-v-d4b4ac1c]{background:#fff;border-radius:8px;border:1px solid #f0f0f0;box-shadow:0 1px 4px rgba(0,21,41,.08);overflow:hidden}.card-header[data-v-d4b4ac1c]{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background:#e6f4ff;border-bottom:1px solid #91caff}.card-header h3[data-v-d4b4ac1c]{margin:0;font-size:16px;font-weight:600;color:#0958d9}.refresh-btn-mini[data-v-d4b4ac1c]{background:#fff;border:1px solid #91caff;color:#1677ff;cursor:pointer;font-size:14px;padding:4px 8px;border-radius:6px;transition:background .2s,border-color .2s}.refresh-btn-mini[data-v-d4b4ac1c]:hover:not(:disabled){background:#bae0ff;border-color:#1677ff;color:#0958d9}.refresh-btn-mini[data-v-d4b4ac1c]:disabled{opacity:.45;cursor:not-allowed}.card-content[data-v-d4b4ac1c]{padding:20px;background:#fafafa}.compliance-grid-compact[data-v-d4b4ac1c]{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:15px}.compliance-item[data-v-d4b4ac1c]{display:flex;align-items:center;gap:12px;padding:15px;background:#fff;border-radius:8px;border:1px solid #f0f0f0}.compliance-icon[data-v-d4b4ac1c]{font-size:24px;flex-shrink:0}.compliance-info[data-v-d4b4ac1c]{flex:1}.compliance-label[data-v-d4b4ac1c]{font-size:12px;color:#595959;font-weight:500;margin-bottom:4px}.compliance-value[data-v-d4b4ac1c]{font-size:20px;font-weight:700;color:#1677ff;margin-bottom:8px}.compliance-bar[data-v-d4b4ac1c]{height:6px;background:#e8e8e8;border-radius:3px;overflow:hidden}.compliance-progress[data-v-d4b4ac1c]{height:100%;background:linear-gradient(90deg,#52c41a,#95de64);border-radius:3px;transition:width .5s ease}.view-toggle[data-v-d4b4ac1c]{display:flex;gap:4px}.toggle-btn[data-v-d4b4ac1c]{padding:6px 10px;background:#fff;border:1px solid #d9d9d9;border-radius:6px;color:#434343;cursor:pointer;transition:all .2s;font-size:14px}.toggle-btn[data-v-d4b4ac1c]:hover{border-color:#1677ff;color:#1677ff}.toggle-btn.active[data-v-d4b4ac1c]{background:#1677ff;color:#fff;border-color:#1677ff}.rankings-table-compact[data-v-d4b4ac1c]{overflow-x:auto}.table-header-compact[data-v-d4b4ac1c]{display:grid;grid-template-columns:60px 1fr 80px 80px;gap:10px;padding:10px 0;border-bottom:1px solid #d9d9d9;font-size:12px;color:#434343;font-weight:600}.table-row-compact[data-v-d4b4ac1c]{display:grid;grid-template-columns:60px 1fr 80px 80px;gap:10px;padding:12px 0;border-bottom:1px solid #f0f0f0;transition:background .2s}.table-row-compact[data-v-d4b4ac1c]:hover{background:#f5f5f5}.table-row-compact.top-rank[data-v-d4b4ac1c]{background:#fffbe6}.rank-badge-mini[data-v-d4b4ac1c]{display:inline-flex;align-items:center;gap:4px;padding:2px 6px;border-radius:12px;font-size:11px;font-weight:700}.rank-badge-mini.rank-1[data-v-d4b4ac1c]{background:linear-gradient(45deg,gold,#ffed4e);color:#333}.rank-badge-mini.rank-2[data-v-d4b4ac1c]{background:linear-gradient(45deg,silver,#e8e8e8);color:#333}.rank-badge-mini.rank-3[data-v-d4b4ac1c]{background:linear-gradient(45deg,#cd7f32,#daa520);color:#fff}.col-name[data-v-d4b4ac1c]{color:#262626;font-weight:500;font-size:14px}.col-students[data-v-d4b4ac1c]{color:#595959;font-size:13px}.rate-value-mini[data-v-d4b4ac1c]{font-weight:700;color:#389e0d;font-size:14px}.rankings-chart[data-v-d4b4ac1c]{height:300px}.chart-bars[data-v-d4b4ac1c]{display:flex;align-items:end;height:250px;gap:8px;padding:20px 0}.chart-bar[data-v-d4b4ac1c]{flex:1;display:flex;flex-direction:column;align-items:center;height:100%}.bar-container[data-v-d4b4ac1c]{flex:1;width:100%;display:flex;align-items:end;position:relative}.bar-fill[data-v-d4b4ac1c]{width:100%;border-radius:4px 4px 0 0;transition:height .8s ease;min-height:2px}.bar-label[data-v-d4b4ac1c]{margin-top:8px;text-align:center;font-size:11px}.bar-name[data-v-d4b4ac1c]{color:#595959;margin-bottom:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:500}.bar-value[data-v-d4b4ac1c]{color:#262626;font-weight:700}.expand-toggle[data-v-d4b4ac1c]{margin-top:15px;text-align:center}.expand-btn[data-v-d4b4ac1c]{background:#fff;border:1px solid #d9d9d9;border-radius:8px;color:#434343;padding:8px 16px;cursor:pointer;transition:all .2s;display:flex;align-items:center;gap:8px;font-size:13px;margin:0 auto}.expand-btn[data-v-d4b4ac1c]:hover{border-color:#1677ff;color:#1677ff}.expand-icon[data-v-d4b4ac1c]{transition:transform .3s;font-size:10px}.expand-icon.rotated[data-v-d4b4ac1c]{transform:rotate(180deg)}@media (max-width:768px){.compliance-grid-compact[data-v-d4b4ac1c]{grid-template-columns:1fr;gap:10px}.table-header-compact[data-v-d4b4ac1c],.table-row-compact[data-v-d4b4ac1c]{grid-template-columns:50px 1fr 60px 60px;gap:8px}.chart-bars[data-v-d4b4ac1c]{gap:4px}.bar-label[data-v-d4b4ac1c]{font-size:10px}}.compact-college-stats[data-v-4de59e37]{height:100%;overflow-y:auto}.loading-state[data-v-4de59e37],.no-data[data-v-4de59e37]{display:flex;flex-direction:column;align-items:center;justify-content:center;height:200px;color:#595959}.loading-spinner[data-v-4de59e37]{width:30px;height:30px;border:3px solid #f0f0f0;border-left-color:#1677ff;border-radius:50%;animation:spin-4de59e37 1s linear infinite;margin-bottom:15px}@keyframes spin-4de59e37{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.no-data-icon[data-v-4de59e37]{font-size:32px;margin-bottom:10px}.stats-container[data-v-4de59e37]{display:flex;flex-direction:column;gap:20px;padding:10px 0}.stats-card[data-v-4de59e37]{background:#fff;border-radius:8px;border:1px solid #f0f0f0;box-shadow:0 1px 4px rgba(0,21,41,.08);overflow:hidden}.card-header[data-v-4de59e37]{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background:#e6f4ff;border-bottom:1px solid #91caff}.card-header h3[data-v-4de59e37]{margin:0;font-size:16px;font-weight:600;color:#0958d9}.refresh-btn-mini[data-v-4de59e37]{background:#fff;border:1px solid #91caff;color:#1677ff;cursor:pointer;font-size:14px;padding:4px 8px;border-radius:6px;transition:background .2s,border-color .2s}.refresh-btn-mini[data-v-4de59e37]:hover:not(:disabled){background:#bae0ff;border-color:#1677ff;color:#0958d9}.card-content[data-v-4de59e37]{padding:20px;background:#fafafa}.overview-grid[data-v-4de59e37]{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:15px}.overview-item[data-v-4de59e37]{display:flex;align-items:center;gap:12px;padding:15px;background:#fff;border-radius:8px;border:1px solid #f0f0f0}.overview-icon[data-v-4de59e37]{font-size:24px;flex-shrink:0}.overview-value[data-v-4de59e37]{font-size:17px;font-weight:700;color:#1677ff;margin-bottom:4px}.overview-label[data-v-4de59e37]{font-size:12px;color:#595959;font-weight:500}.view-toggle[data-v-4de59e37]{display:flex;gap:4px}.toggle-btn[data-v-4de59e37]{padding:6px 10px;background:#fff;border:1px solid #d9d9d9;border-radius:6px;color:#434343;cursor:pointer;transition:all .2s;font-size:14px}.toggle-btn[data-v-4de59e37]:hover{border-color:#1677ff;color:#1677ff}.toggle-btn.active[data-v-4de59e37]{background:#1677ff;color:#fff;border-color:#1677ff}.compliance-bars[data-v-4de59e37]{display:flex;flex-direction:column;gap:15px}.compliance-bar-item[data-v-4de59e37]{display:flex;flex-direction:column;gap:8px}.bar-header[data-v-4de59e37]{display:flex;justify-content:space-between;align-items:center}.bar-label[data-v-4de59e37]{font-size:14px;color:#434343;font-weight:500}.bar-value[data-v-4de59e37]{font-size:16px;font-weight:700;color:#262626}.bar-container[data-v-4de59e37]{height:8px;background:#e8e8e8;border-radius:4px;overflow:hidden}.bar-fill[data-v-4de59e37]{height:100%;border-radius:4px;transition:width .5s ease}.compliance-circles[data-v-4de59e37]{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:20px;justify-items:center}.circle-item[data-v-4de59e37]{position:relative}.circle-progress[data-v-4de59e37]{position:relative;width:100px;height:100px}.circle-svg[data-v-4de59e37]{width:100%;height:100%;transform:rotate(-90deg)}.circle-bg[data-v-4de59e37]{fill:none;stroke:#e8e8e8;stroke-width:6}.circle-fill[data-v-4de59e37]{fill:none;stroke-width:6;stroke-linecap:round;transition:stroke-dashoffset .5s ease}.circle-text[data-v-4de59e37]{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);text-align:center}.circle-value[data-v-4de59e37]{font-size:16px;font-weight:700;color:#262626}.circle-label[data-v-4de59e37]{font-size:11px;color:#595959;margin-top:2px;font-weight:500}.ranking-controls[data-v-4de59e37]{display:flex;align-items:center;gap:10px}.sort-select[data-v-4de59e37]{background:#fff;border:1px solid #d9d9d9;border-radius:6px;color:#262626;padding:6px 10px;font-size:12px;cursor:pointer}.sort-select[data-v-4de59e37]:focus{outline:none;border-color:#1677ff;box-shadow:0 0 0 2px rgba(22,119,255,.15)}.podium[data-v-4de59e37]{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:15px;margin-bottom:20px}.podium-item[data-v-4de59e37]{display:flex;flex-direction:column;align-items:center;padding:15px;background:#fff;border-radius:8px;border:1px solid #f0f0f0}.podium-medal[data-v-4de59e37]{font-size:32px;margin-bottom:8px}.podium-name[data-v-4de59e37]{font-size:14px;color:#262626;font-weight:600;text-align:center;margin-bottom:4px}.podium-rate[data-v-4de59e37]{font-size:16px;color:#389e0d;font-weight:700}.rankings-list[data-v-4de59e37]{overflow-x:auto}.list-header[data-v-4de59e37]{padding:10px 0;border-bottom:1px solid #d9d9d9;font-size:12px;color:#434343;font-weight:600}.list-header[data-v-4de59e37],.list-row[data-v-4de59e37]{display:grid;grid-template-columns:60px 1fr 80px 100px;gap:10px}.list-row[data-v-4de59e37]{padding:12px 0;border-bottom:1px solid #f0f0f0;transition:background .2s}.list-row[data-v-4de59e37]:hover{background:#f5f5f5}.list-row.top-rank[data-v-4de59e37]{background:#fffbe6}.list-row.low-performance[data-v-4de59e37]{background:#fff2f0}.rank-number[data-v-4de59e37]{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;background:#e6f4ff;border-radius:50%;font-size:12px;font-weight:700;color:#0958d9}.item-name[data-v-4de59e37]{color:#262626;font-weight:500;font-size:14px}.col-students[data-v-4de59e37]{color:#595959;font-size:13px}.rate-value[data-v-4de59e37]{font-weight:700;font-size:14px}.rate-value.excellent[data-v-4de59e37]{color:#389e0d}.rate-value.good[data-v-4de59e37]{color:#52c41a}.rate-value.pass[data-v-4de59e37]{color:#d48806}.rate-value.low[data-v-4de59e37]{color:#d46b08}.rate-value.poor[data-v-4de59e37]{color:#cf1322}.pagination[data-v-4de59e37]{display:flex;align-items:center;justify-content:center;gap:15px;margin-top:20px}.page-btn[data-v-4de59e37]{background:#fff;border:1px solid #d9d9d9;border-radius:6px;color:#262626;padding:8px 12px;cursor:pointer;transition:all .2s}.page-btn[data-v-4de59e37]:hover:not(:disabled){border-color:#1677ff;color:#1677ff}.page-btn[data-v-4de59e37]:disabled{opacity:.45;cursor:not-allowed}.page-info[data-v-4de59e37]{color:#595959;font-size:14px;font-weight:500}@media (max-width:768px){.overview-grid[data-v-4de59e37]{grid-template-columns:1fr;gap:10px}.compliance-circles[data-v-4de59e37]{grid-template-columns:repeat(auto-fit,minmax(100px,1fr));gap:15px}.podium[data-v-4de59e37]{grid-template-columns:1fr;gap:10px}.list-header[data-v-4de59e37],.list-row[data-v-4de59e37]{grid-template-columns:50px 1fr 60px 80px;gap:8px}.circle-progress[data-v-4de59e37]{width:80px;height:80px}.circle-value[data-v-4de59e37]{font-size:14px}}.statistics-dashboard[data-v-4746a13f]{min-height:100vh;background:#f5f5f5;color:#000000d9;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.dashboard-header[data-v-4746a13f]{display:flex;justify-content:space-between;align-items:center;padding:0 24px;background:#fff;border-bottom:1px solid #e8e8e8;height:52px;position:sticky;top:0;z-index:100;box-shadow:0 1px 4px rgba(0,21,41,.08)}.header-left[data-v-4746a13f]{display:flex;align-items:center;gap:12px}.back-btn[data-v-4746a13f]{display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:none;border:1px solid #d9d9d9;border-radius:6px;color:#595959;cursor:pointer;transition:all .2s}.back-btn[data-v-4746a13f]:hover{border-color:#1677ff;color:#1677ff}.back-btn svg[data-v-4746a13f]{width:16px;height:16px}.dashboard-title[data-v-4746a13f]{font-size:16px;font-weight:600;margin:0;color:#000000d9}.header-right[data-v-4746a13f]{display:flex;align-items:center;gap:10px;font-size:13px}.header-time[data-v-4746a13f]{color:#1677ff;font-weight:500;font-variant-numeric:tabular-nums}.header-divider[data-v-4746a13f]{color:#d9d9d9}.header-user[data-v-4746a13f]{color:#434343;font-weight:500}.header-role[data-v-4746a13f]{font-size:11px;padding:2px 8px;border-radius:10px;background:#e6f4ff;color:#1677ff;font-weight:500}.permission-denied[data-v-4746a13f]{display:flex;justify-content:center;align-items:center;height:60vh}.permission-box[data-v-4746a13f]{text-align:center;padding:40px;background:#fff;border-radius:8px;border:1px solid #f0f0f0;box-shadow:0 1px 4px rgba(0,21,41,.08);max-width:360px}.permission-box svg[data-v-4746a13f]{display:block;margin:0 auto 16px}.permission-box h2[data-v-4746a13f]{font-size:18px;margin:0 0 8px 0;color:#000000d9;font-weight:500}.permission-box p[data-v-4746a13f]{font-size:14px;color:#00000073;margin:0}.dashboard-body[data-v-4746a13f]{max-width:1200px;margin:0 auto;padding:20px 24px 40px}.overview-row[data-v-4746a13f]{display:flex;gap:12px;margin-bottom:16px;align-items:stretch}.metric-card[data-v-4746a13f]{flex:1;display:flex;align-items:center;gap:14px;padding:16px 20px;background:#fff;border-radius:8px;border:1px solid #f0f0f0;box-shadow:0 1px 2px rgba(0,0,0,.04)}.metric-icon[data-v-4746a13f]{width:42px;height:42px;border-radius:10px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.metric-icon svg[data-v-4746a13f]{width:20px;height:20px}.metric-icon.blue[data-v-4746a13f]{background:#e6f4ff;color:#1677ff}.metric-icon.green[data-v-4746a13f]{background:#f6ffed;color:#52c41a}.metric-icon.orange[data-v-4746a13f]{background:#fff7e6;color:#fa8c16}.metric-value[data-v-4746a13f]{font-size:22px;font-weight:700;color:#000000d9;line-height:1.2}.metric-label[data-v-4746a13f]{font-size:12px;color:#00000073;margin-top:2px;font-weight:500}.refresh-btn[data-v-4746a13f]{display:flex;align-items:center;gap:6px;padding:0 16px;background:#fff;border:1px solid #d9d9d9;border-radius:8px;color:#434343;font-size:13px;cursor:pointer;transition:all .2s;white-space:nowrap;font-family:inherit}.refresh-btn[data-v-4746a13f]:hover:not(:disabled){border-color:#1677ff;color:#1677ff}.refresh-btn[data-v-4746a13f]:disabled{opacity:.5;cursor:not-allowed}.refresh-btn svg[data-v-4746a13f]{width:16px;height:16px}@keyframes spin-4746a13f{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.spinning[data-v-4746a13f]{animation:spin-4746a13f 1s linear infinite}.targets-row[data-v-4746a13f]{margin-bottom:16px}.targets-card[data-v-4746a13f]{background:#fff;border-radius:8px;border:1px solid #f0f0f0;box-shadow:0 1px 2px rgba(0,0,0,.04);overflow:hidden}.targets-header[data-v-4746a13f]{display:flex;justify-content:space-between;align-items:center;padding:12px 20px;cursor:pointer;transition:background .15s;-webkit-user-select:none;-moz-user-select:none;user-select:none}.targets-header[data-v-4746a13f]:hover{background:#fafafa}.targets-header h3[data-v-4746a13f]{margin:0;font-size:14px;font-weight:600;color:#000000d9}.targets-header-right[data-v-4746a13f]{display:flex;align-items:center;gap:12px}.target-preview[data-v-4746a13f]{display:flex;gap:12px}.target-badge[data-v-4746a13f]{font-size:12px;color:#595959;padding:3px 10px;background:#fafafa;border-radius:12px;border:1px solid #f0f0f0}.target-badge strong[data-v-4746a13f]{color:#52c41a;font-weight:600}.collapse-icon[data-v-4746a13f]{width:16px;height:16px;color:#bfbfbf;transition:transform .2s}.collapse-icon.rotated[data-v-4746a13f]{transform:rotate(180deg)}.targets-body[data-v-4746a13f]{padding:16px 20px;border-top:1px solid #f0f0f0;background:#fafafa}.targets-grid[data-v-4746a13f]{display:flex;gap:16px;margin-bottom:12px}.target-item[data-v-4746a13f]{flex:1;display:flex;justify-content:space-between;align-items:center;padding:10px 14px;background:#fff;border-radius:6px;border:1px solid #f0f0f0}.target-label[data-v-4746a13f]{font-size:13px;color:#595959}.target-value[data-v-4746a13f]{font-size:15px;font-weight:600;color:#52c41a}.target-input[data-v-4746a13f]{width:80px;border:1px solid #d9d9d9;border-radius:4px;padding:4px 8px;font-size:13px;color:#000000d9;outline:none;text-align:right;font-family:inherit}.target-input[data-v-4746a13f]:focus{border-color:#1677ff;box-shadow:0 0 0 2px rgba(22,119,255,.2)}.targets-actions[data-v-4746a13f]{display:flex;gap:8px}.btn-sm[data-v-4746a13f]{padding:5px 14px;font-size:13px;border:1px solid #d9d9d9;border-radius:6px;cursor:pointer;transition:all .15s;background:#fff;color:#434343;font-family:inherit}.btn-sm[data-v-4746a13f]:hover:not(:disabled){border-color:#1677ff;color:#1677ff}.btn-sm.primary[data-v-4746a13f]{background:#1677ff;border-color:#1677ff;color:#fff}.btn-sm.primary[data-v-4746a13f]:hover:not(:disabled){background:#4096ff;border-color:#4096ff}.btn-sm[data-v-4746a13f]:disabled{opacity:.5;cursor:not-allowed}.tab-bar[data-v-4746a13f]{display:flex;background:#fff;border-radius:8px;border:1px solid #f0f0f0;padding:4px;margin-bottom:16px;gap:4px;box-shadow:0 1px 2px rgba(0,0,0,.04)}.tab-item[data-v-4746a13f]{flex:1;padding:8px 16px;text-align:center;cursor:pointer;border-radius:6px;transition:all .15s;color:#595959;font-weight:500;font-size:14px;-webkit-user-select:none;-moz-user-select:none;user-select:none}.tab-item[data-v-4746a13f]:hover{background:#f5f5f5;color:#262626}.tab-item.active[data-v-4746a13f]{background:#1677ff;color:#fff;box-shadow:0 2px 4px rgba(22,119,255,.3)}.tab-content[data-v-4746a13f]{background:#fff;border-radius:8px;border:1px solid #f0f0f0;padding:20px;min-height:400px;box-shadow:0 1px 2px rgba(0,0,0,.04)}.tab-panel[data-v-4746a13f]{height:100%}.error-toast[data-v-4746a13f]{position:fixed;top:68px;right:20px;background:#fff2f0;border:1px solid #ffccc7;color:#cf1322;padding:10px 14px;border-radius:8px;display:flex;align-items:center;gap:8px;transform:translateX(120%);transition:transform .2s ease;z-index:1000;max-width:400px;box-shadow:0 4px 12px rgba(0,0,0,.1);font-size:13px}.error-toast.show[data-v-4746a13f]{transform:translateX(0)}.error-icon[data-v-4746a13f]{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;background:#ff4d4f;color:#fff;border-radius:50%;font-size:12px;font-weight:700;flex-shrink:0}.close-btn[data-v-4746a13f]{background:none;border:none;color:#cf1322;font-size:18px;cursor:pointer;padding:0;margin-left:auto;line-height:1;opacity:.6}.close-btn[data-v-4746a13f]:hover{opacity:1}@media (max-width:768px){.dashboard-header[data-v-4746a13f]{padding:0 16px}.header-divider[data-v-4746a13f],.header-time[data-v-4746a13f]{display:none}.dashboard-body[data-v-4746a13f]{padding:12px 16px 32px}.overview-row[data-v-4746a13f]{flex-direction:column}.metric-card[data-v-4746a13f]{padding:12px 16px}.targets-grid[data-v-4746a13f]{flex-direction:column}.target-preview[data-v-4746a13f]{display:none}.tab-content[data-v-4746a13f]{padding:14px}.error-toast[data-v-4746a13f]{right:10px;left:10px;max-width:none}}