.image-uploader{width:100%}.dropzone{text-align:center;cursor:pointer;background-color:#f9fafb;border:2px dashed #d1d5db;border-radius:.5rem;padding:3rem 2rem;transition:all .2s}.dropzone:hover{background-color:#eff6ff;border-color:#3b82f6}.dropzone.active{background-color:#dbeafe;border-color:#3b82f6}.dropzone-content{flex-direction:column;align-items:center;gap:.5rem;display:flex}.dropzone-icon{margin-bottom:.5rem;font-size:3rem}.dropzone-text{color:#1f2937;margin:0;font-size:1.125rem;font-weight:600}.dropzone-hint{color:#6b7280;margin:0;font-size:.875rem}.uploaded-files{margin-top:2rem}.uploaded-files-title{color:#1f2937;margin-bottom:1rem;font-size:1.25rem;font-weight:600}.uploaded-files-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:1rem;display:grid}.uploaded-file-card{background-color:#fff;border:1px solid #e5e7eb;border-radius:.5rem;transition:transform .2s;overflow:hidden}.uploaded-file-card:hover{transform:translateY(-2px);box-shadow:0 4px 6px -1px #0000001a}.uploaded-file-preview{background-color:#f3f4f6;width:100%;padding-top:75%;position:relative;overflow:hidden}.uploaded-file-preview img{object-fit:cover;width:100%;height:100%;position:absolute;top:0;left:0}.image-error-placeholder{color:#991b1b;text-align:center;background-color:#fef2f2;flex-direction:column;justify-content:center;align-items:center;width:100%;height:100%;padding:1rem;display:flex;position:absolute;top:0;left:0}.image-error-placeholder .error-icon{margin-bottom:.5rem;font-size:2rem}.image-error-placeholder p{color:#991b1b;margin:.25rem 0;font-size:.875rem}.image-error-placeholder .file-name-small{color:#7f1d1d;font-size:.75rem;font-weight:500}.image-error-placeholder .error-hint{color:#dc2626;font-size:.7rem;font-style:italic}.uploaded-file-processing{color:#fff;background-color:#000000b3;flex-direction:column;justify-content:center;align-items:center;gap:.5rem;display:flex;position:absolute;inset:0}.spinner{border:3px solid #ffffff4d;border-top-color:#fff;border-radius:50%;width:24px;height:24px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.uploaded-file-remove{color:#fff;cursor:pointer;background-color:#ef4444e6;border:none;border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;font-size:1.25rem;transition:background-color .2s;display:flex;position:absolute;top:.5rem;right:.5rem}.uploaded-file-remove:hover{background-color:#dc2626}.uploaded-file-exif{flex-wrap:wrap;gap:.5rem;padding:.75rem;display:flex}.exif-badge{border-radius:.25rem;align-items:center;padding:.25rem .5rem;font-size:.75rem;font-weight:600;display:inline-flex}.exif-badge-success{color:#065f46;background-color:#d1fae5}.exif-badge-warning{color:#92400e;background-color:#fef3c7}.uploaded-file-name{color:#6b7280;white-space:nowrap;text-overflow:ellipsis;padding:.75rem;font-size:.875rem;overflow:hidden}@media (max-width:768px){.uploaded-files-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:.75rem}.dropzone{padding:2rem 1.5rem}.dropzone-icon{font-size:2.5rem}.dropzone-text{font-size:1rem}}
.report-form{background-color:#fff;border-radius:.5rem;padding:2rem;box-shadow:0 1px 3px #0000001a}.step-indicator{justify-content:space-between;margin-bottom:3rem;padding:0 1rem;display:flex}.step-indicator-item{flex-direction:column;flex:1;align-items:center;display:flex;position:relative}.step-indicator-item:not(:last-child):after{content:"";z-index:0;background-color:#e5e7eb;height:2px;position:absolute;top:16px;left:60%;right:-60%}.step-indicator-item.completed:after{background-color:#3b82f6}.step-number{color:#6b7280;z-index:1;background-color:#e5e7eb;border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;font-weight:600;transition:all .2s;display:flex;position:relative}.step-number.active{color:#fff;background-color:#3b82f6;transform:scale(1.1)}.step-number.completed{color:#fff;background-color:#10b981}.step-label{color:#6b7280;text-align:center;margin-top:.5rem;font-size:.875rem}.step-indicator-item.active .step-label{color:#1f2937;font-weight:600}.form-step{min-height:300px}.step-title{color:#1f2937;margin-bottom:.5rem;font-size:1.5rem;font-weight:700}.step-description{color:#6b7280;margin-bottom:2rem;line-height:1.6}.form-group{margin-bottom:1.5rem}.form-label{color:#374151;margin-bottom:.5rem;font-size:.875rem;font-weight:600;display:block}.form-label.required:after{content:" *";color:#ef4444}.form-input,.form-select{border:1px solid #d1d5db;border-radius:.375rem;width:100%;padding:.75rem 1rem;font-family:inherit;font-size:1rem;transition:border-color .2s,box-shadow .2s}.form-input:focus,.form-select:focus{border-color:#3b82f6;outline:none;box-shadow:0 0 0 3px #3b82f61a}.form-input.error,.form-select.error{border-color:#ef4444}.form-input.error:focus,.form-select.error:focus{border-color:#ef4444;box-shadow:0 0 0 3px #ef44441a}.form-input::placeholder{color:#9ca3af}.form-select{cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m6 8 4 4 4-4'/%3e%3c/svg%3e");background-position:right .5rem center;background-repeat:no-repeat;background-size:1.5em 1.5em;padding-right:2.5rem}.error-message{color:#ef4444;margin-top:.25rem;font-size:.875rem}.form-actions{border-top:1px solid #e5e7eb;justify-content:space-between;gap:1rem;margin-top:2rem;padding-top:2rem;display:flex}.btn{cursor:pointer;border:none;border-radius:.375rem;justify-content:center;align-items:center;padding:.75rem 1.5rem;font-size:1rem;font-weight:600;transition:all .2s;display:inline-flex}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{color:#fff;background-color:#3b82f6}.btn-primary:hover:not(:disabled){background-color:#2563eb}.btn-primary:active:not(:disabled){background-color:#1d4ed8}.btn-secondary{color:#fff;background-color:#6b7280}.btn-secondary:hover:not(:disabled){background-color:#4b5563}.btn-secondary:active:not(:disabled){background-color:#374151}@media (max-width:768px){.report-form{padding:1.5rem}.step-indicator{margin-bottom:2rem;padding:0}.step-indicator-item:not(:last-child):after{left:50%;right:-50%}.step-title{font-size:1.25rem}.step-description{font-size:.875rem}.form-actions{flex-direction:column}.btn{width:100%}}
