/* ====================================
   FLASH NOTIFICATION STYLING
   ==================================== */

/* Flash Notification Styling */
.flash-message {
  background-color: var(--primary-color);
  color: var(--text-on-primary);
  border: 2px solid var(--primary-hover);
  box-shadow: 0 10px 25px -5px var(--shadow-primary), 0 10px 10px -5px var(--shadow-primary-light);
  transition: all 0.3s ease-in-out;
  animation: slideInRight 0.5s ease-out;
  border-radius: 1rem;
  backdrop-filter: blur(10px);
}

.flash-message:hover {
  transform: translateX(-5px);
  box-shadow: 0 20px 25px -5px var(--shadow-primary), 0 10px 10px -5px var(--shadow-primary-light);
}

.flash-message.notice {
  border-left: 4px solid var(--success-color);
}

.flash-message.alert,
.flash-message.error {
  border-left: 4px solid var(--error-color);
}

.flash-message.warning {
  border-left: 4px solid var(--warning-color);
}

/* Flash Close Button */
.flash-close-btn {
  opacity: 0.8;
  transition: all 0.2s ease-in-out;
}

.flash-close-btn:hover {
  opacity: 1;
  transform: scale(1.1);
}

.flash-close-btn:focus {
  outline: none;
  box-shadow: 0 0 0 3px var(--focus-ring-primary-strong);
}

/* Flash Animation */
@keyframes slideInRight {
  from {
    transform: translateX(100%);
    opacity: 0;
  }
  to {
    transform: translateX(0);
    opacity: 1;
  }
}
