.wordcloud-page { min-height: 100vh; padding: 0 24px 24px; } /* 顶部导航 */ .page-header { padding: calc(env(safe-area-inset-top, 0px) + 44px) 32px 24px; margin: 20px 0 0; background: transparent; } .back-btn { font-size: 40px; color: var(--text-primary); padding: 10px; } /* 步骤指示器 */ .step-indicator { display: flex; align-items: center; justify-content: center; padding: 32px; margin: 0 24px; } .step-item { display: flex; flex-direction: column; align-items: center; position: relative; flex: 1; } .step-circle { width: 64px; height: 64px; border-radius: 50%; background: var(--bg-input); display: flex; align-items: center; justify-content: center; margin-bottom: 12px; border: 4px dashed var(--bg-input); } .step-circle.active { background: var(--btn-gradient); border-color: var(--accent-pink); } .step-num { font-size: 28px; font-weight: 700; color: var(--text-muted); } .step-circle.active .step-num { color: #fff; } .step-label { font-size: 24px; color: var(--text-secondary); } .step-label.active { color: var(--accent-pink); font-weight: 600; } .step-line { position: absolute; top: 30px; left: 60%; width: 100%; height: 4px; background: var(--bg-input); } .step-line.active { background: var(--btn-gradient); } /* 步骤内容 */ .step-content { padding: 32px; } /* 上传区域 */ .upload-area { min-height: 400px; display: flex; align-items: center; justify-content: center; } .upload-placeholder { display: flex; flex-direction: column; align-items: center; padding: 60px; } .upload-icon { font-size: 80px; margin-bottom: 24px; } .upload-title { font-size: 32px; font-weight: 600; color: var(--text-primary); margin-bottom: 12px; } .upload-desc { font-size: 26px; color: var(--text-secondary); margin-bottom: 16px; } .upload-tip { font-size: 22px; color: var(--accent-blue); background: rgba(91, 140, 255, 0.1); padding: 8px 20px; border-radius: 50px; border: var(--line-card); } .preview-image { width: 100%; height: 400px; border-radius: 24px; } /* 按钮 */ .action-btns { display: flex; flex-direction: column; gap: 20px; margin-top: 40px; } /* 输入区域 */ .input-section { padding: 32px; } .names-input { width: 100%; min-height: 300px; background: var(--bg-input); border-radius: 16px; padding: 24px; font-size: 28px; line-height: 1.6; box-sizing: border-box; border: var(--line-card); color: var(--text-primary); } .input-stats { display: block; text-align: right; font-size: 24px; color: var(--text-secondary); margin-top: 12px; } .input-tips { margin-top: 24px; } .tip-item { display: block; font-size: 24px; color: var(--text-secondary); margin-bottom: 8px; } /* 生成中 */ .generating-panel { display: flex; flex-direction: column; align-items: center; padding: 80px 40px; } .generating-icon { font-size: 120px; animation: pulse 2s infinite; } @keyframes pulse { 0%, 100% { transform: scale(1); opacity: 1; } 50% { transform: scale(1.2); opacity: 0.7; } } .generating-title { font-size: 40px; font-weight: 700; color: var(--text-primary); margin-top: 40px; } .generating-subtitle { font-size: 28px; color: var(--text-secondary); margin-top: 16px; margin-bottom: 40px; } .progress-bar { width: 80%; height: 16px; background: rgba(255, 154, 158, 0.15); border-radius: 8px; overflow: hidden; } .progress-fill { height: 100%; background: var(--btn-gradient); border-radius: 8px; transition: width 0.5s ease; } .progress-text { font-size: 32px; font-weight: 700; color: var(--accent-pink); margin-top: 16px; } /* 结果面板 */ .result-panel { padding: 20px 0; } .result-image-wrapper { overflow: hidden; position: relative; } .result-image { width: 100%; height: 500px; background: linear-gradient(135deg, rgba(255, 154, 158, 0.08) 0%, rgba(160, 196, 255, 0.08) 100%); } .watermark-badge { position: absolute; bottom: 20px; right: 20px; background: rgba(255, 255, 255, 0.8); color: var(--text-primary); padding: 8px 20px; border-radius: 8px; font-size: 22px; border: var(--line-card); } .result-actions { display: flex; justify-content: space-around; margin: 32px 0; } .action-btn { display: flex; flex-direction: column; align-items: center; padding: 20px; } .action-icon { font-size: 48px; margin-bottom: 8px; } .action-label { font-size: 24px; color: var(--text-secondary); } /* 跳转DIY卡片 */ .diy-jump-card { display: flex; align-items: center; justify-content: space-between; margin-bottom: 32px; } .diy-jump-title { font-size: 32px; font-weight: 700; color: var(--text-primary); display: block; margin-bottom: 8px; } .diy-jump-desc { font-size: 24px; color: var(--text-secondary); display: block; } .diy-jump-arrow { font-size: 40px; color: var(--accent-pink); }