4039 lines
		
	
	
		
			90 KiB
		
	
	
	
		
			CSS
		
	
	
	
	
	
			
		
		
	
	
			4039 lines
		
	
	
		
			90 KiB
		
	
	
	
		
			CSS
		
	
	
	
	
	
/* 全局样式 */
 | 
						|
:root {
 | 
						|
    --primary-color: #4a90e2;
 | 
						|
    --secondary-color: #7b68ee;
 | 
						|
    --success-color: #28a745;
 | 
						|
    --warning-color: #ffc107;
 | 
						|
    --danger-color: #dc3545;
 | 
						|
    --info-color: #17a2b8;
 | 
						|
    --light-color: #f8f9fa;
 | 
						|
    --dark-color: #343a40;
 | 
						|
    --pink-color: #e91e63;
 | 
						|
    
 | 
						|
    /* === Kid-Friendly Colors === */
 | 
						|
    --kid-primary: #FFC107; /* Amber */
 | 
						|
    --kid-secondary: #00BCD4; /* Cyan */
 | 
						|
    --kid-accent: #FF5722;   /* Deep Orange */
 | 
						|
    --kid-bg: #F0F8FF;       /* AliceBlue */
 | 
						|
    --kid-text: #5D4037;     /* Brown */
 | 
						|
    
 | 
						|
    /* === Dashboard鲜艳颜色 - 蓝绿活力版 === */
 | 
						|
    --rainbow-red: #FF6B6B;
 | 
						|
    --rainbow-orange: #FFB347;
 | 
						|
    --rainbow-yellow: #FFD93D;
 | 
						|
    --rainbow-green: #6BCF7F;
 | 
						|
    --rainbow-blue: #4D96FF;
 | 
						|
    --rainbow-purple: #9B59B6;
 | 
						|
    --rainbow-pink: #FF69B4;
 | 
						|
    
 | 
						|
    /* 场景主题色 */
 | 
						|
    --social-color: #FF6B6B;
 | 
						|
    --daily-color: #4ECDC4;
 | 
						|
    --fun-color: #FFD93D;
 | 
						|
    --learning-color: #9B59B6;
 | 
						|
    --nature-color: #6BCF7F;
 | 
						|
    --creative-color: #FF69B4;
 | 
						|
}
 | 
						|
 | 
						|
body {
 | 
						|
    font-family: 'Helvetica Neue', 'Arial', 'Hiragino Sans GB', 'Microsoft YaHei', sans-serif;
 | 
						|
    background-color: #ffffff;
 | 
						|
    color: #444;
 | 
						|
    display: flex;
 | 
						|
    flex-direction: column;
 | 
						|
    min-height: 100vh;
 | 
						|
}
 | 
						|
 | 
						|
main {
 | 
						|
    flex-grow: 1;
 | 
						|
}
 | 
						|
 | 
						|
/* 导航栏 */
 | 
						|
.navbar-brand {
 | 
						|
    font-size: 1.5rem;
 | 
						|
    font-weight: 700;
 | 
						|
}
 | 
						|
.navbar-brand i {
 | 
						|
    color: var(--primary-color);
 | 
						|
}
 | 
						|
 | 
						|
/* === Kid-Friendly Auth Styles === */
 | 
						|
.auth-page-container {
 | 
						|
    background-color: var(--kid-bg);
 | 
						|
    background-image:
 | 
						|
        radial-gradient(circle at 20% 20%, rgba(0, 188, 212, 0.1) 8%, transparent 0),
 | 
						|
        radial-gradient(circle at 80% 70%, rgba(255, 193, 7, 0.1) 8%, transparent 0);
 | 
						|
    background-size: 250px 250px;
 | 
						|
}
 | 
						|
.kid-auth-card {
 | 
						|
    border: none;
 | 
						|
    border-radius: 20px;
 | 
						|
    overflow: hidden;
 | 
						|
    background-color: #ffffff;
 | 
						|
}
 | 
						|
.kid-auth-header {
 | 
						|
    background: linear-gradient(135deg, var(--kid-primary), #FFD54F);
 | 
						|
    color: white;
 | 
						|
    padding: 2rem 1.5rem;
 | 
						|
    text-align: center;
 | 
						|
    border-bottom: 5px solid #ffb300;
 | 
						|
    position: relative;
 | 
						|
    clip-path: polygon(0 0, 100% 0, 100% 85%, 0 100%);
 | 
						|
    margin-bottom: -2rem;
 | 
						|
}
 | 
						|
.kid-auth-header .icon {
 | 
						|
    font-size: 3.5rem;
 | 
						|
    margin-bottom: 0.5rem;
 | 
						|
    transform: rotate(-10deg) scale(1.1);
 | 
						|
    display: inline-block;
 | 
						|
    color: white;
 | 
						|
    text-shadow: 2px 2px 5px rgba(0,0,0,0.25);
 | 
						|
}
 | 
						|
.kid-auth-header h2 {
 | 
						|
    font-weight: 900;
 | 
						|
    font-size: 2rem;
 | 
						|
    margin: 0;
 | 
						|
    letter-spacing: 1px;
 | 
						|
}
 | 
						|
.kid-auth-card .card-body {
 | 
						|
    padding-top: 3rem !important;
 | 
						|
}
 | 
						|
.kid-auth-card .form-label {
 | 
						|
    font-weight: 600;
 | 
						|
    color: var(--kid-text);
 | 
						|
    margin-bottom: 0.25rem;
 | 
						|
}
 | 
						|
.kid-auth-card .form-control, .kid-auth-card .form-select {
 | 
						|
    border-radius: 30px;
 | 
						|
    padding-left: 20px;
 | 
						|
    padding-top: .6rem;
 | 
						|
    padding-bottom: .6rem;
 | 
						|
    border: 2px solid #e0e0e0;
 | 
						|
    transition: all 0.3s ease;
 | 
						|
}
 | 
						|
.kid-auth-card .form-control:focus, .kid-auth-card .form-select:focus {
 | 
						|
    border-color: var(--kid-secondary);
 | 
						|
    box-shadow: 0 0 0 0.2rem rgba(0,188,212, 0.2);
 | 
						|
}
 | 
						|
.kid-auth-card .input-group-text {
 | 
						|
    border-radius: 30px 0 0 30px;
 | 
						|
    background-color: #f5f5f5;
 | 
						|
    border: 2px solid #e0e0e0; border-right: none;
 | 
						|
    color: var(--kid-secondary);
 | 
						|
}
 | 
						|
.kid-auth-card .input-group .form-control { border-radius: 0 30px 30px 0; }
 | 
						|
.kid-auth-card .input-group .btn {
 | 
						|
    border-radius: 0 30px 30px 0 !important;
 | 
						|
    border-color: #e0e0e0;
 | 
						|
    box-shadow: none;
 | 
						|
}
 | 
						|
.kid-auth-card .btn-primary, .btn-kid-accent {
 | 
						|
    background: linear-gradient(45deg, var(--kid-accent), #FF8A65);
 | 
						|
    border: none;
 | 
						|
    border-radius: 30px;
 | 
						|
    font-weight: 700;
 | 
						|
    padding: 12px 24px;
 | 
						|
    font-size: 1.1rem;
 | 
						|
    box-shadow: 0 4px 12px rgba(255, 87, 34, 0.3);
 | 
						|
    text-transform: uppercase;
 | 
						|
    letter-spacing: 1px;
 | 
						|
    color: white !important;
 | 
						|
}
 | 
						|
.kid-auth-card .btn-primary:hover, .btn-kid-accent:hover {
 | 
						|
    transform: translateY(-2px);
 | 
						|
    box-shadow: 0 6px 15px rgba(255, 87, 34, 0.45);
 | 
						|
}
 | 
						|
.kid-auth-card a {
 | 
						|
    color: var(--kid-secondary);
 | 
						|
    text-decoration: none !important;
 | 
						|
    transition: color .2s;
 | 
						|
}
 | 
						|
.kid-auth-card a:hover { color: var(--kid-accent); }
 | 
						|
 | 
						|
/* === Dashboard容器 - 蓝绿活力版 === */
 | 
						|
.dashboard-container {
 | 
						|
    min-height: 100vh;
 | 
						|
    background: linear-gradient(135deg, #11998e 0%, #38ef7d 100%);
 | 
						|
    background-attachment: fixed;
 | 
						|
    position: relative;
 | 
						|
    overflow-x: hidden;
 | 
						|
}
 | 
						|
 | 
						|
/* 彩虹背景装饰 - 增强版 */
 | 
						|
.rainbow-bg {
 | 
						|
    position: fixed;
 | 
						|
    top: 0;
 | 
						|
    left: 0;
 | 
						|
    right: 0;
 | 
						|
    bottom: 0;
 | 
						|
    background: 
 | 
						|
        radial-gradient(circle at 15% 25%, rgba(0, 188, 212, 0.15) 12%, transparent 25%),
 | 
						|
        radial-gradient(circle at 85% 15%, rgba(76, 175, 80, 0.15) 18%, transparent 30%),
 | 
						|
        radial-gradient(circle at 45% 75%, rgba(33, 150, 243, 0.12) 22%, transparent 35%),
 | 
						|
        radial-gradient(circle at 90% 85%, rgba(0, 150, 136, 0.18) 28%, transparent 40%),
 | 
						|
        radial-gradient(circle at 20% 80%, rgba(102, 187, 106, 0.15) 15%, transparent 28%);
 | 
						|
    z-index: -1;
 | 
						|
    animation: backgroundShift 25s ease-in-out infinite, backgroundPulse 8s ease-in-out infinite;
 | 
						|
}
 | 
						|
 | 
						|
@keyframes backgroundShift {
 | 
						|
    0%, 100% { opacity: 1; }
 | 
						|
    50% { opacity: 0.8; }
 | 
						|
}
 | 
						|
 | 
						|
@keyframes backgroundPulse {
 | 
						|
    0%, 100% { transform: scale(1); }
 | 
						|
    50% { transform: scale(1.05); }
 | 
						|
}
 | 
						|
 | 
						|
/* 欢迎卡片 - 更活泼 */
 | 
						|
.welcome-card-kid {
 | 
						|
    background: linear-gradient(135deg, var(--rainbow-pink), var(--rainbow-purple));
 | 
						|
    border-radius: 25px;
 | 
						|
    padding: 2rem;
 | 
						|
    color: white;
 | 
						|
    position: relative;
 | 
						|
    overflow: hidden;
 | 
						|
    box-shadow: 0 15px 40px rgba(0,0,0,0.15);
 | 
						|
}
 | 
						|
 | 
						|
/* 漂浮装饰形状 - 增强版 */
 | 
						|
.floating-shapes {
 | 
						|
    position: absolute;
 | 
						|
    top: 0;
 | 
						|
    left: 0;
 | 
						|
    right: 0;
 | 
						|
    bottom: 0;
 | 
						|
    pointer-events: none;
 | 
						|
}
 | 
						|
 | 
						|
.shape {
 | 
						|
    position: absolute;
 | 
						|
    font-size: 1.5rem;
 | 
						|
    animation: enhancedFloat 8s ease-in-out infinite;
 | 
						|
}
 | 
						|
 | 
						|
.shape-1 { top: 15%; left: 10%; animation-delay: 0s; }
 | 
						|
.shape-2 { top: 20%; right: 15%; animation-delay: 2s; }
 | 
						|
.shape-3 { bottom: 25%; left: 20%; animation-delay: 4s; }
 | 
						|
.shape-4 { bottom: 15%; right: 10%; animation-delay: 6s; }
 | 
						|
 | 
						|
@keyframes enhancedFloat {
 | 
						|
    0%, 100% { 
 | 
						|
        transform: translateY(0px) scale(1) rotate(0deg); 
 | 
						|
        opacity: 0.8; 
 | 
						|
    }
 | 
						|
    25% { 
 | 
						|
        transform: translateY(-20px) scale(1.1) rotate(5deg); 
 | 
						|
        opacity: 1; 
 | 
						|
    }
 | 
						|
    50% { 
 | 
						|
        transform: translateY(-10px) scale(0.9) rotate(-3deg); 
 | 
						|
        opacity: 0.9; 
 | 
						|
    }
 | 
						|
    75% { 
 | 
						|
        transform: translateY(-25px) scale(1.05) rotate(8deg); 
 | 
						|
        opacity: 1; 
 | 
						|
    }
 | 
						|
}
 | 
						|
 | 
						|
.welcome-title {
 | 
						|
    font-size: 2.5rem;
 | 
						|
    font-weight: 900;
 | 
						|
    margin-bottom: 1rem;
 | 
						|
    text-shadow: 2px 2px 10px rgba(0,0,0,0.3);
 | 
						|
    position: relative;
 | 
						|
    overflow: hidden;
 | 
						|
}
 | 
						|
 | 
						|
.welcome-title::after {
 | 
						|
    content: '';
 | 
						|
    position: absolute;
 | 
						|
    top: 0;
 | 
						|
    left: -100%;
 | 
						|
    width: 100%;
 | 
						|
    height: 100%;
 | 
						|
    background: linear-gradient(90deg, transparent, rgba(255,255,255,0.4), transparent);
 | 
						|
    animation: titleShine 6s ease-in-out infinite;
 | 
						|
}
 | 
						|
 | 
						|
@keyframes titleShine {
 | 
						|
    0% { left: -100%; }
 | 
						|
    20%, 80% { left: 100%; }
 | 
						|
    100% { left: 100%; }
 | 
						|
}
 | 
						|
 | 
						|
.welcome-title .wave {
 | 
						|
    display: inline-block;
 | 
						|
    animation: wave 2s ease-in-out infinite;
 | 
						|
}
 | 
						|
 | 
						|
@keyframes wave {
 | 
						|
    0%, 100% { transform: rotate(0deg); }
 | 
						|
    25% { transform: rotate(20deg); }
 | 
						|
    75% { transform: rotate(-10deg); }
 | 
						|
}
 | 
						|
 | 
						|
.welcome-title .highlight {
 | 
						|
    background: linear-gradient(45deg, #FFD700, #FFA500);
 | 
						|
    -webkit-background-clip: text;
 | 
						|
    -webkit-text-fill-color: transparent;
 | 
						|
    background-clip: text;
 | 
						|
}
 | 
						|
 | 
						|
.welcome-subtitle {
 | 
						|
    font-size: 1.2rem;
 | 
						|
    opacity: 0.95;
 | 
						|
    line-height: 1.6;
 | 
						|
}
 | 
						|
 | 
						|
.welcome-mascot {
 | 
						|
    text-align: center;
 | 
						|
}
 | 
						|
 | 
						|
.welcome-mascot i {
 | 
						|
    font-size: 5rem;
 | 
						|
    color: rgba(255,255,255,0.3);
 | 
						|
    animation: bounce 3s ease-in-out infinite;
 | 
						|
}
 | 
						|
 | 
						|
@keyframes bounce {
 | 
						|
    0%, 100% { transform: translateY(0px); }
 | 
						|
    50% { transform: translateY(-10px); }
 | 
						|
}
 | 
						|
 | 
						|
/* 区域标题 */
 | 
						|
.section-header {
 | 
						|
    text-align: center;
 | 
						|
    margin-bottom: 2rem;
 | 
						|
}
 | 
						|
 | 
						|
.section-title {
 | 
						|
    font-size: 2.2rem;
 | 
						|
    font-weight: 900;
 | 
						|
    color: white;
 | 
						|
    margin-bottom: 0.5rem;
 | 
						|
    text-shadow: 2px 2px 8px rgba(0,0,0,0.3);
 | 
						|
    position: relative;
 | 
						|
    overflow: hidden;
 | 
						|
}
 | 
						|
 | 
						|
.section-title::after {
 | 
						|
    content: '';
 | 
						|
    position: absolute;
 | 
						|
    top: 0;
 | 
						|
    left: -100%;
 | 
						|
    width: 100%;
 | 
						|
    height: 100%;
 | 
						|
    background: linear-gradient(90deg, transparent, rgba(255,255,255,0.4), transparent);
 | 
						|
    animation: titleShine 6s ease-in-out infinite;
 | 
						|
}
 | 
						|
 | 
						|
.section-subtitle {
 | 
						|
    font-size: 1.1rem;
 | 
						|
    color: rgba(255,255,255,0.9);
 | 
						|
    margin-bottom: 0;
 | 
						|
}
 | 
						|
 | 
						|
/* 徽章样式 - 增强版 */
 | 
						|
.bg-gradient-fun {
 | 
						|
    background: linear-gradient(45deg, var(--rainbow-orange), var(--rainbow-yellow)) !important;
 | 
						|
    animation: badgeGlow 3s ease-in-out infinite;
 | 
						|
}
 | 
						|
 | 
						|
.bg-gradient-voice {
 | 
						|
    background: linear-gradient(45deg, var(--rainbow-blue), var(--rainbow-purple)) !important;
 | 
						|
    animation: badgeGlow 3s ease-in-out infinite;
 | 
						|
}
 | 
						|
 | 
						|
@keyframes badgeGlow {
 | 
						|
    0%, 100% { box-shadow: 0 0 10px rgba(255,193,7,0.3); }
 | 
						|
    50% { box-shadow: 0 0 20px rgba(255,193,7,0.6); }
 | 
						|
}
 | 
						|
 | 
						|
/* 场景卡片 - 全新设计增强版 */
 | 
						|
.scenario-card-kid {
 | 
						|
    background: white;
 | 
						|
    border-radius: 20px;
 | 
						|
    padding: 0;
 | 
						|
    overflow: hidden;
 | 
						|
    box-shadow: 0 10px 30px rgba(0,0,0,0.1);
 | 
						|
    transition: all 0.3s ease;
 | 
						|
    height: 100%;
 | 
						|
    animation: cardBreathe 4s ease-in-out infinite;
 | 
						|
}
 | 
						|
 | 
						|
.scenario-card-kid:hover {
 | 
						|
    transform: translateY(-8px) scale(1.02);
 | 
						|
    box-shadow: 0 20px 50px rgba(0,0,0,0.2);
 | 
						|
}
 | 
						|
 | 
						|
@keyframes cardBreathe {
 | 
						|
    0%, 100% { box-shadow: 0 10px 30px rgba(0,0,0,0.1); }
 | 
						|
    50% { box-shadow: 0 15px 40px rgba(0,0,0,0.15); }
 | 
						|
}
 | 
						|
 | 
						|
.scenario-header {
 | 
						|
    padding: 1.5rem;
 | 
						|
    position: relative;
 | 
						|
}
 | 
						|
 | 
						|
.social-card .scenario-header { background: linear-gradient(135deg, var(--social-color), #FF8E53); }
 | 
						|
.daily-card .scenario-header { background: linear-gradient(135deg, var(--daily-color), #44A08D); }
 | 
						|
.fun-card .scenario-header { background: linear-gradient(135deg, var(--fun-color), #FFCC02); }
 | 
						|
.learning-card .scenario-header { background: linear-gradient(135deg, var(--learning-color), #8E44AD); }
 | 
						|
.nature-card .scenario-header { background: linear-gradient(135deg, var(--nature-color), #4CAF50); }
 | 
						|
.creative-card .scenario-header { background: linear-gradient(135deg, var(--creative-color), #E91E63); }
 | 
						|
 | 
						|
.scenario-icon-big {
 | 
						|
    width: 60px;
 | 
						|
    height: 60px;
 | 
						|
    background: rgba(255,255,255,0.2);
 | 
						|
    border-radius: 50%;
 | 
						|
    display: flex;
 | 
						|
    align-items: center;
 | 
						|
    justify-content: center;
 | 
						|
    margin: 0 auto 1rem;
 | 
						|
}
 | 
						|
 | 
						|
.scenario-icon-big i {
 | 
						|
    font-size: 2rem;
 | 
						|
    color: white;
 | 
						|
    transition: transform 0.3s ease;
 | 
						|
}
 | 
						|
 | 
						|
.scenario-card-kid:hover .scenario-icon-big i {
 | 
						|
    transform: rotate(360deg) scale(1.1);
 | 
						|
}
 | 
						|
 | 
						|
.difficulty-badge {
 | 
						|
    position: absolute;
 | 
						|
    top: 1rem;
 | 
						|
    right: 1rem;
 | 
						|
    padding: 0.3rem 0.8rem;
 | 
						|
    border-radius: 15px;
 | 
						|
    font-size: 0.75rem;
 | 
						|
    font-weight: 700;
 | 
						|
    text-transform: uppercase;
 | 
						|
}
 | 
						|
 | 
						|
.difficulty-badge.easy { background: #28a745; color: white; }
 | 
						|
.difficulty-badge.medium { background: #ffc107; color: #333; }
 | 
						|
.difficulty-badge.fun { background: #17a2b8; color: white; }
 | 
						|
 | 
						|
.scenario-content {
 | 
						|
    padding: 1.5rem;
 | 
						|
}
 | 
						|
 | 
						|
.scenario-title {
 | 
						|
    font-size: 1.3rem;
 | 
						|
    font-weight: 800;
 | 
						|
    color: var(--kid-text);
 | 
						|
    margin-bottom: 1rem;
 | 
						|
}
 | 
						|
 | 
						|
.scenario-desc {
 | 
						|
    color: #666;
 | 
						|
    font-size: 0.95rem;
 | 
						|
    line-height: 1.5;
 | 
						|
    margin-bottom: 1rem;
 | 
						|
}
 | 
						|
 | 
						|
.scenario-tags {
 | 
						|
    margin-bottom: 1rem;
 | 
						|
}
 | 
						|
 | 
						|
.tag {
 | 
						|
    display: inline-block;
 | 
						|
    padding: 0.3rem 0.8rem;
 | 
						|
    border-radius: 15px;
 | 
						|
    font-size: 0.75rem;
 | 
						|
    font-weight: 600;
 | 
						|
    margin: 0.2rem;
 | 
						|
}
 | 
						|
 | 
						|
.tag-social { background: #FFE5E5; color: var(--social-color); }
 | 
						|
.tag-daily { background: #E0F7FA; color: var(--daily-color); }
 | 
						|
.tag-fun { background: #FFF8E1; color: #F57F17; }
 | 
						|
.tag-learning { background: #F3E5F5; color: var(--learning-color); }
 | 
						|
.tag-nature { background: #E8F5E8; color: var(--nature-color); }
 | 
						|
.tag-creative { background: #FCE4EC; color: var(--creative-color); }
 | 
						|
.tag-basic { background: #F5F5F5; color: #666; }
 | 
						|
.tag-polite { background: #E3F2FD; color: #1976D2; }
 | 
						|
.tag-cooperation { background: #FFF3E0; color: #F57C00; }
 | 
						|
.tag-reading { background: #F1F8E9; color: #689F38; }
 | 
						|
.tag-environment { background: #E0F2F1; color: #00695C; }
 | 
						|
.tag-art { background: #FAF0E6; color: #8D6E63; }
 | 
						|
.tag-new { background: linear-gradient(45deg, #FF6B6B, #4ECDC4); color: white; }
 | 
						|
 | 
						|
.scenario-footer {
 | 
						|
    padding: 1rem 1.5rem;
 | 
						|
    border-top: 1px solid #f0f0f0;
 | 
						|
    display: flex;
 | 
						|
    justify-content: space-between;
 | 
						|
    align-items: center;
 | 
						|
}
 | 
						|
 | 
						|
.scenario-stats {
 | 
						|
    display: flex;
 | 
						|
    flex-direction: column;
 | 
						|
    gap: 0.3rem;
 | 
						|
}
 | 
						|
 | 
						|
.scenario-stats span {
 | 
						|
    font-size: 0.8rem;
 | 
						|
    color: #666;
 | 
						|
}
 | 
						|
 | 
						|
.btn-scenario-play {
 | 
						|
    background: linear-gradient(45deg, #4ECDC4, #44A08D);
 | 
						|
    border: none;
 | 
						|
    color: white;
 | 
						|
    padding: 0.5rem 1rem;
 | 
						|
    border-radius: 20px;
 | 
						|
    font-weight: 700;
 | 
						|
    font-size: 0.9rem;
 | 
						|
    transition: all 0.3s ease;
 | 
						|
    position: relative;
 | 
						|
    overflow: hidden;
 | 
						|
}
 | 
						|
 | 
						|
.btn-scenario-play:hover {
 | 
						|
    transform: scale(1.05);
 | 
						|
    box-shadow: 0 5px 15px rgba(0,0,0,0.2);
 | 
						|
    color: white;
 | 
						|
}
 | 
						|
 | 
						|
.btn-scenario-play::before {
 | 
						|
    content: '';
 | 
						|
    position: absolute;
 | 
						|
    top: 0;
 | 
						|
    left: -100%;
 | 
						|
    width: 100%;
 | 
						|
    height: 100%;
 | 
						|
    background: linear-gradient(90deg, transparent, rgba(255,255,255,0.3), transparent);
 | 
						|
    transition: left 0.6s;
 | 
						|
}
 | 
						|
 | 
						|
.btn-scenario-play:hover::before {
 | 
						|
    left: 100%;
 | 
						|
}
 | 
						|
 | 
						|
/* 语音克隆卡片 - 增强版 */
 | 
						|
.voice-clone-card {
 | 
						|
    background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
 | 
						|
    border-radius: 20px;
 | 
						|
    padding: 2rem;
 | 
						|
    color: white;
 | 
						|
    box-shadow: 0 15px 40px rgba(0,0,0,0.15);
 | 
						|
}
 | 
						|
 | 
						|
.voice-clone-visual {
 | 
						|
    text-align: center;
 | 
						|
}
 | 
						|
 | 
						|
.voice-wave-container {
 | 
						|
    display: flex;
 | 
						|
    justify-content: center;
 | 
						|
    align-items: center;
 | 
						|
    gap: 4px;
 | 
						|
    height: 60px;
 | 
						|
    animation: containerPulse 3s ease-in-out infinite;
 | 
						|
}
 | 
						|
 | 
						|
@keyframes containerPulse {
 | 
						|
    0%, 100% { transform: scale(1); }
 | 
						|
    50% { transform: scale(1.1); }
 | 
						|
}
 | 
						|
 | 
						|
.voice-wave {
 | 
						|
    width: 4px;
 | 
						|
    height: 20px;
 | 
						|
    background: white;
 | 
						|
    border-radius: 2px;
 | 
						|
    animation: voiceWave 1.5s ease-in-out infinite;
 | 
						|
}
 | 
						|
 | 
						|
.voice-wave:nth-child(2) { animation-delay: 0.2s; }
 | 
						|
.voice-wave:nth-child(3) { animation-delay: 0.4s; }
 | 
						|
.voice-wave:nth-child(4) { animation-delay: 0.6s; }
 | 
						|
 | 
						|
@keyframes voiceWave {
 | 
						|
    0%, 100% { height: 20px; opacity: 0.3; }
 | 
						|
    50% { height: 40px; opacity: 1; }
 | 
						|
}
 | 
						|
 | 
						|
.voice-clone-actions {
 | 
						|
    display: flex;
 | 
						|
    gap: 1rem;
 | 
						|
    margin-top: 1.5rem;
 | 
						|
}
 | 
						|
 | 
						|
.btn-voice-main {
 | 
						|
    background: linear-gradient(45deg, #FF6B6B, #4ECDC4);
 | 
						|
    border: none;
 | 
						|
    color: white;
 | 
						|
    padding: 0.8rem 1.5rem;
 | 
						|
    border-radius: 25px;
 | 
						|
    font-weight: 700;
 | 
						|
    transition: all 0.3s ease;
 | 
						|
    flex: 1;
 | 
						|
    position: relative;
 | 
						|
    overflow: hidden;
 | 
						|
}
 | 
						|
 | 
						|
.btn-voice-main:hover {
 | 
						|
    transform: translateY(-2px);
 | 
						|
    box-shadow: 0 8px 25px rgba(0,0,0,0.3);
 | 
						|
    color: white;
 | 
						|
}
 | 
						|
 | 
						|
.btn-voice-main::before {
 | 
						|
    content: '';
 | 
						|
    position: absolute;
 | 
						|
    top: 0;
 | 
						|
    left: -100%;
 | 
						|
    width: 100%;
 | 
						|
    height: 100%;
 | 
						|
    background: linear-gradient(90deg, transparent, rgba(255,255,255,0.3), transparent);
 | 
						|
    transition: left 0.6s;
 | 
						|
}
 | 
						|
 | 
						|
.btn-voice-main:hover::before {
 | 
						|
    left: 100%;
 | 
						|
}
 | 
						|
 | 
						|
.btn-voice-secondary {
 | 
						|
    background: rgba(255,255,255,0.2);
 | 
						|
    border: 2px solid rgba(255,255,255,0.3);
 | 
						|
    color: white;
 | 
						|
    padding: 0.8rem 1.5rem;
 | 
						|
    border-radius: 25px;
 | 
						|
    font-weight: 700;
 | 
						|
    transition: all 0.3s ease;
 | 
						|
}
 | 
						|
 | 
						|
.btn-voice-secondary:hover:not(:disabled) {
 | 
						|
    background: rgba(255,255,255,0.3);
 | 
						|
    color: white;
 | 
						|
}
 | 
						|
 | 
						|
/* 语音提示卡片 */
 | 
						|
.voice-tips-card {
 | 
						|
    background: white;
 | 
						|
    border-radius: 15px;
 | 
						|
    padding: 1.5rem;
 | 
						|
    box-shadow: 0 10px 30px rgba(0,0,0,0.1);
 | 
						|
    height: 100%;
 | 
						|
}
 | 
						|
 | 
						|
.tips-title {
 | 
						|
    font-weight: 800;
 | 
						|
    color: var(--kid-text);
 | 
						|
    margin-bottom: 1rem;
 | 
						|
}
 | 
						|
 | 
						|
.tips-list {
 | 
						|
    list-style: none;
 | 
						|
    padding: 0;
 | 
						|
    margin: 0;
 | 
						|
}
 | 
						|
 | 
						|
.tips-list li {
 | 
						|
    padding: 0.5rem 0;
 | 
						|
    font-size: 0.9rem;
 | 
						|
    color: #666;
 | 
						|
}
 | 
						|
 | 
						|
/* 快速操作卡片 - 增强版 */
 | 
						|
.quick-action-card-kid {
 | 
						|
    background: white;
 | 
						|
    border-radius: 20px;
 | 
						|
    padding: 2rem;
 | 
						|
    text-align: center;
 | 
						|
    box-shadow: 0 10px 30px rgba(0,0,0,0.1);
 | 
						|
    transition: all 0.3s ease;
 | 
						|
    height: 100%;
 | 
						|
    position: relative;
 | 
						|
    animation: cardBreathe 4s ease-in-out infinite;
 | 
						|
}
 | 
						|
 | 
						|
.quick-action-card-kid:hover {
 | 
						|
    transform: translateY(-5px);
 | 
						|
    box-shadow: 0 20px 50px rgba(0,0,0,0.15);
 | 
						|
}
 | 
						|
 | 
						|
.action-icon-container {
 | 
						|
    width: 70px;
 | 
						|
    height: 70px;
 | 
						|
    border-radius: 50%;
 | 
						|
    margin: 0 auto 1.5rem;
 | 
						|
    display: flex;
 | 
						|
    align-items: center;
 | 
						|
    justify-content: center;
 | 
						|
    font-size: 2rem;
 | 
						|
    color: white;
 | 
						|
}
 | 
						|
 | 
						|
.action-icon-container i {
 | 
						|
    transition: transform 0.3s ease;
 | 
						|
}
 | 
						|
 | 
						|
.quick-action-card-kid:hover .action-icon-container i {
 | 
						|
    transform: rotate(360deg) scale(1.1);
 | 
						|
}
 | 
						|
 | 
						|
.test-card .action-icon-container { background: linear-gradient(45deg, #17a2b8, #20c997); }
 | 
						|
.record-card .action-icon-container { background: linear-gradient(45deg, #FF6B6B, #FF8E53); }
 | 
						|
.chat-card .action-icon-container { background: linear-gradient(45deg, #28a745, #20c997); }
 | 
						|
.progress-card .action-icon-container { background: linear-gradient(45deg, #ffc107, #fd7e14); }
 | 
						|
 | 
						|
.action-title {
 | 
						|
    font-size: 1.2rem;
 | 
						|
    font-weight: 800;
 | 
						|
    color: var(--kid-text);
 | 
						|
    margin-bottom: 0.8rem;
 | 
						|
}
 | 
						|
 | 
						|
.action-desc {
 | 
						|
    color: #666;
 | 
						|
    font-size: 0.9rem;
 | 
						|
    margin-bottom: 1.5rem;
 | 
						|
}
 | 
						|
 | 
						|
.btn-action-test { background: linear-gradient(45deg, #17a2b8, #20c997); }
 | 
						|
.btn-action-record { background: linear-gradient(45deg, #FF6B6B, #FF8E53); }
 | 
						|
.btn-action-chat { background: linear-gradient(45deg, #28a745, #20c997); }
 | 
						|
.btn-action-progress { background: linear-gradient(45deg, #ffc107, #fd7e14); }
 | 
						|
 | 
						|
.btn-action-test, .btn-action-record, .btn-action-chat, .btn-action-progress {
 | 
						|
    border: none;
 | 
						|
    color: white;
 | 
						|
    padding: 0.7rem 1.3rem;
 | 
						|
    border-radius: 20px;
 | 
						|
    font-weight: 700;
 | 
						|
    font-size: 0.9rem;
 | 
						|
    transition: all 0.3s ease;
 | 
						|
    width: 100%;
 | 
						|
    position: relative;
 | 
						|
    overflow: hidden;
 | 
						|
}
 | 
						|
 | 
						|
.btn-action-test:hover, .btn-action-record:hover {
 | 
						|
    transform: scale(1.05);
 | 
						|
    color: white;
 | 
						|
}
 | 
						|
 | 
						|
.btn-action-test::before, .btn-action-record::before {
 | 
						|
    content: '';
 | 
						|
    position: absolute;
 | 
						|
    top: 0;
 | 
						|
    left: -100%;
 | 
						|
    width: 100%;
 | 
						|
    height: 100%;
 | 
						|
    background: linear-gradient(90deg, transparent, rgba(255,255,255,0.3), transparent);
 | 
						|
    transition: left 0.6s;
 | 
						|
}
 | 
						|
 | 
						|
.btn-action-test:hover::before, .btn-action-record:hover::before {
 | 
						|
    left: 100%;
 | 
						|
}
 | 
						|
 | 
						|
.coming-soon {
 | 
						|
    position: absolute;
 | 
						|
    top: 1rem;
 | 
						|
    right: 1rem;
 | 
						|
    background: #6c757d;
 | 
						|
    color: white;
 | 
						|
    padding: 0.3rem 0.8rem;
 | 
						|
    border-radius: 10px;
 | 
						|
    font-size: 0.7rem;
 | 
						|
    font-weight: 600;
 | 
						|
}
 | 
						|
 | 
						|
/* 成就卡片 - 增强版 */
 | 
						|
.achievement-card {
 | 
						|
    background: white;
 | 
						|
    border-radius: 15px;
 | 
						|
    padding: 1.5rem;
 | 
						|
    text-align: center;
 | 
						|
    box-shadow: 0 8px 25px rgba(0,0,0,0.08);
 | 
						|
    transition: all 0.3s ease;
 | 
						|
    position: relative;
 | 
						|
    overflow: hidden;
 | 
						|
    animation: cardBreathe 4s ease-in-out infinite;
 | 
						|
}
 | 
						|
 | 
						|
.achievement-card:hover {
 | 
						|
    transform: translateY(-3px);
 | 
						|
    box-shadow: 0 15px 35px rgba(0,0,0,0.12);
 | 
						|
}
 | 
						|
 | 
						|
.achievement-icon {
 | 
						|
    width: 50px;
 | 
						|
    height: 50px;
 | 
						|
    border-radius: 50%;
 | 
						|
    margin: 0 auto 1rem;
 | 
						|
    display: flex;
 | 
						|
    align-items: center;
 | 
						|
    justify-content: center;
 | 
						|
    font-size: 1.5rem;
 | 
						|
    color: white;
 | 
						|
}
 | 
						|
 | 
						|
.time-card .achievement-icon { background: linear-gradient(45deg, #667eea, #764ba2); }
 | 
						|
.conversation-card .achievement-icon { background: linear-gradient(45deg, #4ECDC4, #44A08D); }
 | 
						|
.star-card .achievement-icon { background: linear-gradient(45deg, #FFD93D, #FFCC02); }
 | 
						|
.medal-card .achievement-icon { background: linear-gradient(45deg, #FF6B6B, #FF8E53); }
 | 
						|
 | 
						|
.achievement-number {
 | 
						|
    font-size: 2rem;
 | 
						|
    font-weight: 900;
 | 
						|
    color: var(--kid-text);
 | 
						|
    margin-bottom: 0.5rem;
 | 
						|
    animation: numberGlow 4s ease-in-out infinite;
 | 
						|
}
 | 
						|
 | 
						|
@keyframes numberGlow {
 | 
						|
    0%, 100% { text-shadow: 0 0 5px rgba(91, 64, 55, 0.3); }
 | 
						|
    50% { text-shadow: 0 0 15px rgba(91, 64, 55, 0.6); }
 | 
						|
}
 | 
						|
 | 
						|
.achievement-label {
 | 
						|
    font-size: 0.9rem;
 | 
						|
    color: #666;
 | 
						|
    margin-bottom: 1rem;
 | 
						|
}
 | 
						|
 | 
						|
.achievement-progress {
 | 
						|
    height: 4px;
 | 
						|
    background: #f0f0f0;
 | 
						|
    border-radius: 2px;
 | 
						|
    overflow: hidden;
 | 
						|
}
 | 
						|
 | 
						|
.achievement-progress .progress-bar {
 | 
						|
    height: 100%;
 | 
						|
    border-radius: 2px;
 | 
						|
    transition: width 0.5s ease;
 | 
						|
}
 | 
						|
 | 
						|
.time-card .progress-bar { background: linear-gradient(45deg, #667eea, #764ba2); }
 | 
						|
.conversation-card .progress-bar { background: linear-gradient(45deg, #4ECDC4, #44A08D); }
 | 
						|
.star-card .progress-bar { background: linear-gradient(45deg, #FFD93D, #FFCC02); }
 | 
						|
.medal-card .progress-bar { background: linear-gradient(45deg, #FF6B6B, #FF8E53); }
 | 
						|
 | 
						|
/* === 页面加载和动效增强 === */
 | 
						|
 | 
						|
/* 页面元素渐入动画 */
 | 
						|
.fade-in-up {
 | 
						|
    opacity: 0;
 | 
						|
    transform: translateY(30px);
 | 
						|
    animation: fadeInUp 0.8s ease forwards;
 | 
						|
}
 | 
						|
 | 
						|
@keyframes fadeInUp {
 | 
						|
    to {
 | 
						|
        opacity: 1;
 | 
						|
        transform: translateY(0);
 | 
						|
    }
 | 
						|
}
 | 
						|
 | 
						|
/* 加载状态类 */
 | 
						|
.page-loading .fade-in-up:nth-child(1) { animation-delay: 0.1s; }
 | 
						|
.page-loading .fade-in-up:nth-child(2) { animation-delay: 0.2s; }
 | 
						|
.page-loading .fade-in-up:nth-child(3) { animation-delay: 0.3s; }
 | 
						|
.page-loading .fade-in-up:nth-child(4) { animation-delay: 0.4s; }
 | 
						|
.page-loading .fade-in-up:nth-child(5) { animation-delay: 0.5s; }
 | 
						|
.page-loading .fade-in-up:nth-child(6) { animation-delay: 0.6s; }
 | 
						|
 | 
						|
/* 自定义图标动画 */
 | 
						|
.icon-bubble {
 | 
						|
    width: 60px;
 | 
						|
    height: 60px;
 | 
						|
    border-radius: 50%;
 | 
						|
    display: flex;
 | 
						|
    align-items: center;
 | 
						|
    justify-content: center;
 | 
						|
}
 | 
						|
 | 
						|
.icon-bubble i {
 | 
						|
    font-size: 1.5rem;
 | 
						|
}
 | 
						|
 | 
						|
/* 响应式设计 */
 | 
						|
@media (max-width: 768px) {
 | 
						|
    .welcome-title {
 | 
						|
        font-size: 2rem;
 | 
						|
    }
 | 
						|
    
 | 
						|
    .section-title {
 | 
						|
        font-size: 1.8rem;
 | 
						|
    }
 | 
						|
    
 | 
						|
    .scenario-card-kid:hover {
 | 
						|
        transform: translateY(-5px) scale(1.01);
 | 
						|
    }
 | 
						|
    
 | 
						|
    .voice-clone-actions {
 | 
						|
        flex-direction: column;
 | 
						|
    }
 | 
						|
    
 | 
						|
    .achievement-number {
 | 
						|
        font-size: 1.5rem;
 | 
						|
    }
 | 
						|
}
 | 
						|
 | 
						|
.text-pink {
 | 
						|
    color: var(--pink-color) !important;
 | 
						|
}
 | 
						|
 | 
						|
/* === 首页样式修复 === */
 | 
						|
 | 
						|
/* === 修复后的轮播图样式 === */
 | 
						|
.hero-carousel-fixed {
 | 
						|
    position: relative;
 | 
						|
    overflow: hidden;
 | 
						|
}
 | 
						|
 | 
						|
.hero-carousel-fixed .carousel-item {
 | 
						|
    height: 70vh;
 | 
						|
    min-height: 500px;
 | 
						|
    position: relative;
 | 
						|
}
 | 
						|
 | 
						|
.hero-carousel-fixed .carousel-item img {
 | 
						|
    object-fit: cover;
 | 
						|
    width: 100%;
 | 
						|
    height: 100%;
 | 
						|
}
 | 
						|
 | 
						|
.carousel-overlay {
 | 
						|
    position: absolute;
 | 
						|
    top: 0;
 | 
						|
    left: 0;
 | 
						|
    right: 0;
 | 
						|
    bottom: 0;
 | 
						|
    background: rgba(0, 0, 0, 0.4);
 | 
						|
    z-index: 1;
 | 
						|
}
 | 
						|
 | 
						|
/* 漂浮装饰元素 */
 | 
						|
.floating-decorations {
 | 
						|
    position: absolute;
 | 
						|
    top: 0;
 | 
						|
    left: 0;
 | 
						|
    right: 0;
 | 
						|
    bottom: 0;
 | 
						|
    z-index: 2;
 | 
						|
    pointer-events: none;
 | 
						|
}
 | 
						|
 | 
						|
.float-emoji {
 | 
						|
    position: absolute;
 | 
						|
    font-size: 2.5rem;
 | 
						|
    animation: floatAnimation 4s ease-in-out infinite;
 | 
						|
}
 | 
						|
 | 
						|
.float-emoji:nth-child(1) { top: 15%; left: 10%; animation-delay: 0s; }
 | 
						|
.float-emoji:nth-child(2) { top: 25%; right: 15%; animation-delay: 1s; }
 | 
						|
.float-emoji:nth-child(3) { bottom: 30%; left: 15%; animation-delay: 2s; }
 | 
						|
.float-emoji:nth-child(4) { bottom: 20%; right: 10%; animation-delay: 3s; }
 | 
						|
 | 
						|
@keyframes floatAnimation {
 | 
						|
    0%, 100% { transform: translateY(0px) rotate(0deg); opacity: 0.7; }
 | 
						|
    50% { transform: translateY(-20px) rotate(5deg); opacity: 1; }
 | 
						|
}
 | 
						|
 | 
						|
/* 轮播内容样式 */
 | 
						|
.hero-carousel-fixed .carousel-caption {
 | 
						|
    position: absolute;
 | 
						|
    bottom: 20%;
 | 
						|
    left: 50%;
 | 
						|
    transform: translateX(-50%);
 | 
						|
    z-index: 10;
 | 
						|
    color: white;
 | 
						|
    text-align: center;
 | 
						|
    max-width: 800px;
 | 
						|
    width: 90%;
 | 
						|
}
 | 
						|
 | 
						|
.hero-badge {
 | 
						|
    display: inline-block;
 | 
						|
    background: rgba(255, 255, 255, 0.2);
 | 
						|
    backdrop-filter: blur(10px);
 | 
						|
    padding: 8px 20px;
 | 
						|
    border-radius: 25px;
 | 
						|
    font-size: 0.9rem;
 | 
						|
    font-weight: 600;
 | 
						|
    margin-bottom: 1.5rem;
 | 
						|
    border: 1px solid rgba(255, 255, 255, 0.3);
 | 
						|
}
 | 
						|
 | 
						|
.hero-title {
 | 
						|
    font-size: 3.5rem;
 | 
						|
    font-weight: 900;
 | 
						|
    line-height: 1.1;
 | 
						|
    margin-bottom: 1.5rem;
 | 
						|
    text-shadow: 2px 2px 10px rgba(0,0,0,0.5);
 | 
						|
}
 | 
						|
 | 
						|
.hero-title .highlight {
 | 
						|
    background: linear-gradient(45deg, #FFD700, #FFA500);
 | 
						|
    -webkit-background-clip: text;
 | 
						|
    -webkit-text-fill-color: transparent;
 | 
						|
    background-clip: text;
 | 
						|
    position: relative;
 | 
						|
}
 | 
						|
 | 
						|
.hero-subtitle {
 | 
						|
    font-size: 1.25rem;
 | 
						|
    line-height: 1.6;
 | 
						|
    margin-bottom: 2.5rem;
 | 
						|
    opacity: 0.95;
 | 
						|
    text-shadow: 1px 1px 5px rgba(0,0,0,0.5);
 | 
						|
}
 | 
						|
 | 
						|
.btn-hero {
 | 
						|
    background: linear-gradient(45deg, #FF6B6B, #4ECDC4);
 | 
						|
    border: none;
 | 
						|
    padding: 15px 35px;
 | 
						|
    border-radius: 50px;
 | 
						|
    color: white;
 | 
						|
    font-size: 1.1rem;
 | 
						|
    font-weight: 700;
 | 
						|
    text-transform: uppercase;
 | 
						|
    letter-spacing: 1px;
 | 
						|
    box-shadow: 0 8px 25px rgba(0,0,0,0.3);
 | 
						|
    transition: all 0.3s ease;
 | 
						|
    text-decoration: none !important;
 | 
						|
}
 | 
						|
 | 
						|
.btn-hero:hover {
 | 
						|
    transform: translateY(-3px) scale(1.05);
 | 
						|
    box-shadow: 0 12px 35px rgba(0,0,0,0.4);
 | 
						|
    color: white;
 | 
						|
}
 | 
						|
 | 
						|
/* 轮播指示器和控制器 */
 | 
						|
.hero-carousel-fixed .carousel-indicators {
 | 
						|
    bottom: 30px;
 | 
						|
    z-index: 15;
 | 
						|
}
 | 
						|
 | 
						|
.hero-carousel-fixed .carousel-indicators button {
 | 
						|
    width: 15px !important;
 | 
						|
    height: 15px !important;
 | 
						|
    border-radius: 50% !important;
 | 
						|
    margin: 0 10px !important;
 | 
						|
    background: rgba(255, 255, 255, 0.5) !important;
 | 
						|
    border: 2px solid white !important;
 | 
						|
    transition: all 0.3s ease;
 | 
						|
}
 | 
						|
 | 
						|
.hero-carousel-fixed .carousel-indicators .active {
 | 
						|
    background: white !important;
 | 
						|
    transform: scale(1.2);
 | 
						|
}
 | 
						|
 | 
						|
.hero-carousel-fixed .carousel-control-prev,
 | 
						|
.hero-carousel-fixed .carousel-control-next {
 | 
						|
    z-index: 15;
 | 
						|
    width: 60px;
 | 
						|
    opacity: 0.8;
 | 
						|
}
 | 
						|
 | 
						|
.hero-carousel-fixed .carousel-control-prev:hover,
 | 
						|
.hero-carousel-fixed .carousel-control-next:hover {
 | 
						|
    opacity: 1;
 | 
						|
}
 | 
						|
 | 
						|
/* 波浪分隔符 */
 | 
						|
.wavy-divider {
 | 
						|
    height: 100px;
 | 
						|
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 320'%3e%3cpath fill='%23ffffff' fill-opacity='1' d='M0,192L80,176C160,160,320,128,480,133.3C640,139,800,181,960,186.7C1120,192,1280,160,1360,144L1440,128L1440,0L1360,0C1280,0,1120,0,960,0C800,0,640,0,480,0C320,0,160,0,80,0L0,0Z'%3e%3c/path%3e%3c/svg%3e");
 | 
						|
    background-repeat: no-repeat;
 | 
						|
    background-size: cover;
 | 
						|
    margin-top: -100px;
 | 
						|
    position: relative;
 | 
						|
    z-index: 10;
 | 
						|
}
 | 
						|
 | 
						|
/* 页面区块通用样式 */
 | 
						|
.page-section {
 | 
						|
    padding: 80px 0;
 | 
						|
}
 | 
						|
.bg-light-kid {
 | 
						|
    background-color: #fefcfa;
 | 
						|
}
 | 
						|
.section-title {
 | 
						|
    text-align: center;
 | 
						|
    margin-bottom: 50px;
 | 
						|
}
 | 
						|
.section-title h2 {
 | 
						|
    font-size: 2.5rem;
 | 
						|
    font-weight: 800;
 | 
						|
    color: var(--kid-text);
 | 
						|
    position: relative;
 | 
						|
    display: inline-block;
 | 
						|
    padding-bottom: 10px;
 | 
						|
}
 | 
						|
.section-title h2::after {
 | 
						|
    content: '';
 | 
						|
    display: block;
 | 
						|
    width: 60px;
 | 
						|
    height: 5px;
 | 
						|
    background: linear-gradient(to right, var(--kid-primary), var(--kid-accent));
 | 
						|
    border-radius: 5px;
 | 
						|
    margin: 10px auto 0;
 | 
						|
}
 | 
						|
.section-title p {
 | 
						|
    color: #777;
 | 
						|
    font-size: 1.1rem;
 | 
						|
}
 | 
						|
 | 
						|
/* 新特色卡片 */
 | 
						|
.kid-feature-card {
 | 
						|
    background: #fff;
 | 
						|
    border-radius: 15px;
 | 
						|
    padding: 30px;
 | 
						|
    text-align: center;
 | 
						|
    box-shadow: 0 10px 30px rgba(0,0,0,0.05);
 | 
						|
    transition: all 0.3s ease;
 | 
						|
    height: 100%;
 | 
						|
}
 | 
						|
.kid-feature-card:hover {
 | 
						|
    transform: translateY(-8px);
 | 
						|
    box-shadow: 0 15px 40px rgba(0,0,0,0.1);
 | 
						|
}
 | 
						|
.kid-feature-card .icon-bubble {
 | 
						|
    width: 80px;
 | 
						|
    height: 80px;
 | 
						|
    border-radius: 50%;
 | 
						|
    margin: 0 auto 20px;
 | 
						|
    display: flex;
 | 
						|
    align-items: center;
 | 
						|
    justify-content: center;
 | 
						|
}
 | 
						|
.kid-feature-card .icon-bubble i {
 | 
						|
    font-size: 2.5rem;
 | 
						|
}
 | 
						|
.kid-feature-card h5 {
 | 
						|
    font-size: 1.25rem;
 | 
						|
    font-weight: 700;
 | 
						|
    color: var(--kid-text);
 | 
						|
    margin-bottom: 10px;
 | 
						|
}
 | 
						|
.kid-feature-card p {
 | 
						|
    font-size: 0.9rem;
 | 
						|
    color: #666;
 | 
						|
}
 | 
						|
 | 
						|
/* 新场景卡片 */
 | 
						|
.scenario-card-new {
 | 
						|
    background-color: #fff;
 | 
						|
    border-radius: 20px;
 | 
						|
    padding: 2rem;
 | 
						|
    text-align: center;
 | 
						|
    box-shadow: 0 8px 25px rgba(0,0,0,0.07);
 | 
						|
    transition: all 0.3s ease-in-out;
 | 
						|
}
 | 
						|
.scenario-card-new:hover {
 | 
						|
    transform: scale(1.05);
 | 
						|
    box-shadow: 0 12px 35px rgba(0,0,0,0.12);
 | 
						|
}
 | 
						|
.scenario-card-new .scenario-icon {
 | 
						|
    width: 70px;
 | 
						|
    height: 70px;
 | 
						|
    border-radius: 50%;
 | 
						|
    margin: 0 auto 1.5rem;
 | 
						|
    background-color: #e3f2fd;
 | 
						|
    color: #2196F3;
 | 
						|
    display: flex;
 | 
						|
    justify-content: center;
 | 
						|
    align-items: center;
 | 
						|
    font-size: 2rem;
 | 
						|
}
 | 
						|
.scenario-card-new h5 {
 | 
						|
    font-weight: 700;
 | 
						|
    margin-bottom: 1rem;
 | 
						|
}
 | 
						|
.scenario-card-new p {
 | 
						|
    color: #777;
 | 
						|
    font-size: 0.95rem;
 | 
						|
    min-height: 60px;
 | 
						|
}
 | 
						|
.scenario-card-new .tags {
 | 
						|
    margin-top: 1rem;
 | 
						|
}
 | 
						|
.scenario-card-new .tag {
 | 
						|
    background-color: #eee;
 | 
						|
    color: #555;
 | 
						|
    padding: 5px 12px;
 | 
						|
    border-radius: 20px;
 | 
						|
    font-size: 0.8rem;
 | 
						|
    margin: 0 5px;
 | 
						|
    display: inline-block;
 | 
						|
}
 | 
						|
 | 
						|
/* 新CTA区块 */
 | 
						|
.cta-section-kid {
 | 
						|
    background: linear-gradient(135deg, var(--kid-secondary), var(--kid-primary));
 | 
						|
    color: white;
 | 
						|
    padding: 100px 0;
 | 
						|
}
 | 
						|
.cta-section-kid h2 {
 | 
						|
    font-size: 2.8rem;
 | 
						|
    font-weight: 800;
 | 
						|
    text-shadow: 1px 1px 3px rgba(0,0,0,0.2);
 | 
						|
}
 | 
						|
.cta-section-kid p {
 | 
						|
    font-size: 1.2rem;
 | 
						|
    opacity: 0.9;
 | 
						|
}
 | 
						|
 | 
						|
/* 首页响应式设计 */
 | 
						|
@media (max-width: 768px) {
 | 
						|
    .hero-carousel-fixed .carousel-item {
 | 
						|
        height: 60vh;
 | 
						|
        min-height: 400px;
 | 
						|
    }
 | 
						|
    
 | 
						|
    .hero-title {
 | 
						|
        font-size: 2.5rem;
 | 
						|
    }
 | 
						|
    
 | 
						|
    .hero-subtitle {
 | 
						|
        font-size: 1.1rem;
 | 
						|
    }
 | 
						|
    
 | 
						|
    .float-emoji {
 | 
						|
        font-size: 1.8rem;
 | 
						|
    }
 | 
						|
    
 | 
						|
    .btn-hero {
 | 
						|
        padding: 12px 25px;
 | 
						|
        font-size: 1rem;
 | 
						|
    }
 | 
						|
    
 | 
						|
    .hero-carousel-fixed .carousel-caption {
 | 
						|
        bottom: 15%;
 | 
						|
        width: 95%;
 | 
						|
    }
 | 
						|
}
 | 
						|
 | 
						|
/* === 语音克隆页面专用样式 - 儿童友好版 === */
 | 
						|
 | 
						|
/* 语音克隆页面容器 */
 | 
						|
.voice-clone-page {
 | 
						|
    background: linear-gradient(135deg, #FF9A9E 0%, #FECFEF 50%, #FECFEF 100%);
 | 
						|
    min-height: 100vh;
 | 
						|
    position: relative;
 | 
						|
    overflow-x: hidden;
 | 
						|
}
 | 
						|
 | 
						|
/* 语音克隆页面背景装饰 */
 | 
						|
.voice-clone-page::before {
 | 
						|
    content: '';
 | 
						|
    position: fixed;
 | 
						|
    top: 0;
 | 
						|
    left: 0;
 | 
						|
    right: 0;
 | 
						|
    bottom: 0;
 | 
						|
    background: 
 | 
						|
        radial-gradient(circle at 20% 30%, rgba(255, 182, 193, 0.3) 15%, transparent 30%),
 | 
						|
        radial-gradient(circle at 80% 20%, rgba(135, 206, 250, 0.2) 20%, transparent 35%),
 | 
						|
        radial-gradient(circle at 40% 80%, rgba(255, 218, 185, 0.25) 18%, transparent 32%),
 | 
						|
        radial-gradient(circle at 90% 70%, rgba(152, 251, 152, 0.2) 22%, transparent 40%);
 | 
						|
    z-index: -1;
 | 
						|
    animation: voicePageFloat 20s ease-in-out infinite;
 | 
						|
}
 | 
						|
 | 
						|
@keyframes voicePageFloat {
 | 
						|
    0%, 100% { transform: translateY(0px) scale(1); opacity: 0.8; }
 | 
						|
    50% { transform: translateY(-10px) scale(1.02); opacity: 1; }
 | 
						|
}
 | 
						|
 | 
						|
/* 页面标题区域增强 */
 | 
						|
.voice-clone-header {
 | 
						|
    background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
 | 
						|
    border-radius: 25px;
 | 
						|
    padding: 2rem;
 | 
						|
    margin-bottom: 2rem;
 | 
						|
    color: white;
 | 
						|
    position: relative;
 | 
						|
    overflow: hidden;
 | 
						|
    box-shadow: 0 15px 35px rgba(102, 126, 234, 0.3);
 | 
						|
}
 | 
						|
 | 
						|
.voice-clone-header::before {
 | 
						|
    content: '🎤✨🎵';
 | 
						|
    position: absolute;
 | 
						|
    top: 15px;
 | 
						|
    right: 20px;
 | 
						|
    font-size: 1.5rem;
 | 
						|
    animation: headerEmoji 3s ease-in-out infinite;
 | 
						|
}
 | 
						|
 | 
						|
@keyframes headerEmoji {
 | 
						|
    0%, 100% { transform: rotate(0deg) scale(1); opacity: 0.7; }
 | 
						|
    50% { transform: rotate(10deg) scale(1.1); opacity: 1; }
 | 
						|
}
 | 
						|
 | 
						|
.text-kid-primary {
 | 
						|
    background: linear-gradient(45deg, #FFD700, #FFA500);
 | 
						|
    -webkit-background-clip: text;
 | 
						|
    -webkit-text-fill-color: transparent;
 | 
						|
    background-clip: text;
 | 
						|
    text-shadow: 2px 2px 4px rgba(0,0,0,0.1);
 | 
						|
}
 | 
						|
 | 
						|
/* 状态卡片增强 */
 | 
						|
.voice-status-card {
 | 
						|
    background: linear-gradient(135deg, #a8edea 0%, #fed6e3 100%);
 | 
						|
    border-radius: 20px;
 | 
						|
    border: none !important;
 | 
						|
    box-shadow: 0 10px 30px rgba(168, 237, 234, 0.4);
 | 
						|
    transition: all 0.3s ease;
 | 
						|
    animation: cardFloat 4s ease-in-out infinite;
 | 
						|
}
 | 
						|
 | 
						|
@keyframes cardFloat {
 | 
						|
    0%, 100% { transform: translateY(0px); box-shadow: 0 10px 30px rgba(168, 237, 234, 0.4); }
 | 
						|
    50% { transform: translateY(-5px); box-shadow: 0 20px 40px rgba(168, 237, 234, 0.6); }
 | 
						|
}
 | 
						|
 | 
						|
/* 录制卡片样式 */
 | 
						|
.voice-record-card {
 | 
						|
    background: linear-gradient(135deg, #ff9a9e 0%, #fad0c4 100%);
 | 
						|
    border-radius: 20px;
 | 
						|
    border: none !important;
 | 
						|
    box-shadow: 0 15px 35px rgba(255, 154, 158, 0.4);
 | 
						|
    transition: all 0.3s ease;
 | 
						|
    position: relative;
 | 
						|
    overflow: hidden;
 | 
						|
}
 | 
						|
 | 
						|
.voice-record-card::before {
 | 
						|
    content: '';
 | 
						|
    position: absolute;
 | 
						|
    top: -50%;
 | 
						|
    left: -50%;
 | 
						|
    width: 200%;
 | 
						|
    height: 200%;
 | 
						|
    background: radial-gradient(circle, rgba(255,255,255,0.1) 0%, transparent 70%);
 | 
						|
    animation: recordShine 6s linear infinite;
 | 
						|
    pointer-events: none;
 | 
						|
}
 | 
						|
 | 
						|
@keyframes recordShine {
 | 
						|
    0% { transform: rotate(0deg); }
 | 
						|
    100% { transform: rotate(360deg); }
 | 
						|
}
 | 
						|
 | 
						|
.voice-record-card .card-body {
 | 
						|
    position: relative;
 | 
						|
    z-index: 2;
 | 
						|
}
 | 
						|
 | 
						|
/* 生成卡片样式 */
 | 
						|
.voice-generate-card {
 | 
						|
    background: linear-gradient(135deg, #a8edea 0%, #fed6e3 100%);
 | 
						|
    border-radius: 20px;
 | 
						|
    border: none !important;
 | 
						|
    box-shadow: 0 15px 35px rgba(168, 237, 234, 0.4);
 | 
						|
    transition: all 0.3s ease;
 | 
						|
}
 | 
						|
 | 
						|
/* 儿童友好按钮样式 */
 | 
						|
.btn-kid-primary {
 | 
						|
    background: linear-gradient(45deg, #ff6b6b, #ee5a52);
 | 
						|
    border: none;
 | 
						|
    border-radius: 25px;
 | 
						|
    color: white !important;
 | 
						|
    font-weight: 700;
 | 
						|
    padding: 12px 25px;
 | 
						|
    font-size: 1.1rem;
 | 
						|
    box-shadow: 0 8px 20px rgba(255, 107, 107, 0.4);
 | 
						|
    transition: all 0.3s ease;
 | 
						|
    position: relative;
 | 
						|
    overflow: hidden;
 | 
						|
}
 | 
						|
 | 
						|
.btn-kid-primary:hover {
 | 
						|
    transform: translateY(-3px) scale(1.05);
 | 
						|
    box-shadow: 0 12px 30px rgba(255, 107, 107, 0.6);
 | 
						|
    color: white !important;
 | 
						|
}
 | 
						|
 | 
						|
.btn-kid-primary::before {
 | 
						|
    content: '';
 | 
						|
    position: absolute;
 | 
						|
    top: 0;
 | 
						|
    left: -100%;
 | 
						|
    width: 100%;
 | 
						|
    height: 100%;
 | 
						|
    background: linear-gradient(90deg, transparent, rgba(255,255,255,0.4), transparent);
 | 
						|
    transition: left 0.6s;
 | 
						|
}
 | 
						|
 | 
						|
.btn-kid-primary:hover::before {
 | 
						|
    left: 100%;
 | 
						|
}
 | 
						|
 | 
						|
.btn-kid-accent {
 | 
						|
    background: linear-gradient(45deg, #4ecdc4, #44a08d);
 | 
						|
    border: none;
 | 
						|
    border-radius: 25px;
 | 
						|
    color: white !important;
 | 
						|
    font-weight: 700;
 | 
						|
    padding: 12px 25px;
 | 
						|
    font-size: 1.1rem;
 | 
						|
    box-shadow: 0 8px 20px rgba(78, 205, 196, 0.4);
 | 
						|
    transition: all 0.3s ease;
 | 
						|
}
 | 
						|
 | 
						|
.btn-kid-accent:hover {
 | 
						|
    transform: translateY(-3px) scale(1.05);
 | 
						|
    box-shadow: 0 12px 30px rgba(78, 205, 196, 0.6);
 | 
						|
    color: white !important;
 | 
						|
}
 | 
						|
 | 
						|
.btn-kid-secondary {
 | 
						|
    background: linear-gradient(45deg, #ffd93d, #ffcc02);
 | 
						|
    border: none;
 | 
						|
    border-radius: 25px;
 | 
						|
    color: #333 !important;
 | 
						|
    font-weight: 700;
 | 
						|
    padding: 12px 25px;
 | 
						|
    font-size: 1.1rem;
 | 
						|
    box-shadow: 0 8px 20px rgba(255, 217, 61, 0.4);
 | 
						|
    transition: all 0.3s ease;
 | 
						|
}
 | 
						|
 | 
						|
.btn-kid-secondary:hover {
 | 
						|
    transform: translateY(-3px) scale(1.05);
 | 
						|
    box-shadow: 0 12px 30px rgba(255, 217, 61, 0.6);
 | 
						|
    color: #333 !important;
 | 
						|
}
 | 
						|
 | 
						|
/* 录音控制按钮特殊样式 */
 | 
						|
.btn-record-start {
 | 
						|
    background: linear-gradient(45deg, #ff6b6b, #ee5a52);
 | 
						|
    border: none;
 | 
						|
    border-radius: 50%;
 | 
						|
    width: 80px;
 | 
						|
    height: 80px;
 | 
						|
    color: white;
 | 
						|
    font-size: 1.5rem;
 | 
						|
    box-shadow: 0 10px 25px rgba(255, 107, 107, 0.5);
 | 
						|
    transition: all 0.3s ease;
 | 
						|
    animation: recordPulse 2s ease-in-out infinite;
 | 
						|
}
 | 
						|
 | 
						|
@keyframes recordPulse {
 | 
						|
    0%, 100% { transform: scale(1); box-shadow: 0 10px 25px rgba(255, 107, 107, 0.5); }
 | 
						|
    50% { transform: scale(1.1); box-shadow: 0 15px 35px rgba(255, 107, 107, 0.7); }
 | 
						|
}
 | 
						|
 | 
						|
.btn-record-stop {
 | 
						|
    background: linear-gradient(45deg, #6c757d, #5a6169);
 | 
						|
    border: none;
 | 
						|
    border-radius: 50%;
 | 
						|
    width: 80px;
 | 
						|
    height: 80px;
 | 
						|
    color: white;
 | 
						|
    font-size: 1.5rem;
 | 
						|
    box-shadow: 0 10px 25px rgba(108, 117, 125, 0.5);
 | 
						|
    transition: all 0.3s ease;
 | 
						|
}
 | 
						|
 | 
						|
/* 音频预览增强 */
 | 
						|
.audio-preview-enhanced {
 | 
						|
    background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
 | 
						|
    border-radius: 15px;
 | 
						|
    padding: 1.5rem;
 | 
						|
    color: white;
 | 
						|
    margin-top: 1rem;
 | 
						|
    box-shadow: 0 10px 25px rgba(102, 126, 234, 0.3);
 | 
						|
    position: relative;
 | 
						|
    overflow: hidden;
 | 
						|
}
 | 
						|
 | 
						|
.audio-preview-enhanced::before {
 | 
						|
    content: '🎵';
 | 
						|
    position: absolute;
 | 
						|
    top: 15px;
 | 
						|
    right: 15px;
 | 
						|
    font-size: 1.5rem;
 | 
						|
    animation: musicNote 2s ease-in-out infinite;
 | 
						|
}
 | 
						|
 | 
						|
@keyframes musicNote {
 | 
						|
    0%, 100% { transform: translateY(0px) rotate(0deg); opacity: 0.7; }
 | 
						|
    50% { transform: translateY(-5px) rotate(10deg); opacity: 1; }
 | 
						|
}
 | 
						|
 | 
						|
.audio-preview-enhanced audio {
 | 
						|
    width: 100%;
 | 
						|
    margin-top: 1rem;
 | 
						|
}
 | 
						|
 | 
						|
/* 表单控件增强 */
 | 
						|
.voice-clone-page .form-control {
 | 
						|
    border: 3px solid #e3f2fd;
 | 
						|
    border-radius: 15px;
 | 
						|
    padding: 12px 20px;
 | 
						|
    font-size: 1.1rem;
 | 
						|
    transition: all 0.3s ease;
 | 
						|
    background: rgba(255, 255, 255, 0.9);
 | 
						|
}
 | 
						|
 | 
						|
.voice-clone-page .form-control:focus {
 | 
						|
    border-color: #4ecdc4;
 | 
						|
    box-shadow: 0 0 0 0.2rem rgba(78, 205, 196, 0.25);
 | 
						|
    background: white;
 | 
						|
    transform: scale(1.02);
 | 
						|
}
 | 
						|
 | 
						|
.voice-clone-page .form-label {
 | 
						|
    font-weight: 700;
 | 
						|
    color: #667eea;
 | 
						|
    font-size: 1.1rem;
 | 
						|
    margin-bottom: 8px;
 | 
						|
}
 | 
						|
 | 
						|
/* 提示卡片增强 */
 | 
						|
.tips-card-enhanced {
 | 
						|
    background: linear-gradient(135deg, #ffecd2 0%, #fcb69f 100%);
 | 
						|
    border-radius: 20px;
 | 
						|
    border: none !important;
 | 
						|
    box-shadow: 0 10px 25px rgba(255, 236, 210, 0.5);
 | 
						|
    transition: all 0.3s ease;
 | 
						|
}
 | 
						|
 | 
						|
.tips-card-enhanced:hover {
 | 
						|
    transform: translateY(-5px);
 | 
						|
    box-shadow: 0 15px 35px rgba(255, 236, 210, 0.7);
 | 
						|
}
 | 
						|
 | 
						|
.tips-card-enhanced .icon-bubble {
 | 
						|
    background: linear-gradient(45deg, #ff9a9e, #fecfef);
 | 
						|
    color: white;
 | 
						|
    width: 50px;
 | 
						|
    height: 50px;
 | 
						|
    border-radius: 50%;
 | 
						|
    display: flex;
 | 
						|
    align-items: center;
 | 
						|
    justify-content: center;
 | 
						|
    margin-bottom: 10px;
 | 
						|
    box-shadow: 0 5px 15px rgba(255, 154, 158, 0.4);
 | 
						|
}
 | 
						|
 | 
						|
/* 成功/错误提示增强 */
 | 
						|
.alert-success-kid {
 | 
						|
    background: linear-gradient(135deg, #d4edda 0%, #c3e6cb 100%);
 | 
						|
    border: 2px solid #b8dacd;
 | 
						|
    border-radius: 15px;
 | 
						|
    color: #155724;
 | 
						|
    padding: 1rem 1.5rem;
 | 
						|
    box-shadow: 0 5px 15px rgba(212, 237, 218, 0.5);
 | 
						|
}
 | 
						|
 | 
						|
.alert-info-kid {
 | 
						|
    background: linear-gradient(135deg, #cce7ff 0%, #b3d9ff 100%);
 | 
						|
    border: 2px solid #9ecfff;
 | 
						|
    border-radius: 15px;
 | 
						|
    color: #004085;
 | 
						|
    padding: 1rem 1.5rem;
 | 
						|
    box-shadow: 0 5px 15px rgba(204, 231, 255, 0.5);
 | 
						|
}
 | 
						|
 | 
						|
/* 波形动画增强 */
 | 
						|
.voice-wave-visual {
 | 
						|
    display: flex;
 | 
						|
    justify-content: center;
 | 
						|
    align-items: center;
 | 
						|
    gap: 6px;
 | 
						|
    height: 80px;
 | 
						|
    margin: 1rem 0;
 | 
						|
}
 | 
						|
 | 
						|
.wave-bar {
 | 
						|
    width: 6px;
 | 
						|
    height: 30px;
 | 
						|
    background: linear-gradient(45deg, #ff6b6b, #4ecdc4);
 | 
						|
    border-radius: 3px;
 | 
						|
    animation: waveAnimation 1.5s ease-in-out infinite;
 | 
						|
}
 | 
						|
 | 
						|
.wave-bar:nth-child(1) { animation-delay: 0s; }
 | 
						|
.wave-bar:nth-child(2) { animation-delay: 0.1s; }
 | 
						|
.wave-bar:nth-child(3) { animation-delay: 0.2s; }
 | 
						|
.wave-bar:nth-child(4) { animation-delay: 0.3s; }
 | 
						|
.wave-bar:nth-child(5) { animation-delay: 0.4s; }
 | 
						|
 | 
						|
@keyframes waveAnimation {
 | 
						|
    0%, 100% { 
 | 
						|
        height: 30px; 
 | 
						|
        opacity: 0.5;
 | 
						|
        transform: scaleY(1);
 | 
						|
    }
 | 
						|
    50% { 
 | 
						|
        height: 60px; 
 | 
						|
        opacity: 1;
 | 
						|
        transform: scaleY(1.5);
 | 
						|
    }
 | 
						|
}
 | 
						|
 | 
						|
/* 响应式优化 */
 | 
						|
@media (max-width: 768px) {
 | 
						|
    .voice-clone-header {
 | 
						|
        padding: 1.5rem;
 | 
						|
        margin-bottom: 1.5rem;
 | 
						|
    }
 | 
						|
    
 | 
						|
    .btn-record-start, .btn-record-stop {
 | 
						|
        width: 60px;
 | 
						|
        height: 60px;
 | 
						|
        font-size: 1.2rem;
 | 
						|
    }
 | 
						|
    
 | 
						|
    .voice-wave-visual {
 | 
						|
        height: 60px;
 | 
						|
    }
 | 
						|
    
 | 
						|
    .wave-bar {
 | 
						|
        width: 4px;
 | 
						|
        height: 20px;
 | 
						|
    }
 | 
						|
    
 | 
						|
    .wave-bar:nth-child(odd) {
 | 
						|
        height: 25px;
 | 
						|
    }
 | 
						|
}
 | 
						|
 | 
						|
/* 加载动画 */
 | 
						|
.voice-loading {
 | 
						|
    display: inline-block;
 | 
						|
    width: 20px;
 | 
						|
    height: 20px;
 | 
						|
    border: 3px solid rgba(255,255,255,.3);
 | 
						|
    border-radius: 50%;
 | 
						|
    border-top-color: #fff;
 | 
						|
    animation: spin 1s ease-in-out infinite;
 | 
						|
}
 | 
						|
 | 
						|
@keyframes spin {
 | 
						|
    to { transform: rotate(360deg); }
 | 
						|
}
 | 
						|
 | 
						|
/* === 语音克隆页面专用样式 - 儿童友好版 === */
 | 
						|
 | 
						|
/* 语音克隆页面背景 */
 | 
						|
.voice-clone-page {
 | 
						|
    min-height: 100vh;
 | 
						|
    background: linear-gradient(135deg, #E3F2FD 0%, #BBDEFB 50%, #90CAF9 100%);
 | 
						|
    background-attachment: fixed;
 | 
						|
    position: relative;
 | 
						|
    overflow-x: hidden;
 | 
						|
}
 | 
						|
 | 
						|
/* 语音克隆页面背景装饰 */
 | 
						|
.voice-clone-page::before {
 | 
						|
    content: '';
 | 
						|
    position: fixed;
 | 
						|
    top: 0;
 | 
						|
    left: 0;
 | 
						|
    right: 0;
 | 
						|
    bottom: 0;
 | 
						|
    background: 
 | 
						|
        radial-gradient(circle at 20% 30%, rgba(33, 150, 243, 0.1) 15%, transparent 25%),
 | 
						|
        radial-gradient(circle at 80% 20%, rgba(100, 181, 246, 0.12) 18%, transparent 30%),
 | 
						|
        radial-gradient(circle at 40% 80%, rgba(144, 202, 249, 0.1) 20%, transparent 35%),
 | 
						|
        radial-gradient(circle at 90% 70%, rgba(187, 222, 251, 0.15) 22%, transparent 40%);
 | 
						|
    z-index: -1;
 | 
						|
    animation: voicePageFloat 20s ease-in-out infinite;
 | 
						|
}
 | 
						|
 | 
						|
@keyframes voicePageFloat {
 | 
						|
    0%, 100% { transform: translateY(0px) scale(1); opacity: 0.8; }
 | 
						|
    50% { transform: translateY(-10px) scale(1.02); opacity: 1; }
 | 
						|
}
 | 
						|
 | 
						|
/* 增强语音克隆卡片样式 */
 | 
						|
.kid-feature-card {
 | 
						|
    background: linear-gradient(145deg, #ffffff 0%, #f8fbff 100%);
 | 
						|
    border-radius: 25px;
 | 
						|
    padding: 2rem;
 | 
						|
    box-shadow: 0 15px 35px rgba(33, 150, 243, 0.15);
 | 
						|
    border: 3px solid rgba(100, 181, 246, 0.2);
 | 
						|
    transition: all 0.4s ease;
 | 
						|
    position: relative;
 | 
						|
    overflow: hidden;
 | 
						|
}
 | 
						|
 | 
						|
.kid-feature-card::before {
 | 
						|
    content: '';
 | 
						|
    position: absolute;
 | 
						|
    top: -2px;
 | 
						|
    left: -2px;
 | 
						|
    right: -2px;
 | 
						|
    bottom: -2px;
 | 
						|
    background: linear-gradient(45deg, #FF6B6B, #4ECDC4, #45B7D1, #96CEB4, #FFEAA7);
 | 
						|
    border-radius: 25px;
 | 
						|
    z-index: -1;
 | 
						|
    opacity: 0;
 | 
						|
    transition: opacity 0.3s ease;
 | 
						|
}
 | 
						|
 | 
						|
.kid-feature-card:hover::before {
 | 
						|
    opacity: 0.3;
 | 
						|
}
 | 
						|
 | 
						|
.kid-feature-card:hover {
 | 
						|
    transform: translateY(-8px) scale(1.02);
 | 
						|
    box-shadow: 0 25px 50px rgba(33, 150, 243, 0.25);
 | 
						|
}
 | 
						|
 | 
						|
/* 语音克隆标题样式 */
 | 
						|
.text-kid-primary {
 | 
						|
    background: linear-gradient(45deg, #2196F3, #03DAC6);
 | 
						|
    -webkit-background-clip: text;
 | 
						|
    -webkit-text-fill-color: transparent;
 | 
						|
    background-clip: text;
 | 
						|
    animation: titleGlow 3s ease-in-out infinite;
 | 
						|
}
 | 
						|
 | 
						|
@keyframes titleGlow {
 | 
						|
    0%, 100% { filter: drop-shadow(0 0 5px rgba(33, 150, 243, 0.3)); }
 | 
						|
    50% { filter: drop-shadow(0 0 15px rgba(33, 150, 243, 0.6)); }
 | 
						|
}
 | 
						|
 | 
						|
/* 增强按钮样式 */
 | 
						|
.btn-kid-primary {
 | 
						|
    background: linear-gradient(45deg, #FF6B6B, #4ECDC4);
 | 
						|
    border: none;
 | 
						|
    border-radius: 25px;
 | 
						|
    color: white;
 | 
						|
    font-weight: 700;
 | 
						|
    padding: 12px 24px;
 | 
						|
    box-shadow: 0 8px 20px rgba(255, 107, 107, 0.3);
 | 
						|
    transition: all 0.3s ease;
 | 
						|
    position: relative;
 | 
						|
    overflow: hidden;
 | 
						|
}
 | 
						|
 | 
						|
.btn-kid-primary::before {
 | 
						|
    content: '';
 | 
						|
    position: absolute;
 | 
						|
    top: 0;
 | 
						|
    left: -100%;
 | 
						|
    width: 100%;
 | 
						|
    height: 100%;
 | 
						|
    background: linear-gradient(90deg, transparent, rgba(255,255,255,0.4), transparent);
 | 
						|
    transition: left 0.6s;
 | 
						|
}
 | 
						|
 | 
						|
.btn-kid-primary:hover {
 | 
						|
    transform: translateY(-3px) scale(1.05);
 | 
						|
    box-shadow: 0 12px 30px rgba(255, 107, 107, 0.4);
 | 
						|
    color: white;
 | 
						|
}
 | 
						|
 | 
						|
.btn-kid-primary:hover::before {
 | 
						|
    left: 100%;
 | 
						|
}
 | 
						|
 | 
						|
.btn-kid-accent {
 | 
						|
    background: linear-gradient(45deg, #FFD93D, #FF8A65);
 | 
						|
    border: none;
 | 
						|
    border-radius: 25px;
 | 
						|
    color: white;
 | 
						|
    font-weight: 700;
 | 
						|
    padding: 12px 24px;
 | 
						|
    box-shadow: 0 8px 20px rgba(255, 217, 61, 0.3);
 | 
						|
    transition: all 0.3s ease;
 | 
						|
    position: relative;
 | 
						|
    overflow: hidden;
 | 
						|
}
 | 
						|
 | 
						|
.btn-kid-accent::before {
 | 
						|
    content: '';
 | 
						|
    position: absolute;
 | 
						|
    top: 0;
 | 
						|
    left: -100%;
 | 
						|
    width: 100%;
 | 
						|
    height: 100%;
 | 
						|
    background: linear-gradient(90deg, transparent, rgba(255,255,255,0.4), transparent);
 | 
						|
    transition: left 0.6s;
 | 
						|
}
 | 
						|
 | 
						|
.btn-kid-accent:hover {
 | 
						|
    transform: translateY(-3px) scale(1.05);
 | 
						|
    box-shadow: 0 12px 30px rgba(255, 217, 61, 0.4);
 | 
						|
    color: white;
 | 
						|
}
 | 
						|
 | 
						|
.btn-kid-accent:hover::before {
 | 
						|
    left: 100%;
 | 
						|
}
 | 
						|
 | 
						|
/* 表单元素增强 */
 | 
						|
.form-control {
 | 
						|
    border: 3px solid #E1F5FE;
 | 
						|
    border-radius: 15px;
 | 
						|
    padding: 12px 16px;
 | 
						|
    transition: all 0.3s ease;
 | 
						|
    background: linear-gradient(145deg, #ffffff 0%, #f8fbff 100%);
 | 
						|
}
 | 
						|
 | 
						|
.form-control:focus {
 | 
						|
    border-color: #4ECDC4;
 | 
						|
    box-shadow: 0 0 0 0.2rem rgba(78, 205, 196, 0.25);
 | 
						|
    transform: scale(1.02);
 | 
						|
}
 | 
						|
 | 
						|
/* 状态卡片增强 */
 | 
						|
#status-card {
 | 
						|
    background: linear-gradient(145deg, #ffffff 0%, #f0f8ff 100%);
 | 
						|
    border-radius: 20px;
 | 
						|
    border: 2px solid rgba(33, 150, 243, 0.1);
 | 
						|
    box-shadow: 0 10px 30px rgba(33, 150, 243, 0.1);
 | 
						|
    animation: statusCardPulse 4s ease-in-out infinite;
 | 
						|
}
 | 
						|
 | 
						|
@keyframes statusCardPulse {
 | 
						|
    0%, 100% { box-shadow: 0 10px 30px rgba(33, 150, 243, 0.1); }
 | 
						|
    50% { box-shadow: 0 15px 40px rgba(33, 150, 243, 0.2); }
 | 
						|
}
 | 
						|
 | 
						|
/* 录音状态增强 */
 | 
						|
#record-status {
 | 
						|
    font-weight: 600;
 | 
						|
    animation: statusBlink 2s ease-in-out infinite;
 | 
						|
}
 | 
						|
 | 
						|
@keyframes statusBlink {
 | 
						|
    0%, 100% { opacity: 1; }
 | 
						|
    50% { opacity: 0.7; }
 | 
						|
}
 | 
						|
 | 
						|
/* 音频预览增强 */
 | 
						|
.alert-info {
 | 
						|
    background: linear-gradient(145deg, #E3F2FD 0%, #BBDEFB 100%);
 | 
						|
    border: 2px solid #90CAF9;
 | 
						|
    border-radius: 20px;
 | 
						|
    color: #1565C0;
 | 
						|
    animation: previewGlow 3s ease-in-out infinite;
 | 
						|
}
 | 
						|
 | 
						|
@keyframes previewGlow {
 | 
						|
    0%, 100% { box-shadow: 0 5px 15px rgba(33, 150, 243, 0.2); }
 | 
						|
    50% { box-shadow: 0 10px 25px rgba(33, 150, 243, 0.3); }
 | 
						|
}
 | 
						|
 | 
						|
/* 音频控件美化 */
 | 
						|
audio {
 | 
						|
    border-radius: 15px;
 | 
						|
    box-shadow: 0 5px 15px rgba(33, 150, 243, 0.2);
 | 
						|
    background: linear-gradient(145deg, #f8fbff 0%, #ffffff 100%);
 | 
						|
}
 | 
						|
 | 
						|
/* 提示卡片增强 */
 | 
						|
.voice-tips-card {
 | 
						|
    background: linear-gradient(145deg, #E8F5E8 0%, #C8E6C9 100%);
 | 
						|
    border: 2px solid #A5D6A7;
 | 
						|
    border-radius: 20px;
 | 
						|
    box-shadow: 0 10px 25px rgba(76, 175, 80, 0.15);
 | 
						|
    animation: tipsCardFloat 6s ease-in-out infinite;
 | 
						|
}
 | 
						|
 | 
						|
@keyframes tipsCardFloat {
 | 
						|
    0%, 100% { transform: translateY(0px); }
 | 
						|
    50% { transform: translateY(-5px); }
 | 
						|
}
 | 
						|
 | 
						|
.tips-title {
 | 
						|
    color: #2E7D32;
 | 
						|
    text-shadow: 1px 1px 3px rgba(46, 125, 50, 0.2);
 | 
						|
}
 | 
						|
 | 
						|
.tips-list li {
 | 
						|
    color: #388E3C;
 | 
						|
    transition: transform 0.2s ease;
 | 
						|
}
 | 
						|
 | 
						|
.tips-list li:hover {
 | 
						|
    transform: translateX(5px);
 | 
						|
}
 | 
						|
 | 
						|
/* 加载动画增强 */
 | 
						|
.spinner-border {
 | 
						|
    animation: rainbowSpin 1.5s linear infinite;
 | 
						|
}
 | 
						|
 | 
						|
@keyframes rainbowSpin {
 | 
						|
    0% { border-top-color: #FF6B6B; transform: rotate(0deg); }
 | 
						|
    25% { border-top-color: #4ECDC4; }
 | 
						|
    50% { border-top-color: #45B7D1; }
 | 
						|
    75% { border-top-color: #96CEB4; }
 | 
						|
    100% { border-top-color: #FF6B6B; transform: rotate(360deg); }
 | 
						|
}
 | 
						|
 | 
						|
/* 图标增强 */
 | 
						|
.fas {
 | 
						|
    filter: drop-shadow(0 2px 4px rgba(0,0,0,0.1));
 | 
						|
    transition: all 0.3s ease;
 | 
						|
}
 | 
						|
 | 
						|
.btn:hover .fas {
 | 
						|
    transform: scale(1.1);
 | 
						|
}
 | 
						|
 | 
						|
/* 语音波浪增强(如果有的话) */
 | 
						|
.voice-wave-container {
 | 
						|
    background: rgba(78, 205, 196, 0.1);
 | 
						|
    border-radius: 15px;
 | 
						|
    padding: 10px;
 | 
						|
    animation: waveContainerPulse 2s ease-in-out infinite;
 | 
						|
}
 | 
						|
 | 
						|
@keyframes waveContainerPulse {
 | 
						|
    0%, 100% { background: rgba(78, 205, 196, 0.1); }
 | 
						|
    50% { background: rgba(78, 205, 196, 0.2); }
 | 
						|
}
 | 
						|
 | 
						|
/* 响应式优化 */
 | 
						|
@media (max-width: 768px) {
 | 
						|
    .kid-feature-card {
 | 
						|
        padding: 1.5rem;
 | 
						|
    }
 | 
						|
    
 | 
						|
    .btn-kid-primary, .btn-kid-accent {
 | 
						|
        padding: 10px 20px;
 | 
						|
        font-size: 0.95rem;
 | 
						|
    }
 | 
						|
    
 | 
						|
    .text-kid-primary {
 | 
						|
        font-size: 1.8rem;
 | 
						|
    }
 | 
						|
}
 | 
						|
 | 
						|
/* 成功/错误状态增强 */
 | 
						|
.text-success {
 | 
						|
    color: #4CAF50 !important;
 | 
						|
    text-shadow: 1px 1px 3px rgba(76, 175, 80, 0.3);
 | 
						|
}
 | 
						|
 | 
						|
.text-danger {
 | 
						|
    color: #F44336 !important;
 | 
						|
    text-shadow: 1px 1px 3px rgba(244, 67, 54, 0.3);
 | 
						|
}
 | 
						|
 | 
						|
.text-warning {
 | 
						|
    color: #FF9800 !important;
 | 
						|
    text-shadow: 1px 1px 3px rgba(255, 152, 0, 0.3);
 | 
						|
}
 | 
						|
 | 
						|
/* 容器间距优化 */
 | 
						|
.container {
 | 
						|
    position: relative;
 | 
						|
    z-index: 1;
 | 
						|
}
 | 
						|
 | 
						|
/* 链接样式增强 */
 | 
						|
a.btn {
 | 
						|
    text-decoration: none !important;
 | 
						|
}
 | 
						|
 | 
						|
a.btn:hover {
 | 
						|
    text-decoration: none !important;
 | 
						|
}
 | 
						|
 | 
						|
/* ===== 童趣主页样式增强 ===== */
 | 
						|
 | 
						|
/* 童趣轮播图样式 */
 | 
						|
.hero-carousel-kid {
 | 
						|
    position: relative;
 | 
						|
    overflow: hidden;
 | 
						|
    border-radius: 0 0 50px 50px;
 | 
						|
    box-shadow: 0 20px 60px rgba(0,0,0,0.1);
 | 
						|
}
 | 
						|
 | 
						|
.hero-carousel-kid .carousel-item {
 | 
						|
    height: 75vh;
 | 
						|
    min-height: 600px;
 | 
						|
    position: relative;
 | 
						|
}
 | 
						|
 | 
						|
.hero-carousel-kid .carousel-item img {
 | 
						|
    object-fit: cover;
 | 
						|
    width: 100%;
 | 
						|
    height: 100%;
 | 
						|
    filter: brightness(1.1) saturate(1.3);
 | 
						|
}
 | 
						|
 | 
						|
.carousel-overlay-kid {
 | 
						|
    position: absolute;
 | 
						|
    top: 0;
 | 
						|
    left: 0;
 | 
						|
    right: 0;
 | 
						|
    bottom: 0;
 | 
						|
    background: linear-gradient(135deg, 
 | 
						|
        rgba(255, 107, 107, 0.3) 0%, 
 | 
						|
        rgba(78, 205, 196, 0.3) 50%, 
 | 
						|
        rgba(69, 183, 209, 0.3) 100%);
 | 
						|
    z-index: 1;
 | 
						|
}
 | 
						|
 | 
						|
/* 童趣装饰元素动画 */
 | 
						|
.kid-decorations {
 | 
						|
    position: absolute;
 | 
						|
    top: 0;
 | 
						|
    left: 0;
 | 
						|
    right: 0;
 | 
						|
    bottom: 0;
 | 
						|
    z-index: 2;
 | 
						|
    pointer-events: none;
 | 
						|
}
 | 
						|
 | 
						|
.kid-star {
 | 
						|
    position: absolute;
 | 
						|
    font-size: 2rem;
 | 
						|
    animation: kidStarFloat 4s ease-in-out infinite;
 | 
						|
}
 | 
						|
 | 
						|
.kid-star-1 { top: 15%; left: 10%; animation-delay: 0s; }
 | 
						|
.kid-star-2 { top: 25%; right: 15%; animation-delay: 1.5s; }
 | 
						|
.kid-star-3 { bottom: 30%; left: 20%; animation-delay: 3s; }
 | 
						|
 | 
						|
@keyframes kidStarFloat {
 | 
						|
    0%, 100% { 
 | 
						|
        transform: translateY(0px) rotate(0deg) scale(1); 
 | 
						|
        opacity: 0.8; 
 | 
						|
    }
 | 
						|
    25% { 
 | 
						|
        transform: translateY(-15px) rotate(90deg) scale(1.2); 
 | 
						|
        opacity: 1; 
 | 
						|
    }
 | 
						|
    50% { 
 | 
						|
        transform: translateY(-5px) rotate(180deg) scale(0.9); 
 | 
						|
        opacity: 0.9; 
 | 
						|
    }
 | 
						|
    75% { 
 | 
						|
        transform: translateY(-20px) rotate(270deg) scale(1.1); 
 | 
						|
        opacity: 1; 
 | 
						|
    }
 | 
						|
}
 | 
						|
 | 
						|
.kid-cloud {
 | 
						|
    position: absolute;
 | 
						|
    font-size: 2.5rem;
 | 
						|
    animation: kidCloudDrift 8s ease-in-out infinite;
 | 
						|
}
 | 
						|
 | 
						|
.kid-cloud-1 { top: 10%; left: 5%; }
 | 
						|
.kid-cloud-2 { top: 20%; right: 10%; animation-delay: 4s; }
 | 
						|
 | 
						|
@keyframes kidCloudDrift {
 | 
						|
    0%, 100% { transform: translateX(0px) translateY(0px); opacity: 0.7; }
 | 
						|
    50% { transform: translateX(30px) translateY(-10px); opacity: 1; }
 | 
						|
}
 | 
						|
 | 
						|
.kid-balloon {
 | 
						|
    position: absolute;
 | 
						|
    font-size: 2rem;
 | 
						|
    animation: kidBalloonBob 3s ease-in-out infinite;
 | 
						|
}
 | 
						|
 | 
						|
.kid-balloon-1 { bottom: 40%; left: 15%; animation-delay: 0s; }
 | 
						|
.kid-balloon-2 { bottom: 50%; right: 20%; animation-delay: 1s; }
 | 
						|
.kid-balloon-3 { bottom: 35%; left: 85%; animation-delay: 2s; }
 | 
						|
 | 
						|
@keyframes kidBalloonBob {
 | 
						|
    0%, 100% { transform: translateY(0px) rotate(-5deg); }
 | 
						|
    50% { transform: translateY(-25px) rotate(5deg); }
 | 
						|
}
 | 
						|
 | 
						|
/* 音乐符号动画 */
 | 
						|
.music-notes {
 | 
						|
    position: absolute;
 | 
						|
    top: 0;
 | 
						|
    left: 0;
 | 
						|
    right: 0;
 | 
						|
    bottom: 0;
 | 
						|
    z-index: 2;
 | 
						|
    pointer-events: none;
 | 
						|
}
 | 
						|
 | 
						|
.music-note {
 | 
						|
    position: absolute;
 | 
						|
    font-size: 1.8rem;
 | 
						|
    animation: musicFloat 6s ease-in-out infinite;
 | 
						|
}
 | 
						|
 | 
						|
.music-note-1 { top: 20%; left: 25%; animation-delay: 0s; }
 | 
						|
.music-note-2 { top: 35%; right: 25%; animation-delay: 2s; }
 | 
						|
.music-note-3 { bottom: 45%; left: 30%; animation-delay: 4s; }
 | 
						|
.music-note-4 { bottom: 25%; right: 30%; animation-delay: 1s; }
 | 
						|
 | 
						|
@keyframes musicFloat {
 | 
						|
    0%, 100% { 
 | 
						|
        transform: translateY(0px) scale(1) rotate(0deg); 
 | 
						|
        opacity: 0.6; 
 | 
						|
    }
 | 
						|
    25% { 
 | 
						|
        transform: translateY(-20px) scale(1.3) rotate(15deg); 
 | 
						|
        opacity: 1; 
 | 
						|
    }
 | 
						|
    50% { 
 | 
						|
        transform: translateY(-10px) scale(0.8) rotate(-10deg); 
 | 
						|
        opacity: 0.8; 
 | 
						|
    }
 | 
						|
    75% { 
 | 
						|
        transform: translateY(-30px) scale(1.2) rotate(20deg); 
 | 
						|
        opacity: 1; 
 | 
						|
    }
 | 
						|
}
 | 
						|
 | 
						|
/* 游戏装饰元素 */
 | 
						|
.kid-toy, .kid-game, .kid-spark {
 | 
						|
    position: absolute;
 | 
						|
    font-size: 2rem;
 | 
						|
    animation: kidToyBounce 5s ease-in-out infinite;
 | 
						|
}
 | 
						|
 | 
						|
.toy-1 { top: 20%; left: 12%; animation-delay: 0s; }
 | 
						|
.toy-2 { bottom: 40%; right: 15%; animation-delay: 2s; }
 | 
						|
.toy-3 { top: 40%; right: 25%; animation-delay: 1s; }
 | 
						|
.game-1 { top: 60%; left: 20%; animation-delay: 3s; }
 | 
						|
.game-2 { bottom: 60%; left: 30%; animation-delay: 1.5s; }
 | 
						|
.game-3 { top: 30%; left: 70%; animation-delay: 4s; }
 | 
						|
 | 
						|
@keyframes kidToyBounce {
 | 
						|
    0%, 100% { transform: translateY(0px) rotate(0deg); opacity: 0.7; }
 | 
						|
    50% { transform: translateY(-20px) rotate(360deg); opacity: 1; }
 | 
						|
}
 | 
						|
 | 
						|
/* 成长装饰元素 */
 | 
						|
.kid-trophy, .kid-rocket, .kid-flower, .kid-rainbow {
 | 
						|
    position: absolute;
 | 
						|
    font-size: 2.5rem;
 | 
						|
    animation: kidGrowthSpin 7s ease-in-out infinite;
 | 
						|
}
 | 
						|
 | 
						|
.trophy-1 { top: 15%; left: 18%; animation-delay: 0s; }
 | 
						|
.trophy-2 { bottom: 35%; right: 12%; animation-delay: 3s; }
 | 
						|
.star-big { top: 50%; left: 10%; font-size: 3rem; animation-delay: 1s; }
 | 
						|
.rocket-1 { bottom: 50%; right: 20%; animation-delay: 2s; }
 | 
						|
.flower-1 { top: 70%; left: 25%; animation-delay: 4s; }
 | 
						|
.flower-2 { bottom: 20%; left: 40%; animation-delay: 5s; }
 | 
						|
.kid-rainbow { top: 10%; right: 30%; font-size: 3rem; animation-delay: 6s; }
 | 
						|
 | 
						|
@keyframes kidGrowthSpin {
 | 
						|
    0%, 100% { transform: scale(1) rotate(0deg); opacity: 0.8; }
 | 
						|
    50% { transform: scale(1.3) rotate(180deg); opacity: 1; }
 | 
						|
}
 | 
						|
 | 
						|
/* 童趣标题样式 */
 | 
						|
.kid-caption {
 | 
						|
    position: absolute;
 | 
						|
    bottom: 25%;
 | 
						|
    left: 50%;
 | 
						|
    transform: translateX(-50%);
 | 
						|
    z-index: 10;
 | 
						|
    color: white;
 | 
						|
    text-align: center;
 | 
						|
    max-width: 900px;
 | 
						|
    width: 95%;
 | 
						|
}
 | 
						|
 | 
						|
.hero-badge-kid {
 | 
						|
    display: inline-block;
 | 
						|
    background: linear-gradient(45deg, rgba(255, 255, 255, 0.9), rgba(255, 255, 255, 0.7));
 | 
						|
    color: #FF6B6B;
 | 
						|
    padding: 12px 25px;
 | 
						|
    border-radius: 30px;
 | 
						|
    font-size: 1rem;
 | 
						|
    font-weight: 800;
 | 
						|
    margin-bottom: 1.5rem;
 | 
						|
    border: 3px solid rgba(255, 255, 255, 0.8);
 | 
						|
    box-shadow: 0 8px 25px rgba(0,0,0,0.2);
 | 
						|
    animation: badgePulse 3s ease-in-out infinite;
 | 
						|
}
 | 
						|
 | 
						|
@keyframes badgePulse {
 | 
						|
    0%, 100% { transform: scale(1); box-shadow: 0 8px 25px rgba(0,0,0,0.2); }
 | 
						|
    50% { transform: scale(1.05); box-shadow: 0 12px 35px rgba(0,0,0,0.3); }
 | 
						|
}
 | 
						|
 | 
						|
.hero-title-kid {
 | 
						|
    font-size: 4rem;
 | 
						|
    font-weight: 900;
 | 
						|
    line-height: 1.1;
 | 
						|
    margin-bottom: 2rem;
 | 
						|
    text-shadow: 3px 3px 15px rgba(0,0,0,0.5);
 | 
						|
    position: relative;
 | 
						|
}
 | 
						|
 | 
						|
.rainbow-text {
 | 
						|
    background: linear-gradient(45deg, #FF6B6B, #4ECDC4, #45B7D1, #96CEB4, #FFEAA7, #DDA0DD);
 | 
						|
    background-size: 400% 400%;
 | 
						|
    -webkit-background-clip: text;
 | 
						|
    -webkit-text-fill-color: transparent;
 | 
						|
    background-clip: text;
 | 
						|
    animation: rainbowMove 4s ease-in-out infinite;
 | 
						|
}
 | 
						|
 | 
						|
@keyframes rainbowMove {
 | 
						|
    0%, 100% { background-position: 0% 50%; }
 | 
						|
    50% { background-position: 100% 50%; }
 | 
						|
}
 | 
						|
 | 
						|
.bounce-text {
 | 
						|
    display: inline-block;
 | 
						|
    animation: titleBounce 2s ease-in-out infinite;
 | 
						|
}
 | 
						|
 | 
						|
@keyframes titleBounce {
 | 
						|
    0%, 100% { transform: translateY(0px); }
 | 
						|
    50% { transform: translateY(-10px); }
 | 
						|
}
 | 
						|
 | 
						|
.wiggle-text {
 | 
						|
    display: inline-block;
 | 
						|
    animation: titleWiggle 3s ease-in-out infinite;
 | 
						|
}
 | 
						|
 | 
						|
@keyframes titleWiggle {
 | 
						|
    0%, 100% { transform: rotate(0deg); }
 | 
						|
    25% { transform: rotate(2deg); }
 | 
						|
    75% { transform: rotate(-2deg); }
 | 
						|
}
 | 
						|
 | 
						|
.scale-text {
 | 
						|
    display: inline-block;
 | 
						|
    animation: titleScale 2.5s ease-in-out infinite;
 | 
						|
}
 | 
						|
 | 
						|
@keyframes titleScale {
 | 
						|
    0%, 100% { transform: scale(1); }
 | 
						|
    50% { transform: scale(1.05); }
 | 
						|
}
 | 
						|
 | 
						|
.hero-subtitle-kid {
 | 
						|
    font-size: 1.4rem;
 | 
						|
    line-height: 1.8;
 | 
						|
    margin-bottom: 2.5rem;
 | 
						|
    opacity: 0.95;
 | 
						|
    text-shadow: 2px 2px 8px rgba(0,0,0,0.5);
 | 
						|
    font-weight: 600;
 | 
						|
}
 | 
						|
 | 
						|
/* 童趣按钮样式 */
 | 
						|
.btn-hero-kid {
 | 
						|
    border: none;
 | 
						|
    padding: 18px 35px;
 | 
						|
    border-radius: 50px;
 | 
						|
    color: white;
 | 
						|
    font-size: 1.2rem;
 | 
						|
    font-weight: 800;
 | 
						|
    text-transform: uppercase;
 | 
						|
    letter-spacing: 1px;
 | 
						|
    box-shadow: 0 10px 30px rgba(0,0,0,0.3);
 | 
						|
    transition: all 0.4s ease;
 | 
						|
    text-decoration: none !important;
 | 
						|
    position: relative;
 | 
						|
    overflow: hidden;
 | 
						|
}
 | 
						|
 | 
						|
.btn-magic {
 | 
						|
    background: linear-gradient(45deg, #FF6B6B, #4ECDC4, #45B7D1);
 | 
						|
    background-size: 200% 200%;
 | 
						|
    animation: magicGradient 3s ease-in-out infinite;
 | 
						|
}
 | 
						|
 | 
						|
.btn-adventure {
 | 
						|
    background: linear-gradient(45deg, #96CEB4, #FFEAA7, #DDA0DD);
 | 
						|
    background-size: 200% 200%;
 | 
						|
    animation: adventureGradient 3s ease-in-out infinite;
 | 
						|
}
 | 
						|
 | 
						|
.btn-play {
 | 
						|
    background: linear-gradient(45deg, #FFEAA7, #FF6B6B, #4ECDC4);
 | 
						|
    background-size: 200% 200%;
 | 
						|
    animation: playGradient 3s ease-in-out infinite;
 | 
						|
}
 | 
						|
 | 
						|
.btn-growth {
 | 
						|
    background: linear-gradient(45deg, #DDA0DD, #96CEB4, #45B7D1);
 | 
						|
    background-size: 200% 200%;
 | 
						|
    animation: growthGradient 3s ease-in-out infinite;
 | 
						|
}
 | 
						|
 | 
						|
@keyframes magicGradient {
 | 
						|
    0%, 100% { background-position: 0% 50%; }
 | 
						|
    50% { background-position: 100% 50%; }
 | 
						|
}
 | 
						|
 | 
						|
@keyframes adventureGradient {
 | 
						|
    0%, 100% { background-position: 0% 50%; }
 | 
						|
    50% { background-position: 100% 50%; }
 | 
						|
}
 | 
						|
 | 
						|
@keyframes playGradient {
 | 
						|
    0%, 100% { background-position: 0% 50%; }
 | 
						|
    50% { background-position: 100% 50%; }
 | 
						|
}
 | 
						|
 | 
						|
@keyframes growthGradient {
 | 
						|
    0%, 100% { background-position: 0% 50%; }
 | 
						|
    50% { background-position: 100% 50%; }
 | 
						|
}
 | 
						|
 | 
						|
.btn-hero-kid:hover {
 | 
						|
    transform: translateY(-5px) scale(1.05);
 | 
						|
    box-shadow: 0 15px 40px rgba(0,0,0,0.4);
 | 
						|
    color: white;
 | 
						|
}
 | 
						|
 | 
						|
.btn-hero-kid::before {
 | 
						|
    content: '';
 | 
						|
    position: absolute;
 | 
						|
    top: 0;
 | 
						|
    left: -100%;
 | 
						|
    width: 100%;
 | 
						|
    height: 100%;
 | 
						|
    background: linear-gradient(90deg, transparent, rgba(255,255,255,0.4), transparent);
 | 
						|
    transition: left 0.6s;
 | 
						|
}
 | 
						|
 | 
						|
.btn-hero-kid:hover::before {
 | 
						|
    left: 100%;
 | 
						|
}
 | 
						|
 | 
						|
/* 童趣控制器 */
 | 
						|
.kid-control {
 | 
						|
    z-index: 15;
 | 
						|
    width: 70px;
 | 
						|
    height: 70px;
 | 
						|
    background: linear-gradient(45deg, rgba(255, 255, 255, 0.9), rgba(255, 255, 255, 0.7));
 | 
						|
    border-radius: 50%;
 | 
						|
    border: none;
 | 
						|
    margin: 0 20px;
 | 
						|
    box-shadow: 0 8px 25px rgba(0,0,0,0.2);
 | 
						|
    transition: all 0.3s ease;
 | 
						|
}
 | 
						|
 | 
						|
.kid-control:hover {
 | 
						|
    transform: scale(1.1);
 | 
						|
    box-shadow: 0 12px 35px rgba(0,0,0,0.3);
 | 
						|
}
 | 
						|
 | 
						|
.kid-arrow-prev, .kid-arrow-next {
 | 
						|
    font-size: 2rem;
 | 
						|
    color: #FF6B6B;
 | 
						|
}
 | 
						|
 | 
						|
/* 童趣指示器 */
 | 
						|
.hero-carousel-kid .carousel-indicators {
 | 
						|
    bottom: 40px;
 | 
						|
    z-index: 15;
 | 
						|
}
 | 
						|
 | 
						|
.hero-carousel-kid .carousel-indicators button {
 | 
						|
    width: 20px !important;
 | 
						|
    height: 20px !important;
 | 
						|
    border-radius: 50% !important;
 | 
						|
    margin: 0 12px !important;
 | 
						|
    background: rgba(255, 255, 255, 0.6) !important;
 | 
						|
    border: 3px solid white !important;
 | 
						|
    transition: all 0.3s ease;
 | 
						|
}
 | 
						|
 | 
						|
.hero-carousel-kid .carousel-indicators .active {
 | 
						|
    background: linear-gradient(45deg, #FF6B6B, #4ECDC4) !important;
 | 
						|
    transform: scale(1.3);
 | 
						|
}
 | 
						|
 | 
						|
/* 童趣波浪分隔符 */
 | 
						|
.kid-wavy-divider {
 | 
						|
    height: 120px;
 | 
						|
    overflow: hidden;
 | 
						|
    margin-top: -60px;
 | 
						|
    position: relative;
 | 
						|
    z-index: 10;
 | 
						|
}
 | 
						|
 | 
						|
.kid-wavy-divider svg {
 | 
						|
    width: 100%;
 | 
						|
    height: 100%;
 | 
						|
}
 | 
						|
 | 
						|
/* 背景样式 */
 | 
						|
.bg-kid-wonderland {
 | 
						|
    background: linear-gradient(135deg, #E8F5E8 0%, #F0F8FF 50%, #FFF8DC 100%);
 | 
						|
    position: relative;
 | 
						|
    overflow: hidden;
 | 
						|
}
 | 
						|
 | 
						|
.bg-kid-wonderland::before {
 | 
						|
    content: '';
 | 
						|
    position: absolute;
 | 
						|
    top: 0;
 | 
						|
    left: 0;
 | 
						|
    right: 0;
 | 
						|
    bottom: 0;
 | 
						|
    background: 
 | 
						|
        radial-gradient(circle at 15% 25%, rgba(255, 107, 107, 0.05) 15%, transparent 25%),
 | 
						|
        radial-gradient(circle at 85% 35%, rgba(78, 205, 196, 0.05) 20%, transparent 30%),
 | 
						|
        radial-gradient(circle at 45% 75%, rgba(69, 183, 209, 0.05) 18%, transparent 28%);
 | 
						|
    z-index: 0;
 | 
						|
}
 | 
						|
 | 
						|
.bg-kid-playground {
 | 
						|
    background: linear-gradient(135deg, #FFF0F5 0%, #F0FFFF 50%, #F5FFFA 100%);
 | 
						|
    position: relative;
 | 
						|
    overflow: hidden;
 | 
						|
}
 | 
						|
 | 
						|
.bg-kid-playground::before {
 | 
						|
    content: '';
 | 
						|
    position: absolute;
 | 
						|
    top: 0;
 | 
						|
    left: 0;
 | 
						|
    right: 0;
 | 
						|
    bottom: 0;
 | 
						|
    background: 
 | 
						|
        radial-gradient(circle at 20% 30%, rgba(150, 206, 180, 0.08) 15%, transparent 25%),
 | 
						|
        radial-gradient(circle at 80% 20%, rgba(255, 234, 167, 0.08) 20%, transparent 30%),
 | 
						|
        radial-gradient(circle at 50% 80%, rgba(221, 160, 221, 0.08) 18%, transparent 28%);
 | 
						|
    z-index: 0;
 | 
						|
}
 | 
						|
 | 
						|
/* 童趣区块标题 */
 | 
						|
.section-title-kid {
 | 
						|
    text-align: center;
 | 
						|
    margin-bottom: 4rem;
 | 
						|
    position: relative;
 | 
						|
    z-index: 1;
 | 
						|
}
 | 
						|
 | 
						|
.title-with-stars, .title-with-emojis {
 | 
						|
    font-size: 3rem;
 | 
						|
    font-weight: 900;
 | 
						|
    background: linear-gradient(45deg, #FF6B6B, #4ECDC4, #45B7D1);
 | 
						|
    -webkit-background-clip: text;
 | 
						|
    -webkit-text-fill-color: transparent;
 | 
						|
    background-clip: text;
 | 
						|
    margin-bottom: 1rem;
 | 
						|
    text-shadow: 2px 2px 8px rgba(0,0,0,0.1);
 | 
						|
    animation: titleShine 4s ease-in-out infinite;
 | 
						|
}
 | 
						|
 | 
						|
@keyframes titleShine {
 | 
						|
    0%, 100% { filter: brightness(1); }
 | 
						|
    50% { filter: brightness(1.2); }
 | 
						|
}
 | 
						|
 | 
						|
.subtitle-rainbow, .subtitle-fun {
 | 
						|
    font-size: 1.3rem;
 | 
						|
    color: #666;
 | 
						|
    margin-bottom: 1rem;
 | 
						|
    font-weight: 600;
 | 
						|
}
 | 
						|
 | 
						|
.title-decoration {
 | 
						|
    margin-top: 1rem;
 | 
						|
}
 | 
						|
 | 
						|
.deco-star, .deco-heart, .deco-balloon, .deco-gift {
 | 
						|
    font-size: 1.8rem;
 | 
						|
    margin: 0 10px;
 | 
						|
    animation: decoFloat 3s ease-in-out infinite;
 | 
						|
}
 | 
						|
 | 
						|
.deco-star:nth-child(1) { animation-delay: 0s; }
 | 
						|
.deco-heart { animation-delay: 1s; }
 | 
						|
.deco-star:nth-child(3) { animation-delay: 2s; }
 | 
						|
.deco-balloon:nth-child(1) { animation-delay: 0.5s; }
 | 
						|
.deco-gift { animation-delay: 1.5s; }
 | 
						|
.deco-balloon:nth-child(3) { animation-delay: 2.5s; }
 | 
						|
 | 
						|
@keyframes decoFloat {
 | 
						|
    0%, 100% { transform: translateY(0px) rotate(0deg); }
 | 
						|
    50% { transform: translateY(-10px) rotate(5deg); }
 | 
						|
}
 | 
						|
 | 
						|
/* 增强功能卡片 */
 | 
						|
.kid-feature-card-enhanced {
 | 
						|
    background: linear-gradient(145deg, #ffffff 0%, #f8fbff 100%);
 | 
						|
    border-radius: 30px;
 | 
						|
    padding: 2.5rem;
 | 
						|
    box-shadow: 0 15px 40px rgba(0,0,0,0.08);
 | 
						|
    border: 3px solid transparent;
 | 
						|
    transition: all 0.4s ease;
 | 
						|
    position: relative;
 | 
						|
    overflow: hidden;
 | 
						|
    height: 100%;
 | 
						|
}
 | 
						|
 | 
						|
.card-glow {
 | 
						|
    position: absolute;
 | 
						|
    top: -2px;
 | 
						|
    left: -2px;
 | 
						|
    right: -2px;
 | 
						|
    bottom: -2px;
 | 
						|
    border-radius: 30px;
 | 
						|
    background: linear-gradient(45deg, #FF6B6B, #4ECDC4, #45B7D1, #96CEB4, #FFEAA7);
 | 
						|
    z-index: -1;
 | 
						|
    opacity: 0;
 | 
						|
    transition: opacity 0.3s ease;
 | 
						|
}
 | 
						|
 | 
						|
.kid-feature-card-enhanced:hover .card-glow {
 | 
						|
    opacity: 0.3;
 | 
						|
}
 | 
						|
 | 
						|
.kid-feature-card-enhanced:hover {
 | 
						|
    transform: translateY(-10px) scale(1.03);
 | 
						|
    box-shadow: 0 25px 60px rgba(0,0,0,0.15);
 | 
						|
}
 | 
						|
 | 
						|
.icon-bubble-big {
 | 
						|
    width: 100px;
 | 
						|
    height: 100px;
 | 
						|
    border-radius: 50%;
 | 
						|
    display: flex;
 | 
						|
    align-items: center;
 | 
						|
    justify-content: center;
 | 
						|
    margin: 0 auto 1.5rem;
 | 
						|
    font-size: 3rem;
 | 
						|
    animation: iconBounce 4s ease-in-out infinite;
 | 
						|
}
 | 
						|
 | 
						|
.magic-bubble { background: linear-gradient(45deg, #FF6B6B, #FFB6C1); }
 | 
						|
.robot-bubble { background: linear-gradient(45deg, #4ECDC4, #98FB98); }
 | 
						|
.chart-bubble { background: linear-gradient(45deg, #FFD700, #FFEAA7); }
 | 
						|
.game-bubble { background: linear-gradient(45deg, #DDA0DD, #E6E6FA); }
 | 
						|
 | 
						|
@keyframes iconBounce {
 | 
						|
    0%, 100% { transform: translateY(0px) scale(1); }
 | 
						|
    50% { transform: translateY(-8px) scale(1.1); }
 | 
						|
}
 | 
						|
 | 
						|
.feature-title {
 | 
						|
    font-size: 1.4rem;
 | 
						|
    font-weight: 800;
 | 
						|
    color: #333;
 | 
						|
    margin-bottom: 1rem;
 | 
						|
    text-align: center;
 | 
						|
}
 | 
						|
 | 
						|
.feature-desc {
 | 
						|
    color: #666;
 | 
						|
    font-size: 1rem;
 | 
						|
    line-height: 1.6;
 | 
						|
    text-align: center;
 | 
						|
    margin-bottom: 1.5rem;
 | 
						|
}
 | 
						|
 | 
						|
.feature-stars {
 | 
						|
    text-align: center;
 | 
						|
}
 | 
						|
 | 
						|
.feature-stars .star {
 | 
						|
    font-size: 1.2rem;
 | 
						|
    margin: 0 2px;
 | 
						|
    animation: starTwinkle 2s ease-in-out infinite;
 | 
						|
}
 | 
						|
 | 
						|
.feature-stars .star:nth-child(1) { animation-delay: 0s; }
 | 
						|
.feature-stars .star:nth-child(2) { animation-delay: 0.5s; }
 | 
						|
.feature-stars .star:nth-child(3) { animation-delay: 1s; }
 | 
						|
 | 
						|
@keyframes starTwinkle {
 | 
						|
    0%, 100% { opacity: 0.6; transform: scale(1); }
 | 
						|
    50% { opacity: 1; transform: scale(1.2); }
 | 
						|
}
 | 
						|
 | 
						|
/* 超级场景卡片 */
 | 
						|
.scenario-card-super {
 | 
						|
    background: linear-gradient(145deg, #ffffff 0%, #f8fcff 100%);
 | 
						|
    border-radius: 25px;
 | 
						|
    overflow: hidden;
 | 
						|
    box-shadow: 0 12px 35px rgba(0,0,0,0.08);
 | 
						|
    transition: all 0.4s ease;
 | 
						|
    height: 100%;
 | 
						|
    position: relative;
 | 
						|
    border: 2px solid transparent;
 | 
						|
}
 | 
						|
 | 
						|
.scenario-card-super:hover {
 | 
						|
    transform: translateY(-8px) scale(1.02);
 | 
						|
    box-shadow: 0 20px 50px rgba(0,0,0,0.15);
 | 
						|
}
 | 
						|
 | 
						|
.card-header-social { background: linear-gradient(135deg, #FF6B6B, #FF8E53); }
 | 
						|
.card-header-daily { background: linear-gradient(135deg, #4ECDC4, #56C596); }
 | 
						|
.card-header-fun { background: linear-gradient(135deg, #FFD93D, #FFCC02); }
 | 
						|
 | 
						|
.scenario-card-super .card-header-social,
 | 
						|
.scenario-card-super .card-header-daily,
 | 
						|
.scenario-card-super .card-header-fun {
 | 
						|
    padding: 2rem;
 | 
						|
    position: relative;
 | 
						|
    text-align: center;
 | 
						|
    color: white;
 | 
						|
}
 | 
						|
 | 
						|
.card-sparkles {
 | 
						|
    position: absolute;
 | 
						|
    top: 0;
 | 
						|
    left: 0;
 | 
						|
    right: 0;
 | 
						|
    bottom: 0;
 | 
						|
    pointer-events: none;
 | 
						|
}
 | 
						|
 | 
						|
.sparkle {
 | 
						|
    position: absolute;
 | 
						|
    font-size: 1.5rem;
 | 
						|
    animation: sparkleFloat 3s ease-in-out infinite;
 | 
						|
}
 | 
						|
 | 
						|
.sparkle:nth-child(1) { top: 20%; left: 15%; animation-delay: 0s; }
 | 
						|
.sparkle:nth-child(2) { top: 30%; right: 20%; animation-delay: 1s; }
 | 
						|
.sparkle:nth-child(3) { bottom: 25%; left: 20%; animation-delay: 2s; }
 | 
						|
 | 
						|
@keyframes sparkleFloat {
 | 
						|
    0%, 100% { transform: translateY(0px) rotate(0deg); opacity: 0.7; }
 | 
						|
    50% { transform: translateY(-15px) rotate(180deg); opacity: 1; }
 | 
						|
}
 | 
						|
 | 
						|
.scenario-icon-super {
 | 
						|
    width: 80px;
 | 
						|
    height: 80px;
 | 
						|
    background: rgba(255,255,255,0.2);
 | 
						|
    border-radius: 50%;
 | 
						|
    display: flex;
 | 
						|
    align-items: center;
 | 
						|
    justify-content: center;
 | 
						|
    margin: 0 auto;
 | 
						|
    font-size: 3rem;
 | 
						|
    border: 3px solid rgba(255,255,255,0.3);
 | 
						|
    animation: iconPulse 3s ease-in-out infinite;
 | 
						|
}
 | 
						|
 | 
						|
@keyframes iconPulse {
 | 
						|
    0%, 100% { transform: scale(1); }
 | 
						|
    50% { transform: scale(1.1); }
 | 
						|
}
 | 
						|
 | 
						|
.card-body-kid {
 | 
						|
    padding: 2rem;
 | 
						|
}
 | 
						|
 | 
						|
.scenario-title-kid {
 | 
						|
    font-size: 1.4rem;
 | 
						|
    font-weight: 800;
 | 
						|
    color: #333;
 | 
						|
    margin-bottom: 1rem;
 | 
						|
    text-align: center;
 | 
						|
}
 | 
						|
 | 
						|
.scenario-desc-kid {
 | 
						|
    color: #666;
 | 
						|
    font-size: 0.95rem;
 | 
						|
    line-height: 1.6;
 | 
						|
    text-align: center;
 | 
						|
    margin-bottom: 1.5rem;
 | 
						|
}
 | 
						|
 | 
						|
.scenario-tags-kid {
 | 
						|
    text-align: center;
 | 
						|
    margin-bottom: 1.5rem;
 | 
						|
}
 | 
						|
 | 
						|
.tag-kid {
 | 
						|
    display: inline-block;
 | 
						|
    padding: 6px 15px;
 | 
						|
    border-radius: 20px;
 | 
						|
    font-size: 0.8rem;
 | 
						|
    font-weight: 600;
 | 
						|
    margin: 3px;
 | 
						|
    border: 2px solid transparent;
 | 
						|
    transition: all 0.3s ease;
 | 
						|
}
 | 
						|
 | 
						|
.tag-social { background: linear-gradient(45deg, #FFE5E5, #FFD0D0); color: #FF6B6B; }
 | 
						|
.tag-team { background: linear-gradient(45deg, #E5F3FF, #D0E7FF); color: #4ECDC4; }
 | 
						|
.tag-food { background: linear-gradient(45deg, #FFF5E5, #FFEAD0); color: #FF8C00; }
 | 
						|
.tag-shop { background: linear-gradient(45deg, #E5FFE5, #D0FFD0); color: #32CD32; }
 | 
						|
.tag-puzzle { background: linear-gradient(45deg, #F5E5FF, #E8D0FF); color: #9370DB; }
 | 
						|
.tag-role { background: linear-gradient(45deg, #FFFFE5, #FFFFD0); color: #FFD700; }
 | 
						|
 | 
						|
.tag-kid:hover {
 | 
						|
    transform: scale(1.1);
 | 
						|
    border-color: currentColor;
 | 
						|
}
 | 
						|
 | 
						|
.card-footer-kid {
 | 
						|
    display: flex;
 | 
						|
    justify-content: space-between;
 | 
						|
    align-items: center;
 | 
						|
    padding: 0 2rem 2rem;
 | 
						|
}
 | 
						|
 | 
						|
.difficulty-emoji, .play-emoji {
 | 
						|
    font-size: 1rem;
 | 
						|
    font-weight: 600;
 | 
						|
}
 | 
						|
 | 
						|
/* 超级CTA区块 */
 | 
						|
.cta-section-super {
 | 
						|
    background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
 | 
						|
    color: white;
 | 
						|
    padding: 100px 0;
 | 
						|
    position: relative;
 | 
						|
    overflow: hidden;
 | 
						|
}
 | 
						|
 | 
						|
.cta-decorations {
 | 
						|
    position: absolute;
 | 
						|
    top: 0;
 | 
						|
    left: 0;
 | 
						|
    right: 0;
 | 
						|
    bottom: 0;
 | 
						|
    pointer-events: none;
 | 
						|
}
 | 
						|
 | 
						|
.cta-star, .cta-balloon, .cta-gift, .cta-rocket, .cta-rainbow {
 | 
						|
    position: absolute;
 | 
						|
    font-size: 2.5rem;
 | 
						|
    animation: ctaFloat 6s ease-in-out infinite;
 | 
						|
}
 | 
						|
 | 
						|
.star-1 { top: 15%; left: 10%; animation-delay: 0s; }
 | 
						|
.star-2 { top: 25%; right: 15%; animation-delay: 2s; }
 | 
						|
.star-3 { bottom: 30%; left: 15%; animation-delay: 4s; }
 | 
						|
.balloon-1 { top: 20%; left: 20%; animation-delay: 1s; }
 | 
						|
.balloon-2 { bottom: 40%; right: 20%; animation-delay: 3s; }
 | 
						|
.balloon-3 { top: 60%; right: 10%; animation-delay: 5s; }
 | 
						|
.cta-gift { bottom: 20%; left: 80%; animation-delay: 1.5s; }
 | 
						|
.cta-rocket { top: 40%; left: 5%; animation-delay: 3.5s; }
 | 
						|
.cta-rainbow { top: 10%; left: 50%; animation-delay: 2.5s; }
 | 
						|
 | 
						|
@keyframes ctaFloat {
 | 
						|
    0%, 100% { transform: translateY(0px) rotate(0deg); opacity: 0.7; }
 | 
						|
    50% { transform: translateY(-20px) rotate(10deg); opacity: 1; }
 | 
						|
}
 | 
						|
 | 
						|
.cta-title-super {
 | 
						|
    font-size: 3.5rem;
 | 
						|
    font-weight: 900;
 | 
						|
    margin-bottom: 1.5rem;
 | 
						|
    text-shadow: 2px 2px 10px rgba(0,0,0,0.3);
 | 
						|
    animation: titlePulse 4s ease-in-out infinite;
 | 
						|
}
 | 
						|
 | 
						|
@keyframes titlePulse {
 | 
						|
    0%, 100% { transform: scale(1); }
 | 
						|
    50% { transform: scale(1.02); }
 | 
						|
}
 | 
						|
 | 
						|
.cta-subtitle-super {
 | 
						|
    font-size: 1.4rem;
 | 
						|
    margin-bottom: 3rem;
 | 
						|
    opacity: 0.95;
 | 
						|
    line-height: 1.6;
 | 
						|
}
 | 
						|
 | 
						|
.cta-button-container {
 | 
						|
    margin-bottom: 2rem;
 | 
						|
}
 | 
						|
 | 
						|
.btn-cta-super {
 | 
						|
    background: linear-gradient(45deg, #FF6B6B, #4ECDC4, #FFD93D);
 | 
						|
    background-size: 200% 200%;
 | 
						|
    border: none;
 | 
						|
    padding: 20px 40px;
 | 
						|
    border-radius: 50px;
 | 
						|
    color: white;
 | 
						|
    font-size: 1.3rem;
 | 
						|
    font-weight: 800;
 | 
						|
    text-decoration: none !important;
 | 
						|
    display: inline-flex;
 | 
						|
    align-items: center;
 | 
						|
    gap: 10px;
 | 
						|
    box-shadow: 0 15px 40px rgba(0,0,0,0.3);
 | 
						|
    transition: all 0.4s ease;
 | 
						|
    animation: ctaGradient 4s ease-in-out infinite;
 | 
						|
    position: relative;
 | 
						|
    overflow: hidden;
 | 
						|
}
 | 
						|
 | 
						|
@keyframes ctaGradient {
 | 
						|
    0%, 100% { background-position: 0% 50%; }
 | 
						|
    50% { background-position: 100% 50%; }
 | 
						|
}
 | 
						|
 | 
						|
.btn-cta-super:hover {
 | 
						|
    transform: translateY(-5px) scale(1.05);
 | 
						|
    box-shadow: 0 20px 50px rgba(0,0,0,0.4);
 | 
						|
    color: white;
 | 
						|
}
 | 
						|
 | 
						|
.btn-cta-super::before {
 | 
						|
    content: '';
 | 
						|
    position: absolute;
 | 
						|
    top: 0;
 | 
						|
    left: -100%;
 | 
						|
    width: 100%;
 | 
						|
    height: 100%;
 | 
						|
    background: linear-gradient(90deg, transparent, rgba(255,255,255,0.4), transparent);
 | 
						|
    transition: left 0.6s;
 | 
						|
}
 | 
						|
 | 
						|
.btn-cta-super:hover::before {
 | 
						|
    left: 100%;
 | 
						|
}
 | 
						|
 | 
						|
.btn-icon, .btn-sparkle {
 | 
						|
    font-size: 1.5rem;
 | 
						|
    animation: iconSpin 3s ease-in-out infinite;
 | 
						|
}
 | 
						|
 | 
						|
.btn-sparkle {
 | 
						|
    animation-delay: 1.5s;
 | 
						|
}
 | 
						|
 | 
						|
@keyframes iconSpin {
 | 
						|
    0%, 100% { transform: rotate(0deg); }
 | 
						|
    50% { transform: rotate(360deg); }
 | 
						|
}
 | 
						|
 | 
						|
.cta-features {
 | 
						|
    display: flex;
 | 
						|
    justify-content: center;
 | 
						|
    gap: 30px;
 | 
						|
    flex-wrap: wrap;
 | 
						|
}
 | 
						|
 | 
						|
.cta-feature {
 | 
						|
    background: rgba(255,255,255,0.2);
 | 
						|
    padding: 10px 20px;
 | 
						|
    border-radius: 25px;
 | 
						|
    font-size: 1rem;
 | 
						|
    font-weight: 600;
 | 
						|
    border: 2px solid rgba(255,255,255,0.3);
 | 
						|
    animation: featureBob 3s ease-in-out infinite;
 | 
						|
}
 | 
						|
 | 
						|
.cta-feature:nth-child(1) { animation-delay: 0s; }
 | 
						|
.cta-feature:nth-child(2) { animation-delay: 1s; }
 | 
						|
.cta-feature:nth-child(3) { animation-delay: 2s; }
 | 
						|
 | 
						|
@keyframes featureBob {
 | 
						|
    0%, 100% { transform: translateY(0px); }
 | 
						|
    50% { transform: translateY(-5px); }
 | 
						|
}
 | 
						|
 | 
						|
/* 响应式优化 */
 | 
						|
@media (max-width: 768px) {
 | 
						|
    .hero-title-kid {
 | 
						|
        font-size: 2.5rem;
 | 
						|
    }
 | 
						|
    
 | 
						|
    .hero-subtitle-kid {
 | 
						|
        font-size: 1.1rem;
 | 
						|
    }
 | 
						|
    
 | 
						|
    .title-with-stars, .title-with-emojis {
 | 
						|
        font-size: 2.2rem;
 | 
						|
    }
 | 
						|
    
 | 
						|
    .cta-title-super {
 | 
						|
        font-size: 2.5rem;
 | 
						|
    }
 | 
						|
    
 | 
						|
    .kid-decorations .kid-star,
 | 
						|
    .kid-decorations .kid-cloud,
 | 
						|
    .kid-decorations .kid-balloon {
 | 
						|
        font-size: 1.5rem;
 | 
						|
    }
 | 
						|
    
 | 
						|
    .music-notes .music-note {
 | 
						|
        font-size: 1.3rem;
 | 
						|
    }
 | 
						|
    
 | 
						|
    .btn-hero-kid {
 | 
						|
        padding: 15px 25px;
 | 
						|
        font-size: 1rem;
 | 
						|
    }
 | 
						|
    
 | 
						|
    .icon-bubble-big {
 | 
						|
        width: 80px;
 | 
						|
        height: 80px;
 | 
						|
        font-size: 2.5rem;
 | 
						|
    }
 | 
						|
    
 | 
						|
    .scenario-icon-super {
 | 
						|
        width: 60px;
 | 
						|
        height: 60px;
 | 
						|
        font-size: 2.5rem;
 | 
						|
    }
 | 
						|
    
 | 
						|
    .cta-features {
 | 
						|
        gap: 15px;
 | 
						|
    }
 | 
						|
    
 | 
						|
    .cta-feature {
 | 
						|
        font-size: 0.9rem;
 | 
						|
        padding: 8px 16px;
 | 
						|
    }
 | 
						|
}
 | 
						|
 | 
						|
@media (max-width: 576px) {
 | 
						|
    .kid-caption {
 | 
						|
        bottom: 20%;
 | 
						|
        width: 100%;
 | 
						|
        padding: 0 10px;
 | 
						|
    }
 | 
						|
    
 | 
						|
    .hero-title-kid {
 | 
						|
        font-size: 2rem;
 | 
						|
    }
 | 
						|
    
 | 
						|
    .hero-subtitle-kid {
 | 
						|
        font-size: 1rem;
 | 
						|
    }
 | 
						|
    
 | 
						|
    .btn-hero-kid {
 | 
						|
        padding: 12px 20px;
 | 
						|
        font-size: 0.9rem;
 | 
						|
    }
 | 
						|
    
 | 
						|
    .title-with-stars, .title-with-emojis {
 | 
						|
        font-size: 1.8rem;
 | 
						|
    }
 | 
						|
    
 | 
						|
    .cta-title-super {
 | 
						|
        font-size: 2rem;
 | 
						|
    }
 | 
						|
    
 | 
						|
    .cta-subtitle-super {
 | 
						|
        font-size: 1.1rem;
 | 
						|
    }
 | 
						|
    
 | 
						|
    .btn-cta-super {
 | 
						|
        padding: 16px 30px;
 | 
						|
        font-size: 1.1rem;
 | 
						|
    }
 | 
						|
}
 | 
						|
 | 
						|
/* 加载动画优化 */
 | 
						|
.page-loading {
 | 
						|
    opacity: 0;
 | 
						|
    animation: pageLoad 1s ease-out forwards;
 | 
						|
}
 | 
						|
 | 
						|
@keyframes pageLoad {
 | 
						|
    to { opacity: 1; }
 | 
						|
}
 | 
						|
 | 
						|
/* 滚动触发动画 */
 | 
						|
.fade-in-on-scroll {
 | 
						|
    opacity: 0;
 | 
						|
    transform: translateY(30px);
 | 
						|
    transition: all 0.8s ease;
 | 
						|
}
 | 
						|
 | 
						|
.fade-in-on-scroll.visible {
 | 
						|
    opacity: 1;
 | 
						|
    transform: translateY(0);
 | 
						|
}
 | 
						|
 | 
						|
 | 
						|
/* ===== 超丰富主页样式 ===== */
 | 
						|
 | 
						|
/* 数据统计展示 */
 | 
						|
.stats-showcase {
 | 
						|
    margin-bottom: 3rem;
 | 
						|
}
 | 
						|
 | 
						|
.stat-card {
 | 
						|
    background: linear-gradient(145deg, #ffffff, #f8fbff);
 | 
						|
    border-radius: 20px;
 | 
						|
    padding: 2rem 1rem;
 | 
						|
    text-align: center;
 | 
						|
    box-shadow: 0 10px 30px rgba(0,0,0,0.08);
 | 
						|
    transition: all 0.3s ease;
 | 
						|
    border: 2px solid transparent;
 | 
						|
    position: relative;
 | 
						|
    overflow: hidden;
 | 
						|
}
 | 
						|
 | 
						|
.stat-card::before {
 | 
						|
    content: '';
 | 
						|
    position: absolute;
 | 
						|
    top: 0;
 | 
						|
    left: -100%;
 | 
						|
    width: 100%;
 | 
						|
    height: 100%;
 | 
						|
    background: linear-gradient(90deg, transparent, rgba(255,255,255,0.8), transparent);
 | 
						|
    transition: left 1s;
 | 
						|
}
 | 
						|
 | 
						|
.stat-card:hover {
 | 
						|
    transform: translateY(-8px);
 | 
						|
    box-shadow: 0 20px 40px rgba(0,0,0,0.15);
 | 
						|
}
 | 
						|
 | 
						|
.stat-card:hover::before {
 | 
						|
    left: 100%;
 | 
						|
}
 | 
						|
 | 
						|
.stat-users { border-color: #FF6B6B; }
 | 
						|
.stat-conversations { border-color: #4ECDC4; }
 | 
						|
.stat-improvement { border-color: #FFD93D; }
 | 
						|
.stat-satisfaction { border-color: #96CEB4; }
 | 
						|
 | 
						|
.stat-icon {
 | 
						|
    font-size: 3rem;
 | 
						|
    margin-bottom: 1rem;
 | 
						|
    animation: statIconBounce 2s ease-in-out infinite;
 | 
						|
}
 | 
						|
 | 
						|
.stat-users .stat-icon { animation-delay: 0s; }
 | 
						|
.stat-conversations .stat-icon { animation-delay: 0.5s; }
 | 
						|
.stat-improvement .stat-icon { animation-delay: 1s; }
 | 
						|
.stat-satisfaction .stat-icon { animation-delay: 1.5s; }
 | 
						|
 | 
						|
@keyframes statIconBounce {
 | 
						|
    0%, 100% { transform: translateY(0px); }
 | 
						|
    50% { transform: translateY(-10px); }
 | 
						|
}
 | 
						|
 | 
						|
.stat-number {
 | 
						|
    font-size: 3rem;
 | 
						|
    font-weight: 900;
 | 
						|
    color: #333;
 | 
						|
    margin-bottom: 0.5rem;
 | 
						|
    font-family: 'Arial Black', sans-serif;
 | 
						|
}
 | 
						|
 | 
						|
.stat-label {
 | 
						|
    color: #666;
 | 
						|
    font-weight: 600;
 | 
						|
    font-size: 1rem;
 | 
						|
}
 | 
						|
 | 
						|
/* 高级功能卡片 */
 | 
						|
.feature-card-advanced {
 | 
						|
    background: linear-gradient(145deg, #ffffff, #f8fbff);
 | 
						|
    border-radius: 25px;
 | 
						|
    padding: 2rem;
 | 
						|
    box-shadow: 0 15px 40px rgba(0,0,0,0.1);
 | 
						|
    transition: all 0.4s ease;
 | 
						|
    border: 3px solid transparent;
 | 
						|
    height: 100%;
 | 
						|
    position: relative;
 | 
						|
    overflow: hidden;
 | 
						|
}
 | 
						|
 | 
						|
.feature-card-advanced:hover {
 | 
						|
    transform: translateY(-10px);
 | 
						|
    box-shadow: 0 25px 60px rgba(0,0,0,0.2);
 | 
						|
}
 | 
						|
 | 
						|
.voice-clone-card {
 | 
						|
    background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
 | 
						|
    color: white;
 | 
						|
}
 | 
						|
 | 
						|
.ai-chat-card {
 | 
						|
    background: linear-gradient(135deg, #4facfe 0%, #00f2fe 100%);
 | 
						|
    color: white;
 | 
						|
}
 | 
						|
 | 
						|
.feature-header {
 | 
						|
    text-align: center;
 | 
						|
    margin-bottom: 2rem;
 | 
						|
}
 | 
						|
 | 
						|
.feature-icon-big {
 | 
						|
    width: 100px;
 | 
						|
    height: 100px;
 | 
						|
    background: rgba(255,255,255,0.2);
 | 
						|
    border-radius: 50%;
 | 
						|
    display: flex;
 | 
						|
    align-items: center;
 | 
						|
    justify-content: center;
 | 
						|
    margin: 0 auto 1rem;
 | 
						|
    font-size: 3.5rem;
 | 
						|
    border: 3px solid rgba(255,255,255,0.3);
 | 
						|
    animation: featureIconPulse 3s ease-in-out infinite;
 | 
						|
}
 | 
						|
 | 
						|
@keyframes featureIconPulse {
 | 
						|
    0%, 100% { transform: scale(1); }
 | 
						|
    50% { transform: scale(1.1); }
 | 
						|
}
 | 
						|
 | 
						|
.feature-header h4 {
 | 
						|
    font-size: 1.5rem;
 | 
						|
    font-weight: 800;
 | 
						|
    margin: 0;
 | 
						|
}
 | 
						|
 | 
						|
/* 语音波浪演示 */
 | 
						|
.voice-wave-demo {
 | 
						|
    display: flex;
 | 
						|
    justify-content: center;
 | 
						|
    align-items: center;
 | 
						|
    gap: 8px;
 | 
						|
    height: 80px;
 | 
						|
    margin: 1rem 0;
 | 
						|
}
 | 
						|
 | 
						|
.wave-bar {
 | 
						|
    width: 8px;
 | 
						|
    height: 30px;
 | 
						|
    background: linear-gradient(45deg, rgba(255,255,255,0.8), rgba(255,255,255,0.6));
 | 
						|
    border-radius: 4px;
 | 
						|
    animation: waveDemo 1.5s ease-in-out infinite;
 | 
						|
}
 | 
						|
 | 
						|
.wave-bar:nth-child(1) { animation-delay: 0s; }
 | 
						|
.wave-bar:nth-child(2) { animation-delay: 0.2s; }
 | 
						|
.wave-bar:nth-child(3) { animation-delay: 0.4s; }
 | 
						|
.wave-bar:nth-child(4) { animation-delay: 0.6s; }
 | 
						|
.wave-bar:nth-child(5) { animation-delay: 0.8s; }
 | 
						|
 | 
						|
@keyframes waveDemo {
 | 
						|
    0%, 100% { height: 30px; opacity: 0.6; }
 | 
						|
    50% { height: 60px; opacity: 1; }
 | 
						|
}
 | 
						|
 | 
						|
.demo-text {
 | 
						|
    text-align: center;
 | 
						|
    font-size: 1rem;
 | 
						|
    margin-bottom: 1.5rem;
 | 
						|
    opacity: 0.9;
 | 
						|
}
 | 
						|
 | 
						|
/* 功能优势 */
 | 
						|
.feature-benefits {
 | 
						|
    display: flex;
 | 
						|
    flex-direction: column;
 | 
						|
    gap: 1rem;
 | 
						|
    margin-bottom: 2rem;
 | 
						|
}
 | 
						|
 | 
						|
.benefit-item {
 | 
						|
    display: flex;
 | 
						|
    align-items: center;
 | 
						|
    gap: 1rem;
 | 
						|
    padding: 0.8rem;
 | 
						|
    background: rgba(255,255,255,0.1);
 | 
						|
    border-radius: 15px;
 | 
						|
    backdrop-filter: blur(10px);
 | 
						|
}
 | 
						|
 | 
						|
.benefit-icon {
 | 
						|
    font-size: 1.5rem;
 | 
						|
}
 | 
						|
 | 
						|
/* AI聊天演示 */
 | 
						|
.chat-demo {
 | 
						|
    background: rgba(255,255,255,0.1);
 | 
						|
    border-radius: 15px;
 | 
						|
    padding: 1.5rem;
 | 
						|
    margin-bottom: 1.5rem;
 | 
						|
    backdrop-filter: blur(10px);
 | 
						|
}
 | 
						|
 | 
						|
.chat-bubble {
 | 
						|
    display: flex;
 | 
						|
    align-items: center;
 | 
						|
    gap: 0.8rem;
 | 
						|
    margin-bottom: 1rem;
 | 
						|
    padding: 0.8rem;
 | 
						|
    border-radius: 15px;
 | 
						|
    font-size: 0.9rem;
 | 
						|
}
 | 
						|
 | 
						|
.ai-bubble {
 | 
						|
    background: rgba(255,255,255,0.2);
 | 
						|
    justify-content: flex-start;
 | 
						|
}
 | 
						|
 | 
						|
.user-bubble {
 | 
						|
    background: rgba(255,255,255,0.3);
 | 
						|
    justify-content: flex-end;
 | 
						|
    flex-direction: row-reverse;
 | 
						|
}
 | 
						|
 | 
						|
.typing-indicator {
 | 
						|
    display: inline-flex;
 | 
						|
    gap: 4px;
 | 
						|
}
 | 
						|
 | 
						|
.typing-indicator span {
 | 
						|
    width: 6px;
 | 
						|
    height: 6px;
 | 
						|
    border-radius: 50%;
 | 
						|
    background: rgba(255,255,255,0.8);
 | 
						|
    animation: typingDot 1.4s ease-in-out infinite;
 | 
						|
}
 | 
						|
 | 
						|
.typing-indicator span:nth-child(1) { animation-delay: 0s; }
 | 
						|
.typing-indicator span:nth-child(2) { animation-delay: 0.2s; }
 | 
						|
.typing-indicator span:nth-child(3) { animation-delay: 0.4s; }
 | 
						|
 | 
						|
@keyframes typingDot {
 | 
						|
    0%, 60%, 100% { opacity: 0.3; transform: scale(0.8); }
 | 
						|
    30% { opacity: 1; transform: scale(1.2); }
 | 
						|
}
 | 
						|
 | 
						|
.ai-features {
 | 
						|
    display: flex;
 | 
						|
    justify-content: space-around;
 | 
						|
    margin-bottom: 2rem;
 | 
						|
}
 | 
						|
 | 
						|
.ai-feature {
 | 
						|
    text-align: center;
 | 
						|
    font-size: 0.85rem;
 | 
						|
    font-weight: 600;
 | 
						|
    opacity: 0.9;
 | 
						|
}
 | 
						|
 | 
						|
/* 功能按钮 */
 | 
						|
.btn-feature-try {
 | 
						|
    background: rgba(255,255,255,0.2);
 | 
						|
    border: 2px solid rgba(255,255,255,0.4);
 | 
						|
    color: white;
 | 
						|
    padding: 12px 24px;
 | 
						|
    border-radius: 25px;
 | 
						|
    font-weight: 700;
 | 
						|
    font-size: 1rem;
 | 
						|
    transition: all 0.3s ease;
 | 
						|
    display: flex;
 | 
						|
    align-items: center;
 | 
						|
    justify-content: center;
 | 
						|
    gap: 0.5rem;
 | 
						|
    width: 100%;
 | 
						|
    backdrop-filter: blur(10px);
 | 
						|
}
 | 
						|
 | 
						|
.btn-feature-try:hover {
 | 
						|
    background: rgba(255,255,255,0.3);
 | 
						|
    transform: scale(1.05);
 | 
						|
    color: white;
 | 
						|
}
 | 
						|
 | 
						|
.btn-icon {
 | 
						|
    font-size: 1.2rem;
 | 
						|
}
 | 
						|
 | 
						|
/* 学习步骤 */
 | 
						|
.learning-steps {
 | 
						|
    background: linear-gradient(135deg, rgba(255,255,255,0.9), rgba(248,251,255,0.9));
 | 
						|
    border-radius: 25px;
 | 
						|
    padding: 3rem 2rem;
 | 
						|
    margin-top: 3rem;
 | 
						|
    box-shadow: 0 15px 40px rgba(0,0,0,0.08);
 | 
						|
}
 | 
						|
 | 
						|
.steps-title {
 | 
						|
    text-align: center;
 | 
						|
    font-size: 2rem;
 | 
						|
    font-weight: 800;
 | 
						|
    color: #333;
 | 
						|
    margin-bottom: 3rem;
 | 
						|
}
 | 
						|
 | 
						|
.steps-container {
 | 
						|
    display: flex;
 | 
						|
    align-items: center;
 | 
						|
    justify-content: center;
 | 
						|
    flex-wrap: wrap;
 | 
						|
    gap: 2rem;
 | 
						|
}
 | 
						|
 | 
						|
.step-item {
 | 
						|
    text-align: center;
 | 
						|
    position: relative;
 | 
						|
    flex: 1;
 | 
						|
    min-width: 150px;
 | 
						|
    max-width: 200px;
 | 
						|
}
 | 
						|
 | 
						|
.step-number {
 | 
						|
    position: absolute;
 | 
						|
    top: -10px;
 | 
						|
    right: -10px;
 | 
						|
    width: 30px;
 | 
						|
    height: 30px;
 | 
						|
    background: linear-gradient(45deg, #FF6B6B, #4ECDC4);
 | 
						|
    color: white;
 | 
						|
    border-radius: 50%;
 | 
						|
    display: flex;
 | 
						|
    align-items: center;
 | 
						|
    justify-content: center;
 | 
						|
    font-weight: 800;
 | 
						|
    font-size: 0.9rem;
 | 
						|
    z-index: 2;
 | 
						|
}
 | 
						|
 | 
						|
.step-icon {
 | 
						|
    width: 80px;
 | 
						|
    height: 80px;
 | 
						|
    background: linear-gradient(145deg, #f8fbff, #ffffff);
 | 
						|
    border-radius: 50%;
 | 
						|
    display: flex;
 | 
						|
    align-items: center;
 | 
						|
    justify-content: center;
 | 
						|
    margin: 0 auto 1rem;
 | 
						|
    font-size: 2.5rem;
 | 
						|
    box-shadow: 0 8px 25px rgba(0,0,0,0.1);
 | 
						|
    animation: stepFloat 4s ease-in-out infinite;
 | 
						|
}
 | 
						|
 | 
						|
.step-item:nth-child(odd) .step-icon { animation-delay: 0s; }
 | 
						|
.step-item:nth-child(even) .step-icon { animation-delay: 2s; }
 | 
						|
 | 
						|
@keyframes stepFloat {
 | 
						|
    0%, 100% { transform: translateY(0px); }
 | 
						|
    50% { transform: translateY(-8px); }
 | 
						|
}
 | 
						|
 | 
						|
.step-title {
 | 
						|
    font-size: 1.1rem;
 | 
						|
    font-weight: 700;
 | 
						|
    color: #333;
 | 
						|
    margin-bottom: 0.5rem;
 | 
						|
}
 | 
						|
 | 
						|
.step-desc {
 | 
						|
    font-size: 0.9rem;
 | 
						|
    color: #666;
 | 
						|
}
 | 
						|
 | 
						|
.step-arrow {
 | 
						|
    font-size: 2rem;
 | 
						|
    color: #4ECDC4;
 | 
						|
    animation: arrowPulse 2s ease-in-out infinite;
 | 
						|
}
 | 
						|
 | 
						|
@keyframes arrowPulse {
 | 
						|
    0%, 100% { opacity: 0.6; }
 | 
						|
    50% { opacity: 1; }
 | 
						|
}
 | 
						|
 | 
						|
/* 场景分类导航 */
 | 
						|
.scenario-nav {
 | 
						|
    display: flex;
 | 
						|
    justify-content: center;
 | 
						|
    gap: 1rem;
 | 
						|
    margin-bottom: 3rem;
 | 
						|
    flex-wrap: wrap;
 | 
						|
}
 | 
						|
 | 
						|
.scenario-nav-btn {
 | 
						|
    background: linear-gradient(145deg, #ffffff, #f8fbff);
 | 
						|
    border: 3px solid transparent;
 | 
						|
    padding: 12px 25px;
 | 
						|
    border-radius: 25px;
 | 
						|
    font-weight: 700;
 | 
						|
    color: #666;
 | 
						|
    transition: all 0.3s ease;
 | 
						|
    display: flex;
 | 
						|
    align-items: center;
 | 
						|
    gap: 0.5rem;
 | 
						|
    cursor: pointer;
 | 
						|
    box-shadow: 0 5px 15px rgba(0,0,0,0.08);
 | 
						|
}
 | 
						|
 | 
						|
.scenario-nav-btn:hover,
 | 
						|
.scenario-nav-btn.active {
 | 
						|
    background: linear-gradient(45deg, #FF6B6B, #4ECDC4);
 | 
						|
    color: white;
 | 
						|
    transform: translateY(-3px);
 | 
						|
    box-shadow: 0 10px 25px rgba(0,0,0,0.15);
 | 
						|
}
 | 
						|
 | 
						|
.nav-icon {
 | 
						|
    font-size: 1.2rem;
 | 
						|
}
 | 
						|
 | 
						|
/* 场景网格 */
 | 
						|
.scenarios-grid {
 | 
						|
    display: grid;
 | 
						|
    grid-template-columns: repeat(auto-fill, minmax(350px, 1fr));
 | 
						|
    gap: 2rem;
 | 
						|
    margin-bottom: 3rem;
 | 
						|
}
 | 
						|
 | 
						|
.scenario-card-new {
 | 
						|
    background: linear-gradient(145deg, #ffffff, #f8fbff);
 | 
						|
    border-radius: 25px;
 | 
						|
    overflow: hidden;
 | 
						|
    box-shadow: 0 15px 40px rgba(0,0,0,0.1);
 | 
						|
    transition: all 0.4s ease;
 | 
						|
    border: 3px solid transparent;
 | 
						|
}
 | 
						|
 | 
						|
.scenario-card-new:hover {
 | 
						|
    transform: translateY(-10px);
 | 
						|
    box-shadow: 0 25px 60px rgba(0,0,0,0.2);
 | 
						|
}
 | 
						|
 | 
						|
.scenario-thumbnail {
 | 
						|
    height: 150px;
 | 
						|
    position: relative;
 | 
						|
    overflow: hidden;
 | 
						|
}
 | 
						|
 | 
						|
.scenario-bg {
 | 
						|
    position: absolute;
 | 
						|
    top: 0;
 | 
						|
    left: 0;
 | 
						|
    right: 0;
 | 
						|
    bottom: 0;
 | 
						|
}
 | 
						|
 | 
						|
.social-bg { background: linear-gradient(135deg, #FF6B6B, #FF8E53); }
 | 
						|
.daily-bg { background: linear-gradient(135deg, #4ECDC4, #56C596); }
 | 
						|
.fun-bg { background: linear-gradient(135deg, #FFD93D, #FFCC02); }
 | 
						|
 | 
						|
.scenario-emoji {
 | 
						|
    position: absolute;
 | 
						|
    top: 50%;
 | 
						|
    left: 50%;
 | 
						|
    transform: translate(-50%, -50%);
 | 
						|
    font-size: 4rem;
 | 
						|
    animation: scenarioEmojiFloat 3s ease-in-out infinite;
 | 
						|
}
 | 
						|
 | 
						|
@keyframes scenarioEmojiFloat {
 | 
						|
    0%, 100% { transform: translate(-50%, -50%) scale(1); }
 | 
						|
    50% { transform: translate(-50%, -50%) scale(1.1); }
 | 
						|
}
 | 
						|
 | 
						|
.scenario-difficulty {
 | 
						|
    position: absolute;
 | 
						|
    top: 15px;
 | 
						|
    right: 15px;
 | 
						|
    background: rgba(255,255,255,0.9);
 | 
						|
    padding: 5px 12px;
 | 
						|
    border-radius: 15px;
 | 
						|
    font-size: 0.8rem;
 | 
						|
    font-weight: 600;
 | 
						|
    color: #333;
 | 
						|
}
 | 
						|
 | 
						|
.scenario-content {
 | 
						|
    padding: 2rem;
 | 
						|
}
 | 
						|
 | 
						|
.scenario-content h5 {
 | 
						|
    font-size: 1.3rem;
 | 
						|
    font-weight: 800;
 | 
						|
    color: #333;
 | 
						|
    margin-bottom: 1rem;
 | 
						|
}
 | 
						|
 | 
						|
.scenario-content p {
 | 
						|
    color: #666;
 | 
						|
    font-size: 0.95rem;
 | 
						|
    line-height: 1.6;
 | 
						|
    margin-bottom: 1.5rem;
 | 
						|
}
 | 
						|
 | 
						|
.scenario-stats {
 | 
						|
    display: flex;
 | 
						|
    gap: 1rem;
 | 
						|
    margin-bottom: 1rem;
 | 
						|
}
 | 
						|
 | 
						|
.scenario-stats .stat {
 | 
						|
    font-size: 0.8rem;
 | 
						|
    color: #888;
 | 
						|
    font-weight: 600;
 | 
						|
}
 | 
						|
 | 
						|
.scenario-tags {
 | 
						|
    margin-bottom: 2rem;
 | 
						|
}
 | 
						|
 | 
						|
.scenario-tags .tag {
 | 
						|
    display: inline-block;
 | 
						|
    background: #f0f8ff;
 | 
						|
    color: #4ECDC4;
 | 
						|
    padding: 4px 12px;
 | 
						|
    border-radius: 12px;
 | 
						|
    font-size: 0.75rem;
 | 
						|
    font-weight: 600;
 | 
						|
    margin: 2px;
 | 
						|
}
 | 
						|
 | 
						|
.scenario-preview {
 | 
						|
    display: flex;
 | 
						|
    gap: 1rem;
 | 
						|
}
 | 
						|
 | 
						|
.btn-preview,
 | 
						|
.btn-start {
 | 
						|
    flex: 1;
 | 
						|
    padding: 10px 16px;
 | 
						|
    border-radius: 20px;
 | 
						|
    font-weight: 700;
 | 
						|
    font-size: 0.9rem;
 | 
						|
    transition: all 0.3s ease;
 | 
						|
    border: none;
 | 
						|
    cursor: pointer;
 | 
						|
}
 | 
						|
 | 
						|
.btn-preview {
 | 
						|
    background: linear-gradient(45deg, #e3f2fd, #bbdefb);
 | 
						|
    color: #1976d2;
 | 
						|
}
 | 
						|
 | 
						|
.btn-start {
 | 
						|
    background: linear-gradient(45deg, #FF6B6B, #4ECDC4);
 | 
						|
    color: white;
 | 
						|
}
 | 
						|
 | 
						|
.btn-preview:hover,
 | 
						|
.btn-start:hover {
 | 
						|
    transform: scale(1.05);
 | 
						|
}
 | 
						|
 | 
						|
/* 场景预览弹窗 */
 | 
						|
.scenario-preview-modal {
 | 
						|
    position: fixed;
 | 
						|
    top: 0;
 | 
						|
    left: 0;
 | 
						|
    right: 0;
 | 
						|
    bottom: 0;
 | 
						|
    background: rgba(0,0,0,0.8);
 | 
						|
    z-index: 9999;
 | 
						|
    display: none;
 | 
						|
    align-items: center;
 | 
						|
    justify-content: center;
 | 
						|
    padding: 2rem;
 | 
						|
}
 | 
						|
 | 
						|
.preview-content {
 | 
						|
    background: white;
 | 
						|
    border-radius: 25px;
 | 
						|
    max-width: 600px;
 | 
						|
    width: 100%;
 | 
						|
    max-height: 80vh;
 | 
						|
    overflow: hidden;
 | 
						|
    animation: modalSlideIn 0.3s ease;
 | 
						|
}
 | 
						|
 | 
						|
@keyframes modalSlideIn {
 | 
						|
    from { transform: scale(0.8) translateY(-50px); opacity: 0; }
 | 
						|
    to { transform: scale(1) translateY(0); opacity: 1; }
 | 
						|
}
 | 
						|
 | 
						|
.preview-header {
 | 
						|
    padding: 2rem 2rem 1rem;
 | 
						|
    border-bottom: 2px solid #f0f0f0;
 | 
						|
    display: flex;
 | 
						|
    justify-content: space-between;
 | 
						|
    align-items: center;
 | 
						|
}
 | 
						|
 | 
						|
.preview-close {
 | 
						|
    background: none;
 | 
						|
    border: none;
 | 
						|
    font-size: 2rem;
 | 
						|
    color: #666;
 | 
						|
    cursor: pointer;
 | 
						|
    padding: 0;
 | 
						|
    width: 40px;
 | 
						|
    height: 40px;
 | 
						|
    border-radius: 50%;
 | 
						|
    display: flex;
 | 
						|
    align-items: center;
 | 
						|
    justify-content: center;
 | 
						|
    transition: all 0.3s ease;
 | 
						|
}
 | 
						|
 | 
						|
.preview-close:hover {
 | 
						|
    background: #f0f0f0;
 | 
						|
    color: #333;
 | 
						|
}
 | 
						|
 | 
						|
.preview-body {
 | 
						|
    padding: 2rem;
 | 
						|
    max-height: 400px;
 | 
						|
    overflow-y: auto;
 | 
						|
}
 | 
						|
 | 
						|
.preview-chat {
 | 
						|
    display: flex;
 | 
						|
    flex-direction: column;
 | 
						|
    gap: 1rem;
 | 
						|
}
 | 
						|
 | 
						|
.preview-footer {
 | 
						|
    padding: 1rem 2rem 2rem;
 | 
						|
    display: flex;
 | 
						|
    gap: 1rem;
 | 
						|
    justify-content: flex-end;
 | 
						|
}
 | 
						|
 | 
						|
.btn-preview-close,
 | 
						|
.btn-preview-start {
 | 
						|
    padding: 10px 20px;
 | 
						|
    border-radius: 20px;
 | 
						|
    font-weight: 700;
 | 
						|
    border: none;
 | 
						|
    cursor: pointer;
 | 
						|
    transition: all 0.3s ease;
 | 
						|
}
 | 
						|
 | 
						|
.btn-preview-close {
 | 
						|
    background: #f0f0f0;
 | 
						|
    color: #666;
 | 
						|
}
 | 
						|
 | 
						|
.btn-preview-start {
 | 
						|
    background: linear-gradient(45deg, #FF6B6B, #4ECDC4);
 | 
						|
    color: white;
 | 
						|
}
 | 
						|
 | 
						|
/* 超级CTA区域 */
 | 
						|
.cta-section-mega {
 | 
						|
    background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
 | 
						|
    color: white;
 | 
						|
    padding: 100px 0;
 | 
						|
    position: relative;
 | 
						|
    overflow: hidden;
 | 
						|
}
 | 
						|
 | 
						|
.cta-mega-decorations {
 | 
						|
    position: absolute;
 | 
						|
    top: 0;
 | 
						|
    left: 0;
 | 
						|
    right: 0;
 | 
						|
    bottom: 0;
 | 
						|
    pointer-events: none;
 | 
						|
}
 | 
						|
 | 
						|
.cta-floating {
 | 
						|
    position: absolute;
 | 
						|
    font-size: 3rem;
 | 
						|
    animation: ctaFloating 8s ease-in-out infinite;
 | 
						|
}
 | 
						|
 | 
						|
.floating-1 { top: 10%; left: 5%; animation-delay: 0s; }
 | 
						|
.floating-2 { top: 20%; right: 10%; animation-delay: 1s; }
 | 
						|
.floating-3 { bottom: 30%; left: 10%; animation-delay: 2s; }
 | 
						|
.floating-4 { bottom: 20%; right: 15%; animation-delay: 3s; }
 | 
						|
.floating-5 { top: 60%; left: 20%; animation-delay: 4s; }
 | 
						|
.floating-6 { top: 40%; right: 5%; animation-delay: 5s; }
 | 
						|
 | 
						|
@keyframes ctaFloating {
 | 
						|
    0%, 100% { transform: translateY(0px) rotate(0deg); opacity: 0.6; }
 | 
						|
    50% { transform: translateY(-30px) rotate(10deg); opacity: 1; }
 | 
						|
}
 | 
						|
 | 
						|
.cta-mega-title {
 | 
						|
    font-size: 4rem;
 | 
						|
    font-weight: 900;
 | 
						|
    margin-bottom: 1.5rem;
 | 
						|
    text-shadow: 2px 2px 10px rgba(0,0,0,0.3);
 | 
						|
    line-height: 1.1;
 | 
						|
}
 | 
						|
 | 
						|
.highlight-text {
 | 
						|
    background: linear-gradient(45deg, #FFD700, #FFA500);
 | 
						|
    -webkit-background-clip: text;
 | 
						|
    -webkit-text-fill-color: transparent;
 | 
						|
    background-clip: text;
 | 
						|
    position: relative;
 | 
						|
}
 | 
						|
 | 
						|
.cta-mega-subtitle {
 | 
						|
    font-size: 1.4rem;
 | 
						|
    margin-bottom: 3rem;
 | 
						|
    opacity: 0.95;
 | 
						|
    line-height: 1.6;
 | 
						|
}
 | 
						|
 | 
						|
/* CTA优势列表 */
 | 
						|
.cta-benefits {
 | 
						|
    margin-bottom: 3rem;
 | 
						|
}
 | 
						|
 | 
						|
.benefit-row {
 | 
						|
    display: flex;
 | 
						|
    align-items: center;
 | 
						|
    gap: 1.5rem;
 | 
						|
    margin-bottom: 1.5rem;
 | 
						|
    padding: 1rem;
 | 
						|
    background: rgba(255,255,255,0.1);
 | 
						|
    border-radius: 15px;
 | 
						|
    backdrop-filter: blur(10px);
 | 
						|
    transition: all 0.3s ease;
 | 
						|
}
 | 
						|
 | 
						|
.benefit-row:hover {
 | 
						|
    background: rgba(255,255,255,0.2);
 | 
						|
    transform: translateX(10px);
 | 
						|
}
 | 
						|
 | 
						|
.benefit-row .benefit-icon {
 | 
						|
    font-size: 2.5rem;
 | 
						|
    width: 60px;
 | 
						|
    text-align: center;
 | 
						|
}
 | 
						|
 | 
						|
.benefit-text strong {
 | 
						|
    display: block;
 | 
						|
    font-size: 1.1rem;
 | 
						|
    margin-bottom: 0.3rem;
 | 
						|
}
 | 
						|
 | 
						|
.benefit-text small {
 | 
						|
    opacity: 0.8;
 | 
						|
    font-size: 0.9rem;
 | 
						|
}
 | 
						|
 | 
						|
/* CTA按钮 */
 | 
						|
.btn-cta-mega {
 | 
						|
    background: linear-gradient(45deg, #FF6B6B, #4ECDC4, #FFD93D);
 | 
						|
    background-size: 200% 200%;
 | 
						|
    border: none;
 | 
						|
    padding: 20px 40px;
 | 
						|
    border-radius: 50px;
 | 
						|
    color: white;
 | 
						|
    font-size: 1.4rem;
 | 
						|
    font-weight: 800;
 | 
						|
    text-decoration: none !important;
 | 
						|
    display: inline-flex;
 | 
						|
    align-items: center;
 | 
						|
    gap: 15px;
 | 
						|
    box-shadow: 0 15px 40px rgba(0,0,0,0.3);
 | 
						|
    transition: all 0.4s ease;
 | 
						|
    animation: ctaMegaGradient 4s ease-in-out infinite;
 | 
						|
    position: relative;
 | 
						|
    overflow: hidden;
 | 
						|
}
 | 
						|
 | 
						|
@keyframes ctaMegaGradient {
 | 
						|
    0%, 100% { background-position: 0% 50%; }
 | 
						|
    50% { background-position: 100% 50%; }
 | 
						|
}
 | 
						|
 | 
						|
.btn-cta-mega:hover {
 | 
						|
    transform: translateY(-5px) scale(1.05);
 | 
						|
    box-shadow: 0 25px 60px rgba(0,0,0,0.4);
 | 
						|
    color: white;
 | 
						|
}
 | 
						|
 | 
						|
.btn-shine {
 | 
						|
    position: absolute;
 | 
						|
    top: 0;
 | 
						|
    left: -100%;
 | 
						|
    width: 100%;
 | 
						|
    height: 100%;
 | 
						|
    background: linear-gradient(90deg, transparent, rgba(255,255,255,0.4), transparent);
 | 
						|
    transition: left 0.6s;
 | 
						|
}
 | 
						|
 | 
						|
.btn-cta-mega:hover .btn-shine {
 | 
						|
    left: 100%;
 | 
						|
}
 | 
						|
 | 
						|
.cta-promise {
 | 
						|
    text-align: center;
 | 
						|
    margin-top: 1rem;
 | 
						|
    opacity: 0.8;
 | 
						|
}
 | 
						|
 | 
						|
/* 设备展示 */
 | 
						|
.device-showcase {
 | 
						|
    position: relative;
 | 
						|
    margin-bottom: 2rem;
 | 
						|
}
 | 
						|
 | 
						|
.device {
 | 
						|
    background: linear-gradient(145deg, #ffffff, #f0f0f0);
 | 
						|
    border-radius: 20px;
 | 
						|
    box-shadow: 0 20px 50px rgba(0,0,0,0.2);
 | 
						|
    position: relative;
 | 
						|
    animation: deviceFloat 6s ease-in-out infinite;
 | 
						|
}
 | 
						|
 | 
						|
.phone {
 | 
						|
    width: 200px;
 | 
						|
    height: 350px;
 | 
						|
    margin: 0 auto;
 | 
						|
    animation-delay: 0s;
 | 
						|
}
 | 
						|
 | 
						|
.tablet {
 | 
						|
    width: 280px;
 | 
						|
    height: 200px;
 | 
						|
    position: absolute;
 | 
						|
    top: 100px;
 | 
						|
    right: -50px;
 | 
						|
    animation-delay: 3s;
 | 
						|
}
 | 
						|
 | 
						|
@keyframes deviceFloat {
 | 
						|
    0%, 100% { transform: translateY(0px) rotate(0deg); }
 | 
						|
    50% { transform: translateY(-15px) rotate(2deg); }
 | 
						|
}
 | 
						|
 | 
						|
.device-screen {
 | 
						|
    background: #000;
 | 
						|
    border-radius: 15px;
 | 
						|
    margin: 15px;
 | 
						|
    height: calc(100% - 30px);
 | 
						|
    overflow: hidden;
 | 
						|
    position: relative;
 | 
						|
}
 | 
						|
 | 
						|
.app-interface,
 | 
						|
.progress-interface {
 | 
						|
    background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
 | 
						|
    height: 100%;
 | 
						|
    padding: 20px;
 | 
						|
    color: white;
 | 
						|
}
 | 
						|
 | 
						|
.app-header,
 | 
						|
.progress-title {
 | 
						|
    text-align: center;
 | 
						|
    font-weight: 700;
 | 
						|
    margin-bottom: 20px;
 | 
						|
    font-size: 1rem;
 | 
						|
}
 | 
						|
 | 
						|
.chat-message {
 | 
						|
    display: flex;
 | 
						|
    align-items: center;
 | 
						|
    gap: 10px;
 | 
						|
    margin-bottom: 15px;
 | 
						|
    font-size: 0.8rem;
 | 
						|
}
 | 
						|
 | 
						|
.chat-message.ai {
 | 
						|
    justify-content: flex-start;
 | 
						|
}
 | 
						|
 | 
						|
.chat-message.user {
 | 
						|
    justify-content: flex-end;
 | 
						|
    flex-direction: row-reverse;
 | 
						|
}
 | 
						|
 | 
						|
.chat-message .avatar {
 | 
						|
    width: 30px;
 | 
						|
    height: 30px;
 | 
						|
    border-radius: 50%;
 | 
						|
    background: rgba(255,255,255,0.2);
 | 
						|
    display: flex;
 | 
						|
    align-items: center;
 | 
						|
    justify-content: center;
 | 
						|
    font-size: 1rem;
 | 
						|
}
 | 
						|
 | 
						|
.progress-stats {
 | 
						|
    display: flex;
 | 
						|
    justify-content: center;
 | 
						|
    margin-top: 20px;
 | 
						|
}
 | 
						|
 | 
						|
.stat-circle {
 | 
						|
    width: 80px;
 | 
						|
    height: 80px;
 | 
						|
    border-radius: 50%;
 | 
						|
    background: conic-gradient(#FFD700 0deg 306deg, rgba(255,255,255,0.2) 306deg 360deg);
 | 
						|
    display: flex;
 | 
						|
    flex-direction: column;
 | 
						|
    align-items: center;
 | 
						|
    justify-content: center;
 | 
						|
    position: relative;
 | 
						|
}
 | 
						|
 | 
						|
.stat-circle::before {
 | 
						|
    content: '';
 | 
						|
    position: absolute;
 | 
						|
    width: 60px;
 | 
						|
    height: 60px;
 | 
						|
    border-radius: 50%;
 | 
						|
    background: #667eea;
 | 
						|
}
 | 
						|
 | 
						|
.stat-circle .number,
 | 
						|
.stat-circle .label {
 | 
						|
    position: relative;
 | 
						|
    z-index: 2;
 | 
						|
}
 | 
						|
 | 
						|
.stat-circle .number {
 | 
						|
    font-size: 1.2rem;
 | 
						|
    font-weight: 900;
 | 
						|
}
 | 
						|
 | 
						|
.stat-circle .label {
 | 
						|
    font-size: 0.6rem;
 | 
						|
    opacity: 0.8;
 | 
						|
}
 | 
						|
 | 
						|
/* 用户评价气泡 */
 | 
						|
.testimonial-bubbles {
 | 
						|
    position: relative;
 | 
						|
}
 | 
						|
 | 
						|
.testimonial-bubble {
 | 
						|
    position: absolute;
 | 
						|
    background: rgba(255,255,255,0.95);
 | 
						|
    border-radius: 20px;
 | 
						|
    padding: 1.5rem;
 | 
						|
    box-shadow: 0 10px 30px rgba(0,0,0,0.2);
 | 
						|
    max-width: 250px;
 | 
						|
    animation: bubbleFloat 8s ease-in-out infinite;
 | 
						|
}
 | 
						|
 | 
						|
.bubble-1 {
 | 
						|
    top: -50px;
 | 
						|
    left: -100px;
 | 
						|
    animation-delay: 0s;
 | 
						|
}
 | 
						|
 | 
						|
.bubble-2 {
 | 
						|
    bottom: -80px;
 | 
						|
    right: -120px;
 | 
						|
    animation-delay: 4s;
 | 
						|
}
 | 
						|
 | 
						|
@keyframes bubbleFloat {
 | 
						|
    0%, 100% { transform: translateY(0px); opacity: 0.9; }
 | 
						|
    50% { transform: translateY(-20px); opacity: 1; }
 | 
						|
}
 | 
						|
 | 
						|
.bubble-content {
 | 
						|
    color: #333;
 | 
						|
}
 | 
						|
 | 
						|
.user-info {
 | 
						|
    display: flex;
 | 
						|
    align-items: center;
 | 
						|
    gap: 0.5rem;
 | 
						|
    margin-bottom: 0.8rem;
 | 
						|
}
 | 
						|
 | 
						|
.user-info .avatar {
 | 
						|
    font-size: 1.5rem;
 | 
						|
}
 | 
						|
 | 
						|
.user-info .name {
 | 
						|
    font-weight: 700;
 | 
						|
    font-size: 0.9rem;
 | 
						|
}
 | 
						|
 | 
						|
.bubble-content p {
 | 
						|
    font-size: 0.8rem;
 | 
						|
    line-height: 1.4;
 | 
						|
    margin: 0;
 | 
						|
    font-style: italic;
 | 
						|
}
 | 
						|
 | 
						|
/* 响应式优化 */
 | 
						|
@media (max-width: 768px) {
 | 
						|
    .stat-card {
 | 
						|
        padding: 1.5rem 0.8rem;
 | 
						|
    }
 | 
						|
    
 | 
						|
    .stat-number {
 | 
						|
        font-size: 2.5rem;
 | 
						|
    }
 | 
						|
    
 | 
						|
    .feature-card-advanced {
 | 
						|
        padding: 1.5rem;
 | 
						|
    }
 | 
						|
    
 | 
						|
    .steps-container {
 | 
						|
        flex-direction: column;
 | 
						|
        gap: 3rem;
 | 
						|
    }
 | 
						|
    
 | 
						|
    .step-arrow {
 | 
						|
        transform: rotate(90deg);
 | 
						|
    }
 | 
						|
    
 | 
						|
    .scenarios-grid {
 | 
						|
        grid-template-columns: 1fr;
 | 
						|
    }
 | 
						|
    
 | 
						|
    .scenario-nav {
 | 
						|
        gap: 0.5rem;
 | 
						|
    }
 | 
						|
    
 | 
						|
    .scenario-nav-btn {
 | 
						|
        padding: 8px 16px;
 | 
						|
        font-size: 0.9rem;
 | 
						|
    }
 | 
						|
    
 | 
						|
    .cta-mega-title {
 | 
						|
        font-size: 2.5rem;
 | 
						|
    }
 | 
						|
    
 | 
						|
    .cta-mega-subtitle {
 | 
						|
        font-size: 1.1rem;
 | 
						|
    }
 | 
						|
    
 | 
						|
    .benefit-row {
 | 
						|
        flex-direction: column;
 | 
						|
        text-align: center;
 | 
						|
    }
 | 
						|
    
 | 
						|
    .device-showcase .tablet {
 | 
						|
        display: none;
 | 
						|
    }
 | 
						|
    
 | 
						|
    .testimonial-bubble {
 | 
						|
        position: static;
 | 
						|
        margin: 1rem 0;
 | 
						|
        max-width: 100%;
 | 
						|
    }
 | 
						|
}
 | 
						|
 | 
						|
@media (max-width: 576px) {
 | 
						|
    .stat-icon {
 | 
						|
        font-size: 2.5rem;
 | 
						|
    }
 | 
						|
    
 | 
						|
    .stat-number {
 | 
						|
        font-size: 2rem;
 | 
						|
    }
 | 
						|
    
 | 
						|
    .feature-icon-big {
 | 
						|
        width: 80px;
 | 
						|
        height: 80px;
 | 
						|
        font-size: 3rem;
 | 
						|
    }
 | 
						|
    
 | 
						|
    .wave-bar {
 | 
						|
        width: 6px;
 | 
						|
    }
 | 
						|
    
 | 
						|
    .btn-cta-mega {
 | 
						|
        padding: 16px 30px;
 | 
						|
        font-size: 1.2rem;
 | 
						|
    }
 | 
						|
}
 | 
						|
 |