.page { min-height: 100vh; background: var(--bg-grad); padding-bottom: 160rpx; } .preview { border-radius: var(--radius); padding: 36rpx; border: 1rpx solid var(--line); text-align: center; } .preview__emoji { width: 120rpx; height: 120rpx; border-radius: 28rpx; display: inline-flex; align-items: center; justify-content: center; font-size: 64rpx; } .preview__name { font-size: 38rpx; font-weight: 700; margin-top: 20rpx; } .preview__desc { font-size: 24rpx; color: var(--text-2); margin-top: 10rpx; } .field { margin-top: 40rpx; } .field__label { font-size: 26rpx; color: var(--text-2); margin-bottom: 16rpx; } .field__input, .field__area { background: var(--surface); border: 1rpx solid var(--line); border-radius: var(--radius-sm); padding: 24rpx; color: var(--text); font-size: 30rpx; width: 100%; } .field__area { min-height: 140rpx; } .ph { color: var(--text-3); } .emoji-row { white-space: nowrap; } .emoji { display: inline-flex; align-items: center; justify-content: center; width: 84rpx; height: 84rpx; margin-right: 14rpx; border-radius: 20rpx; background: var(--surface-2); border: 1rpx solid var(--line); font-size: 44rpx; } .emoji--active { border-width: 2rpx; } .colors { display: flex; flex-wrap: wrap; gap: 24rpx; } .swatch { width: 72rpx; height: 72rpx; border-radius: 999rpx; border: 4rpx solid transparent; box-sizing: border-box; } .swatch--active { border-color: var(--text); box-shadow: 0 0 0 2rpx var(--bg); } .savebar { position: fixed; left: 0; right: 0; bottom: 0; padding: 20rpx 32rpx; background: var(--bar-bg); backdrop-filter: blur(12px); border-top: 1rpx solid var(--line); padding-bottom: calc(20rpx + env(safe-area-inset-bottom)); } .savebar__btn { display: flex; align-items: center; justify-content: center; background: linear-gradient(135deg, var(--gold) 0%, var(--gold-2) 100%); color: var(--accent-on); font-weight: 700; font-size: 32rpx; border-radius: 999rpx; padding: 26rpx; }