.is-noselect {
  user-select: none;            /* Alapértelmezett tiltás */
  -webkit-user-select: none;    /* Safari / Chrome */
  -moz-user-select: none;       /* Firefox */
  -ms-user-select: none;        /* Régi Edge / IE */
}

/* ======== Konténer ======== */
#global-flash-container {
  position: fixed;
  top: 35%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 90%;
  max-width: 600px;
  z-index: 2000;
  pointer-events: none;
  transition: opacity 500ms ease-in-out;
}

/* ======== Klasszikus alapstílus ======== */
.flash-message {
  opacity: 0.96;
  position: fixed;
  width: 90%;
  max-width: 600px;
  height: auto;
  top: 35%;
  left: 50%;
  transform: translate(-50%, -50%);
  padding: 20px;

  border: 1px solid transparent;
  border-radius: 0; /* teljesen szögletes */
  transition: opacity 500ms ease-in-out;
  font-size: 15px;
  text-align: center;
  justify-content: center;
  align-items: center;
  z-index: 1000;
  line-height: 20px;
  font-weight: 500;

  box-shadow: 0 0 0 1px #111 inset, 0 5px 10px rgba(0, 0, 0, 0.75);
  pointer-events: all;
}

/* ======== Alapszínek (régi stílus + új típusok) ======== */

/* 🔵 INFO */
.flash-message.alert-info {
  color: #f0f8ff;
  background-color: #007acc;
  box-shadow: 0 0 0 1px #005c99 inset, 0 5px 10px rgba(0, 0, 0, 0.75);
}

/* 🔴 ERROR */
.flash-message.alert-error {
  color: #ff3333;
  background-color: #360e10;
  box-shadow: 0 0 0 1px #551e21 inset, 0 5px 10px rgba(0, 0, 0, 0.75);
}

/* 🟢 SUCCESS */
.flash-message.alert-success {
  color: #21ec0c;
  background-color: #15360e;
  box-shadow: 0 0 0 1px #2a551e inset, 0 5px 10px rgba(0, 0, 0, 0.75);
}

/* 🟠 WARNING */
.flash-message.alert-warning {
  color: #fff3cd;
  background-color: #5e4603;
  box-shadow: 0 0 0 1px #8b6a04 inset, 0 5px 10px rgba(0, 0, 0, 0.75);
}

/* ⚪ NEUTRAL */
.flash-message.alert-neutral {
  color: #e2e3e5;
  background-color: #444;
  box-shadow: 0 0 0 1px #666 inset, 0 5px 10px rgba(0, 0, 0, 0.75);
}

/* 🟣 NOTICE */
.flash-message.alert-notice {
  color: #e0d7f4;
  background-color: #4b0082;
  box-shadow: 0 0 0 1px #5e099f inset, 0 5px 10px rgba(0, 0, 0, 0.75);
}

/* 🔴 CRITICAL */
.flash-message.alert-critical {
  color: #ffdfdf;
  background-color: #5a0000;
  border: 2px solid #ff4d4d;
  box-shadow: 0 0 0 1px #ff4d4d inset, 0 5px 10px rgba(0, 0, 0, 0.8);
  font-weight: 600;
  text-transform: uppercase;
}

/* ======== Bezáró gomb ======== */
.flash-close-btn {
  position: absolute;
  top: 3px;
  right: 10px;
  cursor: pointer;
  font-size: 20px;
  background-color: transparent;
  border: none;
  color: #f7f7f7;
  transition: color 0.2s ease;
}

.flash-message.alert-error .flash-close-btn { color: #f00; }
.flash-message.alert-success .flash-close-btn { color: #21ec0c; }
.flash-message.alert-info .flash-close-btn { color: #f7f7f7; }
.flash-message.alert-warning .flash-close-btn { color: #ffd35b; }
.flash-message.alert-neutral .flash-close-btn { color: #ccc; }
.flash-message.alert-notice .flash-close-btn { color: #c7b1e8; }
.flash-message.alert-critical .flash-close-btn { color: #ff9999; }

.flash-close-btn:hover {
  color: #00aeff;
}

/* ======== Hover effektek ======== */
.flash-message:hover {
  opacity: 1;
}

/* ======== Üres üzenet elrejtése ======== */
.flash-message:empty {
  display: none;
}
