.form-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12rpx 18rpx; } .full-span { grid-column: 1 / -1; } .search { margin-bottom: 20rpx; } .process-input-wrap { display: grid; grid-template-columns: minmax(0, 1fr) 44rpx; align-items: center; gap: 10rpx; } .process-input-wrap .process-input { min-width: 0; } .process-suffix { color: #162232; font-size: 27rpx; font-weight: 800; text-align: center; line-height: 1; } .cleaning-stamp { position: absolute; top: 24rpx; right: 26rpx; z-index: 2; padding: 8rpx 18rpx; border: 3rpx solid rgba(18, 163, 117, 0.68); border-radius: 10rpx; color: rgba(18, 126, 89, 0.82); font-size: 28rpx; font-weight: 900; line-height: 1; transform: rotate(-16deg); background: rgba(230, 255, 246, 0.72); box-shadow: 0 4rpx 0 rgba(18, 126, 89, 0.18), inset 0 2rpx 0 rgba(255, 255, 255, 0.86); pointer-events: none; } .misc-stamp { position: absolute; top: 24rpx; right: 26rpx; z-index: 2; padding: 8rpx 18rpx; border: 3rpx solid rgba(217, 119, 6, 0.68); border-radius: 10rpx; color: rgba(154, 74, 5, 0.86); font-size: 28rpx; font-weight: 900; line-height: 1; transform: rotate(-16deg); background: rgba(255, 247, 232, 0.78); box-shadow: 0 4rpx 0 rgba(154, 74, 5, 0.18), inset 0 2rpx 0 rgba(255, 255, 255, 0.86); pointer-events: none; } .multi-person-stamp { position: absolute; top: 24rpx; right: 26rpx; z-index: 2; padding: 8rpx 18rpx; border: 3rpx solid rgba(217, 119, 6, 0.68); border-radius: 10rpx; color: rgba(154, 74, 5, 0.86); font-size: 28rpx; font-weight: 900; line-height: 1; transform: rotate(-16deg); background: rgba(255, 247, 232, 0.78); box-shadow: 0 4rpx 0 rgba(154, 74, 5, 0.18), inset 0 2rpx 0 rgba(255, 255, 255, 0.86); pointer-events: none; } .continuous-die-stamp { position: absolute; top: 24rpx; right: 26rpx; z-index: 2; padding: 8rpx 18rpx; border: 3rpx solid rgba(217, 119, 6, 0.68); border-radius: 10rpx; color: rgba(154, 74, 5, 0.86); font-size: 28rpx; font-weight: 900; line-height: 1; transform: rotate(-16deg); background: rgba(255, 247, 232, 0.78); box-shadow: 0 4rpx 0 rgba(154, 74, 5, 0.18), inset 0 2rpx 0 rgba(255, 255, 255, 0.86); pointer-events: none; } .lower-product-stamp { top: 76rpx; } .stamping-field { position: relative; } .stamping-suggestion-panel { position: absolute; left: 0; right: 0; top: 82rpx; z-index: 20; overflow: hidden; border: 1rpx solid #d9e2f2; border-radius: 10rpx; background: #fff; box-shadow: 0 12rpx 32rpx rgba(16, 35, 72, 0.12); } .stamping-suggestion-option { padding: 18rpx 20rpx; border-bottom: 1rpx solid #eef2f7; color: #1f2a44; font-size: 24rpx; line-height: 1.2; } .stamping-suggestion-option:last-child { border-bottom: 0; } .add-btn { margin-top: 16rpx; } .modal-mask { position: fixed; left: 0; right: 0; top: 0; bottom: 0; z-index: 50; display: flex; align-items: center; justify-content: center; padding: 32rpx; background: rgba(15, 23, 42, 0.48); box-sizing: border-box; } .modal-panel { width: 100%; max-height: 82vh; overflow-y: auto; padding: 30rpx; border: 1rpx solid #e4e9f1; border-radius: 18rpx; background: linear-gradient(180deg, #ffffff 0%, #fbfdff 100%); box-shadow: 0 16rpx 0 rgba(170, 184, 204, 0.62), 0 30rpx 64rpx rgba(15, 23, 42, 0.24), inset 0 2rpx 0 rgba(255, 255, 255, 0.96); box-sizing: border-box; } .modal-head { display: flex; align-items: center; justify-content: space-between; gap: 18rpx; margin-bottom: 24rpx; } .modal-title { color: #162232; font-size: 34rpx; font-weight: 700; } .modal-close { flex: 0 0 auto; margin: 0; } .product-modal-mask { align-items: flex-start; padding: 18rpx 18rpx calc(env(safe-area-inset-bottom) + 18rpx); } .product-modal-panel { max-height: 94vh; padding: 18rpx 20rpx 20rpx; border-radius: 16rpx; } .product-modal-panel .modal-head { min-height: 54rpx; margin-bottom: 10rpx; } .product-modal-panel .modal-title { font-size: 30rpx; line-height: 1.2; } .product-modal-panel .modal-close { height: 50rpx; line-height: 50rpx; padding: 0 18rpx; font-size: 22rpx; border-radius: 10rpx; } .product-form-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8rpx 12rpx; } .product-form-grid .full-span { grid-column: auto; } .product-form-grid .form-item { min-width: 0; margin-bottom: 0; } .product-form-grid .label { margin-bottom: 4rpx; font-size: 20rpx; line-height: 1.15; } .product-form-grid .input { min-height: 54rpx; height: 54rpx; line-height: 54rpx; padding: 0 14rpx; border-radius: 10rpx; font-size: 23rpx; } .product-modal-actions { gap: 12rpx; margin-top: 14rpx; } .product-modal-actions .btn { height: 58rpx; line-height: 58rpx; border-radius: 11rpx; font-size: 24rpx; }