/* Flash message - fixed in top right */
.flash {
  position: fixed;
  top: 1rem;
  right: 1rem;
  max-width: 400px;
  z-index: 1;
  padding: 1rem 1.5rem;
  border-radius: var(--radius-md);
  border-left: 4px solid;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.4);
  animation: slideInRight 0.3s ease-out;
}

.flash.notice {
  background-color: var(--bg-secondary);
  border-left-color: var(--success);
  color: var(--success);
}

.flash.alert {
  background-color: var(--bg-secondary);
  border-left-color: var(--danger);
  color: var(--danger);
}

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

.flash.fade-out {
  animation: fadeOut 0.3s ease-out forwards;
}

@keyframes fadeOut {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
    transform: translateX(100%);
  }
}

