.page { padding: 28rpx 32rpx 48rpx; } .card { padding: 12rpx 32rpx 28rpx; background: #ffffff; border-radius: 28rpx; } .label { display: block; margin-top: 28rpx; color: #6b7280; font-size: 26rpx; } .input { height: 88rpx; margin-top: 8rpx; border-bottom: 1rpx solid #eef0f3; font-size: 32rpx; color: #111827; } .placeholder { color: #c4c9d1; } .pin-row { display: flex; align-items: center; gap: 16rpx; margin-top: 32rpx; padding-bottom: 8rpx; color: #374151; font-size: 28rpx; } .media-row { display: flex; align-items: center; flex-wrap: wrap; gap: 16rpx; margin-top: 16rpx; } .preview { width: 120rpx; height: 120rpx; border-radius: 16rpx; background: #eef0f3; } .media-name { color: #6b7280; font-size: 26rpx; } .media-btn { height: 64rpx; padding: 0 24rpx; border-radius: 32rpx; background: #128a80; color: #ffffff; font-size: 26rpx; display: flex; align-items: center; } .media-btn.ghost { background: #ffffff; color: #6b7280; border: 2rpx solid #e5e7eb; } .check { width: 36rpx; height: 36rpx; border-radius: 8rpx; border: 2rpx solid #cbd5e1; box-sizing: border-box; } .check.on { background: #128a80; border-color: #128a80; position: relative; } .check.on::after { content: ''; position: absolute; left: 10rpx; top: 4rpx; width: 10rpx; height: 18rpx; border: 4rpx solid #ffffff; border-top: 0; border-left: 0; transform: rotate(45deg); } .save { height: 96rpx; margin-top: 36rpx; border-radius: 20rpx; background: #128a80; color: #ffffff; font-size: 32rpx; font-weight: 600; display: flex; align-items: center; justify-content: center; } .save.busy { opacity: 0.7; }