/* CV Styles */
@media print {
  #password-protection {
    display: none !important;
  }
  #cv-content {
    display: block !important;
  }
  .btn, .card-shadow, .shadow-sm {
    display: none !important;
  }
  .card {
    border: none !important;
    box-shadow: none !important;
  }
  body {
    font-size: 12px !important;
  }
}

/* Smaller image size - 50% reduction */
#cv-content img {
  max-width: 50% !important;
  height: auto !important;
}

/* Responsive image scaling */
@media (max-width: 768px) {
  #cv-content img {
    max-width: 75% !important;
  }
}

/* Shake animation for wrong password */
@keyframes shake {
  0%, 100% { transform: translateX(0); }
  10%, 30%, 50%, 70%, 90% { transform: translateX(-5px); }
  20%, 40%, 60%, 80% { transform: translateX(5px); }
}

/* Smooth transitions */
#cv-content {
  transition: opacity 0.5s ease-in;
}

#cv-content.d-none {
  opacity: 0;
}

#cv-content:not(.d-none) {
  opacity: 1;
}