/* skrytie “hidden” */
.hidden { display: none!important; }

/* základné premenné */
:root {
  --chat-pri:      #798d7a;    /* primárna farba (pôvodná) */
  --chat-bg:       #ffffff;    /* pozadie okna (pôvodná) */
  --chat-txt:      #333333;    /* text v správe */
  --chat-btn-bg:   transparent;    /* NOVÉ: pozadie tlačidla */
  --chat-btn-color:#ffffff;    /* NOVÉ: farba ikony v tlačidle */
  --chat-window-bg:#FAFAFA;    /* NOVÉ: pozadie chat okna */
  --chat-window-border:#ffffff;/* NOVÉ: orámovanie chat okna */
  --chat-btn-border:transparent;;   /* NOVÉ: okraj tlačidla */
}

[data-theme="dark"] {
  --chat-bg:       #2b2b2b;
  --chat-txt:      #f1f1f1;
  --chat-pri:      #6fa06d;
  --chat-btn-bg:   #798d7a;    /* tmavé tlačidlo */
  --chat-btn-color:#ffffff;
  --chat-window-bg:#303030;    /* tmavé okno */
  --chat-window-border:#ffffff;
  --chat-btn-border:#ffffff;   /* tmavý okraj tlačidla */
}

/* chat button */
#chatbot-button {
  position: fixed;
  bottom: 70px;
  right: 20px;
  width: 40px;
  height: 40px;
  background: transparent;
  border-radius: 50%;
  border: none;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  z-index: 9999;
  padding: 0;
  box-shadow: 0 4px 12px rgba(0,0,0,0.25);
  transition: transform 0.15s ease;
}

#chatbot-button:hover { transform: scale(1.07); }
#chatbot-button:active { transform: scale(0.95); }

/* fotka v chat bubline */
#chatbot-button .chatbot-avatar {
  width: 100%;
  height: 100%;
  border-radius: 8px;   /* kocka */
  object-fit: cover;
  display: block;
}

/* zelená bodka "online" + pulzovanie */
#chatbot-button .online-dot {
  position: absolute;
  top: -2px;
  left: -2px;
  width: 8px;
  height: 8px;
  background: #2ecc71;
  border-radius: 50%;
  box-shadow: 0 0 6px rgba(46,204,113,0.8);
  animation: pulseDot 2.2s infinite ease-in-out;
}

@keyframes pulseDot {
  0%   { transform: scale(1); }
  50%  { transform: scale(1.35); }
  100% { transform: scale(1); }
}

/* okno chat – desktop */
#chatbot-window {
  position: fixed;
  bottom: 140px;
  right: 20px;
  width: 360px; max-width: 90vw;
  height: 60vh;
  background: var(--chat-window-bg);
  border: 1px solid var(--chat-window-border);
  border-radius: 8px;
  display: flex; flex-direction: column;
  box-shadow: 0 4px 12px rgba(0,0,0,0.15);
  z-index: 9999;
  overflow: hidden;
}

/* header */
#chatbot-header {
  display: flex; align-items: center;
  padding: 10px;
  background: var(--chat-pri);
  color: #fff;
  border-top-left-radius: 8px;
  border-top-right-radius: 8px;
}
.header-icon { margin-right: 8px; margin-top: -20px;}
.header-title { font-weight: bold; line-height: 1.3; }
#theme-toggle, #clear-chat {
  background: none; border: none;
  color: #fff; font-size: 18px;
  cursor: pointer;
}
#theme-toggle { margin-left: auto; }
#clear-chat { margin-left: 8px; }

/* správy */
#chatbot-messages {
  flex: 1; overflow-y: auto;
  padding: 10px; color: var(--chat-txt);
}
.chatbot-message {
  margin: 6px 0; padding: 8px 10px; border-radius: 6px;
  background: #f1f1f1; color: var(--chat-txt);
  word-wrap: break-word;
}
.chatbot-message.user {
  margin-left: auto; background: ; color: #354e33;
}
[data-theme="dark"] .chatbot-message { background: #3a3a3a; }

/* styling pre odkazy v správe */
.chatbot-message a {
  color: var(--chat-pri); text-decoration: underline; cursor: pointer;
}
.chatbot-message a:hover { opacity: 0.8; }
.chatbot-message.user a { color: #fff; }

/* nahraté obrázky v správe */
.chat-uploaded-img {
  max-width: 100%;
  border-radius: 6px;
  margin-bottom: 6px;
  display: block;
}

/* typing indikátor */
#chatbot-typing {
  padding: 6px 10px; font-style: italic; color: #666;
  border-top: 1px solid #eee;
}

/* PRIDANÉ: náhľad obrázku pred odoslaním */
#chatbot-preview-container {
  padding: 10px;
  background: var(--chat-window-bg);
  border-top: 1px solid #ddd;
  position: relative;
  display: flex;
  align-items: center;
}
[data-theme="dark"] #chatbot-preview-container { border-color: #555; }

#chatbot-preview-img {
  height: 60px; border-radius: 4px; border: 1px solid #ccc;
}
#chatbot-preview-clear {
  position: absolute;
  left: 65px; top: 5px;
  background: #ff4d4d; color: white; border: none;
  border-radius: 50%; width: 22px; height: 22px;
  font-size: 14px; font-weight: bold; cursor: pointer;
  display: flex; align-items: center; justify-content: center;
}

/* formulár */
#chatbot-form {
  display: flex; border-top: 1px solid #ddd; align-items: stretch;
}
[data-theme="dark"] #chatbot-form { border-color: #555; }

/* upload tlačidlo */
#chatbot-upload-btn {
  background: #f8f8f8; color: #555; border: none;
  padding: 0 12px; font-size: 18px; cursor: pointer;
  border-right: 1px solid #ddd;
}
[data-theme="dark"] #chatbot-upload-btn {
  background: #444; color: #ddd; border-right-color: #555;
}
#chatbot-upload-btn:hover { background: #e0e0e0; }
[data-theme="dark"] #chatbot-upload-btn:hover { background: #555; }

#chatbot-input {
  flex: 1; border: none; padding: 12px; font-size: 14px;
  outline: none; background: #fff; color: #333;
}
[data-theme="dark"] #chatbot-input { background: #444; color: #f1f1f1; }

#chatbot-form button[type="submit"] {
  background: var(--chat-pri); color: #fff;
  border: none; padding: 0 16px; cursor: pointer; font-size: 18px;
}

/* mobile úpravy */
@media (max-width: 480px) {
  #chatbot-window {
    bottom: 70px; right: 10px; left: 10px; width: auto; height: 70vh;
  }
  #chatbot-button {
    bottom: 15px; right: 20px; width: 60px; height: 60px;
    border-radius: 8px; /* kocka so zaoblením */
  }
  #chatbot-input { font-size: 16px; padding: 12px; }
  #chatbot-form button[type="submit"] { padding: 0 20px; }
}

@media (min-width: 601px) {
  #chatbot-button { border: none !important; outline: none !important; }
}

.mg-bot-bubble::after { animation: pulse 2.2s infinite ease-in-out; }