@charset "UTF-8"; /** * 这里是uni-app内置的常用样式变量 * * uni-app 官方扩展插件及插件市场(https://ext.dcloud.net.cn)上很多三方插件均使用了这些样式变量 * 如果你是插件开发者,建议你使用scss预处理,并在插件代码中直接使用这些变量(无需 import 这个文件),方便用户通过搭积木的方式开发整体风格一致的App * */ /** * 如果你是App开发者(插件使用者),你可以通过修改这些变量来定制自己的插件主题,实现自定义主题功能 * * 如果你的项目同样使用了scss预处理,你也可以直接在你的 scss 代码中使用如下变量,同时无需 import 这个文件 */ /* 颜色变量 */ /* 行为相关颜色 */ /* 文字基本颜色 */ /* 背景颜色 */ /* 边框颜色 */ /* 尺寸变量 */ /* 文字尺寸 */ /* 图片尺寸 */ /* Border Radius */ /* 水平间距 */ /* 垂直间距 */ /* 透明度 */ /* 文章场景相关 */ .lx-container.data-v-1753a52a { min-height: 100vh; background: linear-gradient(135deg, #e8f5e9 0%, #b2dfdb 100%); padding: 20rpx; } .header.data-v-1753a52a { background: linear-gradient(120deg, #43e97b 0%, #38f9d7 100%); border-radius: 36rpx; padding: 48rpx; text-align: center; margin-bottom: 48rpx; box-shadow: 0 8rpx 48rpx 0 rgba(76, 175, 80, 0.1); } .header-title.data-v-1753a52a { color: #fff; font-size: 36rpx; font-weight: bold; letter-spacing: 4rpx; } .form-card.data-v-1753a52a { background: #fff; border-radius: 36rpx; box-shadow: 0 8rpx 48rpx 0 rgba(76, 175, 80, 0.1); border: 3rpx solid #c8e6c9; overflow: hidden; } .form-content.data-v-1753a52a { padding: 48rpx; } .form-group.data-v-1753a52a { margin-bottom: 40rpx; } .form-group.data-v-1753a52a:last-child { margin-bottom: 0; } .form-label.data-v-1753a52a { display: block; margin-bottom: 16rpx; font-weight: bold; color: #388e3c; letter-spacing: 2rpx; font-size: 28rpx; } .input-wrapper.data-v-1753a52a { position: relative; } .custom-select.data-v-1753a52a { position: relative; background: #f9fff9; border: 3rpx solid #c8e6c9; border-radius: 20rpx; padding: 24rpx; display: flex; align-items: center; justify-content: space-between; cursor: pointer; z-index: 10; min-height: 80rpx; box-sizing: border-box; } .select-text.data-v-1753a52a { font-size: 28rpx; color: #2e7d32; flex: 1; } .select-arrow.data-v-1753a52a { position: absolute; right: 24rpx; top: 50%; -webkit-transform: translateY(-50%); transform: translateY(-50%); color: #6a9c6a; font-size: 24rpx; pointer-events: none; } .select-input.data-v-1753a52a { background: #f9fff9; border: 3rpx solid #c8e6c9; border-radius: 20rpx; padding: 24rpx; font-size: 28rpx; color: #2e7d32; } .data-v-1753a52a .u-input { background: #f9fff9; border: 3rpx solid #c8e6c9; border-radius: 20rpx !important; padding: 24rpx !important; font-size: 28rpx; color: #2e7d32; overflow: hidden; } .data-v-1753a52a .input-placeholder { font-size: 28rpx !important; color: #2e7d32 !important; } .readonly-input.data-v-1753a52a { background: #f5f5f5; border: 3rpx solid #ddd; border-radius: 20rpx; padding: 24rpx; font-size: 28rpx; color: #666; } .textarea-input.data-v-1753a52a { background: #f9fff9; border: 3rpx solid #c8e6c9; border-radius: 20rpx; padding: 24rpx; font-size: 28rpx; color: #2e7d32; min-height: 200rpx; box-sizing: border-box; width: 100%; box-sizing: border-box; } .data-v-1753a52a .u-textarea { background: #f9fff9; border: 3rpx solid #c8e6c9; border-radius: 20rpx; padding: 24rpx; font-size: 28rpx; color: #2e7d32; min-height: 200rpx; } .submit-btn.data-v-1753a52a { width: 100%; padding: 32rpx 40rpx; border-radius: 24rpx; font-size: 32rpx; font-weight: 600; letter-spacing: 2rpx; background: linear-gradient(135deg, #43e97b 0%, #38f9d7 100%); color: #fff; box-shadow: 0 8rpx 32rpx rgba(67, 233, 123, 0.3); margin-top: 64rpx; border-color: #43e97b; } /* 品项相关样式 */ .px-container.data-v-1753a52a { margin-bottom: 32rpx; } .px-row.data-v-1753a52a { display: flex; flex-direction: column; gap: 24rpx; margin-bottom: 32rpx; padding: 32rpx; border: 2rpx solid #e0e0e0; border-radius: 20rpx; background: #fafafa; } .px-row-first.data-v-1753a52a { display: flex; gap: 24rpx; align-items: center; } .px-row-second.data-v-1753a52a { display: flex; gap: 16rpx; align-items: center; width: 100%; } .px-row-third.data-v-1753a52a { display: flex; gap: 24rpx; align-items: center; margin-top: 24rpx; } .px-row-fourth.data-v-1753a52a { display: flex; gap: 24rpx; align-items: center; margin-top: 24rpx; } .px-row-fifth.data-v-1753a52a { display: flex; gap: 24rpx; align-items: flex-start; margin-top: 24rpx; flex-wrap: wrap; } .px-row-sixth.data-v-1753a52a { display: flex; gap: 24rpx; align-items: flex-start; margin-top: 24rpx; flex-wrap: wrap; } .px-row-seventh.data-v-1753a52a { display: flex; gap: 24rpx; align-items: flex-start; margin-top: 24rpx; flex-wrap: wrap; } .px-remark-wrapper.data-v-1753a52a { width: 100%; display: flex; flex-direction: column; gap: 12rpx; } .px-remark-label.data-v-1753a52a { font-size: 26rpx; color: #2e7d32; font-weight: bold; } .px-remark-input.data-v-1753a52a { background: #f9fff9; border: 3rpx solid #c8e6c9; border-radius: 20rpx; padding: 24rpx; font-size: 28rpx; color: #2e7d32; height: 120rpx; box-sizing: border-box; width: 100%; } .px-select.data-v-1753a52a { width: 40%; padding: 24rpx; border: 3rpx solid #c8e6c9; border-radius: 20rpx; font-size: 28rpx; background: #f9fff9; color: #2e7d32; cursor: pointer; position: relative; display: flex; align-items: center; justify-content: space-between; } .px-amount.data-v-1753a52a { width: 40%; padding: 24rpx; border: 3rpx solid #c8e6c9; border-radius: 20rpx; font-size: 28rpx; background: #f9fff9; color: #2e7d32; } .px-count.data-v-1753a52a { min-width: 80rpx; padding: 20rpx; border: 3rpx solid #c8e6c9; border-radius: 20rpx; font-size: 26rpx; background: #f9fff9; color: #2e7d32; text-align: center; } .px-type-select.data-v-1753a52a { width: 30%; padding: 20rpx; border: 3rpx solid #c8e6c9; border-radius: 20rpx; font-size: 26rpx; background: #f9fff9; color: #2e7d32; cursor: pointer; position: relative; display: flex; align-items: center; justify-content: space-between; } .px-unit-price.data-v-1753a52a { display: flex; align-items: center; gap: 8rpx; padding: 16rpx 20rpx; background: #e8f5e9; border-radius: 12rpx; border: 2rpx solid #c8e6c9; width: 20%; justify-content: center; } .price-label.data-v-1753a52a { font-size: 22rpx; color: #2e7d32; font-weight: 500; } .price-value.data-v-1753a52a { font-size: 24rpx; color: #1b5e20; font-weight: bold; } .px-delete.data-v-1753a52a { width: 20%; padding: 16rpx 0; border-radius: 20rpx; background: #f5f5f5; color: #666; font-size: 22rpx; } .btn-add-px.data-v-1753a52a { width: 100%; padding: 10rpx 40rpx; border: 3rpx solid #43a047; border-radius: 20rpx; background: #e8f5e9; color: #2e7d32; font-size: 28rpx; font-weight: bold; } /* 储扣明细相关样式 */ .deduct-container.data-v-1753a52a { margin-bottom: 32rpx; } .deduct-row.data-v-1753a52a { display: flex; flex-direction: column; gap: 24rpx; margin-bottom: 32rpx; padding: 32rpx; border: 2rpx solid #e0e0e0; border-radius: 20rpx; background: #fafafa; } .deduct-info.data-v-1753a52a { background: #e8f5e9; border: 2rpx solid #c8e6c9; border-radius: 16rpx; padding: 24rpx; margin-bottom: 16rpx; } .deduct-info-item.data-v-1753a52a { display: flex; align-items: center; margin-bottom: 12rpx; } .deduct-info-item.data-v-1753a52a:last-child { margin-bottom: 0; } .info-label.data-v-1753a52a { font-size: 26rpx; color: #2e7d32; font-weight: bold; margin-right: 16rpx; min-width: 120rpx; } .info-value.data-v-1753a52a { font-size: 26rpx; color: #1b5e20; flex: 1; } .deduct-row-first.data-v-1753a52a { display: flex; gap: 24rpx; align-items: center; } .deduct-row-second.data-v-1753a52a { display: flex; gap: 16rpx; align-items: center; width: 100%; } .deduct-select.data-v-1753a52a { width: 40%; padding: 24rpx; border: 3rpx solid #c8e6c9; border-radius: 20rpx; font-size: 28rpx; background: #f9fff9; color: #2e7d32; cursor: pointer; position: relative; display: flex; align-items: center; justify-content: space-between; } .deduct-amount.data-v-1753a52a { width: 40%; padding: 24rpx; border: 3rpx solid #c8e6c9; border-radius: 20rpx; font-size: 28rpx; background: #f9fff9; color: #2e7d32; } .deduct-count.data-v-1753a52a { min-width: 80rpx; padding: 20rpx; border: 3rpx solid #c8e6c9; border-radius: 20rpx; font-size: 26rpx; background: #f9fff9; color: #2e7d32; text-align: center; } .deduct-unit-price.data-v-1753a52a { display: flex; align-items: center; gap: 8rpx; padding: 16rpx 20rpx; background: #e8f5e9; border-radius: 12rpx; border: 2rpx solid #c8e6c9; width: 20%; justify-content: center; } .deduct-delete.data-v-1753a52a { width: 20%; padding: 16rpx 0; border-radius: 20rpx; background: #f5f5f5; color: #666; font-size: 22rpx; } .btn-add-deduct.data-v-1753a52a { width: 100%; padding: 10rpx 40rpx; border: 3rpx solid #43a047; border-radius: 20rpx; background: #e8f5e9; color: #2e7d32; font-size: 28rpx; font-weight: bold; } .px-jks-select.data-v-1753a52a, .px-kjb-select.data-v-1753a52a { flex: 1; padding: 24rpx 40rpx; border: 3rpx solid #c8e6c9; border-radius: 20rpx; font-size: 28rpx; font-weight: bold; background: #e8f5e9; color: #2e7d32; cursor: pointer; text-align: center; box-shadow: 0 4rpx 8rpx rgba(76, 175, 80, 0.1); } .px-jks-list.data-v-1753a52a, .px-kjb-list.data-v-1753a52a { flex: 1; min-height: 100rpx; padding: 24rpx; border: 3rpx solid #c8e6c9; border-radius: 20rpx; background: #f9fff9; font-size: 18rpx; gap: 24rpx; line-height: 3.6; } .px-staff-item.data-v-1753a52a { display: flex; justify-content: space-between; align-items: center; background: #e8f5e9; color: #2e7d32; padding: 20rpx 24rpx; margin: 0; border-radius: 12rpx; font-size: 28rpx; border: 2rpx solid #c8e6c9; line-height: 3.2; margin-bottom: 16rpx; } .staff-name.data-v-1753a52a { margin-right: 24rpx; font-weight: 500; color: #2e7d32; line-height: 3.2; } .staff-amount.data-v-1753a52a { border: 2rpx solid #a5d6a7; border-radius: 8rpx; padding: 8rpx 16rpx; font-size: 28rpx; width: 120rpx; text-align: center; background: #fff; color: #2e7d32; margin-right: 16rpx; line-height: 3; } .remove-btn.data-v-1753a52a { cursor: pointer; color: #f44336; font-weight: bold; font-size: 36rpx; width: 50rpx; height: 50rpx; border-radius: 50%; display: flex; align-items: center; justify-content: center; background: rgba(244, 67, 54, 0.1); } /* 文件上传样式 */ .file-upload-area.data-v-1753a52a { border: 4rpx dashed #c8e6c9; border-radius: 24rpx; padding: 48rpx; text-align: center; background: linear-gradient(135deg, #f9fff9 0%, #e8f5e9 100%); cursor: pointer; min-height: 240rpx; display: flex; flex-direction: column; justify-content: center; position: relative; overflow: hidden; } .file-upload-text.data-v-1753a52a { display: flex; flex-direction: column; align-items: center; gap: 24rpx; color: #6a9c6a; font-size: 19rpx; position: relative; z-index: 1; } .file-upload-icon.data-v-1753a52a { font-size: 50rpx; opacity: 0.8; } .file-list.data-v-1753a52a { margin-top: 32rpx; text-align: left; max-height: 400rpx; overflow-y: auto; } .file-item.data-v-1753a52a { display: flex; align-items: center; justify-content: space-between; padding: 20rpx 24rpx; background: #fff; border: 1rpx solid #e8f5e9; border-radius: 12rpx; margin-bottom: 12rpx; font-size: 26rpx; box-shadow: 0 2rpx 8rpx rgba(67, 233, 123, 0.08); transition: all 0.3s ease; } .file-info.data-v-1753a52a { display: flex; align-items: center; gap: 20rpx; overflow: hidden; width: 40%; } .file-icon.data-v-1753a52a { font-size: 32rpx; width: 56rpx; height: 56rpx; display: flex; align-items: center; justify-content: center; background: linear-gradient(135deg, #f9fff9 0%, #e8f5e9 100%); border-radius: 10rpx; flex-shrink: 0; border: 1rpx solid #c8e6c9; } .file-name.data-v-1753a52a { font-size: 28rpx; color: #333; font-weight: 500; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; line-height: 1.4; } .file-size.data-v-1753a52a { font-size: 22rpx; color: #666; background: #f8f9fa; padding: 6rpx 12rpx; border-radius: 6rpx; flex-shrink: 0; border: 1rpx solid #e9ecef; } .file-actions.data-v-1753a52a { display: flex; align-items: center; gap: 12rpx; flex-shrink: 0; width: 50%; } .file-status.data-v-1753a52a { font-size: 22rpx; padding: 6rpx 12rpx; border-radius: 6rpx; font-weight: 500; white-space: nowrap; } .file-status.success.data-v-1753a52a { color: #2e7d32; background: #e8f5e9; border: 1rpx solid #c8e6c9; } .file-status.error.data-v-1753a52a { color: #c62828; background: #ffebee; border: 1rpx solid #ffcdd2; } .file-status.uploading.data-v-1753a52a { color: #ef6c00; background: #fff3e0; border: 1rpx solid #ffe0b2; } .btn-error.data-v-1753a52a { background: #f44336; color: #fff; border: none; border-radius: 6rpx; font-size: 20rpx; } .btn-error.data-v-1753a52a:hover { background: #c62828; } .btn-group.data-v-1753a52a { display: flex; gap: 24rpx; margin-top: 48rpx; } .btn.data-v-1753a52a { flex: 1; padding: 10rpx 40rpx; border: none; border-radius: 20rpx; font-size: 28rpx; font-weight: bold; cursor: pointer; transition: all 0.2s ease; letter-spacing: 2rpx; } .btn-primary.data-v-1753a52a { background: linear-gradient(135deg, #43e97b 0%, #38f9d7 100%); color: #fff; box-shadow: 0 4rpx 16rpx rgba(67, 233, 123, 0.3); } .btn-primary.data-v-1753a52a:hover { box-shadow: 0 8rpx 32rpx rgba(67, 233, 123, 0.4); -webkit-transform: translateY(-2rpx); transform: translateY(-2rpx); } /* 签字相关样式 */ .signature-preview.data-v-1753a52a { margin-top: 24rpx; padding: 24rpx; background: #f9fff9; border: 2rpx solid #c8e6c9; border-radius: 16rpx; } .preview-label.data-v-1753a52a { display: block; font-size: 26rpx; color: #2e7d32; font-weight: bold; margin-bottom: 16rpx; } .signature-image.data-v-1753a52a { width: 100%; max-width: 300rpx; height: 120rpx; border: 2rpx solid #e0e0e0; border-radius: 12rpx; background: #fff; margin-bottom: 16rpx; } .btn-clear-signature.data-v-1753a52a { padding: 12rpx 24rpx; background: #f5f5f5; color: #666; border: 2rpx solid #ddd; border-radius: 12rpx; font-size: 24rpx; font-weight: 500; cursor: pointer; transition: all 0.2s ease; } .btn-clear-signature.data-v-1753a52a:hover { background: #e0e0e0; } /* 全屏签字弹窗样式 */ .signature-modal-overlay.data-v-1753a52a { position: fixed; top: 0; left: 0; width: 100%; height: 100%; background: rgba(0, 0, 0, 0.7); z-index: 9999; display: flex; align-items: center; justify-content: center; box-sizing: border-box; } .signature-modal.data-v-1753a52a { width: 100%; background: #fff; overflow: hidden; height: 100%; display: flex; flex-direction: column; justify-content: space-between; } .signature-modal-header.data-v-1753a52a { display: flex; justify-content: space-between; align-items: center; padding: 30rpx 40rpx; background: #f8f9fa; border-bottom: 2rpx solid #e9ecef; } .signature-modal-title.data-v-1753a52a { font-size: 32rpx; font-weight: bold; color: #2e7d32; } .btn-close-modal.data-v-1753a52a { width: 60rpx; height: 60rpx; background: #f5f5f5; border: none; border-radius: 50%; font-size: 36rpx; color: #666; display: flex; align-items: center; justify-content: center; cursor: pointer; transition: all 0.2s ease; margin: 0; } .btn-close-modal.data-v-1753a52a:hover { background: #e0e0e0; color: #333; } .signature-modal-content.data-v-1753a52a { background: #fff; flex: 1; width: 100%; } /* 全屏模式下SignaturePad组件样式调整 */ .signature-modal-content .signature-container.data-v-1753a52a { height: 100%; border: none; border-radius: 0; box-shadow: none; } .signature-modal-content .signature-header.data-v-1753a52a { padding: 20rpx 30rpx; background: #f8f9fa; border-bottom: 2rpx solid #e9ecef; } .signature-modal-content .signature-title.data-v-1753a52a { font-size: 32rpx; font-weight: bold; color: #2e7d32; } .signature-modal-content .btn-clear.data-v-1753a52a, .signature-modal-content .btn-confirm.data-v-1753a52a { padding: 16rpx 32rpx; font-size: 28rpx; font-weight: 500; border-radius: 12rpx; } .signature-modal-content .btn-clear.data-v-1753a52a { background: #f5f5f5; color: #666; border: 2rpx solid #ddd; } .signature-modal-content .btn-clear.data-v-1753a52a:hover { background: #e0e0e0; color: #333; } .signature-modal-content .btn-confirm.data-v-1753a52a { background: #2e7d32; color: #fff; border: none; } .signature-modal-content .btn-confirm.data-v-1753a52a:hover { background: #1b5e20; -webkit-transform: translateY(-2rpx); transform: translateY(-2rpx); } .signature-modal-content .signature-pad.data-v-1753a52a { flex: 1; display: flex; justify-content: center; align-items: center; padding: 20rpx; } .signature-modal-content .signature-tips.data-v-1753a52a { padding: 20rpx; text-align: center; background: #f8f9fa; border-top: 2rpx solid #e9ecef; } .signature-modal-content .tips-text.data-v-1753a52a { font-size: 24rpx; color: #666; } .signature-modal-footer.data-v-1753a52a { display: flex; justify-content: space-between; padding: 30rpx 40rpx; background: #f8f9fa; border-top: 2rpx solid #e9ecef; gap: 20rpx; } .btn-clear-modal.data-v-1753a52a { flex: 1; padding: 20rpx; background: #f5f5f5; color: #666; border: 2rpx solid #ddd; border-radius: 12rpx; font-size: 28rpx; font-weight: 500; cursor: pointer; transition: all 0.2s ease; } .btn-clear-modal.data-v-1753a52a:hover { background: #e0e0e0; color: #333; } .btn-confirm-modal.data-v-1753a52a { flex: 1; padding: 20rpx; background: #2e7d32; color: #fff; border: none; border-radius: 12rpx; font-size: 28rpx; font-weight: 500; cursor: pointer; transition: all 0.2s ease; } .btn-confirm-modal.data-v-1753a52a:hover { background: #1b5e20; -webkit-transform: translateY(-2rpx); transform: translateY(-2rpx); } /* 签字占位符样式 */ .signature-placeholder.data-v-1753a52a { display: flex; justify-content: center; align-items: center; min-height: 200rpx; border: 2rpx dashed #c8e6c9; border-radius: 16rpx; background: #f9fff9; } .btn-signature-placeholder.data-v-1753a52a { background: #2e7d32; color: #fff; border: none; border-radius: 16rpx; font-size: 28rpx; font-weight: 500; cursor: pointer; transition: all 0.2s ease; box-shadow: 0 4rpx 16rpx rgba(46, 125, 50, 0.3); } .btn-signature-placeholder.data-v-1753a52a:hover { background: #1b5e20; -webkit-transform: translateY(-2rpx); transform: translateY(-2rpx); box-shadow: 0 8rpx 32rpx rgba(46, 125, 50, 0.4); } .signature-placeholder-text.data-v-1753a52a { color: #fff; } /* 签字操作按钮样式 */ .signature-actions.data-v-1753a52a { display: flex; gap: 16rpx; margin-top: 16rpx; } .btn-re-signature.data-v-1753a52a { flex: 1; padding: 12rpx 24rpx; background: #2e7d32; color: #fff; border: none; border-radius: 12rpx; font-size: 24rpx; font-weight: 500; cursor: pointer; transition: all 0.2s ease; } .btn-re-signature.data-v-1753a52a:hover { background: #1b5e20; }