/* ConfirmationStep.module.css */ .confirmationStep { padding: 32px; animation: fadeIn 0.3s ease-out; } @keyframes fadeIn { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: translateY(0); } } .sectionTitle { font-size: 20px; font-weight: 600; color: #1f2937; margin-bottom: 28px; display: flex; align-items: center; gap: 10px; } .sectionTitle::before { content: '✓'; background: linear-gradient(135deg, #8b5cf6 0%, #7c3aed 100%); color: white; width: 28px; height: 28px; border-radius: 50%; display: flex; align-items: center; justify-content: center; font-size: 14px; } .reviewSection { background: linear-gradient(145deg, #f8fafc 0%, #ffffff 100%); border-radius: 16px; padding: 32px; border: 1px solid #e2e8f0; box-shadow: 0 4px 20px rgba(0, 0, 0, 0.05); backdrop-filter: blur(10px); } .reviewItem { display: flex; justify-content: space-between; align-items: center; margin-bottom: 20px; padding-bottom: 20px; border-bottom: 1px solid #f1f5f9; transition: all 0.2s ease; } .reviewItem:hover { transform: translateX(5px); } .reviewItem:last-child { margin-bottom: 0; padding-bottom: 0; border-bottom: none; } .reviewLabel { font-weight: 600; color: #475569; flex: 1; font-size: 15px; display: flex; align-items: center; gap: 8px; } .reviewLabel::before { content: '•'; color: #8b5cf6; font-size: 20px; } .reviewValue { flex: 2; text-align: right; color: #0f172a; font-weight: 500; font-size: 15px; background: #f1f5f9; padding: 8px 16px; border-radius: 8px; } .reviewComparison { flex: 2; display: flex; align-items: center; justify-content: flex-end; gap: 16px; } .oldValue { color: #94a3b8; text-decoration: line-through; font-size: 14px; background: #f8fafc; padding: 6px 12px; border-radius: 6px; min-width: 100px; text-align: center; } .arrow { color: #8b5cf6; font-weight: bold; font-size: 20px; animation: pulse 2s infinite; } @keyframes pulse { 0%, 100% { opacity: 1; } 50% { opacity: 0.5; } } .newValue { color: #059669; font-weight: 600; font-size: 15px; background: #d1fae5; padding: 8px 16px; border-radius: 8px; min-width: 100px; text-align: center; box-shadow: 0 2px 4px rgba(5, 150, 105, 0.1); } .reviewDivider { height: 2px; background: linear-gradient(90deg, transparent, #8b5cf6, transparent); margin: 24px 0; opacity: 0.3; } .submittingMessage { display: flex; align-items: center; justify-content: center; gap: 16px; margin-top: 32px; padding: 20px; background: linear-gradient(135deg, #f0f9ff 0%, #e0f2fe 100%); border-radius: 12px; border: 1px solid #bae6fd; animation: pulseBg 1.5s infinite; } @keyframes pulseBg { 0%, 100% { background: linear-gradient(135deg, #f0f9ff 0%, #e0f2fe 100%); } 50% { background: linear-gradient(135deg, #e0f2fe 0%, #bae6fd 100%); } } .spinner { border: 3px solid rgba(139, 92, 246, 0.1); border-top: 3px solid #8b5cf6; border-radius: 50%; width: 24px; height: 24px; animation: spin 1s linear infinite; } @keyframes spin { 0% { transform: rotate(0deg); } 100% { transform: rotate(360deg); } } .submittingMessage p { color: #0369a1; font-weight: 500; font-size: 15px; } .noDataMessage { text-align: center; padding: 60px 20px; color: #64748b; font-size: 16px; background: #f8fafc; border-radius: 12px; border: 1px dashed #cbd5e1; } .noDataMessage::before { content: '⚠️'; font-size: 32px; display: block; margin-bottom: 16px; }