/* pages/apply/apply.wxss — H5 px × 2 × 0.875 精确转换 */ .page { min-height: 100vh; background: linear-gradient(135deg, #e0f2fe 0%, #f0f9ff 50%, #ecfeff 100%); display: flex; flex-direction: column; box-sizing: border-box; font-weight: 400; -webkit-font-smoothing: antialiased; } /* ---- 顶部导航栏 h-11=44px→78rpx ---- */ .navbar { height: 78rpx; display: flex; align-items: center; justify-content: center; position: sticky; top: 0; z-index: 10; background: rgba(255, 255, 255, 0.95); border-bottom: 1rpx solid rgba(229, 231, 235, 0.5); } .navbar-back { position: absolute; left: 28rpx; padding: 8rpx; } /* text-base=16px→28rpx */ .navbar-title { font-size: 28rpx; font-weight: 500; color: #242424; letter-spacing: 0.5rpx; } /* ---- 主体内容 p-4=16px→28rpx ---- */ .main { flex: 1; padding: 28rpx; padding-bottom: 380rpx; } /* ---- 欢迎卡片 p-5=20px→36rpx, rounded-2xl=16px→28rpx ---- */ .welcome-card { background: linear-gradient(135deg, #0052d9, #60a5fa); border-radius: 28rpx; padding: 36rpx; margin-bottom: 28rpx; box-shadow: 0 14rpx 36rpx rgba(0, 82, 217, 0.2); } /* gap-4=16px→28rpx, mb-4=16px→28rpx */ .welcome-header { display: flex; align-items: center; gap: 28rpx; margin-bottom: 28rpx; } /* w-12 h-12=48px→84rpx, rounded-xl=12px→22rpx */ .welcome-icon-box { width: 84rpx; height: 84rpx; min-width: 84rpx; background: rgba(255, 255, 255, 0.2); border-radius: 22rpx; display: flex; align-items: center; justify-content: center; } .welcome-text { display: flex; flex-direction: column; gap: 8rpx; } /* text-lg=18px→32rpx */ .welcome-title { font-size: 32rpx; font-weight: 600; color: #ffffff; } /* text-sm=14px→24rpx */ .welcome-desc { font-size: 24rpx; color: rgba(255, 255, 255, 0.8); font-weight: 300; } /* ---- 审核流程步骤条 p-4=16px→28rpx, rounded-xl=12px→22rpx ---- */ .steps-bar { background: rgba(255, 255, 255, 0.1); border-radius: 22rpx; padding: 28rpx; } .steps-row { display: flex; align-items: center; } .step-item { display: flex; flex-direction: column; align-items: center; gap: 10rpx; } /* w-7 h-7=28px→50rpx, text-xs=12px→22rpx */ .step-circle { width: 50rpx; height: 50rpx; border-radius: 50%; background: rgba(255, 255, 255, 0.2); display: flex; align-items: center; justify-content: center; font-size: 22rpx; font-weight: 500; color: rgba(255, 255, 255, 0.7); } .step-circle--active { background: #ffffff; color: #0052d9; font-weight: 600; } /* text-xs=12px→22rpx */ .step-label { font-size: 18rpx; color: rgba(255, 255, 255, 0.6); white-space: nowrap; } .step-label--active { color: rgba(255, 255, 255, 0.9); } /* h-0.5=2px→4rpx, mx-2=8px→14rpx */ .step-line { flex: 1; height: 4rpx; background: rgba(255, 255, 255, 0.3); margin: 0 10rpx; margin-bottom: 24rpx; } /* ---- 表单卡片 rounded-2xl=16px→28rpx ---- */ .form-card { background: #ffffff; border-radius: 28rpx; overflow: hidden; box-shadow: 0 8rpx 28rpx rgba(0, 0, 0, 0.04); } /* px-5=20px→36rpx, py-4=16px→28rpx+2rpx 视觉补偿 */ .form-item { padding: 30rpx 36rpx; } .form-item--border { border-bottom: 2rpx solid #f3f3f3; } /* text-sm=14px→24rpx, mb-2=8px→14rpx */ .form-label { display: flex; align-items: center; gap: 4rpx; margin-bottom: 14rpx; font-size: 24rpx; font-weight: 500; color: #242424; } /* text-sm=14px→24rpx */ .required { color: #e34d59; font-size: 24rpx; } /* text-xs=12px→22rpx */ .optional-tag { font-size: 20rpx; color: #a6a6a6; font-weight: 400; margin-left: 10rpx; } /* px-4=16px→28rpx, py-3=12px→22rpx, rounded-xl=12px→22rpx, text-sm=14px→24rpx 小程序 input 组件内部有压缩,py 加 4rpx 补偿到视觉等高 */ .form-input { width: 100%; height: 80rpx; padding: 0 28rpx; background: #f8f8f8; border-radius: 22rpx; border: 2rpx solid #f3f3f3; font-size: 24rpx; font-weight: 300; color: #242424; box-sizing: border-box; } .form-input::placeholder { color: #c5c5c5; font-weight: 300; } /* ---- 表单提示(移入底部固定区) ---- */ .form-tip { display: block; text-align: center; font-size: 20rpx; color: #a6a6a6; margin-bottom: 18rpx; font-weight: 300; } /* ---- 底部提交 p-4=16px→28rpx, pb-8=32px→56rpx ---- */ .bottom-area { position: fixed; left: 0; right: 0; bottom: 0; padding: 28rpx; padding-bottom: calc(56rpx + env(safe-area-inset-bottom)); background: rgba(255, 255, 255, 0.95); border-top: 2rpx solid #f3f3f3; z-index: 10; } /* py-4=16px→28rpx (用padding代替固定高度), rounded-xl=12px→22rpx, text-base=16px→28rpx */ .submit-btn { width: 100%; padding: 28rpx 0; display: flex; align-items: center; justify-content: center; background: linear-gradient(135deg, #0052d9, #3b82f6); border-radius: 22rpx; box-shadow: 0 10rpx 28rpx rgba(0, 82, 217, 0.3); } .submit-btn--disabled { opacity: 0.6; } /* text-base=16px→28rpx */ .submit-btn-text { font-size: 28rpx; font-weight: 500; color: #ffffff; } /* text-xs=12px→22rpx, mt-3=12px→22rpx */ .bottom-tip { display: block; text-align: center; font-size: 20rpx; color: #c5c5c5; margin-top: 22rpx; font-weight: 300; }