        /* 关键样式内联 */
        #app { display: none; }
        .layui-panel { max-width: 1000px; margin: 20px auto; border-radius: 10px; opacity: 1; }
        .loading-skeleton { background: linear-gradient(90deg, #f0f0f0 25%, #e0e0e0 50%, #f0f0f0 75%); background-size: 200% 100%; animation: loading 1.5s infinite; }
        @keyframes loading { 0% { background-position: 200% 0; } 100% { background-position: -200% 0; } }
        .rainbow-text { background: linear-gradient(45deg, #ff6b6b, #4ecdc4, #45b7d1, #96ceb4, #ffeaa7); -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text; }
        
        /* 加载进度条 */
        .load-progress {
            position: fixed;
            top: 0;
            left: 0;
            width: 0%;
            height: 3px;
            background: linear-gradient(90deg, #ff6b6b, #4ecdc4);
            transition: width 0.3s ease;
            z-index: 9999;
        }
        
        /* 加载更多按钮优化样式 */
        @keyframes rotation {
            0% { transform: rotate(0deg); }
            100% { transform: rotate(360deg); }
        }
        
        .load-more-btn {
            cursor: pointer;
            padding: 6px 12px;
            border-radius: 6px;
            transition: all 0.3s ease;
            border: 1px dashed #dcdfe6;
            background: linear-gradient(135deg, #f8f9fa 0%, #ffffff 100%);
            box-shadow: 0 1px 3px rgba(0,0,0,0.1);
            margin: 2px;
        }
        
        .load-more-btn:hover {
            border-color: #409EFF;
            background: linear-gradient(135deg, #f0f9ff 0%, #e1f5fe 100%);
            box-shadow: 0 2px 8px rgba(64, 158, 255, 0.2);
            transform: translateY(-1px);
        }
        
        .load-more-btn:active {
            transform: translateY(0);
        }
        
        .load-more-icon {
            display: inline-block;
            transition: transform 0.3s ease;
        }
        
        .load-more-btn:hover .load-more-icon {
            transform: translateY(2px);
        }
        
        /* 下拉框优化样式 */
        .el-select-dropdown .el-select-dropdown__item {
            min-height: auto !important;
            height: auto !important;
            line-height: normal !important;
            padding: 0 !important;
        }
        
        .el-select-dropdown .el-select-dropdown__item.is-disabled {
            background-color: transparent !important;
            cursor: default !important;
        }
        
        /* 确保下拉框有足够的最大高度 */
        .el-select-dropdown {
            max-height: 400px !important;
        }
        
        /* 针对我们的下拉框的特殊样式 */
        .load-more-dropdown.el-select-dropdown {
            max-height: 450px !important;
        }
        
        .load-more-dropdown .el-select-dropdown__item {
            padding: 4px 12px !important;
            min-height: 36px !important;
            line-height: 1.4 !important;
        }
        
        .load-more-dropdown .el-select-dropdown__item.is-disabled {
            padding: 0 !important;
            min-height: auto !important;
        }
        
        /* 支付成功提示样式 */
        .payment-success-modal {
            border-radius: 10px !important;
            overflow: hidden;
        }
        
        .payment-success-icon {
            animation: checkmark 0.6s ease-in-out;
        }
        
        /* 现代化课程列表样式 */
        .modern-course-list {
            font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
        }
        
        .course-row {
            display: flex !important;
            justify-content: space-between;
            align-items: center;
            padding: 8px 12px !important;
            margin: 1px 0 !important;
            border-radius: 6px;
            cursor: pointer;
            transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
            border: 1px solid transparent;
            background: #ffffff;
            position: relative;
            overflow: hidden;
            min-height: 36px;
        }
        
        .course-row::before {
            content: '';
            position: absolute;
            top: 0;
            left: -100%;
            width: 100%;
            height: 100%;
            background: linear-gradient(90deg, transparent, rgba(64, 158, 255, 0.1), transparent);
            transition: left 0.5s ease;
        }
        
        .course-row:hover::before {
            left: 100%;
        }
        
        .course-row:hover {
            background: linear-gradient(135deg, #f8fafe 0%, #f0f7ff 100%);
            border-color: #e1f0ff;
            box-shadow: 0 4px 12px rgba(64, 158, 255, 0.15);
            transform: translateY(-1px);
        }
        
        .course-row.selected {
            background: linear-gradient(135deg, #e8f4fd 0%, #d6edff 100%);
            border-color: #409eff;
            box-shadow: 0 4px 16px rgba(64, 158, 255, 0.2);
        }
        
        .course-row.selected:hover {
            background: linear-gradient(135deg, #d6edff 0%, #c2e3ff 100%);
            box-shadow: 0 6px 20px rgba(64, 158, 255, 0.25);
        }
        
        .course-row.disabled {
            opacity: 0.6;
            cursor: not-allowed;
            background: #f5f5f5;
        }
        
        .course-row.disabled:hover {
            transform: none;
            box-shadow: none;
            background: #f5f5f5;
        }
        
        .course-checkbox {
            position: relative;
            margin-right: 12px;
            flex-shrink: 0;
        }
        
        .course-checkbox input[type="checkbox"] {
            position: absolute;
            opacity: 0;
            width: 0;
            height: 0;
        }
        
        .checkmark {
            position: relative;
            display: inline-block;
            width: 14px;
            height: 14px;
            border: 2px solid #dcdfe6;
            border-radius: 3px;
            background: white;
            transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
        }
        
        .checkmark::after {
            content: '';
            position: absolute;
            left: 3px;
            top: 0px;
            width: 3px;
            height: 7px;
            border: solid white;
            border-width: 0 2px 2px 0;
            transform: rotate(45deg) scale(0);
            transition: transform 0.2s cubic-bezier(0.4, 0, 0.2, 1);
        }
        
        .course-row:hover .checkmark {
            border-color: #409eff;
            box-shadow: 0 0 0 2px rgba(64, 158, 255, 0.1);
        }
        
        .course-row.selected .checkmark {
            background: linear-gradient(135deg, #409eff 0%, #4dabf7 100%);
            border-color: #409eff;
            box-shadow: 0 2px 8px rgba(64, 158, 255, 0.3);
        }
        
        .course-row.selected .checkmark::after {
            transform: rotate(45deg) scale(1);
        }
        
        .course-name {
            flex: 1;
            text-align: left;
            font-weight: 500;
            color: #303133;
            padding-right: 12px;
            transition: color 0.3s ease;
            font-size: 13px;
            line-height: 1.4;
        }
        
        .course-row:hover .course-name {
            color: #409eff;
        }
        
        .course-row.selected .course-name {
            color: #409eff;
            font-weight: 600;
        }
        
        .course-id {
            width: 180px;
            text-align: center;
            overflow: hidden;
            white-space: nowrap;
            text-overflow: ellipsis;
            color: #909399;
            font-family: 'Courier New', monospace;
            font-size: 12px;
            background: rgba(144, 147, 153, 0.1);
            padding: 4px 8px;
            border-radius: 4px;
            transition: all 0.3s ease;
            line-height: 1.3;
            cursor: pointer;
            position: relative;
        }
        
        .course-row:hover .course-id {
            background: rgba(64, 158, 255, 0.1);
            color: #409eff;
        }
        
        .course-row.selected .course-id {
            background: rgba(64, 158, 255, 0.15);
            color: #409eff;
            font-weight: 500;
        }
        
        /* 课程ID悬停提示 */
        .course-id:hover::after {
            content: attr(data-full-id);
            position: absolute;
            top: -35px;
            left: 50%;
            transform: translateX(-50%);
            background: rgba(0, 0, 0, 0.8);
            color: white;
            padding: 6px 10px;
            border-radius: 4px;
            font-size: 11px;
            white-space: nowrap;
            z-index: 1000;
            opacity: 0;
            animation: tooltipFadeIn 0.2s ease forwards;
            pointer-events: none;
            max-width: 300px;
            word-break: break-all;
        }
        
        .course-id:hover::before {
            content: '';
            position: absolute;
            top: -5px;
            left: 50%;
            transform: translateX(-50%);
            border: 5px solid transparent;
            border-top-color: rgba(0, 0, 0, 0.8);
            z-index: 1000;
            opacity: 0;
            animation: tooltipFadeIn 0.2s ease forwards;
        }
        
        @keyframes tooltipFadeIn {
            from { opacity: 0; transform: translateX(-50%) translateY(5px); }
            to { opacity: 1; transform: translateX(-50%) translateY(0); }
        }
        
        .course-row.disabled .course-name,
        .course-row.disabled .course-id {
            color: #c0c4cc;
        }
        
        .course-row.disabled .checkmark {
            border-color: #e4e7ed;
            background: #f5f7fa;
        }
        
        /* 选择动画效果 */
        @keyframes selectBounce {
            0% { transform: scale(1); }
            50% { transform: scale(1.05); }
            100% { transform: scale(1); }
        }
        
        .course-row.selecting {
            animation: selectBounce 0.3s ease;
        }
        
        /* 滚动条美化 */
        .modern-course-list::-webkit-scrollbar {
            width: 6px;
        }
        
        .modern-course-list::-webkit-scrollbar-track {
            background: #f1f1f1;
            border-radius: 3px;
        }
        
        .modern-course-list::-webkit-scrollbar-thumb {
            background: linear-gradient(135deg, #c0c4cc 0%, #a8abb2 100%);
            border-radius: 3px;
            transition: background 0.3s ease;
        }
        
        .modern-course-list::-webkit-scrollbar-thumb:hover {
            background: linear-gradient(135deg, #909399 0%, #787c82 100%);
        }
        
        /* Header样式 */
        .course-header {
            background: linear-gradient(135deg, #f8fafc 0%, #f1f5f9 100%);
            padding: 8px 12px;
            border-radius: 6px;
            border: 1px solid #e2e8f0;
            margin-bottom: 6px;
        }
        
        .header-title {
            color: #374151;
            font-weight: 600;
            font-size: 13px;
        }
        
        .header-checkbox-wrapper {
            display: flex;
            align-items: center;
            justify-content: center;
        }
        
        .header-checkbox {
            position: relative;
            cursor: pointer;
            padding: 2px;
        }
        
        .header-checkbox input[type="checkbox"] {
            position: absolute;
            opacity: 0;
            width: 0;
            height: 0;
        }
        
        .header-checkmark {
            position: relative;
            display: inline-block;
            width: 14px;
            height: 14px;
            border: 2px solid #6b7280;
            border-radius: 3px;
            background: white;
            transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
            cursor: pointer;
        }
        
        .header-checkmark::after {
            content: '';
            position: absolute;
            left: 3px;
            top: 0px;
            width: 3px;
            height: 7px;
            border: solid white;
            border-width: 0 2px 2px 0;
            transform: rotate(45deg) scale(0);
            transition: transform 0.2s cubic-bezier(0.4, 0, 0.2, 1);
        }
        
        .header-checkbox:hover .header-checkmark {
            border-color: #4f46e5;
            box-shadow: 0 0 0 2px rgba(79, 70, 229, 0.1);
        }
        
        .header-checkbox input[type="checkbox"]:checked + .header-checkmark {
            background: linear-gradient(135deg, #4f46e5 0%, #6366f1 100%);
            border-color: #4f46e5;
            box-shadow: 0 2px 8px rgba(79, 70, 229, 0.3);
        }
        
        .header-checkbox input[type="checkbox"]:checked + .header-checkmark::after {
            transform: rotate(45deg) scale(1);
        }
        
        /* 分隔线样式 */
        .course-divider {
            height: 1px;
            background: linear-gradient(90deg, transparent, #e2e8f0, transparent);
            margin: 0 12px 8px 12px;
        }
        
        /* 响应式设计 */
        @media (max-width: 768px) {
            .course-row {
                padding: 8px 12px;
                flex-direction: row;
                align-items: center;
                min-height: 40px;
            }
            
            .course-checkbox {
                margin-right: 8px;
                flex-shrink: 0;
            }
            
            .course-name {
                flex: 1;
                padding-right: 8px;
                font-size: 12px;
                min-width: 0;
            }
            
            .course-id {
                width: 120px;
                text-align: center;
                font-size: 11px;
                flex-shrink: 0;
            }
            
            .course-header {
                padding: 6px 12px;
            }
            
            .header-title {
                font-size: 12px;
            }
            
            .header-title:last-child {
                width: 120px !important;
            }
        }
        
        @media (max-width: 480px) {
            .course-row {
                padding: 5px 8px;
            }
            
            .course-name {
                font-size: 11px;
            }
            
            .course-id {
                font-size: 10px;
            }
        }
        
        /* 加载和空状态样式 */
        .course-list-empty {
            text-align: center;
            padding: 40px 20px;
            color: #9ca3af;
        }
        
        .course-list-empty i {
            font-size: 48px;
            color: #d1d5db;
            margin-bottom: 16px;
            display: block;
        }
        
        .course-list-loading {
            text-align: center;
            padding: 20px;
            color: #6b7280;
        }
        
        .course-list-loading .loading-spinner {
            display: inline-block;
            width: 20px;
            height: 20px;
            border: 3px solid #f3f4f6;
            border-radius: 50%;
            border-top-color: #3b82f6;
            animation: spin 1s ease-in-out infinite;
            margin-right: 8px;
        }
        
        @keyframes spin {
            to { transform: rotate(360deg); }
        }
        
        /* 选中计数样式优化 */
        .selection-count {
            background: linear-gradient(135deg, #dbeafe 0%, #bfdbfe 100%);
            color: #1e40af;
            padding: 8px 12px;
            border-radius: 6px;
            font-weight: 500;
            border: 1px solid #93c5fd;
        }
        
        @keyframes checkmark {
            0% {
                transform: scale(0);
                opacity: 0;
            }
            50% {
                transform: scale(1.2);
                opacity: 0.8;
            }
            100% {
                transform: scale(1);
                opacity: 1;
            }
        }
        
        /* 账号模式切换样式 - 现代化开关设计 */
        .account-mode-switch {
            display: flex;
            background: #f5f7fa;
            border-radius: 8px;
            padding: 4px;
            position: relative;
            width: 280px;
            margin: 0 auto;
            box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
        }
        
        .account-mode-option {
            flex: 1;
            text-align: center;
            padding: 10px 16px;
            border-radius: 6px;
            cursor: pointer;
            transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
            position: relative;
            z-index: 2;
            font-size: 13px;
            font-weight: 500;
            user-select: none;
        }
        
        .account-mode-option.active {
            background: linear-gradient(135deg, #409eff 0%, #36a3f7 100%);
            color: white;
            box-shadow: 0 4px 12px rgba(64, 158, 255, 0.4);
            transform: translateY(-1px);
        }
        
        .account-mode-option:not(.active) {
            color: #606266;
        }
        
        .account-mode-option:not(.active):hover {
            color: #409eff;
            background: rgba(64, 158, 255, 0.1);
            transform: translateY(-0.5px);
        }
        
        .account-mode-option:active {
            transform: translateY(0);
        }
        
        /* 用户账号信息卡片样式 */
        .user-info-card {
            background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
            color: white;
            padding: 12px 16px;
            border-radius: 8px 8px 0 0;
            margin-bottom: 0;
            display: flex;
            align-items: center;
            justify-content: space-between;
            box-shadow: 0 2px 8px rgba(102, 126, 234, 0.3);
            position: relative;
            overflow: hidden;
        }
        
        .user-info-card::before {
            content: '';
            position: absolute;
            top: 0;
            left: 0;
            right: 0;
            bottom: 0;
            background: linear-gradient(45deg, rgba(255, 255, 255, 0.1) 0%, transparent 100%);
            pointer-events: none;
        }
        
        .user-info-main {
            display: flex;
            align-items: center;
            z-index: 1;
        }
        
        .user-info-badge {
            font-size: 12px;
            opacity: 0.9;
            background: rgba(255, 255, 255, 0.2);
            padding: 2px 8px;
            border-radius: 12px;
            z-index: 1;
        }