body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.question-input h2{color:var(--primary-color);margin-top:0}.input-mode-selector{display:flex;gap:10px;margin-bottom:20px}.input-mode-selector button{flex:1 1}.btn-active{background-color:#8a2be2}.btn-active:hover{background-color:#7a1bd2}.subject-input-container{margin-top:10px}.subject-input-container input[type=text],.subject-input-container select{margin-top:10px;width:100%}.import-method-selector{background-color:#f0f8ff4d;border-radius:4px;margin-bottom:15px;padding:10px}.template-download{border-top:1px dashed #e0e0e0;margin-top:15px;padding-top:10px}.template-buttons{display:flex;gap:10px;margin-top:5px}.file-input{background-color:#f9f9f9;border:1px dashed #ccc;border-radius:4px;display:block;margin:10px 0;padding:10px;width:100%}.file-input:hover{background-color:#f0f0f0}.form-group{margin-bottom:1.5rem}.form-group label{display:block;margin-bottom:.5rem}.form-group input[type=text],.form-group select,.form-group textarea{border:1px solid #e0e0e0;border-radius:var(--border-radius);font-size:1rem;padding:.75rem;transition:border-color .3s;width:100%}.form-group textarea{min-height:120px;resize:vertical}.form-group input[type=text]:focus,.form-group select:focus,.form-group textarea:focus{border-color:var(--primary-color);box-shadow:0 0 0 2px #6c5ce71a;outline:none}.radio-group{display:flex;gap:1.5rem}.radio-group label{display:flex}.radio-group input{margin-right:.5rem}.btn{background-color:#4169e1;border-radius:4px;font-size:16px;padding:10px 20px;transition:background-color .3s}.btn:hover{background-color:#3151b5}.btn:disabled{background-color:#ccc}.btn-secondary{background-color:#6c757d}.btn-secondary:hover{background-color:#5a6268}.option-input{align-items:center;display:flex;margin-bottom:.5rem}.option-input span{font-weight:500;width:30px}.option-input input{flex:1 1}.add-option{font-size:.9rem;margin-top:.5rem;padding:.5rem 1rem}small{color:#666;display:block;font-size:.85rem;margin-top:.25rem}small.error{color:#dc3545}input.invalid{border-color:#dc3545}.batch-upload{margin-top:10px}.batch-instructions{background-color:#f0f8ff80;border-left:4px solid #add8e6;border-radius:4px;margin-bottom:20px;padding:15px}.batch-instructions p.format{background-color:#fff9;border-radius:4px;font-family:monospace;overflow-x:auto;padding:10px;white-space:nowrap}.batch-instructions ul{padding-left:20px}.batch-instructions li{margin-bottom:5px}.batch-textarea{font-family:monospace;min-height:200px!important;overflow-x:auto;white-space:pre}.batch-result{background-color:#f9f9f9;border-radius:8px;box-shadow:0 2px 8px #0000001a;margin-top:20px;padding:15px}.batch-result h4{border-bottom:1px solid #eee;color:#333;font-size:18px;margin-bottom:15px;margin-top:0;padding-bottom:10px}.batch-result .success{color:#4caf50;font-weight:700}.batch-result .error{color:#f44336;font-weight:700}.error-messages{margin-top:15px}.error-messages h5{color:#f44336;font-size:16px;margin-bottom:10px}.error-messages ul{background-color:#fff;border:1px solid #ddd;border-radius:4px;margin:0;max-height:200px;overflow-y:auto;padding:10px}.error-messages li{color:#555;line-height:1.4;margin-bottom:5px}.error-messages li:last-child{margin-bottom:0}.import-result{background-color:#f9f9f9;border-radius:8px;box-shadow:0 2px 8px #0000001a;margin-top:20px;padding:15px}.import-result h3{border-bottom:1px solid #eee;color:#333;font-size:18px;margin-bottom:15px;margin-top:0;padding-bottom:10px}.result-summary{gap:20px;justify-content:flex-start;margin-bottom:15px}.error-count,.success-count{align-items:center;display:flex;gap:8px}.success-count .label{color:#4caf50;font-weight:500}.error-count .label{color:#f44336;font-weight:500}.count{font-size:18px;font-weight:700}.error-details{margin-top:15px}.error-details h4{color:#f44336;font-size:16px;margin-bottom:10px}.error-messages-container{background-color:#fff;border:1px solid #ddd;border-radius:4px;max-height:200px;overflow-y:auto;padding:10px}.error-messages-list{margin:0;padding-left:20px}.error-message-item{color:#555;line-height:1.4;margin-bottom:5px}.error-message-item:last-child{margin-bottom:0}.success-message{color:#4caf50;font-weight:500;margin-top:10px;text-align:center}.btn-icon{color:#dc3545;font-size:16px;padding:0 5px}.btn-icon:hover{color:#c82333}.remove-option{margin-left:10px}.info-text{background-color:#fff9;border-radius:4px;color:#666;font-size:.9rem;line-height:1.4;margin-bottom:10px;padding:8px}.auth-required,.permission-denied{background-color:#fffc;border-radius:8px;box-shadow:0 2px 10px #0000000d;margin:20px auto;max-width:500px;padding:30px;text-align:center}.auth-required h3,.permission-denied h3{color:#ff5757;font-size:1.5rem;margin-bottom:15px}.auth-required p,.permission-denied p{color:#555;font-size:1.1rem;margin-bottom:12px}.upgrade-info{background-color:#f8f4ff;border-left:4px solid #ff69b4;color:#6c5ce7;font-weight:500;margin-top:20px;padding:10px}.no-permission-message{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background:#ffffff1a;border:1px solid #fff3;border-radius:8px;margin:2rem auto;max-width:400px;padding:2rem;text-align:center}.no-permission-message h3{color:#ff4d4f;font-size:1.5rem;margin-bottom:1rem}.no-permission-message p{color:#666;font-size:1rem;line-height:1.5}.exam-module{margin:0 auto;max-width:900px;padding:20px;position:relative}.exam-header{align-items:flex-start;border-bottom:1px solid #eee;margin-bottom:30px;padding-bottom:15px;position:relative}.header-left{align-items:flex-start;display:flex;flex-direction:column}.header-right{align-items:center;display:flex;justify-content:flex-end}.exam-header h2{color:#333;font-size:24px;margin-bottom:15px;margin-top:0}.questions-count{background-color:#f8f9fa;border:1px solid #e0e0e0;border-radius:4px;color:#666;font-size:16px;font-weight:400;padding:8px 12px}.questions-count strong{color:#4169e1;font-weight:600}.exam-header .subject-display{color:#666;font-size:16px;margin-bottom:15px}.subject-selection{align-items:center;display:flex;margin-bottom:15px;width:100%}.subject-label{color:#555;font-weight:500;margin-right:15px;white-space:nowrap}.subject-selection select{background-color:#fff;border:1px solid #e0e0e0;border-radius:4px;font-size:15px;padding:8px 15px;width:180px}.instruction-card{align-items:center;background-color:#f8f9fa;border-left:4px solid #4169e1;border-radius:8px;box-shadow:0 2px 8px #0000000d;display:flex;justify-content:center;margin-bottom:25px;padding:16px 20px}.instruction-icon{align-items:center;display:flex;margin-right:12px}.instruction-text{color:#333;font-size:17px;font-weight:500}@media (max-width:768px){.instruction-card{flex-direction:column;padding:15px;text-align:center}.instruction-icon{margin-bottom:10px;margin-right:0}.instruction-text{font-size:16px}.filter-section{gap:15px;grid-template-columns:1fr}.subject-selection{align-items:flex-start;flex-direction:column}.subject-label{margin-bottom:10px}.subject-selection select{width:100%}.question-meta{align-items:flex-start;flex-direction:column}.question-container{padding:15px}.option{padding:12px 15px}}.filter-section{grid-gap:25px;background-color:#ffffffb3;border-radius:8px;box-shadow:0 1px 3px #0000000d;display:grid;gap:25px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));margin-bottom:25px;padding:20px}.filter-group{flex:1 1;min-width:200px}.filter-group h4{color:#555;font-size:15px;margin-bottom:12px;margin-top:0}.vertical-selector{display:flex;flex-direction:column;gap:12px}.vertical-selector label{align-items:center;background-color:#f8f9fa;border-radius:4px;cursor:pointer;display:flex;padding:8px 12px;transition:all .2s}.vertical-selector label:hover{background-color:#e9ecef}.vertical-selector input[type=radio]{margin-right:10px}.count-selector{background-color:#f8f9fab3;border-radius:6px;margin:20px 0;padding:12px 15px}.count-selector label{font-weight:500;margin-right:15px;white-space:nowrap}.count-limit{color:#666;font-size:14px;margin-left:10px}.exam-module .count-selector input[type=number]{border:1px solid #ddd;border-radius:4px;font-size:16px;padding:8px 12px;width:80px}.question-container{background-color:#fff;border-radius:8px;box-shadow:0 2px 10px #0000000d;margin-top:20px;padding:25px}.question-meta{margin-bottom:30px}.question-info{gap:10px}.question-subject{color:#666;font-size:15px;margin-bottom:5px}.question-type{background-color:#ff7875;font-size:14px;padding:5px 14px;white-space:nowrap}.question-progress{color:#333;font-size:18px;font-weight:600;margin-top:4px}.question-text{color:#333;font-size:17px;margin:25px 0}.options-container,.options-list{display:flex;flex-direction:column;gap:15px;margin:25px 0}.option{border-radius:6px;padding:14px 18px}.option:hover{background-color:#f0f7ff;border-color:#1890ff}.option.selected{background-color:#e6f7ff;border-color:#1890ff}.result-status{margin:20px auto;max-width:90%;text-align:center}.result{align-items:center;border-radius:8px;box-shadow:0 2px 8px #0000000d;box-sizing:border-box;display:inline-flex;flex-direction:column;gap:15px;margin:0 auto;max-width:90%;padding:20px;width:100%}.result.correct{background-color:#f0f8ff;border:1px solid #87ceeb}.result.incorrect{background-color:#fff0f5;border:1px solid tomato}.result.incorrect .result-text{color:#ff1493}.answer-details{background-color:#fffc;border-radius:8px;box-sizing:border-box;padding:20px;text-align:left;width:100%}.answer-item{align-items:center;border-radius:8px;display:flex;margin-bottom:15px;padding:15px;position:relative;transition:all .3s ease}.result.correct .answer-item.correct-answer{background-color:#f0f8ff;border:1px solid #87ceeb}.result.incorrect .answer-item.user-answer{background-color:#fff0f5;border:1px solid tomato}.result.incorrect .answer-item.correct-answer{background-color:#f0f8ff;border:1px solid #87ceeb}.answer-item:before{align-self:center;border-radius:50%;content:"";display:inline-block;height:6px;margin-right:12px;margin-top:0;width:6px}.answer-item.correct-answer:before{background-color:#4169e1;box-shadow:0 0 0 2px #4169e133}.answer-item.user-answer:before{background-color:tomato;box-shadow:0 0 0 2px #ff634733}.answer-label{font-size:14px;font-weight:600;margin-right:20px;min-width:90px}.answer-content,.answer-label{align-items:center;color:#333;display:flex}.answer-content{flex:1 1;font-size:15px;line-height:1.6}.answer-option{background-color:#fff;border:1px solid #e8e8e8;border-radius:4px;display:inline-flex;font-size:14px;font-weight:500;height:28px;justify-content:center;letter-spacing:4px;min-width:32px;padding:4px 16px}.result-icon{display:inline-block;font-size:24px;margin-right:10px;vertical-align:middle}.result-text{font-size:18px;font-weight:600;vertical-align:middle}.result.correct .result-text{color:#4169e1}.result.incorrect .result-text{color:tomato}@media (max-width:768px){.answer-details,.result{padding:15px}.answer-item{padding:12px}.answer-label{margin-right:15px;min-width:80px}.answer-content,.answer-label{font-size:14px}.answer-option{font-size:13px;height:26px;letter-spacing:3px;min-width:28px;padding:4px 12px}.answer-content{gap:8px}}.action-buttons{flex-wrap:wrap;gap:20px;margin-top:30px}.action-buttons,.action-buttons .btn{align-items:center;display:flex;justify-content:center}.action-buttons .btn{border:none;border-radius:4px;cursor:pointer;font-size:16px;height:45px;margin:0;min-width:150px;padding:10px 24px;transition:all .3s ease}.btn:disabled{cursor:not-allowed;opacity:.5}.analysis-btn,.next-btn{background-color:#722ed1;color:#fff;height:45px;min-width:150px}.analysis-btn:hover:not(:disabled),.next-btn:hover:not(:disabled){background-color:#9254de}.finish-btn{background-color:#faad14;color:#fff;height:45px;min-width:150px}.finish-btn:hover:not(:disabled){background-color:#ffc53d}.btn-secondary{background-color:#fff;border:1px solid #d9d9d9;border-radius:4px;color:#666;cursor:pointer;font-size:12px;height:auto;margin-left:auto;min-width:auto;padding:4px 12px;transform:scale(.8);transition:all .3s}.btn-secondary:hover{border-color:#40a9ff;color:#40a9ff}.analysis-section{background-color:#fafafa;margin-top:30px;padding:20px}.analysis-content{margin-top:15px}.analysis-content pre{background-color:#fff;border-radius:4px;font-family:inherit;margin:0;padding:10px;white-space:pre-wrap}.user-info{font-size:14px;margin-right:auto}.user-label{color:#666}.username{color:#333}.question-section{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;margin-bottom:20px;padding:20px}.analysis-content ul{margin:10px 0;padding-left:20px}.mistakes-list,.similar-questions-list{display:flex;flex-direction:column;gap:20px;margin-top:15px}.mistake-item,.similar-question-item{border:1px solid #eee;border-radius:6px;padding:15px}.mistake-header{color:#666;display:flex;font-size:14px;justify-content:space-between;margin-bottom:10px}.result-section{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;margin-bottom:20px;padding:20px;text-align:center}.correct-answer{background-color:#f6ffed;border:1px solid #b7eb8f;border-radius:4px;font-weight:500;margin:15px 0;padding:10px}.ai-analysis{line-height:1.6;margin:15px 0}.start-exam{padding:2rem 0;text-align:center}.start-exam p{font-size:1.2rem;margin-bottom:1.5rem}.button-group{display:flex;gap:1rem;justify-content:center}.question-container{position:relative}.option.selected .option-letter{background-color:#1890ff}.result-analysis{background-color:#f9f9f9;border-radius:var(--border-radius);margin-top:1.5rem;padding:1.5rem}.answer-comparison{display:flex;justify-content:space-between;margin-top:1rem}.answer-comparison p{margin:0}.ai-analysis h4{color:#1890ff;margin-top:0}.type-selector{display:flex;gap:1.5rem;justify-content:center;margin-bottom:1.5rem}.type-selector label{align-items:center;cursor:pointer;display:flex}.type-selector input{margin-right:.5rem}.result-container{background-color:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;margin-top:20px;padding:20px}.result-container.correct{border-left:5px solid #4caf50}.result-container.incorrect{border-left:5px solid tomato}.result-container h3{color:#333;margin-top:0}.analysis{background-color:#f8f9fa;border-radius:5px;margin-top:15px;padding:15px}.analysis h4{color:#555;margin-top:0}.next-btn{background-color:#4169e1;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:16px;margin-top:15px;padding:10px 20px;transition:background-color .3s}.next-btn:hover{background-color:#3151b5}.learning-steps{background-color:#f5f5f5;border-radius:8px;display:flex;justify-content:space-between;margin:20px 0;padding:10px}.step{align-items:center;display:flex;flex-direction:column;position:relative;width:22%}.step:not(:last-child):after{background-color:#ddd;content:"";height:2px;position:absolute;right:-15%;top:15px;width:30%}.step.active:not(:last-child):after,.step.completed:not(:last-child):after{background-color:#4caf50}.step-number{align-items:center;background-color:#ddd;border-radius:50%;color:#fff;display:flex;font-weight:700;height:30px;justify-content:center;margin-bottom:5px;width:30px}.step.active .step-number,.step.completed .step-number{background-color:#4caf50}.step-name{color:#666;font-size:12px}.step.active .step-name,.step.completed .step-name{color:#4caf50;font-weight:700}.ai-explanation{background-color:#f0f7ff;border-left:4px solid #2196f3;border-radius:8px;margin:20px 0;padding:15px}.explanation-content{line-height:1.6;margin:10px 0}.error-analysis{background-color:#fff5f5;border-left:4px solid #f44336;border-radius:8px;margin:20px 0;padding:15px}.analysis-content{line-height:1.6;margin:10px 0}.related-questions{background-color:#f5f5f5;border-radius:8px;margin:20px 0;padding:15px}.knowledge-points{background-color:#fffde7;border-radius:4px;line-height:1.6;margin:10px 0;padding:10px}.related-questions-list{display:flex;flex-direction:column;gap:10px;margin:15px 0}.related-question{background-color:#fff;border:1px solid #ddd;border-radius:4px;cursor:pointer;padding:10px;transition:all .3s ease}.related-question:hover{border-color:#2196f3;box-shadow:0 2px 5px #0000001a}.related-question.selected{background-color:#e3f2fd;border-color:#2196f3}.selected-related-question{background-color:#e3f2fd;border-left:4px solid #2196f3;border-radius:8px;margin:15px 0;padding:15px}@media (max-width:768px){.learning-steps{flex-direction:column;gap:10px}.step{flex-direction:row;gap:10px;justify-content:flex-start;width:100%}.step:not(:last-child):after{display:none}.step-name{font-size:14px}.result,.result-status{max-width:95%}.result{padding:15px}.answer-item{padding:10px}.answer-label{font-size:14px;min-width:70px}}.analysis-toggle{margin-top:15px;text-align:center}.analysis-toggle button{background-color:#f0f0f0;border:none;border-radius:4px;cursor:pointer;padding:8px 15px;transition:all .3s ease}.analysis-toggle button:hover{background-color:#e0e0e0}.analysis-loading{align-items:center;background-color:#f8f9fa;border-radius:8px;display:flex;flex-direction:column;justify-content:center;margin:15px 0;padding:20px}.analysis-loading .spinner{animation:spin 1s linear infinite;border:4px solid #f3f3f3;border-radius:50%;border-top-color:#52c41a;height:40px;margin-bottom:15px;width:40px}.analysis-loading span{color:#666;font-size:14px}.correct-answer-hint{background-color:#f8f8f8;border-left:3px solid #4caf50;font-size:.9rem;margin:15px 0;padding:10px 15px}.auto-next-hint{color:#666;font-size:.8rem;font-style:italic;margin-top:10px;text-align:center}.knowledge-card{background-color:#f9f9f9;border-radius:8px;box-shadow:0 2px 4px #0000000d;margin:15px 0;padding:15px}.knowledge-card h4{border-bottom:1px solid #eee;color:#4169e1;font-size:1rem;margin-top:0;padding-bottom:8px}.knowledge-card ul{margin:10px 0;padding-left:20px}.knowledge-card li{margin-bottom:5px}@media (max-width:768px){.knowledge-card{padding:10px}.analysis-toggle button{font-size:.9rem;padding:6px 12px}}.error-message{color:#ff4d4f;margin-top:10px;text-align:center}.correct-answer{color:#666;font-size:16px;margin-top:10px}.submit-btn{background-color:#1890ff;color:#fff}.submit-btn:hover:not(:disabled){background-color:#40a9ff}.question-content{margin-top:20px;padding:0}.similar-questions-container{background-color:#fafafa;border:1px solid #e9ecef;border-radius:8px;margin-top:30px;padding:20px}.similar-questions-container h3{color:#333;font-size:18px;margin-bottom:15px}.similar-questions-list{display:flex;flex-direction:column;gap:15px}.similar-question-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:10px;width:100%}.question-type-tag{border-radius:4px;display:inline-block}.question-type-tag,.similarity-score{background-color:#1890ff;color:#fff;font-size:12px;font-weight:500;padding:4px 10px}.similarity-score{border-radius:12px;position:relative}.similar-question-item{background-color:#fff;border:1px solid #dee2e6;border-radius:6px;margin-bottom:15px;padding:15px;position:relative;transition:all .3s ease}.similar-question-item:hover{box-shadow:0 2px 8px #0000001a;transform:translateY(-2px)}.similar-questions-loading{align-items:center;background-color:#f9f9f9;border:1px dashed #d9d9d9;border-radius:8px;display:flex;flex-direction:column;justify-content:center;margin:20px 0;min-height:150px;padding:40px 30px}.similar-questions-loading .spinner{animation:spin 1.2s linear infinite;border:5px solid #f3f3f3;border-radius:50%;height:50px;margin-bottom:20px;width:50px}.similar-questions-loading span{color:#666;font-size:16px;font-weight:500}.no-similar-questions{align-items:center;background-color:#f9f9f9;border:1px dashed #d9d9d9;border-radius:8px;color:#999;display:flex;font-size:16px;justify-content:center;margin:20px 0;min-height:100px;padding:30px}.similarity-point{background-color:#f6ffed;border-left:4px solid #52c41a;border-radius:4px;margin:15px 0;padding:15px}.similarity-point h4{color:#52c41a;font-size:14px;margin:0 0 8px}.similarity-point p{color:#333;font-size:14px;line-height:1.6;margin:0}.frequently-mistakes-container{background-color:#fafafa;border:1px solid #eee;border-radius:8px;margin-top:30px;padding:20px}.frequently-mistakes-container h3{color:#333;font-size:18px;margin-bottom:15px;margin-top:0}.frequently-mistakes-loading{align-items:center;background-color:#f9f9f9;border:1px dashed #d9d9d9;border-radius:8px;display:flex;flex-direction:column;justify-content:center;margin:20px 0;min-height:150px;padding:40px 30px}.frequently-mistakes-loading .spinner{animation:spin 1.2s linear infinite;border:5px solid #f3f3f3;border-radius:50%;height:50px;margin-bottom:20px;width:50px}.frequently-mistakes-loading span{color:#666;font-size:16px;font-weight:500}.no-frequently-mistakes{background-color:#f9f9f9;border:1px dashed #d9d9d9;border-radius:8px;color:#999;font-size:16px;justify-content:center;margin:20px 0;min-height:100px;padding:30px}.multi-option,.no-frequently-mistakes{align-items:center;display:flex}.multi-option .option-letter{color:#333;font-size:18px;font-weight:700;letter-spacing:3px}.answer-option{align-items:center;display:flex;margin-bottom:8px}.answer-option .option-letter{font-weight:500;margin-right:8px}.answer-option .option-text{flex:1 1}.question-difficulty{color:#555;font-size:15px}.difficulty-easy{color:#4caf50;font-weight:500}.difficulty-medium{color:#ff9800;font-weight:500}.difficulty-hard{color:#f44336;font-weight:500}.result-options{border-top:1px solid #eaeaea;margin-top:15px;padding-top:15px}.result-option{cursor:default;position:relative}.result-option.selected{background-color:#f0f5ff;border-color:#d9e6ff}.result-option.correct-option{background-color:#0f9d581a;border-color:#0f9d584d}.result-option.wrong-option{background-color:#ea43351a;border-color:#ea43354d}.result-option.correct-option:after{color:#0f9d58;content:"✓"}.result-option.correct-option:after,.result-option.wrong-option:after{font-weight:700;position:absolute;right:10px;top:50%;transform:translateY(-50%)}.result-option.wrong-option:after{color:#ea4335;content:"✗"}.result-container .question-text{color:#333;font-size:16px;line-height:1.6;margin-bottom:15px;padding:10px 0}.result-container .question-text p{margin:0}.result-container .result-options{border-top:none;margin-bottom:20px;margin-top:5px;padding-top:0}.result-container .result{border-top:1px solid #eaeaea;margin-top:20px;padding-top:15px}.options-container{margin-bottom:20px}.option-wrapper{margin-bottom:8px;position:relative}.option-analysis-trigger{position:absolute;right:12px;top:50%;transform:translateY(-50%)}.option-analysis-icon{align-items:center;border-radius:14px;cursor:pointer;display:inline-flex;font-size:13px;height:28px;justify-content:center;padding:0 12px;transition:all .2s}.option-analysis-icon:hover{background-color:#722ed133}.option-analysis-icon span{font-weight:500}.option-analysis-content{background-color:#f9f9f9;border-radius:6px;box-shadow:0 2px 8px #00000014;padding:12px 16px}.analysis-detail{margin-bottom:12px}.analysis-section h4{color:#444;font-size:15px;margin:0 0 8px}.analysis-section p{color:#444;line-height:1.5;margin:0;text-align:justify}.all-options-analysis-section{background-color:#f9f9f9;border-radius:8px;box-shadow:0 2px 8px #0000001a;margin-top:20px;padding:16px}.all-options-analysis-section h3{border-bottom:1px solid #eee;color:#333;font-size:16px;font-weight:600;margin:0 0 16px;padding-bottom:8px}.option-analysis-icon{background-color:#722ed11a;border:1px solid #722ed180;color:#722ed1;font-weight:400;transition:all .2s ease}.option-analysis-icon.expanded{background-color:#722ed133;font-weight:500}.spinner{animation:spin 1s ease-in-out infinite;border:3px solid #0000001a;border-radius:50%;border-top-color:#9400d3;height:30px;margin:0 auto;width:30px}.similar-questions-loading .spinner{border-top-color:#00bfff}.frequently-mistakes-loading .spinner{border-top-color:tomato}.analysis-buttons .btn:disabled{background-color:#f5f5f5;color:#999;cursor:not-allowed}.frequently-mistakes-loading,.knowledge-analysis-loading,.similar-questions-loading{align-items:center;background-color:#f9f9f9;border-radius:8px;display:flex;flex-direction:column;justify-content:center;margin:15px 0;padding:30px}.frequently-mistakes-loading span,.knowledge-analysis-loading p,.similar-questions-loading span{color:#666;margin-top:15px}.option-analysis-content{animation:fadeIn .3s ease-in-out;border-left:3px solid #722ed1;margin-bottom:16px;margin-top:8px}.key-points-analysis-button{align-items:center;background-color:#f0f0f0;border:1px solid #ddd;border-radius:4px;color:#333;cursor:pointer;display:flex;font-size:14px;justify-content:center;min-width:120px;padding:8px 16px;transition:all .2s ease}.key-points-analysis-button:hover{background-color:#e0e0e0}.key-points-analysis-button.active{background-color:#e6f7ff;border-color:#91d5ff;color:#1890ff}.key-points-analysis-button.loading{background-color:#f0f0f0;border-color:#d9d9d9;color:#999;cursor:not-allowed;opacity:.8}.key-points-analysis-button.loading:after{animation:spin 1s linear infinite;border:2px solid #999;border-radius:50%;border-top-color:#0000;content:"";display:inline-block;height:12px;margin-left:8px;width:12px}.knowledge-analysis-container{background-color:#fafafa;border-radius:8px;box-shadow:0 2px 8px #0000001a;margin-top:20px;padding:16px}.analysis-title{border-bottom:1px solid #eee;font-size:16px;font-weight:600;margin:0 0 16px;padding-bottom:8px}.key-points-analysis-loading{align-items:center;background-color:#f9f9f9;border-radius:8px;display:flex;flex-direction:column;justify-content:center;padding:30px;text-align:center}.loading-spinner{border-top-color:#9400d3;margin-bottom:12px}.no-key-points-analysis{background-color:#f9f9f9;border-radius:8px;color:#888;font-style:italic;padding:20px;text-align:center}.question-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:16px}.question-actions{gap:12px}.question-title{align-items:center;display:flex;font-size:16px;margin:0}.question-type{background-color:#f0f0f0;border-radius:12px;color:#666;font-size:12px;font-weight:400;margin-left:10px;padding:3px 8px}.key-points-analysis-content{margin-top:8px}.analysis-options{background-color:#f9f9f9;border-radius:8px;box-shadow:0 2px 8px #0000000d;margin:20px 0;padding:15px}.analysis-options h3{color:#333;font-size:18px;font-weight:600;margin-bottom:15px}.analysis-buttons{display:flex;flex-wrap:wrap;gap:12px;justify-content:flex-start}.analysis-buttons.single-button-centered{justify-content:center}.analysis-buttons .btn{border:none;border-radius:4px;cursor:pointer;flex:1 1;font-size:14px;font-weight:500;max-width:200px;min-width:120px;padding:8px 16px;transition:all .3s ease}.analysis-buttons .analysis-btn{background-color:#9400d3;color:#fff}.analysis-buttons .analysis-btn:hover{background-color:#ba55d3}.analysis-buttons .analysis-btn.active{background-color:#8a2be2}.analysis-buttons .similar-btn{background-color:#00bfff;color:#fff}.analysis-buttons .similar-btn:hover{background-color:#87ceeb}.analysis-buttons .similar-btn.active{background-color:#4169e1}.analysis-buttons .mistakes-btn{background-color:tomato;color:#fff}.analysis-buttons .mistakes-btn:hover{background-color:#ffa07a}.analysis-buttons .mistakes-btn.active{background-color:#f08080}.knowledge-analysis{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;margin:20px 0;padding:20px}.expand-all-button-container{display:flex;justify-content:flex-end;margin-bottom:15px}.expand-all-button{background-color:#f0f2f5;border:1px solid #ff4d4f;border-radius:4px;color:#ff4d4f;cursor:pointer;font-size:14px;padding:6px 16px;transition:all .3s}.expand-all-button:hover{background-color:#fff1f0;color:#ff7875}.analysis-title{border-bottom:2px solid #4169e1;color:#333;font-size:1.3rem;margin-bottom:20px;padding-bottom:10px}.knowledge-points{display:flex;flex-direction:column;gap:16px;margin-bottom:24px}.knowledge-point-card{background:#fff;border:1px solid #e0e0e0;border-radius:8px;cursor:pointer;overflow:hidden;transition:all .3s ease}.knowledge-point-card:hover{box-shadow:0 4px 8px #4169e11a;transform:translateY(-2px)}.point-header{background:#f8f9fa;padding:16px}.point-header,.point-number{align-items:center;display:flex}.point-number{background:#4169e1;border-radius:50%;color:#fff;font-size:14px;height:24px;justify-content:center;margin-right:12px;width:24px}.point-title{color:#333;flex:1 1;font-size:1.1rem;margin:0}.expand-icon{align-items:center;color:#4169e1;display:flex;font-size:20px;height:24px;justify-content:center;width:24px}.point-details{background:#fff;border-top:1px solid #e0e0e0;padding:16px}.detail-section{margin-bottom:16px}.detail-section:last-child{margin-bottom:0}.detail-section h5{color:#4169e1;font-size:1rem;margin:0 0 8px}.detail-section p{color:#666;line-height:1.6;margin:0}.solving-strategy{background:#f8f9fa;border-radius:8px;margin-top:24px;padding:20px}.strategy-title{color:#4169e1;font-size:1.2rem;margin:0 0 12px}.strategy-content{color:#333;line-height:1.6;margin:0}.analysis-section{background-color:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;margin-bottom:16px;overflow:hidden;transition:all .3s ease}.section-header{align-items:center;cursor:pointer;display:flex;font-weight:500;justify-content:space-between;padding:12px 16px;transition:background-color .2s ease}.section-header:hover{filter:brightness(.98)}.section-header h3{font-size:16px;font-weight:600;margin:0}.section-content{border-top:1px solid #eee;font-size:14px;line-height:1.6;padding:16px}.key-point{margin-bottom:16px}.key-point:last-child{margin-bottom:0}.key-point h4{color:#666;font-size:14px;font-weight:600;margin:0 0 8px}.key-point p{margin:0;text-align:justify}.answer,.reason{margin-bottom:16px}.answer:last-child,.reason:last-child{margin-bottom:0}.answer h4,.reason h4{color:#666;font-size:14px;font-weight:600;margin:0 0 8px}.answer p,.reason p{margin:0;text-align:justify}.correct-answer-text{color:#52c41a;font-size:16px;font-weight:700;letter-spacing:1px}.options-analysis-section{margin-top:24px}.options-analysis-section h3{border-bottom:1px solid #eee;color:#333;font-size:16px;font-weight:600;margin:0 0 16px;padding-bottom:8px}.options-analysis-list{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(250px,1fr))}.option-analysis-item{border:1px solid #eee;border-radius:8px;box-shadow:0 2px 8px #0000000d}.option-header{background-color:#f9f9f9;border-bottom:1px solid #eee;padding:8px 12px}.option-tag{border-radius:16px;display:inline-block;font-size:14px;font-weight:700;padding:4px 12px}.option-content{padding:12px}.option-conclusion,.option-logic{margin-bottom:12px}.option-conclusion:last-child,.option-logic:last-child{margin-bottom:0}.option-conclusion h4,.option-logic h4{color:#666;font-size:13px;font-weight:600;margin:0 0 4px}.option-conclusion p,.option-logic p{font-size:13px;line-height:1.5;margin:0}.knowledge-analysis-empty{background-color:#f9f9f9;border-radius:8px;color:#999;padding:24px;text-align:center}@media (max-width:768px){.knowledge-analysis{padding:16px}.analysis-title{font-size:1.3rem}.point-title{font-size:1rem}.detail-section h5{font-size:.9rem}.strategy-title{font-size:1.1rem}.options-analysis-list{grid-template-columns:1fr}.section-header h3{font-size:15px}.section-content{padding:12px}}.options-analysis-container{margin-top:16px}.option-analysis-item{background-color:#fff;border-radius:6px;box-shadow:0 1px 3px #0000001a;margin-bottom:12px;overflow:hidden}.option-analysis-header{align-items:center;background-color:#f9f9f9;cursor:pointer;display:flex;justify-content:space-between;padding:10px 15px;transition:background-color .2s ease}.option-analysis-header:hover{background-color:#f2f2f2}.option-analysis-header.expanded{background-color:#f2f2f2;border-bottom:1px solid #eee}.option-analysis-icon{border-radius:4px;font-size:14px;padding:4px 10px}.option-analysis-content{background-color:#fff;font-size:14px;line-height:1.6;padding:12px 15px}.option-analysis-content p{margin:0;white-space:pre-wrap}.expand-icon{color:#666;font-size:12px}.no-analysis{background-color:#f9f9f9;border-radius:6px;color:#888;font-style:italic;margin-top:10px;padding:16px;text-align:center}.correct-answer-highlight{display:none}.ai-answer-container{background-color:#f8f9ff;border-left:4px solid #4169e1;border-radius:8px;box-shadow:0 2px 4px #0000000d;margin:15px 0;padding:15px}.ai-answer-label{color:#4169e1;font-size:14px;font-weight:600;margin-bottom:8px}.ai-answer-content{color:#333;font-size:16px;font-weight:600;margin-bottom:10px}.ai-answer-reason{color:#666;font-size:14px;line-height:1.5}.key-points-object{display:flex;flex-direction:column;gap:16px}.key-point-section{background-color:#f9f9f9;border-left:4px solid;border-radius:8px;box-shadow:0 1px 3px #0000001a;padding:16px}.key-point-title{color:#333;font-size:16px;font-weight:600;margin:0 0 12px}.key-point-list{list-style-type:none;margin:0;padding-left:0}.key-point-list li{border-bottom:1px dashed #eee;margin-bottom:8px;padding:8px 0 8px 24px;position:relative}.key-point-list li:last-child{border-bottom:none;margin-bottom:0}.key-point-list li:before{color:#4169e1;content:"•";font-weight:700;left:8px;position:absolute}.key-point-text{line-height:1.6;margin:0;text-align:justify}@media (max-width:768px){.key-point-section{padding:12px}.key-point-title{font-size:15px}.key-point-list li{padding:6px 0 6px 20px}}.exam-system{position:relative}.exam-system h2{color:var(--primary-color);margin-top:0}.exam-intro{padding:2rem 0;text-align:center}.exam-intro h3{color:var(--primary-right);margin-bottom:1.5rem}.exam-intro p{font-size:1.1rem;line-height:1.6;margin-bottom:1rem}.exam-container{position:relative}.subject-display-top{align-items:center;background-color:#fff;border:1px solid #e0e0e0;border-radius:var(--border-radius);box-shadow:0 2px 4px #0000000d;color:#555;display:flex;font-size:1.1rem;font-weight:500;margin-bottom:1rem;padding:.75rem 1rem}.subject-display-top span{color:var(--primary-right);font-weight:600;margin-left:.5rem}.exam-header{border-bottom:1px solid #eaeaea;flex-wrap:wrap;justify-content:space-between;margin-bottom:1.5rem;padding-bottom:1rem}.exam-header,.subject-display{align-items:center;display:flex}.subject-display{color:#555;font-size:1.1rem;font-weight:500;margin-bottom:.5rem;margin-right:auto;padding:.5rem 0;width:100%}.subject-display span{color:var(--primary-right);font-weight:600;margin-left:.5rem}.exam-progress{color:var(--primary-left)}.exam-progress,.exam-timer{font-size:1.1rem;font-weight:500}.time-warning{animation:blink 1s infinite;color:#ff5757}@keyframes blink{0%{opacity:1}50%{opacity:.5}to{opacity:1}}.question-navigation{backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px);background:#ffffff80;border-radius:var(--border-radius);display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1.5rem;padding:1rem}.nav-button{align-items:center;background:#fff;border:1px solid #e0e0e0;border-radius:4px;cursor:pointer;display:flex;font-size:.9rem;height:2.5rem;justify-content:center;transition:all .2s;width:2.5rem}.nav-button.current{background:var(--primary-right);border-color:var(--primary-right);color:#fff}.nav-button.answered{background:#6c5ce71a;border-color:var(--primary-right);color:var(--primary-right)}.nav-button:hover{box-shadow:0 2px 5px #0000001a;transform:translateY(-2px)}.nav-button.unanswered{border:1px solid #e0e0e0}.nav-button.current.unanswered{background:var(--primary-right);border-color:var(--primary-right);color:#fff}.submit-warning .nav-button.unanswered{animation:pulse-red 1.5s infinite;border:2px solid #ff4d4f}@keyframes pulse-red{0%{box-shadow:0 0 0 0 #ff4d4f66}70%{box-shadow:0 0 0 6px #ff4d4f00}to{box-shadow:0 0 0 0 #ff4d4f00}}.question-container{background:#fff;border-radius:var(--border-radius);box-shadow:0 4px 20px #0000000d;padding:2rem}.question-content{margin-bottom:2rem}.question-meta{align-items:center;border-bottom:1px solid #eaeaea;display:flex;justify-content:space-between;margin-bottom:1.5rem;padding-bottom:1rem;position:relative;width:100%}.question-info{display:flex;flex-direction:column;gap:.5rem}.question-type{background-color:var(--primary-left);border-radius:4px;color:#fff;display:inline-block;font-size:.9rem;padding:.25rem .75rem}.question-progress{color:#666;font-size:.95rem}.question-text{font-size:1.1rem;line-height:1.6;margin-bottom:1.5rem;position:relative}.options-list{display:flex;flex-direction:column;gap:.75rem}.option{align-items:center;border:1px solid #e0e0e0;border-radius:var(--border-radius);cursor:pointer;display:flex;padding:1rem;transition:all .2s}.option:hover{background-color:#ff57570d;border-color:var(--primary-left)}.option.selected{background-color:#6c5ce70d;border-color:var(--primary-right)}.option-letter{font-weight:500;height:30px;margin-right:1rem;transition:all .2s;width:30px}.option.selected .option-letter{background-color:var(--primary-right);color:#fff}.option-text{flex:1 1}.question-actions{display:flex;justify-content:space-between;margin-top:2rem}.exam-result{padding:2rem}.exam-result h3{color:var(--primary-right);margin-bottom:2rem}.result-summary{display:flex;justify-content:space-around;margin-bottom:2rem}.result-item{backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px);background:#ffffffb3;border-radius:var(--border-radius);min-width:150px;padding:1.5rem;text-align:center}.result-label{color:var(--secondary-color);font-size:1rem;margin-bottom:.5rem}.result-value{color:var(--primary-right);font-size:2rem;font-weight:600}.exam-result{background-color:#fff;border-radius:8px;box-shadow:0 4px 12px #0000001a;margin:0 auto;max-width:600px;padding:30px;text-align:center}.result-info{background-color:#f8f9fa;border-radius:8px;margin:20px 0;padding:15px;text-align:left}.result-info p{font-size:16px;margin:10px 0}.score{color:#4169e1;font-size:24px;font-weight:700}.restart-btn{background-color:#4169e1;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:16px;padding:10px 20px;transition:background-color .3s}.restart-btn:hover{background-color:#3151b5}.exam-options{display:flex;flex-direction:column;gap:.75rem;margin-bottom:1.5rem}.no-options{background-color:#00000005;border:1px solid #e0e0e0;border-radius:var(--border-radius);color:#777;font-style:italic;padding:1rem;text-align:center}.exam-option{align-items:center;border:1px solid #e0e0e0;border-radius:8px;cursor:pointer;display:flex;padding:12px 16px;transition:all .2s ease}.exam-option:hover{background-color:#f5f5f5;border-color:#d0d0d0}.exam-option.selected{background-color:#e6f7ff;border-color:#1890ff}.option-letter{align-items:center;background-color:#f0f0f0;border-radius:50%;display:flex;font-weight:700;height:28px;justify-content:center;margin-right:12px;width:28px}.exam-option.selected .option-letter{background-color:#1890ff;color:#fff}.option-content{flex:1 1}.start-btn{background-color:#4169e1;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:16px;margin-top:10px;padding:10px 20px;transition:background-color .3s}.start-btn:hover{background-color:#3151b5}.dashboard{padding:1rem}.dashboard-header{align-items:center;display:flex;font-size:14px;justify-content:space-between;margin-bottom:30px}.dashboard-subtitle{color:#666;font-size:.9rem;margin-top:-.5rem}.loading-container{align-items:center;display:flex;flex-direction:column;height:300px;justify-content:center}.loading-spinner{animation:spin 1s linear infinite;border:4px solid #0000001a;border-radius:50%;border-top:4px solid var(--primary-color);height:40px;margin-bottom:1rem;width:40px}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.stats-cards{display:flex;justify-content:space-between;margin-bottom:2rem}.stat-card{background-color:#fff;border-radius:var(--border-radius);box-shadow:0 4px 6px #0000000d;flex:1 1;margin:0 .5rem;padding:1.5rem;text-align:center}.stat-card h3{color:var(--primary-color);font-size:1rem;margin-top:0}.stat-value{color:var(--secondary-color);font-size:2.5rem;font-weight:700;margin:1rem 0}.stat-description{color:#666;font-size:.9rem;margin:0}.dashboard-chart{background-color:#fff;border-radius:var(--border-radius);box-shadow:0 4px 6px #0000000d;margin-bottom:2rem;padding:1.5rem}.dashboard-chart h3{color:var(--primary-color);margin-bottom:1.5rem;margin-top:0}.chart-container{padding:1rem 0}.chart-bar-container{align-items:center;display:flex;margin-bottom:1.5rem}.chart-label{font-weight:500;width:80px}.chart-bar{background-color:#f0f0f0;border-radius:12px;flex:1 1;height:24px;margin:0 1rem;overflow:hidden}.chart-bar-fill{background-color:var(--primary-color);border-radius:12px;height:100%;transition:width 1s ease-in-out}.chart-value{font-weight:500;text-align:right;width:60px}.chart-info{display:flex;flex-wrap:wrap;justify-content:space-around}.info-item{padding:.5rem 1rem}.info-label{color:#666;margin-right:.5rem}.info-value{font-weight:500}.dashboard-actions{display:flex;gap:1rem;justify-content:center;margin-top:2rem}.user-info{align-items:center;background-color:#f8f9fa;border-radius:20px;box-shadow:0 2px 4px #0000000d;display:flex;padding:8px 15px}.user-label{color:#6c757d;font-size:14px;margin-right:8px}.username{color:#4169e1;font-size:16px;font-weight:600}.mistake-icon{background-color:tomato}.auth-container{align-items:center;display:flex;justify-content:center;min-height:100vh;overflow:hidden;padding:20px;position:relative}.auth-container.login{background:linear-gradient(135deg,#add8e6,#87ceeb 50%,#00bfff)}.auth-container.register{background:linear-gradient(135deg,pink,#ffb6c1 50%,#ff69b4)}.auth-container:before{background:radial-gradient(circle at 10% 20%,#ffffff26 0,#0000 30%),radial-gradient(circle at 90% 80%,#ffffff1a 0,#0000 30%);bottom:0;content:"";left:0;position:absolute;right:0;top:0;z-index:0}.auth-container:after{animation:pulse 10s ease-in-out infinite alternate;background-image:radial-gradient(circle at 50% 50%,#ffffff14 0,#0000 50%),radial-gradient(circle at 80% 20%,#ffffff14 0,#0000 50%);content:"";height:100%;position:absolute;width:100%;z-index:1}.auth-container.login .floating-element{backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);background:#ffffff0d;border:1px solid #ffffff14;border-radius:50%;box-shadow:0 4px 30px #0000000d;position:absolute;z-index:1}.auth-container.login .floating-element:first-child{animation:float 15s ease-in-out infinite;background:radial-gradient(circle at center,#87ceeb26 0,#87ceeb0d 50%,#0000 80%);height:180px;left:10%;top:10%;width:180px}.auth-container.login .floating-element:nth-child(2){animation:float 18s ease-in-out infinite reverse;background:radial-gradient(circle at center,#00bfff1f 0,#00bfff0a 60%,#0000 80%);bottom:15%;height:240px;right:15%;width:240px}.auth-container.login .floating-element:nth-child(3){animation:float 12s ease-in-out 1s infinite;background:radial-gradient(circle at center,#add8e61a 0,#add8e608 60%,#0000 80%);height:120px;left:20%;top:50%;width:120px}.auth-container.login .floating-element:nth-child(4){animation:float 20s ease-in-out 2s infinite;background:radial-gradient(circle at center,#87cefa14 0,#87cefa08 60%,#0000 80%);bottom:30%;height:200px;left:25%;width:200px}.auth-container.register .floating-element{backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);background:#ffffff0d;border:1px solid #ffffff14;border-radius:50%;box-shadow:0 4px 30px #0000000d;position:absolute;z-index:1}.auth-container.register .floating-element:first-child{animation:float 15s ease-in-out infinite;background:radial-gradient(circle at center,#ffc0cb26 0,#ffc0cb0d 50%,#0000 80%);height:180px;left:10%;top:10%;width:180px}.auth-container.register .floating-element:nth-child(2){animation:float 18s ease-in-out infinite reverse;background:radial-gradient(circle at center,#ff69b41f 0,#ff69b40a 60%,#0000 80%);bottom:15%;height:240px;right:15%;width:240px}.auth-container.register .floating-element:nth-child(3){animation:float 12s ease-in-out 1s infinite;background:radial-gradient(circle at center,#ffb6c11a 0,#ffb6c108 60%,#0000 80%);height:120px;left:20%;top:50%;width:120px}.auth-container.register .floating-element:nth-child(4){animation:float 20s ease-in-out 2s infinite;background:radial-gradient(circle at center,#fa807214 0,#fa807208 60%,#0000 80%);bottom:30%;height:200px;left:25%;width:200px}@keyframes float{0%,to{transform:translate(0) rotate(0deg)}25%{transform:translate(20px,10px) rotate(5deg)}50%{transform:translate(10px,20px) rotate(10deg)}75%{transform:translate(-10px,15px) rotate(5deg)}}@keyframes pulse{0%{opacity:.3;transform:scale(.98)}to{opacity:.7;transform:scale(1.02)}}.auth-card{animation:fadeIn .6s ease-out;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);background-color:#ffffffe6;border:1px solid #ffffff4d;border-radius:16px;box-shadow:0 10px 40px #0000001a,0 1px 3px #ffffff1a,inset 0 1px 1px #fff9;max-width:450px;padding:40px;position:relative;width:100%;z-index:2}.auth-header{margin-bottom:30px;text-align:center}.auth-header h2{color:#333;display:inline-block;font-size:28px;font-weight:600;margin-bottom:10px;position:relative}.auth-header h2:after{background:linear-gradient(90deg,indigo,#8a2be2);border-radius:3px;bottom:-5px;content:"";height:3px;left:0;position:absolute;right:0}.auth-header p{color:#666;font-size:16px}.auth-form{gap:20px}.auth-form,.form-group{display:flex;flex-direction:column}.form-group{gap:8px;position:relative}.form-group label{color:#444;font-size:14px;font-weight:500;transition:all .3s}.form-group input{backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px);background-color:#ffffffb3;border:1px solid #6a5acd4d;border-radius:8px;box-shadow:0 2px 10px #00000008;font-size:16px;padding:12px 15px;transition:all .3s}.form-group input:focus{background-color:#fffffff2;border-color:#6a5acd;box-shadow:0 0 0 3px #6a5acd1a,0 2px 10px #0000000d;outline:none}.form-group input:focus+label{color:#6a5acd}.auth-button{backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px);background:linear-gradient(90deg,#6a5acd,#8a2be2);border:none;border-radius:8px;box-shadow:0 4px 10px #6a5acd4d,inset 0 1px 1px #ffffff4d;color:#fff;cursor:pointer;font-size:16px;font-weight:600;letter-spacing:.5px;margin-top:10px;overflow:hidden;padding:14px;position:relative;transition:all .3s}.auth-button:before{background:linear-gradient(90deg,#0000,#ffffff4d,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:.5s;width:100%}.auth-button:hover:before{left:100%}.auth-button:hover{box-shadow:0 6px 15px #6a5acd66,inset 0 1px 1px #ffffff4d;transform:translateY(-2px)}.auth-button:active,.auth-button:hover{background:linear-gradient(90deg,#5a4abd,#7a1bd2)}.auth-button:active{box-shadow:0 2px 5px #6a5acd4d,inset 0 1px 1px #ffffff4d;transform:translateY(0)}.auth-button:disabled{background:#ccc;box-shadow:none;cursor:not-allowed;transform:none}.auth-error{backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);background-color:#fff0f5e6;border-left:4px solid #db7093;border-radius:4px;box-shadow:0 2px 6px #db70931a;color:#c71585;font-size:14px;margin-bottom:20px;padding:12px 15px}.auth-links{color:#666;font-size:14px;margin-top:15px;text-align:center}.auth-links a{color:#4169e1;font-weight:500;margin-left:5px;position:relative;text-decoration:none;transition:all .2s}.auth-links a:hover{color:#8a2be2}.auth-links a:after{background-color:#8a2be2;bottom:-2px;content:"";height:1px;left:0;position:absolute;transition:all .3s;width:0}.auth-links a:hover:after{width:100%}@media (max-width:768px){.auth-card{box-shadow:0 5px 15px #0000001a;padding:30px 20px}.auth-header h2{font-size:24px}.auth-header p{font-size:14px}.form-group input{font-size:14px;padding:10px 12px}.auth-button{font-size:15px;padding:12px}}.password-dialog-overlay{align-items:center;animation:fadeIn .3s ease-out;backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px);background-color:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.password-dialog{animation:slideUp .4s cubic-bezier(.165,.84,.44,1);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background-color:#fffffff2;border:1px solid #fff6;border-radius:12px;box-shadow:0 10px 30px #00000026,0 1px 3px #0000001a,inset 0 1px 1px #fff9;max-width:450px;padding:25px;position:relative;width:100%;z-index:1001}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.password-dialog-header{align-items:center;border-bottom:1px solid #0000001a;display:flex;justify-content:space-between;margin-bottom:20px;padding-bottom:10px}.password-dialog-header h3{color:#333;font-size:20px;font-weight:600;margin:0}.close-button{align-items:center;background:none;border:none;border-radius:50%;color:#666;cursor:pointer;display:flex;font-size:22px;height:30px;justify-content:center;padding:0;transition:all .2s;width:30px}.close-button:hover{background-color:#0000000d;color:#333}.password-form{display:flex;flex-direction:column;gap:15px}.password-dialog-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:20px}.password-dialog-actions button{align-items:center;border:none;border-radius:8px;box-shadow:none!important;box-sizing:border-box;cursor:pointer;display:flex;font-size:14px;font-weight:600;height:40px;justify-content:center;margin:0;min-width:100px;overflow:visible!important;padding:0 15px;position:static!important;text-shadow:none!important;transform:none!important;transition:all .2s}.password-dialog-actions .cancel-button{background-color:#f0f0f0;border:1px solid #0000001a;box-shadow:none!important;color:#666}.password-dialog-actions .cancel-button:hover{background-color:#e5e5e5;box-shadow:none!important}.password-dialog-actions .cancel-button:active{background-color:#d8d8d8;box-shadow:none!important}.password-dialog-actions .auth-button{backdrop-filter:none!important;-webkit-backdrop-filter:none!important;background:linear-gradient(90deg,#6a5acd,#8a2be2);border:none;box-shadow:none!important;color:#fff;overflow:hidden!important;text-shadow:none!important;transition:background .2s!important}.password-dialog-actions .auth-button *,.password-dialog-actions .auth-button:after,.password-dialog-actions .auth-button:before{content:none!important;display:none!important;opacity:0!important;visibility:hidden!important}.password-dialog-actions .auth-button *,.password-dialog-actions .auth-button:after{animation:none!important}.password-dialog-actions .auth-button:hover{background:linear-gradient(90deg,#5a4abd,#7a1bd2);box-shadow:none!important}.password-dialog-actions .auth-button:active{background:linear-gradient(90deg,#4a3aad,#6a0bc2);box-shadow:none!important}.password-dialog-actions .auth-button,.password-dialog-actions .cancel-button{flex:0 0 110px;width:110px}.password-dialog-actions button:active,.password-dialog-actions button:focus,.password-dialog-actions button:hover{height:40px;outline:none}.auth-success{backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);background-color:#f0fff0e6;border-left:4px solid #4caf50;border-radius:4px;box-shadow:0 2px 6px #4caf501a;color:#3d8b40;font-size:14px;margin-bottom:20px;padding:12px 15px}@media (max-width:768px){.password-dialog{padding:20px 15px;width:90%}.password-dialog-header h3{font-size:18px}.password-form{gap:12px}.password-dialog-actions{flex-direction:row}.password-dialog-actions button{flex:1 1;font-size:14px;min-width:0;padding:0 10px}}:root{--primary-left:#ff5757;--primary-left-light:#ff7e5f;--primary-right:#6c5ce7;--primary-right-light:#a29bfe;--primary-gradient:linear-gradient(135deg,#ff7e5f,#ff5757 50%,#6c5ce7);--header-gradient:linear-gradient(135deg,#ff7e5f,#ff5757 50%,#6c5ce7);--primary-color:#6c5ce7;--secondary-color:#333;--background-color:#f8f9fa;--card-bg:#fff;--text-color:#333;--border-radius:8px;--box-shadow:0 4px 20px #0000000d;--active-nav:#ff5757;--hover-bg:#6c5ce70d;--shadow-color:#0000001a;--sidebar-width:200px;--header-height:50px;--card-background:#fff;--light-gray:#f5f5f5;--border-color:#e1e1e1;--accent-color:#ff69b4}body,body.main-app{font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;margin:0;min-height:100vh;padding:0}body.main-app{background:linear-gradient(135deg,#f5f7ff,#e0e6ff);color:#333;color:var(--text-color);overflow-x:hidden;position:relative}body.main-app:before{background:radial-gradient(circle at 30% 30%,#ff7e5f0d 0,#fff0 60%),radial-gradient(circle at 70% 70%,#6c5ce70d 0,#fff0 60%);content:"";height:100%;left:0;position:fixed;top:0;width:100%;z-index:-1}@keyframes rotate{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}body.main-app:after{content:none}body.auth-page{margin:0;overflow-x:hidden;padding:0}.App{margin:0 auto;max-width:1200px;padding:2rem}.App h1{color:#333;color:var(--secondary-color);font-size:2.5rem;margin-bottom:2rem;text-align:center}.App h1 span{color:#6c5ce7;color:var(--primary-color)}.card{backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);background:#fff9;border:1px solid #ffffff4d;border-radius:8px;border-radius:var(--border-radius);box-shadow:0 4px 30px #0000000d;margin-bottom:2rem;padding:2rem}.btn{background:#6c5ce7;background:var(--primary-right);border:none;border-radius:8px;border-radius:var(--border-radius);box-shadow:0 2px 5px #6c5ce733;color:#fff;cursor:pointer;font-size:1rem;padding:.75rem 1.5rem;transition:all .3s ease}.btn:hover{background:#a29bfe;background:var(--primary-right-light);box-shadow:0 4px 8px #6c5ce74d;transform:translateY(-2px)}.btn-secondary{background:#fff;border:1px solid #6c5ce7;border:1px solid var(--primary-right);box-shadow:none;color:#6c5ce7;color:var(--primary-right)}.btn-secondary:hover{background-color:#6c5ce70d;box-shadow:0 2px 5px #6c5ce71a}hr{background-image:linear-gradient(90deg,#0000,#0000001a,#0000);border:0;height:1px;margin:2rem 0}.features{display:flex;justify-content:space-between;margin-top:3rem}.feature-card{background-color:#fff;background-color:var(--card-bg);border-radius:8px;border-radius:var(--border-radius);box-shadow:0 4px 12px #0000000d;flex:1 1;margin:0 1rem;padding:1.5rem;text-align:center}.App-logo{height:40vmin;pointer-events:none}@media (prefers-reduced-motion:no-preference){.App-logo{animation:App-logo-spin 20s linear infinite}}.App-header{align-items:center;background-color:#282c34;color:#fff;display:flex;flex-direction:column;font-size:calc(10px + 2vmin);justify-content:center;min-height:100vh}.App-link{color:#61dafb}@keyframes App-logo-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.top-header{align-items:center;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);background:#ffffff0d;border-bottom:1px solid #fff3;box-shadow:0 4px 30px #0000001a;color:#fff;display:flex;font-family:DingTalk JinBuTi,PingFang SC,Microsoft YaHei,Hiragino Sans GB,Heiti SC,sans-serif;height:50px;left:0;padding:.3rem 2rem;position:fixed;right:0;top:0;z-index:1000}.top-header:before{background:linear-gradient(135deg,#ff7e5f,#ff5757 50%,#6c5ce7);background:var(--header-gradient);content:"";height:100%;left:0;position:absolute;right:0;top:0;z-index:-1}.top-header h1{color:#fff;font-size:2rem;font-weight:600;letter-spacing:1px;margin:0;text-shadow:0 1px 2px #0000001a}.user-info-header{align-items:center;display:flex;gap:10px;margin-left:auto}.username{border-radius:4px;color:#fff;cursor:pointer;font-size:.9rem;font-weight:500;padding:5px 8px;position:relative;transition:all .2s ease}.username:hover{background-color:#ffffff26}.username:after{background-color:#000c;border-radius:4px;color:#fff;content:"点击修改密码";font-size:.7rem;left:50%;margin-top:5px;opacity:0;padding:4px 8px;position:absolute;top:100%;transform:translateX(-50%);transition:all .2s ease;visibility:hidden;white-space:nowrap;z-index:10}.username:hover:after{opacity:1;visibility:visible}.logout-btn{background-color:#fff3;border:1px solid #fff6;border-radius:4px;color:#fff;cursor:pointer;font-size:.8rem;padding:5px 10px;transition:all .2s ease}.logout-btn:hover{background-color:#ffffff4d}@media (max-width:768px){.user-info-header{align-items:flex-end;flex-direction:column;gap:5px}.logout-btn{font-size:.7rem;padding:3px 8px}}.app-container{display:flex;min-height:100vh;padding-top:50px}.sidebar{backdrop-filter:blur(15px);-webkit-backdrop-filter:blur(15px);background:#ffffff80;border-right:1px solid #fff3;box-shadow:0 4px 30px #0000000d;height:calc(100vh - 50px);left:0;overflow-y:auto;padding:1rem 0;position:fixed;top:50px;width:200px;z-index:100}.side-nav ul{list-style:none;margin:0;padding:0}.side-nav li{margin-bottom:.5rem}.side-nav button{background:none;border:none;border-left:3px solid #0000;color:#333;color:var(--secondary-color);cursor:pointer;font-size:1rem;padding:.75rem 1.5rem;text-align:left;transition:all .2s;width:100%}.side-nav li.active button{background-color:#ff57571a;border-left:3px solid #ff5757;border-left:3px solid var(--active-nav);color:#ff5757;color:var(--active-nav);font-weight:500}.side-nav button:hover{background-color:#ff57570d;color:#ff5757;color:var(--active-nav)}.main-content{background-color:#f8fafc4d;flex:1 1;margin-left:200px;min-height:calc(100vh - 50px);padding:0}.main-content:before{content:none}.content-header{backdrop-filter:blur(15px);-webkit-backdrop-filter:blur(15px);background:#ffffff80;border-bottom:1px solid #fff3;box-shadow:0 4px 30px #0000000d;margin-bottom:2rem;padding:1.25rem 2rem}.content-header h2{color:#6c5ce7;color:var(--primary-right);font-size:1.5rem;margin:0}.content-body{margin:0 auto;max-width:1200px;padding:0 2rem 2rem}.count-selector{align-items:center;display:flex;justify-content:center;margin:1.5rem 0}.count-selector label{margin-right:.5rem}.count-selector input{border:1px solid #e0e0e0;border-radius:8px;border-radius:var(--border-radius);padding:.5rem;text-align:center;width:80px}.btn-icon{background:none;border:none;border-radius:50%;color:#999;cursor:pointer;font-size:1rem;margin-left:.5rem;padding:.25rem .5rem;transition:all .2s}.btn-icon:hover{background-color:#f0f0f0;color:#ff4757}.remove-option{align-items:center;display:flex;justify-content:center}.invalid{border-color:#ff4757!important}small.error{color:#ff4757}.card h2:first-child{display:none}.app-footer{border-top:1px solid #eaeaea;color:#666;font-size:.8rem;margin-top:20px;padding:10px 0;text-align:center}input[type=number],input[type=text],select,textarea{border:1px solid #e0e0e0;border-radius:8px;border-radius:var(--border-radius);font-size:1rem;padding:.75rem;transition:all .2s;width:100%}input[type=number]:focus,input[type=text]:focus,select:focus,textarea:focus{border-color:#6c5ce7;border-color:var(--primary-right);box-shadow:0 0 0 2px #6c5ce71a;outline:none}.radio-group label{align-items:center;cursor:pointer;display:inline-flex;margin-right:1.5rem}.radio-group input[type=radio]{accent-color:#6c5ce7;accent-color:var(--primary-right);margin-right:.5rem}.glassmorphism{background:#ffffff40;border:1px solid #ffffff2e;box-shadow:0 8px 32px 0 #1f268726}.glassmorphism,.glassmorphism-dark{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.glassmorphism-dark{background:#28282840;border:1px solid #ffffff14;box-shadow:0 8px 32px 0 #00000026}@supports not ((-webkit-backdrop-filter:blur(10px)) or (backdrop-filter:blur(10px))){.card,.content-header,.sidebar,.top-header{background-color:#fffffff2}.glassmorphism{background:#ffffffe6}.glassmorphism-dark{background:#282828e6}}.app-container:before{background:radial-gradient(circle at 20% 20%,#ff7e5f08 0,#fff0 50%),radial-gradient(circle at 80% 80%,#6c5ce708 0,#fff0 50%);content:"";height:100%;left:0;pointer-events:none;position:fixed;top:0;width:100%;z-index:-1}.pro-tag{background-color:#ff69b4;border-radius:3px;color:#fff;font-size:9px;font-weight:700;margin-left:4px;padding:2px 4px;position:relative;top:-5px}