*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#app{width:100%;height:100vh}.login-container[data-v-37b1726d]{display:flex;align-items:center;justify-content:center;min-height:100vh;background:#f5f5f5}.login-box[data-v-37b1726d]{background:#fff;border-radius:12px;padding:48px;width:100%;max-width:400px;box-shadow:0 2px 12px rgba(0,0,0,.1)}.login-header{&[data-v-37b1726d]{text-align:center;margin-bottom:32px}h1[data-v-37b1726d]{font-size:28px;font-weight:600;color:#303133;margin:0 0 8px 0}p[data-v-37b1726d]{font-size:14px;color:#909399;margin:0}}.login-form{.el-form-item[data-v-37b1726d]{margin-bottom:20px}}.home-container{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;position:relative;background:#f5f5f5;overflow:hidden;padding:20px}.background-decoration{display:none}@keyframes float{0%,to{transform:translateY(0) scale(1);opacity:.6}50%{transform:translateY(-30px) scale(1.1);opacity:.8}}.home-content{position:relative;z-index:1;text-align:center;animation:slideIn .8s ease-out;max-width:600px;width:100%}.header{margin-bottom:40px}.header .title{font-size:48px;font-weight:700;color:#303133;margin:0 0 16px 0}.header .subtitle{font-size:18px;color:#909399;margin:0;font-weight:300}.notice-list{display:flex;flex-direction:column;gap:12px;margin-bottom:40px}.notice-item{background:#fff7e6;border:1px solid #ffd591;border-radius:12px;padding:16px 20px;display:flex;align-items:center;gap:8px;cursor:pointer;transition:all .3s ease}.notice-item:hover{background:#ffe7ba;transform:translateY(-2px);box-shadow:0 4px 12px rgba(230,162,60,.3)}.notice-item .notice-icon{flex-shrink:0}.notice-item .notice-content{flex:1;display:flex;align-items:center;justify-content:space-between;gap:12px}.notice-item .notice-content .notice-title{font-size:15px;color:#606266;font-weight:500;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.notice-item .notice-content .notice-more{font-size:13px;color:#e6a23c;font-weight:500;flex-shrink:0}.button-group{display:flex;flex-direction:column;gap:24px;margin-bottom:40px}.action-button{background:#fff;border-radius:20px;padding:32px 40px;display:flex;align-items:center;gap:24px;cursor:pointer;transition:all .3s ease;box-shadow:0 8px 24px rgba(0,0,0,.15);border:none;width:100%}.action-button:hover{transform:translateY(-4px);box-shadow:0 12px 32px rgba(0,0,0,.25)}.action-button:active{transform:translateY(-2px)}.action-button .button-icon{width:80px;height:80px;border-radius:16px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.action-button .button-icon i{font-size:40px;color:#fff}.action-button .button-content{text-align:left;flex:1}.action-button .button-content h3{font-size:24px;font-weight:600;color:#303133;margin:0 0 8px 0}.action-button .button-content p{font-size:14px;color:#909399;margin:0}.action-button.tutorial-button .button-icon{background:#409eff}.action-button.quiz-button .button-icon{background:#67c23a}.user-info .info-card{background:#fff;border-radius:16px;padding:24px;box-shadow:0 2px 12px rgba(0,0,0,.1)}.user-info .info-card .info-item{display:flex;justify-content:space-between;padding:8px 0;font-size:16px;color:#606266}.user-info .info-card .info-item .info-label{opacity:.8}.user-info .info-card .info-item .info-value{font-weight:600}.footer{position:fixed;bottom:30px;z-index:10}.footer .el-button{color:#909399;font-size:14px}.footer .el-button:hover{color:#409eff}@keyframes slideIn{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@media(max-width:768px){.home-content{max-width:100%}.header .title{font-size:36px}.header .subtitle{font-size:16px}.action-button{padding:24px 28px;gap:16px}.action-button .button-icon{width:60px;height:60px}.action-button .button-icon i{font-size:32px}.action-button .button-content h3{font-size:20px}.action-button .button-content p{font-size:13px}}.select-container[data-v-79ed80a1]{display:flex;align-items:center;justify-content:center;min-height:100vh;background:#f5f5f5}.select-box[data-v-79ed80a1]{background:#fff;border-radius:12px;padding:48px;width:100%;max-width:400px;box-shadow:0 2px 12px rgba(0,0,0,.1)}.title[data-v-79ed80a1]{font-size:28px;font-weight:600;color:#303133;margin:0 0 32px 0;text-align:center}.form-content{.form-item{&[data-v-79ed80a1]{margin-bottom:24px}label[data-v-79ed80a1]{display:block;font-size:14px;font-weight:600;color:#606266;margin-bottom:8px}.el-select[data-v-79ed80a1]{width:100%}}.submit-button[data-v-79ed80a1]{width:100%;margin-top:16px}}.tutorial-container[data-v-d81fbbda]{min-height:100vh;background:#f5f5f5;padding:20px}.tutorial-header{&[data-v-d81fbbda]{display:flex;align-items:center;gap:20px;background:#fff;border-radius:12px;padding:20px 30px;margin-bottom:20px;box-shadow:0 4px 12px rgba(0,0,0,.1)}h1[data-v-d81fbbda]{font-size:24px;font-weight:600;color:#303133;margin:0}.back-button[data-v-d81fbbda]{padding:8px 20px}}.tutorial-list[data-v-d81fbbda]{max-width:800px;margin:0 auto}.tutorial-item{&[data-v-d81fbbda]{background:#fff;border-radius:12px;padding:20px;margin-bottom:16px;display:flex;gap:20px;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 12px rgba(0,0,0,.1)}&[data-v-d81fbbda]:hover{transform:translateY(-4px);box-shadow:0 8px 24px rgba(0,0,0,.15)}.thumbnail{&[data-v-d81fbbda]{width:160px;height:90px;border-radius:8px;display:flex;align-items:center;justify-content:center;flex-shrink:0;position:relative;overflow:hidden}img[data-v-d81fbbda]{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.play-overlay{&[data-v-d81fbbda]{position:absolute;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,.3);display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .3s ease}i[data-v-d81fbbda]{font-size:36px;color:#fff}}}&:hover{.thumbnail{.play-overlay[data-v-d81fbbda]{opacity:1}}}.info{&[data-v-d81fbbda]{flex:1;display:flex;flex-direction:column;justify-content:center}h3[data-v-d81fbbda]{font-size:18px;font-weight:600;color:#303133;margin:0 0 8px 0}p[data-v-d81fbbda]{font-size:14px;color:#6b7280;margin:0 0 12px 0;line-height:1.5}.meta[data-v-d81fbbda]{display:flex;gap:16px;font-size:12px;color:#9ca3af}}}.tutorial-detail-container[data-v-0b6e0cb7]{min-height:100vh;background:#f5f5f5;padding:20px}.header{&[data-v-0b6e0cb7]{display:flex;align-items:center;gap:20px;background:#fff;border-radius:12px;padding:20px 30px;margin-bottom:20px;box-shadow:0 4px 12px rgba(0,0,0,.1)}h1[data-v-0b6e0cb7]{font-size:24px;font-weight:600;color:#303133;margin:0}.back-button[data-v-0b6e0cb7]{padding:8px 20px}}.content[data-v-0b6e0cb7]{max-width:800px;margin:0 auto}.info-section{&[data-v-0b6e0cb7]{background:#f5f5f5;border-radius:12px;padding:30px;box-shadow:0 4px 12px rgba(0,0,0,.1)}h2[data-v-0b6e0cb7]{font-size:24px;font-weight:600;color:#303133;margin:0 0 16px 0}.description[data-v-0b6e0cb7]{font-size:16px;color:#6b7280;line-height:1.6;margin:0 0 24px 0}.meta-info{&[data-v-0b6e0cb7]{display:flex;gap:32px;margin-bottom:32px;padding-bottom:24px;border-bottom:1px solid #e5e7eb}.meta-item{&[data-v-0b6e0cb7]{display:flex;align-items:center;gap:8px;font-size:14px;color:#6b7280}i[data-v-0b6e0cb7]{font-size:18px;color:#9ca3af}}}.action-buttons[data-v-0b6e0cb7]{display:flex;gap:16px}}.quiz-container[data-v-3a08a7e3]{min-height:100vh;background:#f5f5f5;padding:20px;display:flex;flex-direction:column;user-select:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none}.header{&[data-v-3a08a7e3]{display:flex;align-items:center;justify-content:space-between;gap:20px;background:#fff;border-radius:12px;padding:20px 30px;margin-bottom:20px;box-shadow:0 4px 12px rgba(0,0,0,.1);flex-shrink:0}h1[data-v-3a08a7e3]{font-size:24px;font-weight:600;color:#303133;margin:0}.back-button[data-v-3a08a7e3],.end-button[data-v-3a08a7e3]{padding:8px 20px}}.content[data-v-3a08a7e3]{max-width:1400px;margin:0 auto;flex:1;display:flex;flex-direction:column;min-height:0}.progress-info[data-v-3a08a7e3]{justify-content:space-between;padding:16px 24px;margin-bottom:20px;font-size:14px;color:#6b7280}.progress-info[data-v-3a08a7e3],.question-card[data-v-3a08a7e3]{display:flex;background:#fff;border-radius:12px;box-shadow:0 4px 12px rgba(0,0,0,.1)}.question-card[data-v-3a08a7e3]{padding:30px;flex:1;flex-direction:column;overflow-y:auto;min-height:0}.question-timer{&[data-v-3a08a7e3]{display:flex;align-items:center;justify-content:center;gap:8px;padding:12px;background:#fff3f3;border-radius:8px;margin-bottom:20px;color:#f56c6c;font-size:16px;font-weight:600;flex-shrink:0}i[data-v-3a08a7e3]{font-size:18px}}.question-image{&[data-v-3a08a7e3]{margin-bottom:20px;border-radius:8px;overflow:hidden;max-width:100%;display:flex;justify-content:center;flex-shrink:0}img[data-v-3a08a7e3]{width:100%;height:auto;max-width:100%;display:block;-o-object-fit:contain;object-fit:contain;max-height:50vh;pointer-events:none;-webkit-user-drag:none;-moz-user-drag:none;-ms-user-drag:none}}.question-description{&[data-v-3a08a7e3]{margin-bottom:24px;padding:20px;background:#f9fafb;border-radius:8px}p[data-v-3a08a7e3]{font-size:15px;color:#606266;line-height:1.8;margin:0;word-wrap:break-word;word-break:break-word}}.question-content{&[data-v-3a08a7e3]{margin-bottom:0}h3[data-v-3a08a7e3]{font-size:18px;font-weight:600;color:#303133;margin:0;line-height:1.8;word-wrap:break-word;word-break:break-word}}@media (max-width:768px){.quiz-container[data-v-3a08a7e3]{padding:10px}.header{&[data-v-3a08a7e3]{padding:16px 20px}h1[data-v-3a08a7e3]{font-size:20px}.back-button[data-v-3a08a7e3]{padding:6px 16px}}.question-card[data-v-3a08a7e3]{padding:20px}.question-timer{&[data-v-3a08a7e3]{font-size:14px;padding:10px}i[data-v-3a08a7e3]{font-size:16px}}.question-description{&[data-v-3a08a7e3]{padding:12px}p[data-v-3a08a7e3]{font-size:14px}}.question-content{h3[data-v-3a08a7e3]{font-size:16px}}}@media (max-width:480px){.quiz-container[data-v-3a08a7e3]{padding:8px}.header{&[data-v-3a08a7e3]{padding:12px 16px}h1[data-v-3a08a7e3]{font-size:18px}.back-button[data-v-3a08a7e3]{padding:5px 12px;font-size:13px}}.question-card[data-v-3a08a7e3]{padding:16px}.question-timer{&[data-v-3a08a7e3]{font-size:13px;padding:8px}i[data-v-3a08a7e3]{font-size:14px}}.question-description{&[data-v-3a08a7e3]{padding:10px}p[data-v-3a08a7e3]{font-size:13px}}.question-content{h3[data-v-3a08a7e3]{font-size:15px}}}@media (max-width:375px){.quiz-container[data-v-3a08a7e3]{padding:6px}.header{&[data-v-3a08a7e3]{padding:10px 12px}h1[data-v-3a08a7e3]{font-size:16px}.back-button[data-v-3a08a7e3]{padding:4px 10px;font-size:12px}}.question-card[data-v-3a08a7e3]{padding:12px}.question-timer{&[data-v-3a08a7e3]{font-size:12px;padding:6px}i[data-v-3a08a7e3]{font-size:13px}}.question-description{&[data-v-3a08a7e3]{padding:8px}p[data-v-3a08a7e3]{font-size:12px}}.question-content{h3[data-v-3a08a7e3]{font-size:14px}}}.notice-detail-container{min-height:100vh;background:#f5f5f5;padding:20px}.notice-detail-content{max-width:800px;margin:0 auto}.header{margin-bottom:20px}.header .back-button{display:flex;align-items:center;gap:8px;font-size:16px;padding:8px 16px}.header .back-button:hover{background:rgba(64,158,255,.1);border-radius:8px}.notice-card{background:#fff;border-radius:16px;padding:40px;box-shadow:0 4px 16px rgba(0,0,0,.08)}.notice-card .notice-header{border-bottom:1px solid #ebeef5;padding-bottom:24px;margin-bottom:32px}.notice-card .notice-header .notice-title{font-size:28px;font-weight:700;color:#303133;margin:0 0 16px 0;line-height:1.4}.notice-card .notice-header .notice-meta{display:flex;align-items:center;gap:16px}.notice-card .notice-header .notice-meta .notice-type{display:inline-block;padding:4px 12px;background:#ecf5ff;color:#409eff;border-radius:4px;font-size:13px;font-weight:500}.notice-card .notice-header .notice-meta .notice-date{color:#909399;font-size:14px}.notice-card .notice-body .notice-content{font-size:16px;line-height:1.8;color:#606266}.notice-card .notice-body .notice-content img{max-width:100%;height:auto;border-radius:8px;margin:16px 0}.notice-card .notice-body .notice-content p{margin:16px 0}.loading{background:#fff;border-radius:16px;padding:40px;box-shadow:0 4px 16px rgba(0,0,0,.08)}@media(max-width:768px){.notice-card{padding:24px}.notice-card .notice-header .notice-title{font-size:22px}.notice-card .notice-body .notice-content{font-size:14px}}