.document-scan-line {
  animation: document-scan-sweep 2.5s ease-in-out infinite;
}

@keyframes document-scan-sweep {
  0% { top: 0%; opacity: 0; }
  5% { opacity: 1; }
  90% { opacity: 1; }
  100% { top: 100%; opacity: 0; }
}

.document-scan-glow {
  animation: document-scan-glow-pulse 4s ease-in-out infinite;
}

@keyframes document-scan-glow-pulse {
  0%, 100% { opacity: 0.15; transform: scale(1); }
  50% { opacity: 0.3; transform: scale(1.05); }
}

.document-scan-ring {
  animation: document-scan-ring-pulse 4s ease-in-out infinite;
}

@keyframes document-scan-ring-pulse {
  0%, 100% { opacity: 0.3; }
  50% { opacity: 0.6; }
}

.document-scan-orbit {
  position: absolute;
  inset: -12px;
  animation: document-scan-orbit-spin 12s linear infinite;
}

@keyframes document-scan-orbit-spin {
  0% { transform: rotate(0deg); }
  100% { transform: rotate(360deg); }
}

.document-scan-particle {
  position: absolute;
  width: 5px;
  height: 5px;
  border-radius: 9999px;
  background: #195FA4;
  box-shadow: 0 0 8px 3px rgba(25, 95, 164, 0.4);
}

.document-scan-particle-1 {
  top: 0;
  left: 50%;
  animation: document-scan-particle-fade 3s ease-in-out infinite;
}

.document-scan-particle-2 {
  bottom: 20%;
  right: 0;
  animation: document-scan-particle-fade 3s ease-in-out 1s infinite;
}

.document-scan-particle-3 {
  bottom: 10%;
  left: 0;
  animation: document-scan-particle-fade 3s ease-in-out 2s infinite;
}

@keyframes document-scan-particle-fade {
  0%, 100% { opacity: 0.2; transform: scale(0.8); }
  50% { opacity: 1; transform: scale(1.2); }
}
