/* File Upload Component Styles */
.file-upload-dropzone {
  transition: all 0.2s ease-in-out;
}

.file-upload-dropzone:hover {
  border-color: #B8860B; /* lare-gold */
  background-color: rgba(184, 134, 11, 0.05);
}

/* Drag states */
.file-upload-dropzone--highlighted {
  border-color: #B8860B !important; /* lare-gold */
  background-color: rgba(184, 134, 11, 0.05) !important;
  border-width: 2px !important;
  border-style: solid !important;
  transform: scale(1.05);
}

.file-upload-dropzone--highlighted .file-upload-text {
  color: #B8860B; /* lare-gold */
}

/* Loading indicator */
.file-upload-loading {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.5rem;
}

.file-upload-loading__spinner {
  width: 2rem;
  height: 2rem;
  border: 2px solid transparent;
  border-bottom: 2px solid #B8860B; /* lare-gold */
  border-radius: 50%;
  animation: file-upload-spin 1s linear infinite;
}

.file-upload-loading__text {
  font-size: 0.875rem;
  color: #6B7280; /* text-gray-600 */
}

/* Preview image */
.file-upload-preview {
  margin: 0 auto;
  height: 8rem;
  width: auto;
  border-radius: 0.375rem;
  object-fit: cover;
  transition: all 0.3s ease-in-out;
  box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);
}

.file-upload-preview:hover {
  transform: scale(1.02);
  box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05);
}

/* Loading animation for file processing */
@keyframes file-upload-spin {
  to {
    transform: rotate(360deg);
  }
}
