.form-upload-wrapper{width:100%}.form-upload-file-list{display:flex;flex-direction:column;gap:8px;margin-bottom:12px}.form-upload-file-item{display:flex;align-items:center;padding:8px 12px;border:1px solid #f0f0f0;border-radius:6px;background:#fafafa;transition:all .2s ease;position:relative}.form-upload-file-item:hover{background:#f0f5ff;border-color:#d9d9d9}.form-upload-file-item.uploading{background:#f6ffed;border-color:#b7eb8f}.form-upload-file-item.error{background:#fff2f0;border-color:#ffccc7}.form-upload-file-item.disabled{opacity:.6;background:#f5f5f5;cursor:not-allowed}.form-upload-file-info{display:flex;align-items:center;flex:1;min-width:0;gap:8px}.form-upload-file-thumb{width:48px;height:48px;-o-object-fit:cover;object-fit:cover;border-radius:4px;flex-shrink:0}.form-upload-file-icon{font-size:24px;color:#8c8c8c;flex-shrink:0}.form-upload-file-meta{display:flex;flex-direction:column;min-width:0;flex:1}.form-upload-file-name{font-size:14px;color:#262626;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.5}.form-upload-file-size{font-size:12px;color:#8c8c8c;line-height:1.4}.form-upload-file-progress{width:120px;margin:0 12px;flex-shrink:0}.form-upload-file-error{color:#ff4d4f;font-size:12px;margin:0 12px;flex-shrink:0}.form-upload-file-actions{flex-shrink:0;margin-left:8px;display:flex;align-items:center;gap:4px}.form-upload-file-disabled-tag{font-size:12px;color:#8c8c8c;background:#f0f0f0;padding:2px 8px;border-radius:4px;white-space:nowrap}.form-upload-count{margin-top:8px;font-size:12px;color:#8c8c8c}.form-upload-dragger{width:100%}.form-upload-dragger.disabled{opacity:.6;pointer-events:none}.image-upload-wrapper{width:100%}.image-upload-grid{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:8px}.image-upload-card{position:relative;width:104px;height:104px;border:1px solid #d9d9d9;border-radius:8px;overflow:hidden;background:#fafafa;cursor:default;transition:border-color .2s,box-shadow .2s;flex-shrink:0}.image-upload-card:hover{border-color:#1677ff;box-shadow:0 2px 8px #1677ff26}.image-upload-card.uploading{border-color:#52c41a;background:#f6ffed}.image-upload-card.error{border-color:#ff4d4f;background:#fff2f0}.image-upload-card.disabled{opacity:.55;border-color:#d9d9d9;cursor:not-allowed}.image-upload-card.disabled:hover{border-color:#d9d9d9;box-shadow:none}.image-upload-thumb{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;display:block}.image-upload-overlay{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#00000073;color:#fff;font-size:12px;gap:4px;z-index:1}.image-upload-overlay .ant-progress{width:64px;margin:0}.image-upload-overlay .ant-progress-text{color:#fff!important}.image-upload-error-mask{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;background:#ff4d4f99;color:#fff;font-size:12px;z-index:1}.image-upload-actions-mask{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;gap:8px;background:#00000073;opacity:0;transition:opacity .2s;z-index:2}.image-upload-card:not(.disabled):not(.uploading):not(.error) .image-upload-actions-mask:hover,.image-upload-card:not(.disabled):not(.uploading):not(.error):hover .image-upload-actions-mask{opacity:1}.image-upload-actions-mask .ant-btn{color:#fff;border-color:#fff}.image-upload-actions-mask .ant-btn:hover{color:#1677ff;border-color:#1677ff}.image-upload-actions-mask .ant-btn-dangerous:hover{color:#ff4d4f;border-color:#ff4d4f}.image-upload-actions-visible{opacity:1!important;background:#0000004d}.image-upload-locked-tag{position:absolute;top:4px;right:4px;z-index:3;font-size:10px;color:#fff;background:#0000008c;padding:1px 6px;border-radius:4px;line-height:1.6}.image-upload-trigger{display:flex;flex-direction:column;align-items:center;justify-content:center;width:104px;height:104px;border:1px dashed #d9d9d9;border-radius:8px;background:#fafafa;cursor:pointer;transition:border-color .2s;color:#8c8c8c;font-size:12px;gap:4px;flex-shrink:0}.image-upload-trigger:hover{border-color:#1677ff;color:#1677ff}.image-upload-trigger.disabled{cursor:not-allowed;opacity:.5}.image-upload-trigger.disabled:hover{border-color:#d9d9d9;color:#8c8c8c}.image-upload-trigger .plus-icon{font-size:24px;line-height:1}.image-preview-modal .ant-modal-body{display:flex;justify-content:center;align-items:center;padding:16px;background:#000}.image-preview-modal .ant-modal-close{color:#fff}.image-preview-modal img{max-width:100%;max-height:70vh;-o-object-fit:contain;object-fit:contain}.image-upload-count{font-size:12px;color:#8c8c8c;margin-top:4px;width:100%}
