/**app.wxss - 全局样式**/ /* 基础重置 */ page { height: 100%; color: #333; font-family: -apple-system, BlinkMacSystemFont, arial, helvetica, 'Segoe UI', 'Roboto', sans-serif; } /* 容器基础样式 */ .container { height: 100vh; display: flex; flex-direction: column; position: relative; overflow: hidden; } /* 渐变背景主题 */ .gradient-bg { background: linear-gradient(135deg, #667eea 0%, #764ba2 50%, #f093fb 100%); background-size: 200% 200%; animation: gradientShift 8s ease infinite; } .gradient-bg-alt { background: linear-gradient(45deg, #ff9a9e 0%, #fecfef 50%, #fecfef 100%); background-size: 200% 200%; animation: gradientShift 10s ease infinite; } .gradient-bg-tech { background: linear-gradient(135deg, #667eea 0%, #764ba2 35%, #f093fb 100%); background-size: 300% 300%; animation: gradientShift 12s ease infinite; } /* 渐变动画 */ @keyframes gradientShift { 0% { background-position: 0% 50%; } 50% { background-position: 100% 50%; } 100% { background-position: 0% 50%; } } /* 卡片样式 */ .card { background: rgba(255, 255, 255, 0.95); backdrop-filter: blur(10px); border-radius: 20rpx; box-shadow: 0 8rpx 32rpx rgba(0, 0, 0, 0.1); border: 1rpx solid rgba(255, 255, 255, 0.2); } .image-card { border-radius: 24rpx; overflow: hidden; position: relative; box-shadow: 0 12rpx 40rpx rgba(102, 126, 234, 0.3); border: 2rpx solid rgba(255, 255, 255, 0.3); } /* 光晕效果 */ .glow-effect { position: relative; } .glow-effect::before { content: ''; position: absolute; top: -4rpx; left: -4rpx; right: -4rpx; bottom: -4rpx; background: linear-gradient(45deg, #667eea, #764ba2, #f093fb, #667eea); border-radius: 28rpx; z-index: -1; animation: glowPulse 3s ease-in-out infinite; filter: blur(8rpx); } @keyframes glowPulse { 0%, 100% { opacity: 0.7; transform: scale(1); } 50% { opacity: 1; transform: scale(1.02); } } /* 加载动画 */ .loading-bar { width: 100%; height: 8rpx; background: rgba(255, 255, 255, 0.2); border-radius: 4rpx; overflow: hidden; position: relative; } .loading-bar::before { content: ''; position: absolute; top: 0; left: -100%; width: 100%; height: 100%; background: linear-gradient(90deg, transparent, #667eea, transparent); animation: loadingMove 2s ease-in-out infinite; } @keyframes loadingMove { 0% { left: -100%; } 100% { left: 100%; } } /* 按钮样式 */ .btn-primary { background: linear-gradient(45deg, #667eea, #764ba2); color: white; border: none; border-radius: 50rpx; padding: 24rpx 48rpx; font-size: 32rpx; font-weight: 500; box-shadow: 0 8rpx 24rpx rgba(102, 126, 234, 0.3); transition: all 0.3s ease; } .btn-primary:active { transform: translateY(2rpx); box-shadow: 0 4rpx 12rpx rgba(102, 126, 234, 0.4); } .btn-secondary { background: rgba(255, 255, 255, 0.9); color: #667eea; border: 2rpx solid #667eea; border-radius: 50rpx; padding: 24rpx 48rpx; font-size: 32rpx; font-weight: 500; transition: all 0.3s ease; } .btn-secondary:active { background: rgba(102, 126, 234, 0.1); } /* 导航栏 */ .custom-navbar { position: fixed; top: 0; left: 0; right: 0; z-index: 9999; background: rgba(255, 255, 255, 0.95); backdrop-filter: blur(10px); border-bottom: 1rpx solid rgba(255, 255, 255, 0.2); } /* 内容区域 */ .content-area { flex: 1; display: flex; flex-direction: column; } /* 展示区域 */ .display-area { background: rgba(255, 255, 255, 0.95); backdrop-filter: blur(10px); border-radius: 24rpx 24rpx 0 0; padding: 32rpx; margin-top: auto; min-height: 300rpx; box-shadow: 0 -8rpx 32rpx rgba(0, 0, 0, 0.1); } /* 文本样式 */ .text-primary { color: #333; font-weight: 500; } .text-secondary { color: #666; font-size: 28rpx; } .text-gradient { background: linear-gradient(45deg, #667eea, #764ba2); -webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent; font-weight: 600; }