        /* ========== 首页 ========== */
        #tab-home {
            overflow-y: auto;
            -webkit-overflow-scrolling: touch;
        }
        
        /* Hero区 - 紫色渐变做视觉锚点 */
        /* ===== 高级动画 ===== */
        @keyframes heroGradient {
            0% { background-position: 0% 50%; }
            50% { background-position: 100% 50%; }
            100% { background-position: 0% 50%; }
        }
        @keyframes fadeInUp {
            from { opacity: 0; transform: translateY(20px); }
            to { opacity: 1; transform: translateY(0); }
        }
        @keyframes shimmer {
            0% { background-position: -200% center; }
            100% { background-position: 200% center; }
        }
        @keyframes float {
            0%, 100% { transform: translateY(0px); }
            50% { transform: translateY(-6px); }
        }
        @keyframes pulseGlow {
            0%, 100% { box-shadow: 0 0 0 0 rgba(108,92,231,0.3); }
            50% { box-shadow: 0 0 20px 4px rgba(108,92,231,0.15); }
        }
        @keyframes dotFloat {
            0%, 100% { transform: translateY(0) scale(1); opacity: 0.3; }
            50% { transform: translateY(-8px) scale(1.2); opacity: 0.6; }
        }

        .home-hero {
            background: linear-gradient(-45deg, #4A3CB5, #6C5CE7, #8B7CF7, #A29BFE, #6C5CE7);
            background-size: 300% 300%;
            animation: heroGradient 8s ease infinite;
            padding: 28px 24px 32px;
            border-radius: 0 0 28px 28px;
            position: relative;
            overflow: hidden;
        }
        .home-hero::before {
            content: '';
            position: absolute;
            top: -40px;
            right: -30px;
            width: 180px;
            height: 180px;
            background: radial-gradient(circle, rgba(255,255,255,0.12) 0%, transparent 70%);
            border-radius: 50%;
            animation: float 6s ease-in-out infinite;
        }
        .home-hero::after {
            content: '';
            position: absolute;
            bottom: -20px;
            left: -20px;
            width: 120px;
            height: 120px;
            background: radial-gradient(circle, rgba(255,255,255,0.08) 0%, transparent 70%);
            border-radius: 50%;
            animation: float 5s ease-in-out infinite 1s;
        }
        .home-hero-inner { position: relative; z-index: 1; }
        /* 浮动光点 */
        .hero-dots {
            position: absolute;
            top: 0;
            left: 0;
            right: 0;
            bottom: 0;
            pointer-events: none;
            z-index: 0;
        }
        .hero-dot {
            position: absolute;
            width: 4px;
            height: 4px;
            background: rgba(255,255,255,0.4);
            border-radius: 50%;
            animation: dotFloat 4s ease-in-out infinite;
        }
        .home-hero-inner > * {
            animation: fadeInUp 0.6s ease backwards;
        }
        .home-hero-inner > *:nth-child(1) { animation-delay: 0.1s; }
        .home-hero-inner > *:nth-child(2) { animation-delay: 0.2s; }
        .home-hero-inner > *:nth-child(3) { animation-delay: 0.3s; }
        .home-hero-inner > *:nth-child(4) { animation-delay: 0.4s; }
        .home-hero-inner > *:nth-child(5) { animation-delay: 0.5s; }
        .home-hero-top {
            display: flex;
            align-items: center;
            justify-content: space-between;
            margin-bottom: 20px;
        }
        .home-greeting {
            font-size: 14px;
            color: rgba(255,255,255,0.6);
            font-weight: 400;
        }
        .home-streak-pill {
            display: flex;
            align-items: center;
            gap: 4px;
            background: rgba(255,255,255,0.15);
            backdrop-filter: blur(8px);
            padding: 5px 12px;
            border-radius: 20px;
            color: white;
            font-weight: 600;
            font-size: 12px;
            cursor: pointer;
        
            animation: pulseGlow 3s ease-in-out infinite;
        }
        .home-streak-pill svg { width: 14px; height: 14px; }
        .home-hero-title {
            font-size: 26px;
            font-weight: 800;
            color: white;
            line-height: 1.2;
            letter-spacing: -0.5px;
            margin-bottom: 6px;
        }
        .home-hero-subtitle {
            font-size: 14px;
            color: rgba(255,255,255,0.5);
            margin-bottom: 24px;
        }
        .home-hero-actions {
            display: flex;
            gap: 10px;
        }
        .home-cta-primary {
            flex: 1;
            padding: 16px 24px;
            background: linear-gradient(135deg, #6C5CE7, #A29BFE);
            color: white;
            border: none;
            border-radius: 16px;
            font-size: 17px;
            font-weight: 700;
            cursor: pointer;
            display: flex;
            align-items: center;
            justify-content: center;
            gap: 8px;
            transition: all 0.2s;
            box-shadow: 0 4px 16px rgba(108, 92, 231, 0.35);
            position: relative;
            overflow: hidden;
        }
        .home-cta-primary:active { transform: scale(0.97); }
        .home-cta-primary::after {
            content: '';
            position: absolute;
            top: 0;
            left: -100%;
            width: 60%;
            height: 100%;
            background: linear-gradient(90deg, transparent, rgba(108,92,231,0.08), transparent);
            animation: shimmer 3s ease-in-out infinite;
        }
        .home-cta-primary svg { width: 18px; height: 18px; }
        .home-cta-secondary {
            padding: 14px 16px;
            background: rgba(255,255,255,0.15);
            backdrop-filter: blur(8px);
            color: white;
            border: 1px solid rgba(255,255,255,0.2);
            border-radius: 14px;
            font-size: 14px;
            font-weight: 600;
            cursor: pointer;
            display: flex;
            align-items: center;
            justify-content: center;
            gap: 6px;
            transition: all 0.2s;
        }
        .home-cta-secondary:active { transform: scale(0.97); }
        .home-cta-secondary svg { width: 16px; height: 16px; }
        .home-cta-hint {
            text-align: center;
            color: rgba(255,255,255,0.8);
            font-size: 13px;
            margin-top: 12px;
            letter-spacing: 0.5px;
        }
        .home-hero-bottom {
            display: flex;
            align-items: center;
            gap: 8px;
            margin-top: 16px;
        }
        .home-countdown-chip {
            font-size: 11px;
            color: rgba(255,255,255,0.6);
            background: rgba(255,255,255,0.1);
            padding: 5px 12px;
            border-radius: 10px;
            border: 1px solid rgba(255,255,255,0.15);
        
            animation: fadeInUp 0.6s ease backwards 0.6s;
        }
        .home-countdown-chip .cd-days {
            font-weight: 700;
            font-size: 14px;
            color: #FFD700;
            margin-right: 2px;
        }
        
        /* 功能入口 - 4图标 */
        .home-func-row {
            display: flex;
            justify-content: space-around;
            padding: 20px 12px 16px;
            margin: 12px 16px;
            background: #FFFFFF;
            border-radius: 16px;
            border: 1px solid #F0F0F5;
            box-shadow: 0 1px 4px rgba(0,0,0,0.04);
        }
        .func-item {
            display: flex;
            flex-direction: column;
            align-items: center;
            gap: 6px;
            cursor: pointer;
            transition: opacity 0.15s;
        }
        .func-item:active { opacity: 0.5; }
        .func-icon {
            width: 52px;
            height: 52px;
            border-radius: 15px;
            display: flex;
            align-items: center;
            justify-content: center;
        }
        .func-icon svg { width: 26px; height: 26px; stroke-width: 1.8; }
        .func-icon.purple { background: #F0EEFF; }
        .func-icon.purple svg { stroke: #6C5CE7; }
        .func-icon.green { background: #E8F8F0; }
        .func-icon.green svg { stroke: #00B894; }
        .func-icon.orange { background: #FFF3E0; }
        .func-icon.orange svg { stroke: #F39C12; }
        .func-icon.pink { background: #FCE4EC; }
        .func-icon.pink svg { stroke: #E84393; }
        .func-label {
            font-size: 12px;
            font-weight: 500;
            color: #555;
        }

        /* 内容区标题 */
        /* 内容卡片 - 有质感的卡片 */
        .home-promo-card {
            margin: 0 16px 12px;
            border-radius: 16px;
            padding: 18px 20px;
            display: flex;
            align-items: center;
            gap: 16px;
            cursor: pointer;
            transition: all 0.15s;
            background: #FFFFFF;
            border: 1px solid #F0F0F5;
            box-shadow: 0 1px 4px rgba(0,0,0,0.04);
        }
        .home-promo-card:active { transform: scale(0.98); }
        .home-promo-card.card-purple { }
        .home-promo-card.card-green { }
        .home-promo-card.card-orange { }
        .home-promo-card.card-pink { }
        .home-promo-left { flex: 1; min-width: 0; }
        .home-promo-title {
            font-size: 16px;
            font-weight: 700;
            color: #1a1a2e;
            margin-bottom: 4px;
            letter-spacing: -0.2px;
        }
        .home-promo-desc {
            font-size: 12px;
            color: #64748b;
            line-height: 1.4;
        }
        .home-promo-right {
            width: 52px;
            height: 52px;
            border-radius: 16px;
            display: flex;
            align-items: center;
            justify-content: center;
            flex-shrink: 0;
        }
        .home-promo-right svg { width: 26px; height: 26px; }
        .home-promo-right.purple-bg { background: #F0EEFF; }
        .home-promo-right.purple-bg svg { stroke: #6C5CE7; }
        .home-promo-right.green-bg { background: #E8F8F0; }
        .home-promo-right.green-bg svg { stroke: #00B894; }
        .home-promo-right.orange-bg { background: #FFF3E0; }
        .home-promo-right.orange-bg svg { stroke: #F39C12; }
        .home-promo-right.pink-bg { background: #FCE4EC; }
        .home-promo-right.pink-bg svg { stroke: #E84393; }
        
        /* 每日一练卡片 */
        /* 学习概览 */
        .home-stats-row {
            display: flex;
            gap: 8px;
            padding: 0 16px;
            margin-bottom: 16px;
        }
        .home-stat-card {
            flex: 1;
            background: #FFFFFF;
            border-radius: 14px;
            padding: 16px 10px;
            text-align: center;
            border: 1px solid #F0F0F5;
            box-shadow: 0 1px 4px rgba(0,0,0,0.04);
            cursor: pointer;
            transition: all 0.15s;
        }
        .home-stat-card:active { transform: scale(0.97); }
        .home-stat-icon {
            width: 36px;
            height: 36px;
            border-radius: 10px;
            display: flex;
            align-items: center;
            justify-content: center;
            margin: 0 auto 8px;
        }
        .home-stat-icon svg { width: 18px; height: 18px; stroke-width: 1.8; }
        .home-stat-icon.purple { background: #F0EEFF; }
        .home-stat-icon.purple svg { stroke: #6C5CE7; }
        .home-stat-icon.green { background: #E8F8F0; }
        .home-stat-icon.green svg { stroke: #00B894; }
        .home-stat-icon.orange { background: #FFF3E0; }
        .home-stat-icon.orange svg { stroke: #F39C12; }
        .home-stat-value {
            font-size: 16px;
            font-weight: 700;
            color: #1a1a2e;
            margin-bottom: 2px;
        }
        .home-stat-label {
            font-size: 10px;
            color: #94a3b8;
            font-weight: 500;
        }

        .daily-card {
            margin: 0 16px 16px;
            background: #FFFFFF;
            border: 1px solid #F0F0F5;
            box-shadow: 0 1px 4px rgba(0,0,0,0.04);
            border-radius: 16px;
            overflow: hidden;
            cursor: pointer;
            transition: all 0.2s;
        }
        .daily-card:active { transform: scale(0.98); }
        .daily-card-inner {
            padding: 16px 20px;
            display: flex;
            align-items: center;
            gap: 14px;
        }
        .daily-card-icon-wrap {
            width: 48px;
            height: 48px;
            border-radius: 14px;
            background: #E8F8F0;
            display: flex;
            align-items: center;
            justify-content: center;
            flex-shrink: 0;
        }
        .daily-card-icon-wrap svg { width: 22px; height: 22px; stroke: #00B894; stroke-width: 1.8; }
        .daily-card-body { flex: 1; min-width: 0; }
        .daily-card-title { font-size: 15px; font-weight: 700; color: #1a1a2e; }
        .daily-card-sub { font-size: 12px; color: #64748b; margin-top: 2px; }
        .daily-card-badge {
            font-size: 12px;
            font-weight: 700;
            color: #00B894;
            background: #E8F8F0;
            padding: 7px 16px;
            border-radius: 12px;
            white-space: nowrap;
            flex-shrink: 0;
        }
        .daily-card-badge.done-badge {
            color: #00B894;
            background: #E8F8F0;
        }
        

        
        /* ========== 诊断页 ========== */
        .diagnosis-page {
            display: flex;
            flex-direction: column;
            height: 100%;
        }
        .diag-header {
            padding: 16px 20px;
            display: flex;
            align-items: center;
            gap: 12px;
            background: white;
            border-bottom: none;
            flex-shrink: 0;
        }
        .diag-back {
            width: 36px;
            height: 36px;
            border-radius: 50%;
            background: #F1F5F9;
            display: flex;
            align-items: center;
            justify-content: center;
            cursor: pointer;
            border: none;
        }
        .diag-back:active { background: #E2E8F0; }
        .diag-back svg { width: 20px; height: 20px; stroke: #475569; stroke-width: 2; }
        .diag-header-info { flex: 1; }
        .diag-header-title { font-size: 17px; font-weight: 700; color: #1E293B; letter-spacing: -0.3px; }
        .diag-header-sub { font-size: 12px; color: #94A3B8; margin-top: 1px; }
        .diag-header-dot { width: 8px; height: 8px; border-radius: 50%; background: #22C55E; flex-shrink: 0; }
        
        /* 诊断页内容 */
        .diag-body {
            flex: 1;
            overflow-y: auto;
            -webkit-overflow-scrolling: touch;
            background: #FFFFFF;
            padding-bottom: 20px;
        }

        

        /* ===== 首页快捷入口 ===== */
        .home-quick-grid {
            display: flex;
            gap: 12px;
            padding: 20px 16px;
        }
        .home-quick-item {
            animation: fadeInUp 0.5s ease backwards;
            transition: transform 0.2s ease, box-shadow 0.2s ease;
        }
        .home-quick-item:hover {
            transform: translateY(-2px);
            box-shadow: 0 4px 16px rgba(108,92,231,0.1);
        }
        .home-quick-item:nth-child(1) { animation-delay: 0.5s; }
        .home-quick-item:nth-child(2) { animation-delay: 0.65s; }
        .home-quick-item:nth-child(3) { animation-delay: 0.8s; }
        .home-quick-item {
            flex: 1;
            display: flex;
            flex-direction: column;
            align-items: center;
            gap: 8px;
            padding: 16px 8px;
            background: #FFFFFF;
            border: 1px solid #F0F0F5;
            border-radius: 16px;
            box-shadow: 0 1px 4px rgba(0,0,0,0.04);
            cursor: pointer;
            transition: all 0.15s;
        }
        .home-quick-item:active { transform: scale(0.96); }
        .home-quick-icon {
            width: 44px;
            height: 44px;
            border-radius: 14px;
            display: flex;
            align-items: center;
            justify-content: center;
        }
        .home-quick-icon svg { width: 22px; height: 22px; stroke-width: 1.8; }
        .home-quick-icon.purple { background: #F0EEFF; }
        .home-quick-icon.purple svg { stroke: #6C5CE7; }
        .home-quick-icon.green { background: #E8F8F0; }
        .home-quick-icon.green svg { stroke: #00B894; }
        .home-quick-icon.pink { background: #FCE4EC; }
        .home-quick-icon.pink svg { stroke: #E84393; }
        .home-quick-item span {
            font-size: 12px;
            font-weight: 500;
            color: #555;
        }


        /* ===== 首页内容区 ===== */
        .home-section-title {
            font-size: 16px;
            font-weight: 700;
            color: #1a1a2e;
            padding: 20px 20px 12px;
            letter-spacing: -0.3px;
            display: flex;
            justify-content: space-between;
            align-items: center;
        }
        .home-section-more {
            font-size: 12px;
            font-weight: 500;
            color: #6C5CE7;
            cursor: pointer;
        }

        /* 备考Tips - 横滑卡片 */
        .home-tips-scroll {
            display: flex;
            gap: 10px;
            padding: 0 16px 4px;
            overflow-x: auto;
            -webkit-overflow-scrolling: touch;
            scrollbar-width: none;
        }
        .home-tips-scroll::-webkit-scrollbar { display: none; }
        .home-tip-card {
            display: flex;
            align-items: center;
            gap: 10px;
            padding: 14px 16px;
            border-radius: 14px;
            min-width: 220px;
            cursor: pointer;
            transition: all 0.15s;
            flex-shrink: 0;
        }
        .home-tip-card:active { transform: scale(0.97); }
        .home-tip-card.tip-purple {
            background: linear-gradient(135deg, #F8F6FF, #F0EEFF);
            border: 1px solid #E8E4FF;
        }
        .home-tip-card.tip-green {
            background: linear-gradient(135deg, #F0FFF6, #E8F8F0);
            border: 1px solid #D4F5E4;
        }
        .home-tip-card.tip-orange {
            background: linear-gradient(135deg, #FFFAF0, #FFF3E0);
            border: 1px solid #FFE8C8;
        }
        .home-tip-emoji { font-size: 28px; flex-shrink: 0; }
        .home-tip-title { font-size: 14px; font-weight: 700; color: #1a1a2e; }
        .home-tip-desc { font-size: 11px; color: #64748b; margin-top: 2px; line-height: 1.3; }

        /* 学习数据横条 */
        .home-data-bar {
            display: flex;
            align-items: center;
            margin: 16px 16px 0;
            padding: 16px 20px;
            background: #FFFFFF;
            border: 1px solid #F0F0F5;
            border-radius: 14px;
            box-shadow: 0 1px 4px rgba(0,0,0,0.04);
        }
        .home-data-item {
            flex: 1;
            text-align: center;
        }
        .home-data-num {
            font-size: 20px;
            font-weight: 800;
            color: #6C5CE7;
        }
        .home-data-label {
            font-size: 11px;
            color: #94a3b8;
            margin-top: 2px;
        }
        .home-data-divider {
            width: 1px;
            height: 28px;
            background: #F0F0F5;
            margin: 0 8px;
        }
        .home-data-cta {
            font-size: 13px;
            font-weight: 600;
            color: #6C5CE7;
            cursor: pointer;
        }

        /* 人格卡预览 - 横滑 */
        .home-personality-preview {
            display: flex;
            gap: 10px;
            padding: 0 16px 24px;
            overflow-x: auto;
            -webkit-overflow-scrolling: touch;
            scrollbar-width: none;
        }
        .home-personality-preview::-webkit-scrollbar { display: none; }
        .home-preview-card {
            display: flex;
            flex-direction: column;
            align-items: center;
            gap: 6px;
            min-width: 80px;
            padding: 12px 8px;
            background: #FFFFFF;
            border: 1px solid #F0F0F5;
            border-radius: 14px;
            box-shadow: 0 1px 3px rgba(0,0,0,0.03);
            cursor: pointer;
            transition: all 0.15s;
            flex-shrink: 0;
        }
        .home-preview-card:active { transform: scale(0.95); }
        .home-preview-avatar {
            width: 48px;
            height: 48px;
            border-radius: 50%;
            overflow: hidden;
        }
        .home-preview-avatar img { width: 100%; height: 100%; object-fit: cover; }
        .home-preview-name { font-size: 11px; font-weight: 600; color: #1a1a2e; white-space: nowrap; }

        /* ====== 全站信任感升级 CSS ====== */

        /* --- 社交证明横条 --- */
        .social-proof-bar {
            display: flex;
            align-items: center;
            justify-content: center;
            gap: 6px;
            padding: 10px 16px;
            background: #F8F9FC;
            font-size: 12px;
            color: #64748b;
            font-weight: 500;
        }
        .social-proof-bar svg { width: 14px; height: 14px; stroke: #6C5CE7; stroke-width: 2; flex-shrink: 0; }
        .social-proof-num { color: #6C5CE7; font-weight: 700; }

        /* --- 打卡日历（百词斩/墨墨风格） --- */
        .streak-calendar {
            margin: 0 16px 16px;
            padding: 16px 18px;
            background: #FFFFFF;
            border: 1px solid #F0F0F5;
            border-radius: 16px;
            box-shadow: 0 1px 4px rgba(0,0,0,0.04);
        }
        .streak-cal-header {
            display: flex;
            align-items: center;
            justify-content: space-between;
            margin-bottom: 12px;
        }
        .streak-cal-title {
            font-size: 14px;
            font-weight: 700;
            color: #1a1a2e;
            display: flex;
            align-items: center;
            gap: 6px;
        }
        .streak-cal-title svg { width: 16px; height: 16px; stroke: #6C5CE7; stroke-width: 2; }
        .streak-cal-streak {
            font-size: 12px;
            font-weight: 700;
            color: #FF6B35;
            display: flex;
            align-items: center;
            gap: 3px;
        }
        .streak-cal-days {
            display: flex;
            gap: 6px;
            justify-content: space-between;
        }
        .streak-day {
            display: flex;
            flex-direction: column;
            align-items: center;
            gap: 4px;
            flex: 1;
        }
        .streak-day-label {
            font-size: 10px;
            color: #94a3b8;
            font-weight: 500;
        }
        .streak-day-dot {
            width: 32px;
            height: 32px;
            border-radius: 50%;
            background: #F0F0F5;
            display: flex;
            align-items: center;
            justify-content: center;
            transition: all 0.3s;
        }
        .streak-day-dot svg { width: 14px; height: 14px; stroke: #94a3b8; stroke-width: 2; }
        .streak-day.checked .streak-day-dot {
            background: linear-gradient(135deg, #6C5CE7, #8B7CF7);
        }
        .streak-day.checked .streak-day-dot svg { stroke: white; }
        .streak-day.today .streak-day-dot {
            border: 2px solid #6C5CE7;
            background: #F0EEFF;
        }
        .streak-day.today .streak-day-dot svg { stroke: #6C5CE7; }
        .streak-day.today.checked .streak-day-dot {
            background: linear-gradient(135deg, #6C5CE7, #8B7CF7);
            border: none;
        }
        .streak-day.today.checked .streak-day-dot svg { stroke: white; }

        /* --- AI能力声明区（流利说风格） --- */
        .ai-capability-section {
            margin: 0 16px 16px;
            padding: 16px 18px;
            background: linear-gradient(135deg, #F8F6FF, #F0EEFF);
            border: 1px solid #E8E4FF;
            border-radius: 16px;
        }
        .ai-cap-title {
            font-size: 14px;
            font-weight: 700;
            color: #1a1a2e;
            margin-bottom: 12px;
            display: flex;
            align-items: center;
            gap: 6px;
        }
        .ai-cap-title svg { width: 16px; height: 16px; stroke: #6C5CE7; stroke-width: 2; }
        .ai-cap-grid {
            display: grid;
            grid-template-columns: 1fr 1fr;
            gap: 8px;
        }
        .ai-cap-item {
            display: flex;
            align-items: center;
            gap: 8px;
            padding: 10px 12px;
            background: white;
            border-radius: 12px;
            cursor: pointer;
            transition: all 0.15s;
        }
        .ai-cap-item:active { transform: scale(0.97); }
        .ai-cap-icon {
            width: 32px;
            height: 32px;
            border-radius: 10px;
            display: flex;
            align-items: center;
            justify-content: center;
            flex-shrink: 0;
        }
        .ai-cap-icon svg { width: 16px; height: 16px; stroke-width: 2; }
        .ai-cap-icon.purple { background: #F0EEFF; }
        .ai-cap-icon.purple svg { stroke: #6C5CE7; }
        .ai-cap-icon.green { background: #E8F8F0; }
        .ai-cap-icon.green svg { stroke: #00B894; }
        .ai-cap-icon.orange { background: #FFF3E0; }
        .ai-cap-icon.orange svg { stroke: #F39C12; }
        .ai-cap-icon.pink { background: #FCE4EC; }
        .ai-cap-icon.pink svg { stroke: #E84393; }
        .ai-cap-text {
            font-size: 12px;
            font-weight: 600;
            color: #1a1a2e;
            line-height: 1.3;
        }
        .ai-cap-sub {
            font-size: 10px;
            color: #94a3b8;
            font-weight: 400;
            margin-top: 1px;
        }

        /* --- 数据来源标签（Kimi风格） --- */
        .data-source-tag {
            display: inline-flex;
            align-items: center;
            gap: 4px;
            padding: 4px 10px;
            background: #F1F5F9;
            border-radius: 8px;
            font-size: 10px;
            color: #64748b;
            font-weight: 500;
        }
        .data-source-tag svg { width: 10px; height: 10px; stroke: #64748b; stroke-width: 2; }

        /* --- 首页Hero区升级 --- */
        .home-hero-subtitle {
            font-size: 14px;
            color: rgba(255,255,255,0.55);
            margin-bottom: 20px;
        }
        .home-cta-primary {
            position: relative;
            overflow: hidden;
        }

        /* --- 学习页Streak增强 --- */
        .study-streak-card {
            margin: 0 16px 16px;
            padding: 18px 20px;
            background: linear-gradient(135deg, #FFF5F0, #FFEEE5);
            border: 1px solid #FFE0CC;
            border-radius: 16px;
            display: flex;
            align-items: center;
            gap: 14px;
        }
        .streak-fire {
            width: 48px;
            height: 48px;
            border-radius: 14px;
            background: linear-gradient(135deg, #FF6B35, #FF9F43);
            display: flex;
            align-items: center;
            justify-content: center;
            flex-shrink: 0;
        }
        .streak-fire svg { width: 24px; height: 24px; stroke: white; stroke-width: 2; }
        .streak-info { flex: 1; }
        .streak-info-title { font-size: 14px; font-weight: 700; color: #1a1a2e; }
        .streak-info-sub { font-size: 12px; color: #94a3b8; margin-top: 2px; }
        .streak-num-big {
            font-size: 32px;
            font-weight: 900;
            color: #FF6B35;
            letter-spacing: -1px;
            line-height: 1;
        }
        .streak-num-label {
            font-size: 11px;
            color: #FF6B35;
            font-weight: 600;
        }

        /* --- 学习页统计增强 --- */
        .study-stats-enhanced {
            display: grid;
            grid-template-columns: 1fr 1fr 1fr;
            gap: 8px;
            margin: 0 16px 16px;
        }
        .study-stat-en {
            padding: 14px 10px;
            background: #FFFFFF;
            border: 1px solid #F0F0F5;
            border-radius: 14px;
            text-align: center;
        }
        .study-stat-en-val {
            font-size: 20px;
            font-weight: 800;
            color: #1a1a2e;
            letter-spacing: -0.5px;
        }
        .study-stat-en-label {
            font-size: 10px;
            color: #94a3b8;
            font-weight: 500;
            margin-top: 2px;
        }

        /* --- 我的页信任增强 --- */
        /* --- 我的页高级感升级 --- */
        
        /* 页面整体背景 - 极微妙渐变 */
        #tab-profile {
            background: linear-gradient(180deg, #FAFAFF 0%, #F8F9FA 30%, #F8F9FA 100%);
        }
        
        /* 头部区域 - 渐变背景+呼吸感 */
        .profile-header-trust {
            padding: 44px 24px 36px;
            background: linear-gradient(180deg, rgba(108,92,231,0.04) 0%, rgba(162,155,254,0.02) 100%);
            position: relative;
            overflow: hidden;
        }
        /* 背景装饰圆 */
        .profile-header-trust::before {
            content: '';
            position: absolute;
            top: -60px;
            right: -40px;
            width: 200px;
            height: 200px;
            background: radial-gradient(circle, rgba(108,92,231,0.06) 0%, transparent 70%);
            border-radius: 50%;
            pointer-events: none;
        }
        .profile-header-trust::after {
            content: '';
            position: absolute;
            bottom: -40px;
            left: -30px;
            width: 140px;
            height: 140px;
            background: radial-gradient(circle, rgba(162,155,254,0.05) 0%, transparent 70%);
            border-radius: 50%;
            pointer-events: none;
        }
        
        .profile-row {
            display: flex;
            align-items: center;
            gap: 16px;
            position: relative;
            z-index: 1;
        }
        .profile-avatar-lg {
            width: 64px;
            height: 64px;
            border-radius: 50%;
            background: linear-gradient(135deg, #6C5CE7, #A29BFE);
            display: flex;
            align-items: center;
            justify-content: center;
            flex-shrink: 0;
            box-shadow: 0 4px 16px rgba(108,92,231,0.2);
            transition: transform 0.2s, box-shadow 0.2s;
        }
        .profile-avatar-lg:hover {
            transform: scale(1.02);
            box-shadow: 0 6px 20px rgba(108,92,231,0.25);
        }
        .profile-avatar-lg svg { width: 28px; height: 28px; stroke: white; stroke-width: 1.8; }
        .profile-info { flex: 1; }
        .profile-name-lg { font-size: 20px; font-weight: 800; color: #1a1a2e; letter-spacing: -0.3px; }
        .profile-plan-tag {
            display: inline-flex;
            align-items: center;
            gap: 4px;
            padding: 4px 12px;
            border-radius: 20px;
            font-size: 11px;
            font-weight: 700;
            margin-top: 6px;
            background: linear-gradient(135deg, #6C5CE7, #A29BFE);
            color: white;
            box-shadow: 0 2px 8px rgba(108,92,231,0.15);
        }
        .profile-plan-tag.free { 
            background: linear-gradient(135deg, #F1F5F9, #E8ECF0);
            color: #64748b;
            box-shadow: 0 2px 8px rgba(0,0,0,0.05);
        }
        .profile-plan-tag.paid { 
            background: linear-gradient(135deg, #6C5CE7, #A29BFE);
            color: white;
            box-shadow: 0 2px 8px rgba(108,92,231,0.15);
        }

        /* 统计条 - 毛玻璃卡片风格 */
        .profile-stats-bar {
            display: flex;
            margin: 0 20px 28px;
            padding: 18px 0;
            background: rgba(255,255,255,0.8);
            backdrop-filter: blur(20px);
            -webkit-backdrop-filter: blur(20px);
            border-radius: 16px;
            border: 0.5px solid rgba(229,229,234,0.5);
            box-shadow: 0 2px 12px rgba(0,0,0,0.04);
            position: relative;
            z-index: 1;
        }
        .profile-stat-item {
            flex: 1;
            text-align: center;
            border-right: 1px solid rgba(0,0,0,0.04);
            padding: 4px 0;
        }
        .profile-stat-item:last-child { border-right: none; }
        .profile-stat-num { 
            font-size: 20px; 
            font-weight: 800; 
            letter-spacing: -0.5px;
            background: linear-gradient(135deg, #6C5CE7, #A29BFE);
            -webkit-background-clip: text;
            -webkit-text-fill-color: transparent;
            background-clip: text;
        }
        .profile-stat-label { font-size: 11px; color: #94a3b8; font-weight: 500; margin-top: 4px; }

        /* 菜单列表 - 毛玻璃+大间距 */
        .menu-list {
            margin: 0 20px 16px;
            background: rgba(255,255,255,0.85);
            backdrop-filter: blur(20px);
            -webkit-backdrop-filter: blur(20px);
            border-radius: 16px;
            border: 0.5px solid rgba(229,229,234,0.5);
            box-shadow: 0 2px 12px rgba(0,0,0,0.04);
            overflow: hidden;
        }
        .menu-item-new {
            display: flex;
            align-items: center;
            gap: 14px;
            padding: 16px 20px;
            cursor: pointer;
            transition: background 0.15s, transform 0.1s;
            border-bottom: 1px solid rgba(0,0,0,0.03);
            position: relative;
        }
        .menu-item-new:last-child { border-bottom: none; }
        .menu-item-new:active { 
            background: rgba(108,92,231,0.03);
            transform: scale(0.98);
        }
        .menu-item-new:hover {
            background: rgba(108,92,231,0.02);
        }
        
        /* 菜单图标 - 更大更通透 */
        .menu-icon-new {
            width: 36px;
            height: 36px;
            border-radius: 10px;
            display: flex;
            align-items: center;
            justify-content: center;
            flex-shrink: 0;
        }
        .menu-icon-new svg { width: 18px; height: 18px; stroke-width: 1.8; }
        .menu-icon-new.purple { background: rgba(108,92,231,0.1); }
        .menu-icon-new.purple svg { stroke: #6C5CE7; }
        .menu-icon-new.green { background: rgba(0,184,148,0.1); }
        .menu-icon-new.green svg { stroke: #00B894; }
        .menu-icon-new.pink { background: rgba(232,67,147,0.1); }
        .menu-icon-new.pink svg { stroke: #E84393; }
        .menu-icon-new.orange { background: rgba(243,156,18,0.1); }
        .menu-icon-new.orange svg { stroke: #F39C12; }
        .menu-icon-new.teal { background: rgba(0,188,212,0.1); }
        .menu-icon-new.teal svg { stroke: #00BCD4; }
        .menu-icon-new.gray { background: rgba(100,116,139,0.1); }
        .menu-icon-new.gray svg { stroke: #64748b; }
        
        .menu-text-new { flex: 1; font-size: 15px; font-weight: 500; color: #1a1a2e; }
        .menu-arrow-new { opacity: 0.4; transition: opacity 0.15s, transform 0.15s; }
        .menu-item-new:hover .menu-arrow-new {
            opacity: 0.6;
            transform: translateX(2px);
        }
        .menu-arrow-new svg { width: 16px; height: 16px; stroke: #1a1a2e; stroke-width: 2; }

        /* 菜单分组标签 */
        .menu-group-label {
            font-size: 12px;
            font-weight: 600;
            color: #94a3b8;
            padding: 20px 24px 10px;
            text-transform: uppercase;
            letter-spacing: 0.8px;
        }
        
        /* 错题本徽章 */
        .wrong-book-badge {
            display: none;
            background: linear-gradient(135deg, #FF6B6B, #FF8E8E);
            color: white;
            font-size: 10px;
            font-weight: 700;
            padding: 2px 8px;
            border-radius: 10px;
            margin-left: 4px;
        }

        /* 用户ID展示区域 */
        .profile-user-id-section {
            margin: 12px 16px;
            padding: 14px 16px;
            background: linear-gradient(135deg, #f8fafc 0%, #f1f5f9 100%);
            border-radius: 12px;
            border: 1px solid #e2e8f0;
        }
        .profile-user-id-label {
            font-size: 11px;
            color: #64748B;
            font-weight: 500;
            margin-bottom: 6px;
        }
        .profile-user-id-row {
            display: flex;
            align-items: center;
            justify-content: space-between;
        }
        .profile-user-id-value {
            font-family: 'SF Mono', 'Monaco', 'Inconsolata', 'Roboto Mono', monospace;
            font-size: 13px;
            color: #334155;
            font-weight: 600;
            letter-spacing: 0.5px;
        }
        .profile-user-id-copy {
            display: flex;
            align-items: center;
            gap: 4px;
            padding: 6px 12px;
            background: #6C5CE7;
            color: white;
            border: none;
            border-radius: 8px;
            font-size: 12px;
            font-weight: 600;
            cursor: pointer;
            transition: all 0.2s ease;
        }
        .profile-user-id-copy:hover {
            background: #5B4BD5;
            transform: translateY(-1px);
        }
        .profile-user-id-copy:active {
            transform: translateY(0);
        }
        .profile-user-id-copy svg {
            width: 14px;
            height: 14px;
        }
        .profile-user-id-tip {
            font-size: 11px;
            color: #94A3B8;
            margin-top: 8px;
        }

        /* 底部区域 */
        .profile-footer {
            padding: 28px 20px 32px;
            text-align: center;
        }
        .profile-footer-text {
            font-size: 11px;
            color: #B0B8C4;
            letter-spacing: 0.2px;
        }
        .profile-footer-links {
            display: flex;
            justify-content: center;
            gap: 20px;
            margin-top: 10px;
        }
        .profile-footer-links a {
            font-size: 11px;
            color: #94a3b8;
            text-decoration: none;
            transition: color 0.15s;
        }
        .profile-footer-links a:hover { color: #6C5CE7; }
        .profile-footer-links a:active { color: #5B4BD5; }

        /* --- AI教练页信任增强 --- */
        .ai-credibility {
            margin: 0 24px 24px;
            padding: 12px 16px;
            background: #F8F9FC;
            border-radius: 12px;
            display: flex;
            align-items: center;
            gap: 8px;
        }
        .ai-credibility svg { width: 14px; height: 14px; stroke: #8E8E93; stroke-width: 2; flex-shrink: 0; }
        .ai-credibility-text {
            font-size: 11px;
            color: #64748b;
            font-weight: 500;

        
        /* --- 首页底部免责声明 --- */
        .home-disclaimer {
            margin: 20px 16px 24px;
            padding: 12px 16px;
            background: #F8F9FC;
            border-radius: 10px;
            text-align: center;
            font-size: 11px;
            color: #94a3b8;
            line-height: 1.6;
        }
/* ========== 教练引导卡片 ========== */
.coach-guide-card {
    margin: 12px 16px;
    padding: 14px 16px;
    background: linear-gradient(135deg, #6C5CE7, #a29bfe);
    border-radius: 16px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    box-shadow: 0 4px 16px rgba(108, 92, 231, 0.25);
    cursor: pointer;
    transition: all 0.2s ease;
    animation: fadeInUp 0.4s ease;
}
.coach-guide-card:active {
    transform: scale(0.98);
    box-shadow: 0 2px 8px rgba(108, 92, 231, 0.2);
}
.coach-guide-content {
    display: flex;
    align-items: center;
    gap: 12px;
    flex: 1;
}
.coach-guide-icon {
    font-size: 24px;
    flex-shrink: 0;
}
.coach-guide-text {
    flex: 1;
    min-width: 0;
}
.coach-guide-title {
    color: white;
    font-size: 15px;
    font-weight: 600;
    line-height: 1.3;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.coach-guide-sub {
    color: rgba(255, 255, 255, 0.75);
    font-size: 12px;
    margin-top: 2px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.coach-guide-btn {
    display: flex;
    align-items: center;
    gap: 4px;
    background: white;
    color: #6C5CE7;
    border: none;
    border-radius: 8px;
    padding: 8px 12px;
    font-size: 13px;
    font-weight: 600;
    cursor: pointer;
    flex-shrink: 0;
    transition: all 0.2s ease;
}
.coach-guide-btn:active {
    transform: scale(0.95);
}
.coach-guide-btn svg {
    width: 14px;
    height: 14px;
}

/* ========== 数据页训练建议 ========== */
.dashboard-training-tips {
    margin: 0 16px 16px;
    padding: 16px;
    background: rgba(108, 92, 231, 0.08);
    border-radius: 12px;
    border: 1px solid rgba(108, 92, 231, 0.15);
}
.dashboard-training-tips-title {
    font-size: 14px;
    font-weight: 600;
    color: #6C5CE7;
    margin-bottom: 12px;
    display: flex;
    align-items: center;
    gap: 6px;
}
.dashboard-training-tip-item {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    padding: 10px 0;
    border-bottom: 1px solid rgba(108, 92, 231, 0.1);
}
.dashboard-training-tip-item:last-child {
    border-bottom: none;
    padding-bottom: 0;
}
.dashboard-training-tip-item:first-of-type {
    padding-top: 0;
}
.dashboard-tip-text {
    flex: 1;
    font-size: 13px;
    color: #1a1a2e;
    line-height: 1.5;
}
.dashboard-tip-dim {
    font-weight: 600;
    color: #6C5CE7;
}
.dashboard-tip-action {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    background: linear-gradient(135deg, #6C5CE7, #a29bfe);
    color: white;
    border: none;
    border-radius: 6px;
    padding: 6px 12px;
    font-size: 12px;
    font-weight: 600;
    cursor: pointer;
    flex-shrink: 0;
    margin-left: 12px;
    transition: all 0.2s ease;
}
.dashboard-tip-action:active {
    transform: scale(0.95);
}

/* ========== 错题本重做按钮 ========== */
.wrong-redo-btn {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    background: linear-gradient(135deg, #6C5CE7, #a29bfe);
    color: white;
    border: none;
    border-radius: 6px;
    padding: 6px 12px;
    font-size: 12px;
    font-weight: 600;
    cursor: pointer;
    margin-left: 8px;
    transition: all 0.2s ease;
}
.wrong-redo-btn:active {
    transform: scale(0.95);
}

/* ========== 重做题目界面 ========== */
.quiz-back {
    background: none;
    border: none;
    padding: 8px;
    cursor: pointer;
    display: flex;
    align-items: center;
}
.quiz-back svg {
    width: 24px;
    height: 24px;
    stroke: #333;
}
.quiz-header {
    display: flex;
    align-items: center;
    padding: 12px 16px;
    border-bottom: 1px solid #eee;
    background: #fff;
    position: sticky;
    top: 0;
    z-index: 10;
}
.quiz-header-title {
    flex: 1;
    text-align: center;
    font-size: 16px;
    font-weight: 600;
}
.quiz-header-spacer {
    width: 40px;
}
.quiz-content {
    padding: 20px 16px;
}
.quiz-type-tag {
    display: inline-block;
    background: rgba(108, 92, 231, 0.1);
    color: #6C5CE7;
    font-size: 12px;
    padding: 4px 10px;
    border-radius: 12px;
    margin-bottom: 12px;
}
.quiz-question {
    font-size: 16px;
    line-height: 1.6;
    margin-bottom: 20px;
}
.quiz-options {
    display: flex;
    flex-direction: column;
    gap: 10px;
}
.quiz-option {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    padding: 14px 16px;
    background: #f8f9fa;
    border-radius: 12px;
    cursor: pointer;
    transition: all 0.2s;
    border: 2px solid transparent;
}
.quiz-option:active {
    background: #eee;
}
.quiz-option.correct {
    background: rgba(0, 184, 148, 0.1);
    border-color: #00B894;
}
.quiz-option.wrong {
    background: rgba(225, 112, 85, 0.1);
    border-color: #E17055;
}
.quiz-option .option-letter {
    width: 28px;
    height: 28px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #fff;
    border-radius: 50%;
    font-weight: 600;
    color: #6C5CE7;
    flex-shrink: 0;
}
.quiz-option .option-text {
    flex: 1;
    font-size: 15px;
    line-height: 1.5;
}
.quiz-footer {
    padding: 16px;
    text-align: center;
}
.quiz-hint {
    color: #94a3b8;
    font-size: 13px;
}
.quiz-result {
    padding: 20px 16px;
}
.quiz-result-correct {
    background: rgba(0, 184, 148, 0.1);
    color: #00B894;
    padding: 16px;
    border-radius: 12px;
    text-align: center;
    font-size: 16px;
    font-weight: 600;
}
.quiz-result-wrong {
    background: rgba(225, 112, 85, 0.1);
    color: #E17055;
    padding: 16px;
    border-radius: 12px;
    text-align: center;
    font-size: 16px;
    font-weight: 600;
}
.quiz-result-tip {
    color: #666;
    font-size: 14px;
    text-align: center;
}
.quiz-continue-btn {
    display: block;
    width: 100%;
    padding: 14px;
    background: linear-gradient(135deg, #6C5CE7, #a29bfe);
    color: white;
    border: none;
    border-radius: 12px;
    font-size: 15px;
    font-weight: 600;
    cursor: pointer;
    margin-top: 16px;
}
.quiz-continue-btn:active {
    transform: scale(0.98);
}
.quiz-explanation {
    color: #666;
    font-size: 14px;
    line-height: 1.6;
}

/* ========== 每日任务卡 ========== */
.daily-task-card {
    margin: 12px 16px;
    padding: 16px;
    background: linear-gradient(135deg, #6C5CE7, #a29bfe);
    border-radius: 16px;
    box-shadow: 0 4px 16px rgba(108, 92, 231, 0.25);
    animation: fadeInUp 0.4s ease;
}

.daily-task-card-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 12px;
}

.daily-task-card-title {
    color: white;
    font-size: 16px;
    font-weight: 700;
}

.daily-task-complete-badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: rgba(255, 255, 255, 0.25);
    color: white;
    font-size: 12px;
    font-weight: 600;
    padding: 4px 10px;
    border-radius: 12px;
    min-width: 36px;
}

.daily-task-list {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.daily-task-item {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 10px 12px;
    background: rgba(255, 255, 255, 0.15);
    border-radius: 10px;
    cursor: pointer;
    transition: all 0.2s ease;
}

.daily-task-item:active {
    transform: scale(0.98);
    background: rgba(255, 255, 255, 0.25);
}

.daily-task-checkbox {
    width: 22px;
    height: 22px;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.3);
    color: white;
    font-size: 11px;
    font-weight: 700;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.daily-task-checkbox.checked {
    background: #10B981;
}

.daily-task-text {
    flex: 1;
    color: white;
    font-size: 14px;
    font-weight: 500;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.daily-task-text.completed {
    text-decoration: line-through;
    opacity: 0.7;
}

.daily-task-time {
    color: rgba(255, 255, 255, 0.7);
    font-size: 11px;
    font-weight: 500;
    flex-shrink: 0;
}

.daily-task-all-done {
    text-align: center;
    color: white;
    font-size: 14px;
    font-weight: 600;
    padding: 12px;
    background: rgba(16, 185, 129, 0.3);
    border-radius: 10px;
    margin-top: 8px;
}

/* 四六级切换药丸按钮 */
.exam-type-switch {
    display: flex;
    background: rgba(255,255,255,0.2);
    border-radius: 20px;
    padding: 3px;
    gap: 2px;
}
.exam-type-btn {
    padding: 5px 14px;
    border: none;
    border-radius: 17px;
    font-size: 13px;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.25s;
    background: transparent;
    color: rgba(255,255,255,0.7);
}
.exam-type-btn.active {
    background: #fff;
    color: #6C5CE7;
    box-shadow: 0 2px 8px rgba(0,0,0,0.12);
}
.exam-type-btn:not(.active):hover {
    color: rgba(255,255,255,0.95);
}

/* ===== 学习计划页新样式 ===== */

/* 阶段总览 */
.plan-phase-overview {
    background: linear-gradient(135deg, #F8F6FF 0%, #F0EEFF 100%);
    border-radius: 16px;
    padding: 16px;
    margin-bottom: 16px;
}
.plan-phase-title {
    font-size: 14px;
    font-weight: 700;
    color: #1a1a2e;
    margin-bottom: 12px;
}
.plan-phase-progress {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    position: relative;
}
.plan-phase-progress::before {
    content: '';
    position: absolute;
    top: 8px;
    left: 16px;
    right: 16px;
    height: 2px;
    background: #E8E4FF;
    z-index: 0;
}
.plan-phase-item {
    display: flex;
    flex-direction: column;
    align-items: center;
    flex: 1;
    position: relative;
    z-index: 1;
}
.plan-phase-dot {
    width: 16px;
    height: 16px;
    border-radius: 50%;
    background: #E8E4FF;
    border: 2px solid #fff;
    margin-bottom: 6px;
}
.plan-phase-item.active .plan-phase-dot {
    background: #6C5CE7;
    box-shadow: 0 0 0 4px rgba(108,92,231,0.2);
}
.plan-phase-item.past .plan-phase-dot {
    background: #10B981;
}
.plan-phase-name {
    font-size: 11px;
    font-weight: 600;
    color: #64748B;
    text-align: center;
}
.plan-phase-item.active .plan-phase-name {
    color: #6C5CE7;
}
.plan-phase-days {
    font-size: 10px;
    color: #94A3B8;
    margin-top: 2px;
}

/* 今日任务卡片 */
.plan-today-card {
    background: linear-gradient(135deg, #6C5CE7 0%, #8B7CF7 100%);
    border-radius: 20px;
    padding: 20px;
    margin-bottom: 16px;
    box-shadow: 0 4px 16px rgba(108,92,231,0.3);
}
.plan-today-card.completed {
    background: linear-gradient(135deg, #10B981 0%, #34D399 100%);
    box-shadow: 0 4px 16px rgba(16,185,129,0.3);
}
.plan-today-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 12px;
}
.plan-today-label {
    font-size: 16px;
    font-weight: 700;
    color: #fff;
}
.plan-today-badge {
    font-size: 12px;
    padding: 4px 10px;
    border-radius: 12px;
    background: rgba(255,255,255,0.2);
    color: #fff;
}
.plan-today-badge.done {
    background: rgba(255,255,255,0.3);
}
.plan-today-focus {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 16px;
}
.plan-focus-tag {
    font-size: 13px;
    padding: 4px 12px;
    background: rgba(255,255,255,0.2);
    border-radius: 8px;
    color: #fff;
}
.plan-est-time {
    font-size: 12px;
    color: rgba(255,255,255,0.8);
}
.plan-today-tasks {
    display: flex;
    flex-direction: column;
    gap: 8px;
}
.plan-task-item {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 10px 12px;
    background: rgba(255,255,255,0.15);
    border-radius: 12px;
    cursor: pointer;
    transition: all 0.2s;
}
.plan-task-item:active {
    transform: scale(0.98);
    background: rgba(255,255,255,0.25);
}
.plan-task-icon {
    width: 28px;
    height: 28px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(255,255,255,0.2);
    border-radius: 8px;
    flex-shrink: 0;
}
.plan-task-icon svg {
    width: 16px;
    height: 16px;
    stroke: #fff;
}
.plan-task-text {
    flex: 1;
    font-size: 13px;
    color: #fff;
    line-height: 1.4;
}
.plan-task-arrow {
    font-size: 18px;
    color: rgba(255,255,255,0.6);
}
.plan-today-empty {
    text-align: center;
    color: rgba(255,255,255,0.8);
    padding: 20px;
    font-size: 14px;
}

/* 未来3天预览 */
.plan-future-section {
    background: #fff;
    border-radius: 16px;
    padding: 16px;
    margin-bottom: 16px;
    box-shadow: 0 2px 8px rgba(0,0,0,0.04);
}
.plan-future-title {
    font-size: 14px;
    font-weight: 700;
    color: #1a1a2e;
    margin-bottom: 12px;
}
.plan-future-list {
    display: flex;
    flex-direction: column;
    gap: 8px;
}
.plan-future-item {
    display: flex;
    align-items: center;
    padding: 12px;
    background: #F8F9FA;
    border-radius: 12px;
}
.plan-future-day {
    font-size: 13px;
    font-weight: 600;
    color: #6C5CE7;
    margin-right: 12px;
    min-width: 50px;
}
.plan-future-info {
    flex: 1;
}
.plan-future-dim {
    font-size: 13px;
    color: #1a1a2e;
    font-weight: 500;
}
.plan-future-phase {
    font-size: 11px;
    color: #94A3B8;
    margin-top: 2px;
}
.plan-future-time {
    font-size: 12px;
    color: #64748B;
}

/* 完成度统计 */
.plan-stats-card {
    display: flex;
    align-items: center;
    justify-content: space-around;
    background: #fff;
    border-radius: 16px;
    padding: 16px;
    margin-bottom: 16px;
    box-shadow: 0 2px 8px rgba(0,0,0,0.04);
}
.plan-stat-item {
    text-align: center;
}
.plan-stat-value {
    font-size: 24px;
    font-weight: 700;
    color: #6C5CE7;
}
.plan-stat-label {
    font-size: 11px;
    color: #64748B;
    margin-top: 4px;
}
.plan-stat-divider {
    width: 1px;
    height: 40px;
    background: #E8E4FF;
}

/* 操作按钮 */
.plan-actions {
    display: flex;
    gap: 12px;
    margin-bottom: 20px;
}
.plan-btn-secondary {
    flex: 1;
    padding: 12px;
    background: #F1F5F9;
    color: #64748B;
    border: none;
    border-radius: 12px;
    font-size: 14px;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.2s;
}
.plan-btn-secondary:active {
    background: #E2E8F0;
}

/* 首页今日任务卡片 */
.home-task-card {
    display: flex;
    align-items: center;
    gap: 10px;
    margin: 8px 16px;
    padding: 10px 12px;
    background: white;
    border-radius: 12px;
    box-shadow: 0 1px 4px rgba(0,0,0,0.06);
    cursor: pointer;
    transition: all 0.15s;
}
.home-task-card:active {
    transform: scale(0.97);
}
.home-task-badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: #F1F5F9;
    color: #475569;
    font-size: 11px;
    font-weight: 600;
    padding: 3px 8px;
    border-radius: 10px;
    min-width: 32px;
}


/* 今日待办卡片样式 */
.today-task-card {
    margin: 12px 16px;
    padding: 16px;
    background: linear-gradient(135deg, #6C5CE7, #a29bfe);
    border-radius: 16px;
    box-shadow: 0 4px 16px rgba(108, 92, 231, 0.25);
    animation: fadeInUp 0.4s ease;
}

.today-task-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 12px;
}

.today-task-title {
    color: white;
    font-size: 16px;
    font-weight: 700;
}

.today-task-progress {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: rgba(255, 255, 255, 0.25);
    color: white;
    font-size: 12px;
    font-weight: 600;
    padding: 4px 10px;
    border-radius: 12px;
    min-width: 36px;
}

.today-task-list {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.today-task-item {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 10px 12px;
    background: rgba(255, 255, 255, 0.15);
    border-radius: 10px;
    cursor: pointer;
    transition: all 0.2s ease;
}

.today-task-item:active {
    transform: scale(0.98);
    background: rgba(255, 255, 255, 0.25);
}

.today-task-item.completed {
    opacity: 0.7;
    cursor: default;
}

.today-task-icon {
    width: 24px;
    height: 24px;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.3);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 12px;
    flex-shrink: 0;
}

.today-task-icon.completed {
    background: #10B981;
}

.today-task-text {
    flex: 1;
    color: white;
    font-size: 14px;
    font-weight: 500;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.today-task-text.completed {
    text-decoration: line-through;
    opacity: 0.8;
}

.today-task-dim {
    color: rgba(255, 255, 255, 0.7);
    font-size: 11px;
    font-weight: 500;
    flex-shrink: 0;
}

.today-task-all-done {
    text-align: center;
    color: white;
    font-size: 14px;
    font-weight: 600;
    padding: 12px;
    background: rgba(16, 185, 129, 0.3);
    border-radius: 10px;
    margin-top: 8px;
}

.today-task-empty {
    text-align: center;
    padding: 8px 0;
}

.today-task-generate-btn {
    width: 100%;
    padding: 12px;
    background: rgba(255, 255, 255, 0.2);
    border: 1px dashed rgba(255, 255, 255, 0.5);
    border-radius: 10px;
    color: white;
    font-size: 14px;
    font-weight: 500;
    cursor: pointer;
    transition: all 0.2s;
}

.today-task-generate-btn:active {
    background: rgba(255, 255, 255, 0.3);
    transform: scale(0.98);
}

/* ===== 首页待复习错题提醒卡片 ===== */
.home-review-reminder {
    display: flex;
    align-items: center;
    padding: 14px 16px;
    background: linear-gradient(135deg, #FFF8F0 0%, #FFF3E6 100%);
    border: 1px solid #FFDDB0;
    border-radius: 14px;
    margin: 0 16px 16px;
    cursor: pointer;
    transition: all 0.2s;
}

.home-review-reminder:active {
    transform: scale(0.98);
    background: linear-gradient(135deg, #FFE8D0 0%, #FFDCC0 100%);
}

.home-review-icon {
    width: 42px;
    height: 42px;
    border-radius: 12px;
    background: linear-gradient(135deg, #FF8C42 0%, #FF6B35 100%);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 20px;
    margin-right: 12px;
    box-shadow: 0 2px 8px rgba(255, 107, 53, 0.3);
}

.home-review-info {
    flex: 1;
}

.home-review-title {
    font-size: 15px;
    font-weight: 700;
    color: #1a1a2e;
    margin-bottom: 2px;
}

.home-review-desc {
    font-size: 12px;
    color: #64748B;
}

.home-review-arrow {
    font-size: 22px;
    color: #CBD5E1;
    font-weight: 300;
}

/* ===== 使用帮助页面样式 ===== */
.help-guide-badge {
    display: none;
    width: 8px;
    height: 8px;
    background: #EF4444;
    border-radius: 50%;
    margin-left: 4px;
    vertical-align: middle;
}

.help-guide-overlay {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: #F8FAFC;
    z-index: 1100;
    display: none;
    flex-direction: column;
    overflow: hidden;
}

.help-guide-header {
    padding: 16px 20px;
    padding-top: calc(16px + var(--safe-top));
    display: flex;
    align-items: center;
    justify-content: space-between;
    background: #FFFFFF;
    flex-shrink: 0;
    border-bottom: 1px solid #F1F5F9;
}

.help-guide-back {
    width: 36px;
    height: 36px;
    border-radius: 50%;
    background: #F1F5F9;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    border: none;
    transition: background 0.2s;
}
.help-guide-back:active { background: #E2E8F0; }
.help-guide-back svg { width: 20px; height: 20px; stroke: #475569; stroke-width: 2; }

.help-guide-title {
    font-size: 17px;
    font-weight: 700;
    color: #1E293B;
    letter-spacing: -0.3px;
}

.help-guide-content {
    flex: 1;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
    padding: 20px 16px;
    padding-bottom: calc(40px + var(--safe-bottom));
}

.help-guide-list {
    background: #FFFFFF;
    border-radius: 16px;
    overflow: hidden;
    box-shadow: 0 1px 3px rgba(0,0,0,0.05);
}

.help-item {
    display: flex;
    align-items: center;
    padding: 16px;
    cursor: pointer;
    transition: background 0.2s;
    border-bottom: 1px solid #F1F5F9;
}
.help-item:last-child { border-bottom: none; }
.help-item:active { background: #F8FAFC; }

.help-item-icon {
    width: 44px;
    height: 44px;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    margin-right: 14px;
}
.help-item-icon svg { width: 22px; height: 22px; stroke-width: 1.8; }
.help-item-icon.purple { background: rgba(108,92,231,0.1); }
.help-item-icon.purple svg { stroke: #6C5CE7; }
.help-item-icon.blue { background: rgba(59,130,246,0.1); }
.help-item-icon.blue svg { stroke: #3B82F6; }
.help-item-icon.teal { background: rgba(0,188,212,0.1); }
.help-item-icon.teal svg { stroke: #00BCD4; }
.help-item-icon.orange { background: rgba(243,156,18,0.1); }
.help-item-icon.orange svg { stroke: #F39C12; }
.help-item-icon.red { background: rgba(239,68,68,0.1); }
.help-item-icon.red svg { stroke: #EF4444; }
.help-item-icon.green { background: rgba(0,184,148,0.1); }
.help-item-icon.green svg { stroke: #00B894; }

.help-item-content {
    flex: 1;
    min-width: 0;
}

.help-item-title {
    font-size: 15px;
    font-weight: 600;
    color: #1E293B;
    margin-bottom: 4px;
}

.help-item-desc {
    font-size: 13px;
    color: #64748B;
    line-height: 1.4;
}

.help-item-arrow {
    width: 24px;
    height: 24px;
    flex-shrink: 0;
    margin-left: 8px;
}
.help-item-arrow svg { width: 20px; height: 20px; stroke: #CBD5E1; stroke-width: 2; }

.help-guide-footer {
    margin-top: 32px;
    text-align: center;
    padding: 20px;
    background: linear-gradient(135deg, #f8fafc 0%, #f1f5f9 100%);
    border-radius: 16px;
    border: 1px solid #E2E8F0;
}

.help-guide-contact {
    font-size: 14px;
    color: #64748B;
    margin-bottom: 8px;
}

.help-guide-contact-info {
    font-size: 15px;
    font-weight: 600;
    color: #6C5CE7;
}

/* v116: 技能等级状态条 */
.home-skill-bar {
    display: flex;
    gap: 12px;
    padding: 12px 0 4px 0;
    justify-content: center;
}
.home-skill-item {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 4px;
    font-size: 11px;
    color: rgba(255,255,255,0.7);
    cursor: pointer;
    padding: 6px 10px;
    border-radius: 10px;
    background: rgba(255,255,255,0.1);
    transition: all 0.2s;
}
.home-skill-item:active {
    transform: scale(0.95);
    background: rgba(255,255,255,0.2);
}
.home-skill-dot {
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background: #ccc;
}
.home-skill-level {
    font-size: 10px;
    font-weight: 600;
}

/* v121: 提分路线图 */
.score-roadmap {
    background: linear-gradient(135deg, #6C5CE7 0%, #A29BFE 100%);
    border-radius: 16px;
    padding: 16px;
    margin: 12px 0;
    color: white;
}
.roadmap-title {
    font-size: 15px;
    font-weight: 700;
    margin-bottom: 12px;
}
.roadmap-phase {
    display: flex;
    gap: 10px;
    margin-bottom: 10px;
    align-items: flex-start;
}
.roadmap-phase:last-child { margin-bottom: 0; }
.roadmap-phase-num {
    width: 22px;
    height: 22px;
    border-radius: 50%;
    background: rgba(255,255,255,0.25);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 11px;
    font-weight: 700;
    flex-shrink: 0;
}
.roadmap-phase-num.active {
    background: white;
    color: #6C5CE7;
}
.roadmap-phase-num.done {
    background: #00B894;
}
.roadmap-phase-body {
    flex: 1;
}
.roadmap-phase-title {
    font-size: 13px;
    font-weight: 600;
    margin-bottom: 2px;
}
.roadmap-phase-sub {
    font-size: 11px;
    opacity: 0.85;
    line-height: 1.4;
}
.roadmap-phase-tip {
    font-size: 10px;
    background: rgba(255,255,255,0.2);
    border-radius: 6px;
    padding: 4px 8px;
    margin-top: 4px;
    display: inline-block;
}
.roadmap-current {
    background: rgba(255,255,255,0.15);
    border-radius: 10px;
    padding: 8px 10px;
    margin-top: 4px;
}
.roadmap-action {
    display: inline-block;
    background: white;
    color: #6C5CE7;
    font-size: 11px;
    font-weight: 600;
    padding: 4px 12px;
    border-radius: 12px;
    margin-top: 6px;
    cursor: pointer;
}
.ai-cap-tip {
    font-size: 10px;
    color: #FF6B35;
    margin-top: 2px;
    line-height: 1.3;
    font-weight: 500;
}

/* ===== 细化提分路线 ===== */
.detail-roadmap {
    margin: 12px 0;
    background: white;
    border-radius: 16px;
    padding: 16px;
    border: 1px solid #F0F0F5;
}
.roadmap-title-d {
    font-size: 15px;
    font-weight: 700;
    color: #1E293B;
    margin-bottom: 12px;
}
.detail-skill-card {
    background: #F8FAFC;
    border-radius: 12px;
    padding: 14px;
    margin-bottom: 10px;
    border: 1px solid #F0F0F5;
    transition: all 0.2s;
}
.detail-skill-card:last-child { margin-bottom: 0; }
.detail-skill-card.is-weak {
    border-color: #6C5CE7;
    background: linear-gradient(135deg, rgba(108,92,231,0.04) 0%, rgba(162,155,254,0.04) 100%);
}
.detail-skill-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 10px;
}
.detail-skill-name {
    font-size: 14px;
    font-weight: 700;
    color: #1E293B;
    display: flex;
    align-items: center;
    gap: 6px;
}
.detail-skill-name .skill-icon {
    font-size: 16px;
}
.detail-skill-meta {
    display: flex;
    align-items: center;
    gap: 8px;
}
.detail-skill-score {
    font-size: 13px;
    font-weight: 700;
    color: #6C5CE7;
}
.detail-skill-level {
    font-size: 11px;
    font-weight: 600;
    padding: 2px 8px;
    border-radius: 10px;
    background: #F1F5F9;
    color: #64748B;
}
.detail-skill-level.weak { background: #FEE2E2; color: #DC2626; }
.detail-skill-level.fair { background: #FEF3C7; color: #D97706; }
.detail-skill-level.good { background: #D1FAE5; color: #059669; }
.detail-skill-level.top { background: #EDE9FE; color: #6C5CE7; }
.detail-stages {
    display: flex;
    flex-direction: column;
    gap: 4px;
    margin-bottom: 8px;
}
.detail-stage {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 12px;
    color: #94A3B8;
    padding: 3px 0;
}
.detail-stage-dot {
    width: 18px;
    height: 18px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 9px;
    flex-shrink: 0;
    background: #E2E8F0;
    color: #94A3B8;
}
.detail-stage.done .detail-stage-dot {
    background: #00B894;
    color: white;
}
.detail-stage.active .detail-stage-dot {
    background: #6C5CE7;
    color: white;
    box-shadow: 0 0 0 2px rgba(108,92,231,0.3);
}
.detail-stage.active {
    color: #1E293B;
    font-weight: 600;
}
.detail-stage.done {
    color: #059669;
}
.detail-stage.locked .detail-stage-dot {
    background: #F1F5F9;
    color: #CBD5E1;
}
.detail-stage-name {
    flex: 1;
}
.detail-stage-desc {
    font-size: 11px;
    color: #94A3B8;
}
.detail-stage.active .detail-stage-desc {
    color: #6C5CE7;
    font-weight: 500;
}
.detail-skill-tip {
    font-size: 11px;
    color: #6C5CE7;
    background: rgba(108,92,231,0.06);
    border-radius: 6px;
    padding: 6px 10px;
    margin-bottom: 8px;
    line-height: 1.4;
}
.detail-skill-action {
    display: inline-block;
    background: #6C5CE7;
    color: white;
    font-size: 12px;
    font-weight: 600;
    padding: 6px 16px;
    border-radius: 14px;
    cursor: pointer;
    transition: all 0.2s;
}
.detail-skill-action:active {
    transform: scale(0.96);
}
.detail-no-diag {
    text-align: center;
    padding: 20px;
    color: #94A3B8;
    font-size: 13px;
}

/* P3: Today focus in roadmap */
.roadmap-today-focus {
    background: rgba(255,255,255,0.15);
    border-radius: 10px;
    padding: 10px 12px;
    margin-bottom: 8px;
}
.roadmap-today-label {
    font-size: 11px;
    opacity: 0.8;
    margin-bottom: 4px;
}
.roadmap-today-action {
    font-size: 15px;
    font-weight: 700;
    color: white;
    cursor: pointer;
    margin-bottom: 2px;
}
.roadmap-today-sub {
    font-size: 11px;
    opacity: 0.75;
}

/* P4: Diagnosis comparison */
.diag-comparison-banner {
    background: linear-gradient(135deg, #F8FAFC, #EDE9FE);
    border-radius: 14px;
    padding: 16px;
    margin: 12px 0;
    border: 1px solid rgba(108,92,231,0.15);
}
.diag-comparison-title {
    font-size: 15px;
    font-weight: 700;
    color: #1E293B;
    margin-bottom: 12px;
    text-align: center;
}
.diag-comparison-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 8px;
}
.diag-comp-item {
    background: white;
    border-radius: 10px;
    padding: 10px;
    text-align: center;
}
.diag-comp-name {
    font-size: 12px;
    color: #64748B;
    margin-bottom: 4px;
}
.diag-comp-scores {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    font-size: 14px;
    font-weight: 700;
}
.diag-comp-prev {
    color: #94A3B8;
    text-decoration: line-through;
    font-size: 13px;
}
.diag-comp-arrow {
    font-size: 12px;
}
.diag-comp-cur {
    font-size: 16px;
}

/* P1: Stage upgrade toast */
.toast-upgrade {
    background: linear-gradient(135deg, #6C5CE7, #A29BFE) !important;
    color: white !important;
    font-weight: 700;
}

/* ===== 今日任务卡片（教练模式核心） ===== */
.home-today-tasks {
    margin: 0 16px 16px;
    background: #fff;
    border-radius: 16px;
    padding: 18px 16px 14px;
    box-shadow: 0 2px 12px rgba(108,92,231,0.08);
    border: 1px solid rgba(108,92,231,0.1);
}
.htt-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 14px;
}
.htt-header-left {
    display: flex;
    align-items: center;
    gap: 8px;
}
.htt-title {
    font-size: 16px;
    font-weight: 700;
    color: #1a1a2e;
}
.htt-progress {
    font-size: 13px;
    font-weight: 600;
    color: #6C5CE7;
    background: rgba(108,92,231,0.08);
    padding: 2px 10px;
    border-radius: 20px;
}
.htt-list {
    display: flex;
    flex-direction: column;
    gap: 8px;
    margin-bottom: 14px;
}
.htt-item {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 10px 12px;
    border-radius: 12px;
    background: #f8f7ff;
    transition: background 0.2s;
    cursor: pointer;
}
.htt-item:active {
    background: #ece9ff;
}
.htt-item.done {
    background: #f0fdf4;
}
.htt-item-icon {
    width: 36px;
    height: 36px;
    border-radius: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 18px;
    flex-shrink: 0;
}
.htt-item-icon.listening { background: rgba(69,183,209,0.12); }
.htt-item-icon.reading { background: rgba(0,184,148,0.12); }
.htt-item-icon.writing { background: rgba(253,121,168,0.12); }
.htt-item-icon.translation { background: rgba(253,203,110,0.12); }
.htt-item-icon.review { background: rgba(116,185,255,0.12); }
.htt-item-icon.diagnosis { background: rgba(162,155,254,0.12); }
.htt-item-icon.sprint { background: rgba(255,118,117,0.12); }
.htt-item.done .htt-item-icon {
    background: rgba(0,184,148,0.12);
}
.htt-item-info {
    flex: 1;
    min-width: 0;
}
.htt-item-name {
    font-size: 14px;
    font-weight: 600;
    color: #1a1a2e;
    line-height: 1.3;
}
.htt-item.done .htt-item-name {
    color: #94A3B8;
    text-decoration: line-through;
}
.htt-item-desc {
    font-size: 12px;
    color: #94A3B8;
    margin-top: 2px;
}
.htt-item-time {
    font-size: 11px;
    color: #94A3B8;
    flex-shrink: 0;
    font-weight: 500;
}
.htt-item-status {
    flex-shrink: 0;
    width: 22px;
    height: 22px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 12px;
}
.htt-item-status.pending {
    border: 2px solid #e2e8f0;
    background: #fff;
}
.htt-item-status.done {
    background: #00B894;
    color: #fff;
    font-size: 11px;
}
.htt-start-btn {
    width: 100%;
    padding: 13px;
    border: none;
    border-radius: 12px;
    background: #6C5CE7;
    color: #fff;
    font-size: 15px;
    font-weight: 700;
    cursor: pointer;
    transition: background 0.2s, transform 0.1s;
    letter-spacing: 0.5px;
}
.htt-start-btn:active {
    transform: scale(0.98);
    background: #5a4bd1;
}
.htt-start-btn.all-done {
    background: #00B894;
    pointer-events: none;
}

/* ===== 练习页训练卡片 ===== */
.practice-page {
    padding: 20px 16px 0;
}
.practice-section-title {
    font-size: 20px;
    font-weight: 800;
    color: #1a1a2e;
    letter-spacing: 0.3px;
}
.practice-sub {
    font-size: 13px;
    color: #94A3B8;
    margin-top: 4px;
    margin-bottom: 16px;
}
.practice-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 12px;
    margin-bottom: 20px;
}
.practice-grid-card {
    border-radius: 16px;
    padding: 18px 16px;
    cursor: pointer;
    transition: transform 0.15s, box-shadow 0.2s;
    position: relative;
    overflow: hidden;
}
.practice-grid-card:active {
    transform: scale(0.97);
}
.practice-grid-card.dark {
    background: #1E1B3A;
    color: #fff;
    border: none;
    box-shadow: 0 2px 8px rgba(30,27,58,0.15);
}
.practice-grid-card.light {
    background: #fff;
    border: 1px solid #f1f5f9;
    box-shadow: 0 1px 3px rgba(0,0,0,0.04);
}
.pgc-icon {
    width: 32px;
    height: 32px;
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 12px;
    background: rgba(255,255,255,0.15);
    color: #fff;
}
.pgc-icon svg {
    width: 18px;
    height: 18px;
}
.practice-grid-card.light .pgc-icon {
    background: rgba(108,92,231,0.08);
    color: #6C5CE7;
}
.pgc-icon.rose {
    background: rgba(253,121,168,0.1) !important;
    color: #FD79A8 !important;
}
.pgc-icon.amber {
    background: rgba(253,203,110,0.1) !important;
    color: #E17055 !important;
}
.pgc-num {
    font-size: 32px;
    font-weight: 800;
    line-height: 1;
    letter-spacing: -0.5px;
}
.practice-grid-card.light .pgc-num {
    color: #1a1a2e;
}
.pgc-label {
    font-size: 13px;
    margin-top: 6px;
    font-weight: 600;
    opacity: 0.9;
}
.practice-grid-card.light .pgc-label {
    color: #64748b;
    opacity: 1;
}
.pgc-stage {
    font-size: 11px;
    margin-top: 4px;
    opacity: 0.6;
    font-weight: 500;
}
.practice-grid-card.light .pgc-stage {
    color: #94A3B8;
    opacity: 1;
}
/* 历史对话折叠区 */
.practice-history-section {
    border-top: 1px solid #f1f5f9;
    padding-top: 16px;
}
.practice-history-toggle {
    display: flex;
    align-items: center;
    justify-content: space-between;
    font-size: 14px;
    color: #94A3B8;
    cursor: pointer;
    padding: 8px 0;
}
.practice-history-toggle:active {
    color: #6C5CE7;
}
