.dj-lara-widget {
  --dj-lara-cyan: #27d7ff;
  --dj-lara-blue: #2a7fff;
  --dj-lara-violet: #8c52ff;
  --dj-lara-pink: #ff4fd8;
  --dj-lara-green: #3fff77;
  --dj-lara-bg: rgba(8, 12, 24, 0.92);
  --dj-lara-panel: rgba(10, 14, 28, 0.96);
  --dj-lara-panel-soft: rgba(255, 255, 255, 0.06);
  --dj-lara-line: rgba(255, 255, 255, 0.09);
  --dj-lara-text: #f4f7ff;
  --dj-lara-muted: #8f9ab8;
  position: fixed;
  right: 18px;
  bottom: 42px;
  z-index: 100140;
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  font-family: 'Montserrat', sans-serif;
  pointer-events: none;
}

.dj-lara-widget * {
  box-sizing: border-box;
}

.dj-lara-widget button,
.dj-lara-widget input {
  font: inherit;
}

.dj-lara-widget button {
  appearance: none;
  -webkit-appearance: none;
  margin: 0;
  text-transform: none !important;
}

.dj-lara-launcher,
.dj-lara-panel {
  pointer-events: auto;
}

.dj-lara-launcher {
  position: relative;
  width: 66px;
  height: 66px;
  border: 0;
  border-radius: 999px;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: var(--dj-lara-text);
  background: linear-gradient(145deg, rgba(39, 215, 255, 0.95), rgba(140, 82, 255, 0.92));
  box-shadow: 0 16px 36px rgba(10, 14, 28, 0.55), 0 0 24px rgba(39, 215, 255, 0.35);
  transition: transform 0.28s ease, box-shadow 0.28s ease, filter 0.28s ease, opacity 0.22s ease, visibility 0.22s ease;
  overflow: visible;
  animation: djLaraLauncherPulse 1.8s ease-in-out infinite;
}

.dj-lara-launcher::before {
  content: '';
  position: absolute;
  inset: -10px;
  border-radius: inherit;
  border: 2px solid rgba(63, 255, 119, 0.46);
  box-shadow: 0 0 0 1px rgba(39, 215, 255, 0.18), 0 0 22px rgba(63, 255, 119, 0.24);
  opacity: 0;
  pointer-events: none;
  animation: djLaraLauncherRing 1.8s ease-out infinite;
}

.dj-lara-launcher:hover {
  transform: translateY(-3px) scale(1.03);
  box-shadow: 0 20px 44px rgba(10, 14, 28, 0.62), 0 0 28px rgba(39, 215, 255, 0.46);
  filter: saturate(1.08);
}

.dj-lara-launcher:focus-visible,
.dj-lara-close:focus-visible,
.dj-lara-quick-card:focus-visible,
.dj-lara-emoji-toggle:focus-visible,
.dj-lara-emoji-option:focus-visible,
.dj-lara-send:focus-visible,
.dj-lara-input:focus-visible {
  outline: 2px solid rgba(39, 215, 255, 0.88);
  outline-offset: 2px;
}

.dj-lara-launcher-glow {
  position: absolute;
  inset: -6px;
  border-radius: inherit;
  background: radial-gradient(circle, rgba(39, 215, 255, 0.36), transparent 68%);
  filter: blur(10px);
  opacity: 0.72;
  z-index: 0;
  animation: djLaraLauncherGlowPulse 1.8s ease-in-out infinite;
}

@keyframes djLaraLauncherPulse {
  0%,
  100% {
    transform: scale(1);
    box-shadow: 0 16px 36px rgba(10, 14, 28, 0.55), 0 0 24px rgba(39, 215, 255, 0.35), 0 0 0 0 rgba(63, 255, 119, 0.18);
  }
  50% {
    transform: scale(1.11);
    box-shadow: 0 20px 42px rgba(10, 14, 28, 0.64), 0 0 38px rgba(63, 255, 119, 0.56), 0 0 0 10px rgba(63, 255, 119, 0.08);
  }
}

@keyframes djLaraLauncherGlowPulse {
  0%,
  100% {
    opacity: 0.72;
    transform: scale(1);
  }
  50% {
    opacity: 1;
    transform: scale(1.18);
  }
}

@keyframes djLaraLauncherRing {
  0% {
    opacity: 0;
    transform: scale(0.9);
  }
  24% {
    opacity: 0.92;
  }
  100% {
    opacity: 0;
    transform: scale(1.22);
  }
}

.dj-lara-launcher-icon,
.dj-lara-launcher-dot,
.dj-lara-launcher-pill {
  position: relative;
  z-index: 1;
}

.dj-lara-launcher-icon {
  width: 100%;
  height: 100%;
  border-radius: inherit;
  display: block;
  background-image: linear-gradient(180deg, rgba(6, 14, 26, 0.08), rgba(6, 14, 26, 0.18)), url('/hq.jpg');
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  box-shadow: inset 0 0 0 2px rgba(255,255,255,0.1);
  overflow: hidden;
}

.dj-lara-launcher-icon i {
  display: none;
}

.dj-lara-launcher-dot {
  position: absolute;
  top: 10px;
  right: 10px;
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: #8f9ab8;
  box-shadow: 0 0 0 4px rgba(143, 154, 184, 0.14), 0 0 10px rgba(143, 154, 184, 0.28);
  transition: background 0.22s ease, box-shadow 0.22s ease;
}

.dj-lara-launcher-pill {
  display: none !important;
  position: absolute;
  right: 78px;
  top: 50%;
  transform: translateY(-50%);
  white-space: nowrap;
  padding: 9px 14px;
  border-radius: 999px;
  background: rgba(10, 14, 28, 0.92);
  border: 1px solid rgba(143, 154, 184, 0.22);
  color: #dbe8ff;
  font-size: 12px;
  font-weight: 900;
  letter-spacing: 0.08em;
  text-shadow: none;
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  box-shadow: 0 12px 30px rgba(6, 8, 18, 0.36), 0 0 12px rgba(143, 154, 184, 0.12);
  transition: border-color 0.22s ease, color 0.22s ease, box-shadow 0.22s ease, background 0.22s ease;
}

@keyframes djLaraBreath {
  0%,
  100% {
    box-shadow: 0 12px 30px rgba(6, 8, 18, 0.36), 0 0 10px rgba(63, 255, 119, 0.14);
    filter: saturate(0.98);
  }
  50% {
    box-shadow: 0 12px 30px rgba(6, 8, 18, 0.36), 0 0 24px rgba(63, 255, 119, 0.34);
    filter: saturate(1.08);
  }
}

.dj-lara-panel {
  position: absolute;
  right: 0;
  bottom: 72px;
  width: min(94vw, 438px);
  height: min(92vh, 756px);
  border-radius: 28px;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  background: linear-gradient(180deg, rgba(8, 12, 24, 0.96) 0%, rgba(8, 12, 24, 0.9) 100%);
  border: 1px solid rgba(39, 215, 255, 0.16);
  box-shadow: 0 30px 70px rgba(0, 0, 0, 0.55), 0 0 0 1px rgba(140, 82, 255, 0.06);
  backdrop-filter: blur(18px);
  -webkit-backdrop-filter: blur(18px);
  transform-origin: bottom right;
  transform: translateY(18px) scale(0.96);
  opacity: 0;
  visibility: hidden;
  transition: bottom 0.28s ease, transform 0.28s ease, opacity 0.28s ease, visibility 0.28s ease;
}

.dj-lara-widget.is-open .dj-lara-panel {
  bottom: 0;
  transform: translateY(0) scale(1);
  opacity: 1;
  visibility: visible;
}
.dj-lara-widget.is-open .dj-lara-launcher {
  transform: translateY(8px) scale(0.78);
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  box-shadow: none;
}

.dj-lara-panel-border {
  position: absolute;
  inset: 0;
  border-radius: inherit;
  padding: 1px;
  background: linear-gradient(160deg, rgba(39, 215, 255, 0.28), rgba(140, 82, 255, 0.24), rgba(255, 79, 216, 0.22));
  -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
  -webkit-mask-composite: xor;
  mask-composite: exclude;
  pointer-events: none;
}

.dj-lara-header {
  position: relative;
  display: flex !important;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 18px 20px 16px !important;
  border-bottom: 1px solid rgba(255, 255, 255, 0.07);
  background:
    radial-gradient(circle at top left, rgba(39, 215, 255, 0.12), transparent 32%),
    linear-gradient(180deg, rgba(255,255,255,0.04), rgba(255,255,255,0));
}

.dj-lara-header-main {
  display: flex;
  align-items: center;
  gap: 12px;
  min-width: 0;
  flex: 1 1 auto;
}

.dj-lara-avatar-wrap {
  position: relative;
  flex: 0 0 auto;
}

.dj-lara-avatar {
  width: 48px;
  height: 48px;
  border-radius: 16px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 18px;
  color: transparent;
  background-image: linear-gradient(180deg, rgba(6, 14, 26, 0.08), rgba(6, 14, 26, 0.18)), url('/hq.jpg');
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.14), 0 10px 28px rgba(39, 215, 255, 0.18);
  overflow: hidden;
}

.dj-lara-avatar i {
  display: none;
}

.dj-lara-online-dot {
  position: absolute;
  right: -1px;
  bottom: -1px;
  width: 12px;
  height: 12px;
  border-radius: 50%;
  background: #8f9ab8;
  border: 2px solid rgba(8, 12, 24, 0.96);
  box-shadow: 0 0 0 4px rgba(143, 154, 184, 0.14), 0 0 12px rgba(143, 154, 184, 0.38);
  transition: background 0.22s ease, box-shadow 0.22s ease;
}

.dj-lara-widget.is-bot-active .dj-lara-launcher-dot,
.dj-lara-widget.is-bot-active .dj-lara-online-dot {
  background: var(--dj-lara-green);
  box-shadow: 0 0 0 4px rgba(63, 255, 119, 0.18), 0 0 16px rgba(63, 255, 119, 0.72);
}

@keyframes djHumanLiveDotPulse {
  0%, 100% {
    transform: scale(1);
    box-shadow: 0 0 0 3px rgba(63,255,119,.18), 0 0 12px rgba(63,255,119,.72);
  }
  50% {
    transform: scale(1.22);
    box-shadow: 0 0 0 7px rgba(63,255,119,.08), 0 0 22px rgba(63,255,119,1);
  }
}

/* ON_AIR_PRESENCE_V1: public green light follows the actual broadcast.
   Web DJ login is a separate status: no false red 'offline' while broadcasting. */
.dj-lara-widget.is-human-dj-live .dj-lara-online-dot,
.dj-lara-widget.is-human-dj-live .dj-lara-launcher-dot {
  background: #3fff77 !important;
  box-shadow: 0 0 0 4px rgba(63,255,119,.18), 0 0 16px rgba(63,255,119,.72) !important;
  animation: djHumanLiveDotPulse 1.15s ease-in-out infinite;
}

.dj-lara-widget.is-bot-active .dj-lara-launcher-pill {
  background: rgba(7, 20, 16, 0.9);
  border-color: rgba(63, 255, 119, 0.34);
  color: #7bff9f;
  text-shadow: 0 0 12px rgba(63, 255, 119, 0.4);
  box-shadow: 0 12px 30px rgba(6, 8, 18, 0.36), 0 0 18px rgba(63, 255, 119, 0.18);
  animation: djLaraBreath 2.6s ease-in-out infinite;
}

.dj-lara-widget.is-bot-inactive .dj-lara-launcher-dot,
.dj-lara-widget.is-bot-inactive .dj-lara-online-dot {
  background: #ff8a5b;
  box-shadow: 0 0 0 4px rgba(255, 138, 91, 0.16), 0 0 16px rgba(255, 138, 91, 0.52);
}

.dj-lara-widget.is-bot-inactive .dj-lara-launcher-pill {
  background: rgba(24, 12, 10, 0.94);
  border-color: rgba(255, 138, 91, 0.28);
  color: #ffd0c2;
  box-shadow: 0 12px 30px rgba(6, 8, 18, 0.36), 0 0 14px rgba(255, 138, 91, 0.14);
}

.dj-lara-widget.is-bot-inactive .dj-lara-identity span {
  color: #ffb29a;
}

.dj-lara-widget.is-bot-checking .dj-lara-identity span {
  color: #c5cee7;
}

.dj-lara-identity {
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.dj-lara-identity strong {
  color: #7bff9f;
  font-family: 'Rajdhani', sans-serif;
  font-size: 24px;
  line-height: 1;
  letter-spacing: 0.04em;
  text-shadow: 0 0 14px rgba(63, 255, 119, 0.28);
  animation: djLaraBreath 2.8s ease-in-out infinite;
}

.dj-lara-identity span {
  color: var(--dj-lara-muted);
  font-size: 12px;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

.dj-lara-close {
  width: 38px;
  height: 38px;
  flex: 0 0 auto;
  margin-left: auto;
  border: 0;
  border-radius: 12px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: var(--dj-lara-text);
  background: rgba(255, 255, 255, 0.06);
  cursor: pointer;
  transition: background 0.2s ease, transform 0.2s ease;
}

.dj-lara-close:hover {
  background: rgba(255, 255, 255, 0.12);
  transform: translateY(-1px);
}

.dj-lara-body {
  position: relative;
  flex: 1;
  min-height: 0;
  display: flex;
  flex-direction: column;
  gap: 12px;
  padding: 16px 18px 12px;
}

.dj-lara-quick-grid {
  display: flex;
  flex-wrap: nowrap;
  align-items: center;
  gap: 14px;
  overflow-x: auto;
  overflow-y: hidden;
  padding: 2px 2px 10px;
  scrollbar-width: none;
  border-bottom: 1px solid rgba(39, 215, 255, 0.1);
}

.dj-lara-quick-grid::-webkit-scrollbar {
  display: none;
}

.dj-lara-quick-card {
  position: relative;
  min-height: 0;
  width: auto;
  flex: 0 0 auto;
  padding: 0 0 4px;
  border: 0;
  border-radius: 0;
  background: transparent;
  color: #dbe8ff;
  display: inline-flex;
  flex-direction: row;
  align-items: center;
  justify-content: flex-start;
  gap: 0;
  text-align: left;
  cursor: pointer;
  box-shadow: none;
  transition: transform 0.18s ease, color 0.18s ease, text-shadow 0.18s ease;
}

.dj-lara-quick-card:hover {
  transform: scale(1.06);
  color: #7bff9f;
  text-shadow: 0 0 14px rgba(63, 255, 119, 0.24);
  box-shadow: none;
}

.dj-lara-quick-card::after {
  content: '';
  position: absolute;
  left: 0;
  right: 0;
  bottom: -2px;
  height: 1px;
  background: linear-gradient(90deg, rgba(39, 215, 255, 0), rgba(39, 215, 255, 0.7), rgba(63, 255, 119, 0.7), rgba(39, 215, 255, 0));
  opacity: 0.55;
  transform: scaleX(0.6);
  transform-origin: center;
  transition: transform 0.18s ease, opacity 0.18s ease;
}

.dj-lara-quick-card:hover::after {
  opacity: 1;
  transform: scaleX(1);
}

.dj-lara-quick-icon {
  display: none;
}

.dj-lara-quick-text {
  font-size: 12px;
  font-weight: 800;
  line-height: 1.1;
  white-space: nowrap;
  letter-spacing: 0.01em;
}

.dj-lara-messages {
  flex: 1;
  min-height: 0;
  display: flex;
  flex-direction: column;
  gap: 10px;
  overflow-y: auto;
  padding-right: 4px;
  scrollbar-width: thin;
  scrollbar-color: rgba(39, 215, 255, 0.22) transparent;
}

.dj-lara-messages::-webkit-scrollbar {
  width: 6px;
}

.dj-lara-messages::-webkit-scrollbar-thumb {
  background: linear-gradient(180deg, rgba(39, 215, 255, 0.4), rgba(140, 82, 255, 0.42));
  border-radius: 999px;
}

.dj-lara-row {
  display: flex;
}

.dj-lara-row.bot {
  justify-content: flex-start;
}

.dj-lara-row.user {
  justify-content: flex-end;
}

.dj-lara-bubble {
  max-width: 88%;
  padding: 12px 14px;
  border-radius: 18px;
  font-size: 14px;
  line-height: 1.5;
  box-shadow: 0 12px 24px rgba(0, 0, 0, 0.18);
}

.dj-lara-bubble.bot {
  color: #f5f7ff;
  background: linear-gradient(180deg, rgba(73, 39, 122, 0.92), rgba(24, 18, 54, 0.94));
  border-top-left-radius: 8px;
  border: 1px solid rgba(162, 101, 255, 0.18);
}

.dj-lara-bubble.user {
  color: #04111d;
  background: linear-gradient(180deg, rgba(132, 238, 255, 0.96), rgba(39, 215, 255, 0.92));
  border-top-right-radius: 8px;
  border: 1px solid rgba(255,255,255,0.22);
}

.dj-lara-time {
  margin-top: 6px;
  font-size: 11px;
  opacity: 0.7;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 7px;
}

.dj-lara-delivery {
  font-size: 10px;
  font-weight: 800;
  white-space: nowrap;
}

.dj-lara-delivery.is-sending {
  opacity: 0.7;
}

.dj-lara-delivery.is-sent {
  color: #000000;
  text-shadow: none;
}

/* ROF_GREEN_READ_CHECKS_V1 */
.dj-lara-delivery.is-read {
  color: #ffffff;
  text-shadow: none;
}
.dj-lara-delivery.is-read .dj-lara-delivery-checks {
  color: #079e45;
  font-weight: 900;
}
.dj-lara-delivery.is-read .dj-lara-delivery-word {
  color: #ffffff;
  font-weight: 800;
  text-shadow: 0 1px 2px rgba(0,0,0,.82);
}

.dj-lara-delivery.is-failed {
  color: #c92424;
}

.dj-lara-typing-wrap {
  display: flex;
  align-items: center;
  gap: 8px;
}

.dj-lara-typing-label {
  font-size: 12px;
  color: rgba(255,255,255,0.55);
  font-style: italic;
  white-space: nowrap;
}

.dj-lara-typing {
  display: inline-flex;
  align-items: center;
  gap: 5px;
}

.dj-lara-typing span {
  width: 9px;
  height: 9px;
  border-radius: 50%;
  background: #00d2ff;
  box-shadow: 0 0 6px rgba(0,210,255,0.7);
  animation: djLaraTyping 1s infinite ease-in-out;
}

.dj-lara-typing span:nth-child(2) {
  animation-delay: 0.18s;
}

.dj-lara-typing span:nth-child(3) {
  animation-delay: 0.36s;
}

@keyframes djLaraTyping {
  0%, 80%, 100% {
    transform: scale(0.55);
    opacity: 0.35;
  }
  40% {
    transform: scale(1.15);
    opacity: 1;
  }
}

.dj-lara-form {
  position: relative;
  padding: 14px 16px 16px;
  border-top: 1px solid rgba(255, 255, 255, 0.07);
  background: linear-gradient(180deg, rgba(255,255,255,0.02), rgba(0,0,0,0.04));
}

.dj-lara-emoji-picker {
  position: absolute;
  right: 16px;
  bottom: calc(100% + 10px);
  width: min(280px, calc(100% - 32px));
  max-height: 220px;
  overflow-y: auto;
  padding: 12px;
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 8px;
  border-radius: 18px;
  background: rgba(18, 22, 34, 0.98);
  border: 1px solid rgba(39, 215, 255, 0.16);
  box-shadow: 0 24px 48px rgba(0, 0, 0, 0.42), 0 0 18px rgba(39, 215, 255, 0.14);
  z-index: 8;
}

.dj-lara-emoji-picker[hidden] {
  display: none;
}

.dj-lara-emoji-option,
.dj-lara-emoji-toggle {
  border: 0;
  cursor: pointer;
}

/* EMOJI_PICKER_MOTION_V2 */
@keyframes djEmojiFloat {
  0%, 100% { transform: translateY(0) rotate(0deg) scale(1); }
  35% { transform: translateY(-3px) rotate(-2deg) scale(1.04); }
  70% { transform: translateY(1px) rotate(2deg) scale(0.99); }
}

@keyframes djEmojiPop {
  0% { transform: scale(1); }
  40% { transform: scale(1.34) rotate(-5deg); }
  72% { transform: scale(0.92) rotate(3deg); }
  100% { transform: scale(1); }
}

@keyframes djEmojiPickerIn {
  from { opacity: 0; transform: translateY(8px) scale(.96); }
  to { opacity: 1; transform: translateY(0) scale(1); }
}

.dj-lara-emoji-picker:not([hidden]) {
  animation: djEmojiPickerIn .18s ease-out both;
}

.dj-lara-emoji-option {
  position: relative;
  isolation: isolate;
  width: 100%;
  min-height: 42px;
  border-radius: 14px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 25px;
  line-height: 1;
  background:
    radial-gradient(circle at 50% 25%, rgba(255,255,255,.09), transparent 58%),
    rgba(255, 255, 255, 0.045);
  border: 1px solid rgba(255,255,255,.025);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.035),
    0 4px 12px rgba(0,0,0,.14);
  animation: djEmojiFloat 3.2s ease-in-out infinite;
  transition:
    transform .16s cubic-bezier(.2,.8,.2,1),
    background .18s ease,
    box-shadow .18s ease,
    border-color .18s ease,
    filter .18s ease;
  will-change: transform;
}

.dj-lara-emoji-option:nth-child(3n+1) { animation-delay: -.35s; }
.dj-lara-emoji-option:nth-child(3n+2) { animation-delay: -1.15s; }
.dj-lara-emoji-option:nth-child(3n) { animation-delay: -2.05s; }
.dj-lara-emoji-option:nth-child(5n) { animation-duration: 3.7s; }

.dj-lara-emoji-option:hover {
  z-index: 3;
  animation-play-state: paused;
  transform: translateY(-5px) scale(1.22) rotate(-3deg);
  background:
    radial-gradient(circle at 50% 30%, rgba(255,255,255,.16), transparent 60%),
    rgba(39, 215, 255, 0.14);
  border-color: rgba(39,215,255,.34);
  box-shadow:
    0 0 0 1px rgba(39,215,255,.10),
    0 9px 24px rgba(39,215,255,.20),
    0 0 20px rgba(168,85,247,.12);
  filter: saturate(1.16) brightness(1.08);
}

.dj-lara-emoji-option:active,
.dj-lara-emoji-option.is-picked {
  animation: djEmojiPop .32s cubic-bezier(.2,.9,.25,1.25) 1;
  background: rgba(168,85,247,.18);
  border-color: rgba(168,85,247,.42);
  box-shadow:
    0 0 0 1px rgba(168,85,247,.18),
    0 0 24px rgba(168,85,247,.30);
}

@media (prefers-reduced-motion: reduce) {
  .dj-lara-emoji-option,
  .dj-lara-emoji-picker:not([hidden]) {
    animation: none !important;
  }
}

.dj-lara-input-shell {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 8px 8px 8px 14px;
  border-radius: 18px;
  background: rgba(255, 255, 255, 0.06);
  border: 1px solid rgba(255, 255, 255, 0.08);
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.03);
}

.dj-lara-input {
  flex: 1;
  min-width: 0;
  background: transparent;
  border: 0;
  color: var(--dj-lara-text);
  font-size: 14px;
}

.dj-lara-input::placeholder {
  color: #9aa4c3;
}

.dj-lara-input:focus {
  outline: none;
}

.dj-lara-emoji-toggle {
  width: 42px;
  height: 42px;
  flex: 0 0 auto;
  border-radius: 14px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #ffd86b;
  background: rgba(255, 255, 255, 0.06);
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.03);
  transition: transform 0.2s ease, background 0.2s ease, box-shadow 0.2s ease;
}

.dj-lara-emoji-toggle:hover {
  transform: translateY(-1px);
  background: rgba(255, 216, 107, 0.12);
  box-shadow: 0 10px 22px rgba(255, 216, 107, 0.12);
}

.dj-lara-emoji-toggle.is-open {
  background: rgba(255, 216, 107, 0.16);
  box-shadow: 0 0 0 1px rgba(255, 216, 107, 0.2);
}

.dj-lara-send {
  width: 42px;
  height: 42px;
  border: 0;
  border-radius: 14px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  cursor: pointer;
  background: linear-gradient(135deg, var(--dj-lara-cyan), var(--dj-lara-blue));
  box-shadow: 0 10px 24px rgba(39, 215, 255, 0.28);
  transition: transform 0.2s ease, filter 0.2s ease, box-shadow 0.2s ease;
}

.dj-lara-send:hover {
  transform: translateY(-1px);
  filter: saturate(1.08);
  box-shadow: 0 14px 28px rgba(39, 215, 255, 0.34);
}

.dj-lara-send:disabled {
  opacity: 0.65;
  cursor: wait;
  box-shadow: none;
}

.dj-lara-choice-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
  margin-top: 2px;
}

.dj-lara-inline-action,
.dj-lara-request-item,
.dj-lara-request-more {
  width: 100%;
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 14px;
  background: rgba(255, 255, 255, 0.05);
  color: #f4f7ff;
  cursor: pointer;
  transition: transform 0.18s ease, border-color 0.18s ease, background 0.18s ease, box-shadow 0.18s ease;
}

.dj-lara-inline-action {
  padding: 10px 12px;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: 0.02em;
}

.dj-lara-inline-action:hover,
.dj-lara-request-item:hover,
.dj-lara-request-more:hover {
  transform: translateY(-1px);
  border-color: rgba(39, 215, 255, 0.35);
  background: rgba(39, 215, 255, 0.08);
  box-shadow: 0 12px 20px rgba(0, 0, 0, 0.16);
}

.dj-lara-request-list {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.dj-lara-request-item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 12px 14px;
  text-align: left;
}

.dj-lara-request-item.is-disabled {
  opacity: 0.6;
  cursor: not-allowed;
}

.dj-lara-request-copy {
  display: flex;
  flex-direction: column;
  gap: 4px;
  min-width: 0;
}

.dj-lara-request-copy strong {
  font-size: 13px;
  line-height: 1.35;
}

.dj-lara-request-copy small {
  color: #9aa4c3;
  font-size: 11px;
  line-height: 1.35;
}

.dj-lara-request-cta {
  flex: 0 0 auto;
  color: #84eeff;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.dj-lara-request-more {
  padding: 10px 12px;
  font-size: 12px;
  font-weight: 800;
}

.dj-lara-bubble-actions {
  max-width: 100%;
  width: 100%;
  padding: 0;
  background: transparent;
  border: 0;
  box-shadow: none;
}

.dj-lara-inline-quick-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px 14px;
}

.dj-lara-inline-quick {
  position: relative;
  border: 0;
  background: transparent;
  color: #dbe8ff;
  padding: 0 0 8px;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 7px;
  text-align: left;
  cursor: pointer;
}

.dj-lara-inline-quick::after {
  content: '';
  position: absolute;
  left: 0;
  right: 10px;
  bottom: 0;
  height: 1px;
  background: linear-gradient(90deg, rgba(39, 215, 255, 0), rgba(39, 215, 255, 0.68), rgba(63, 255, 119, 0.68), rgba(39, 215, 255, 0));
  opacity: 0.72;
}

.dj-lara-inline-quick-icon {
  display: inline-flex;
  width: 26px;
  height: 26px;
  border-radius: 9px;
  align-items: center;
  justify-content: center;
  color: #84eeff;
  background: rgba(39, 215, 255, 0.08);
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.05);
  font-size: 12px;
}

.dj-lara-inline-quick-label {
  font-size: 12px;
  font-weight: 800;
  line-height: 1.2;
  white-space: normal;
  text-wrap: balance;
}
@media (max-width: 640px) {
  .dj-lara-widget {
    left: auto;
    right: 4px;
    bottom: 6px;
    width: auto;
    max-width: calc(100vw - 8px);
    align-items: flex-end;
  }

  .dj-lara-launcher {
    width: 60px;
    height: 60px;
  }

  .dj-lara-launcher-pill {
    display: none;
  }

  .dj-lara-panel {
    right: 0;
    width: calc(100vw - 8px);
    max-width: none;
    height: calc(100vh - 20px);
    height: calc(100dvh - 20px);
    max-height: none;
    border-radius: 20px;
    bottom: 74px;
  }

  .dj-lara-header {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: start;
    column-gap: 12px;
    padding: 16px 16px 14px;
  }

  .dj-lara-header-main {
    min-width: 0;
    gap: 10px;
  }

  .dj-lara-close {
    margin-left: 0;
    justify-self: end;
    align-self: start;
  }

  .dj-lara-identity strong {
    font-size: 22px;
  }

  .dj-lara-body {
    padding: 14px 14px 10px;
    gap: 10px;
  }

  .dj-lara-widget.is-mobile-inline-actions .dj-lara-quick-grid {
    display: none !important;
  }

  .dj-lara-widget.is-mobile-inline-actions .dj-lara-messages {
    padding-top: 0;
    scroll-padding-top: 72px;
  }

  .dj-lara-widget.is-mobile-inline-actions .dj-lara-row[data-inline-quick-actions] {
    position: sticky;
    top: 0;
    z-index: 5;
    padding-top: 2px;
  }

  .dj-lara-widget.is-mobile-inline-actions .dj-lara-bubble-actions {
    padding: 8px 0 8px;
    background: linear-gradient(180deg, rgba(7, 12, 24, 0.98) 0%, rgba(7, 12, 24, 0.9) 68%, rgba(7, 12, 24, 0) 100%);
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
  }

  .dj-lara-widget.is-mobile-inline-actions .dj-lara-inline-quick-grid {
    gap: 8px 10px;
  }

  .dj-lara-widget.is-mobile-inline-actions .dj-lara-inline-quick {
    gap: 5px;
    padding: 0 0 6px;
  }

  .dj-lara-widget.is-mobile-inline-actions .dj-lara-inline-quick-icon {
    width: 22px;
    height: 22px;
    border-radius: 8px;
    font-size: 11px;
  }

  .dj-lara-widget.is-mobile-inline-actions .dj-lara-inline-quick-label {
    font-size: 10.8px;
  }

  .dj-lara-bubble {
    max-width: 94%;
    font-size: 13px;
  }

  .dj-lara-form {
    padding: 12px 14px 14px;
  }

  .dj-lara-emoji-picker {
    right: 14px;
    width: min(260px, calc(100% - 28px));
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }

  .dj-lara-choice-grid {
    grid-template-columns: 1fr;
  }

  .dj-lara-request-item {
    align-items: flex-start;
    flex-direction: column;
  }

  .dj-lara-request-cta {
    align-self: flex-start;
  }
}


/* HUMAN_LIVE_DIRECT_CHAT_ONLY_V1
   При човешки LIVE остава само слушател <-> DJ чат.
   Няма Lara/Niki quick actions или статични бутони 1-4. */
.dj-lara-widget.is-live-dj-lara-paused .dj-lara-static-actions,
.dj-lara-widget.is-live-dj-lara-paused .dj-lara-quick-grid,
.dj-lara-widget.is-live-dj-lara-paused .dj-lara-quick-actions,
.dj-lara-widget.is-live-dj-lara-paused [data-inline-quick-actions] {
  display: none !important;
}


/* INTERNAL_SONG_SEARCH_HIDDEN_V1 */
#djLaraSongSearchPanel,
#djLaraSongSearchToggle,
.dj-lara-request-search-result {
  display: none !important;
}

/* HIDE_INNER_QUICK_ACTIONS_V1 */
.dj-lara-inline-quick-grid,
.dj-lara-quick-grid,
.dj-lara-quick-actions,
.dj-lara-bubble [data-quick-action],
.dj-lara-bubble .dj-lara-inline-quick,
.dj-lara-bubble .dj-lara-inline-quick-icon,
.dj-lara-bubble .dj-lara-inline-quick-label {
  display: none !important;
}

.dj-lara-row:has([data-quick-action]),
.dj-lara-bubble:has([data-quick-action]),
.dj-lara-row:has(.dj-lara-inline-quick),
.dj-lara-bubble:has(.dj-lara-inline-quick) {
  display: none !important;
}

/* SONG_REQUEST_SUCCESS_CARD_V1 */
.dj-lara-bubble.bot.dj-lara-song-request-success {
  border: 1px solid rgba(52, 211, 153, 0.75) !important;
  background:
    linear-gradient(
      145deg,
      rgba(6, 95, 70, 0.96),
      rgba(5, 150, 105, 0.88)
    ) !important;
  box-shadow:
    0 0 0 1px rgba(52, 211, 153, 0.16),
    0 14px 34px rgba(5, 150, 105, 0.22) !important;
  color: #ffffff !important;
}

.dj-lara-song-success-heading {
  margin: 0 0 10px;
  padding: 0 0 9px;
  border-bottom:
    1px solid rgba(255, 255, 255, 0.25);
  color: #d1fae5;
  font-size: 17px;
  font-weight: 900;
  line-height: 1.3;
}

/* BOTTOM_GREETING_MENU_STYLE_V1 */
.dj-lara-bottom-greeting-menu {
  box-sizing: border-box;
  width: 100%;
  padding: 8px 18px 2px;
}

.dj-lara-bottom-greeting-button {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 9px;
  width: 100%;
  min-height: 44px;
  border: 1px solid rgba(168, 85, 247, 0.62);
  border-radius: 14px;
  background:
    linear-gradient(
      135deg,
      rgba(124, 58, 237, 0.96),
      rgba(219, 39, 119, 0.96)
    );
  box-shadow:
    0 8px 22px rgba(124, 58, 237, 0.20);
  color: #ffffff;
  font: inherit;
  font-size: 15px;
  font-weight: 900;
  cursor: pointer;
}

.dj-lara-bottom-greeting-button:active {
  transform: scale(0.985);
}

/* SONG_REQUEST_SUCCESS_VISUAL_STYLE_V2 */
.dj-lara-song-request-success-v2 {
  border: 1px solid
    rgba(110, 231, 183, 0.88) !important;

  background:
    linear-gradient(
      145deg,
      rgba(5, 150, 105, 0.98),
      rgba(6, 78, 59, 0.98)
    ) !important;

  box-shadow:
    0 12px 30px
    rgba(5, 150, 105, 0.30) !important;

  color: #ffffff !important;
}

.dj-lara-song-request-success-v2,
.dj-lara-song-request-success-v2 * {
  color: #ffffff !important;
}

.dj-lara-song-success-heading-v2 {
  margin-bottom: 9px;
  padding-bottom: 8px;

  border-bottom: 1px solid
    rgba(255, 255, 255, 0.26);

  font-size: 14px;
  font-weight: 950;
  line-height: 1.35;
  color: #ecfdf5 !important;
}

/* LARA_SIMPLE_CHAT_V1 */
#djLaraWidgetRoot [data-inline-quick-actions],
#djLaraBottomActionStripsFinalV3,
#djLaraWidgetRoot .dj-lara-bottom-greeting-menu{display:none!important}
.lara-simple-primary{margin-top:9px;border:0;border-radius:10px;padding:10px 13px;background:linear-gradient(135deg,#16a34a,#059669);color:#fff;font-weight:900;cursor:pointer}
.lara-simple-form{display:grid;gap:7px}
.lara-simple-form strong{color:#ddd6fe}
.lara-simple-form label{font-size:11px;font-weight:900;color:rgba(255,255,255,.78)}
.lara-simple-form input{width:100%;box-sizing:border-box;border:1px solid rgba(196,181,253,.42);border-radius:9px;background:rgba(255,255,255,.08);color:#fff;padding:9px 10px}
.lara-simple-error{min-height:15px;color:#fecaca;font-size:11px;font-weight:800}
.lara-simple-catalog{position:fixed;inset:0;z-index:100500;background:rgba(0,0,0,.8);display:grid;place-items:center;padding:12px}
.lara-simple-catalog-card{width:min(680px,100%);max-height:92vh;overflow:auto;background:#0e0c17;border:1px solid rgba(139,92,246,.52);border-radius:18px;padding:14px}
.lara-simple-catalog-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}
.lara-simple-catalog-head button{width:38px;height:38px;border:0;border-radius:9px;background:rgba(255,255,255,.08);color:#fff;font-size:23px}
.lara-simple-catalog-search{display:grid;grid-template-columns:minmax(0,1fr) 92px;gap:8px;margin-bottom:10px}
.lara-simple-catalog-search input{height:44px;border:1px solid rgba(255,255,255,.15);border-radius:9px;background:#05050a;color:#fff;padding:0 11px}
.lara-simple-catalog-search button{border:0;border-radius:9px;background:#22d3ee;color:#031014;font-weight:950}
.lara-simple-catalog-results{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:10px}
.lara-simple-song-item{border:1px solid rgba(255,255,255,.09);border-radius:10px;background:#15121f;color:#fff;padding:10px;text-align:left;cursor:pointer;font-weight:800}
.lara-simple-song-item:hover{border-color:#22d3ee}
@media(max-width:560px){.lara-simple-catalog-results{grid-template-columns:1fr}.lara-simple-catalog{padding:7px}.lara-simple-catalog-card{padding:10px}.lara-simple-catalog-search{grid-template-columns:minmax(0,1fr) 78px}}


/* LARA_SIMPLE_CATALOG_VISUAL_V2 */
.lara-simple-catalog-tools{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:10px 0;color:#c8c3d0;font-size:12px}
.lara-simple-catalog-tools label{display:flex;align-items:center;gap:7px;font-weight:800}
.lara-simple-catalog-tools select{height:34px;border:1px solid rgba(255,255,255,.16);border-radius:8px;background:#08070d;color:#fff;padding:0 8px;font-weight:800}
.lara-simple-song-item{display:grid!important;grid-template-columns:64px minmax(0,1fr)!important;gap:11px!important;align-items:center!important;min-height:78px!important;padding:7px!important}
.lara-simple-song-item img,.lara-simple-noart{width:64px;height:64px;border-radius:9px;object-fit:cover;background:#211b30;display:grid;place-items:center;font-size:26px}
.lara-simple-song-copy{min-width:0;display:block}
.lara-simple-song-copy strong{display:block;font-size:14px;line-height:1.25;color:#fff;white-space:normal;overflow-wrap:anywhere}
.lara-simple-song-copy small{display:block;margin-top:4px;font-size:12px;line-height:1.2;color:#b8b1c3;white-space:normal;overflow-wrap:anywhere}
.lara-simple-song-copy em{display:inline-block;margin-top:6px;font-style:normal;font-size:10px;font-weight:950;color:#70f29a;letter-spacing:.7px}
.lara-simple-pager{display:grid;grid-template-columns:1fr auto 1fr;gap:8px;align-items:center;margin-top:12px}
.lara-simple-pager button{min-height:40px;border:1px solid rgba(255,255,255,.13);border-radius:9px;background:#17131f;color:#fff;font-weight:900;cursor:pointer}
.lara-simple-pager button:disabled{opacity:.35;cursor:not-allowed}
.lara-simple-pager span{text-align:center;font-size:12px;font-weight:900;color:#c9c3d3;white-space:nowrap}
@media(max-width:560px){.lara-simple-catalog-tools{align-items:flex-start;flex-direction:column}.lara-simple-song-item{grid-template-columns:58px minmax(0,1fr)!important}.lara-simple-song-item img,.lara-simple-noart{width:58px;height:58px}.lara-simple-pager{grid-template-columns:1fr 1fr}.lara-simple-pager span{grid-column:1/-1;grid-row:1}.lara-simple-pager button:first-child{grid-column:1}.lara-simple-pager button:last-child{grid-column:2}}


/* LARA_SONG_60M_GUARD_V1 */
.lara-simple-song-item:disabled{opacity:.42;cursor:not-allowed;filter:grayscale(.55)}
.lara-simple-song-item:disabled em{opacity:.9}

/* CHAT_STATIC_ACTION_ROWS_V1 */
#djLaraStaticActions{display:grid!important;grid-template-columns:1fr!important;gap:6px!important;margin:0 18px 9px!important;flex:0 0 auto!important}
.dj-lara-widget.is-live-dj-lara-paused #djLaraStaticActions{display:none!important}
#djLaraStaticActions .dj-lara-static-action{width:100%;min-height:38px;display:grid;grid-template-columns:28px minmax(0,1fr) 18px;align-items:center;gap:8px;padding:7px 10px;border:1px solid rgba(96,165,250,.22);border-radius:11px;background:linear-gradient(90deg,rgba(31,41,55,.96),rgba(15,23,42,.96));color:#f8fafc;text-align:left;cursor:pointer;box-sizing:border-box;transition:transform .15s ease,border-color .15s ease,background .15s ease}
#djLaraStaticActions .dj-lara-static-action:hover{transform:translateY(-1px);border-color:rgba(34,211,238,.68);background:linear-gradient(90deg,rgba(30,58,75,.98),rgba(15,23,42,.98))}
#djLaraStaticActions .dj-lara-static-action b{width:26px;height:26px;border-radius:8px;display:grid;place-items:center;background:linear-gradient(135deg,#06b6d4,#8b5cf6);color:#fff;font-size:13px}
#djLaraStaticActions .dj-lara-static-action span{font-size:13px;font-weight:900;line-height:1.15}
#djLaraStaticActions .dj-lara-static-action em{font-style:normal;font-size:22px;color:#67e8f9;text-align:right}
@media(max-width:560px){#djLaraStaticActions{margin:0 12px 8px!important;gap:5px!important}#djLaraStaticActions .dj-lara-static-action{min-height:36px;padding:6px 9px}}

/* ROF_COMPACT_ACTION_DOCK_V1 – stationary, compact action row */
#djLaraActionDock {
  display: block;
  flex: 0 0 auto;
  min-width: 0;
  margin: 0 12px 7px;
}
#djLaraStaticActions {
  display: grid !important;
  grid-template-columns: minmax(0, 1.50fr) minmax(0, 1.05fr) minmax(0, .90fr) !important;
  gap: 6px !important;
  width: 100%;
  min-width: 0;
  margin: 0 !important;
  padding: 0 !important;
}
#djLaraStaticActions .dj-lara-static-action {
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  align-items: center !important;
  min-width: 0;
  width: 100% !important;
  height: 57px;
  min-height: 57px !important;
  overflow: hidden;
  gap: 3px !important;
  padding: 5px 2px !important;
  border-radius: 12px;
  text-align: center !important;
}
#djLaraStaticActions .dj-lara-static-action .dj-lara-static-icon {
  display: block;
  width: 100%;
  font-size: 21px !important;
  line-height: 1.15 !important;
  font-weight: normal !important;
  text-align: center;
}
#djLaraStaticActions .dj-lara-static-action .dj-lara-static-label {
  display: block;
  width: 100%;
  color: #f8fafc;
  font-size: 11px !important;
  line-height: 1.15 !important;
  font-weight: 850 !important;
  letter-spacing: 0 !important;
  white-space: nowrap;
  text-align: center;
}
/* ROF_3_PROPORTIONAL_ACTIONS_V1: exactly three buttons on one row.
   More room for "Песен + поздрав"; keep both shorter actions in view. */
#djLaraStaticActions .dj-lara-static-action:first-child .dj-lara-static-label {
  font-size: 11px !important;
  letter-spacing: -.16px !important;
}
#djLaraStaticActions .dj-lara-static-action {
  box-sizing: border-box !important;
}
#djLaraActionsToggle {
  display: none;
  align-items: center;
  justify-content: center;
  gap: 7px;
  height: 35px;
  min-height: 35px;
  margin: 0 0 0 auto;
  padding: 5px 12px;
  border: 1px solid rgba(103,232,249,.34);
  border-radius: 12px;
  background: linear-gradient(110deg, rgba(31,41,55,.96), rgba(30,41,59,.96));
  color: #e0f2fe;
  cursor: pointer;
  font-size: 12px;
  font-weight: 800;
}
#djLaraActionsToggle:focus-visible,
#djLaraStaticActions .dj-lara-static-action:focus-visible {
  outline: 2px solid #67e8f9;
  outline-offset: 2px;
}
#djLaraActionDock[data-conversation-started="1"] #djLaraActionsToggle {
  display: inline-flex;
}
#djLaraActionDock[data-conversation-started="1"][data-collapsed="0"] #djLaraActionsToggle {
  margin-bottom: 5px;
}
#djLaraActionDock[data-collapsed="1"] #djLaraStaticActions {
  display: none !important;
}
.dj-lara-widget.is-live-dj-lara-paused #djLaraActionDock {
  display: none !important;
}
@media (max-width: 390px) {
  #djLaraActionDock { margin-left: 9px; margin-right: 9px; }
  #djLaraStaticActions { gap: 4px !important; }
  #djLaraStaticActions .dj-lara-static-action {
    height: 53px;
    min-height: 53px !important;
    padding: 4px 1px !important;
  }
  #djLaraStaticActions .dj-lara-static-action .dj-lara-static-label { font-size: 10px !important; }
  #djLaraStaticActions .dj-lara-static-action .dj-lara-static-icon { font-size: 19px !important; }
  #djLaraStaticActions .dj-lara-static-action:first-child .dj-lara-static-label {
    font-size: 10.5px !important;
    letter-spacing: -.18px !important;
  }
}


/* ROF_AI_CHAT_QUOTA_V1: unobtrusive quota near read receipt. */
.dj-lara-ai-points {
  font-size: 9px;
  line-height: 1.2;
  white-space: nowrap;
  font-weight: 800;
  color: #075944;
  font-variant-numeric: tabular-nums;
}
.dj-lara-ai-points.is-exhausted {
  color: #9f1010;
  background: rgba(255,255,255,.68);
  border-radius: 5px;
  padding: 1px 3px;
}
.dj-lara-bubble.user .dj-lara-time {
  flex-wrap: wrap;
  gap: 3px 7px;
}
.dj-lara-quota-footer {
  text-align: right;
  font-size: 10px;
  line-height: 1.35;
  letter-spacing: .01em;
  padding: 2px 7px 0;
  font-weight: 700;
  color: #7dffce;
  font-variant-numeric: tabular-nums;
}
.dj-lara-quota-footer.is-exhausted {
  color: #ff777e;
}
.dj-lara-quota-footer[hidden] {
  display: none !important;
}

/* ROF_OPENAI_CHAT_DISCLOSURE_V1 */
.dj-lara-ai-privacy {
  margin-top: 5px;
  font-size: 9px;
  line-height: 1.4;
  color: rgba(233,237,250,.74);
  overflow-wrap: anywhere;
}

/* ROF_AI_GREEN_USAGE_PROGRESS_V1 */
.dj-lara-quota-progress {
  margin-top: 9px;
  width: 100%;
  padding: 1px 0 0;
}
.dj-lara-quota-progress[hidden] {
  display: none !important;
}
.dj-lara-quota-progress-label {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 8px;
  margin-bottom: 5px;
  font-size: 10px;
  line-height: 1.25;
  color: rgba(222, 245, 234, .82);
}
.dj-lara-quota-progress-label strong {
  color: #7dffb2;
  font-size: 10px;
  font-weight: 750;
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
}
.dj-lara-quota-progress-track {
  height: 7px;
  width: 100%;
  border-radius: 20px;
  overflow: hidden;
  background: rgba(31, 78, 61, .64);
  border: 1px solid rgba(95, 235, 164, .20);
}
.dj-lara-quota-progress-fill {
  display: block;
  height: 100%;
  width: 0%;
  border-radius: inherit;
  background: linear-gradient(90deg, #10ad68 0%, #29e38a 67%, #75ffb5 100%);
  box-shadow: 0 0 10px rgba(40, 237, 139, .42);
  transition: width .45s ease;
}
@media (prefers-reduced-motion: reduce) {
  .dj-lara-quota-progress-fill { transition: none; }
}

/* ROF_AI_ADMIN_UNLOCK_UI_V1 */
.dj-lara-ai-admin[hidden], .dj-lara-ai-admin-login[hidden],
.dj-lara-ai-admin-active[hidden] { display:none !important; }
.dj-lara-ai-admin { margin-top:8px; }
.dj-lara-ai-admin-open {
  border:0;background:none;color:#86dda9;font-size:10px;
  padding:4px 0;cursor:pointer;text-decoration:underline;
  text-underline-offset:2px;
}
.dj-lara-ai-admin-login {
  background:rgba(7,23,23,.92);border:1px solid rgba(70,215,147,.32);
  border-radius:10px;padding:10px;margin-top:5px;
}
.dj-lara-ai-admin-login label {
  display:block;color:#c7e9db;font-size:11px;line-height:1.5;margin-bottom:6px;
}
.dj-lara-ai-admin-line { display:flex;gap:6px;align-items:center;min-width:0; }
#djLaraAdminCode {
  min-width:0;flex:1;padding:8px;border:1px solid rgba(138,204,178,.45);
  background:#10282a;color:#f4fff8;border-radius:7px;font-size:13px;
}
#djLaraAdminConfirm {
  border:0;background:#21bd70;color:#062614;border-radius:7px;
  font-size:11px;font-weight:750;padding:9px 10px;cursor:pointer;white-space:nowrap;
}
#djLaraAdminConfirm:disabled { opacity:.55;cursor:wait; }
.dj-lara-ai-admin-message { display:block;margin-top:5px;color:#fac0c3;font-size:10px; }
.dj-lara-ai-admin-message:empty { display:none; }
.dj-lara-ai-admin-active {
  display:flex;align-items:center;justify-content:space-between;gap:7px;
  margin-top:8px;padding:7px 9px;border-radius:9px;
  background:rgba(21,135,82,.18);border:1px solid rgba(74,234,143,.35);
  color:#8bffc2;font-size:11px;font-weight:750;
}
#djLaraAdminLogout { border:0;border-radius:6px;padding:4px 8px;
  color:#e2fff2;background:rgba(27,108,75,.6);font-size:10px;cursor:pointer; }

/* ORGAZAM_CHAT_DARK_DIALOGUE_V1 — intentionally visual-only.
   DJ LEFT / listener RIGHT, graphite palette with restrained accents. */
.dj-lara-widget {
  --dj-lara-bg: #090b11;
  --dj-lara-panel: #0b0d14;
  --dj-lara-line: rgba(213,225,244,.14);
  --dj-lara-text: #f6f8fc;
  --dj-lara-muted: #9da8bd;
}
.dj-lara-widget .dj-lara-panel {
  background: #090b11;
  border: 1px solid rgba(210,220,238,.20);
  box-shadow: 0 24px 75px rgba(0,0,0,.66);
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
}
.dj-lara-widget .dj-lara-panel-border {
  background: linear-gradient(165deg,rgba(226,231,246,.22),rgba(79,133,177,.18),rgba(170,151,212,.18));
}
.dj-lara-widget .dj-lara-header {
  background: #10131b;
  border-bottom: 1px solid rgba(223,232,247,.13);
  display: flex !important;
  align-items: center;
  justify-content: flex-start;
  gap: 10px;
}
.dj-lara-widget .dj-lara-header-main {
  flex: 1 1 auto;
  min-width: 0;
}
.dj-lara-widget .dj-lara-identity {
  min-width: 0;
}
.dj-lara-widget .dj-lara-identity strong {
  color: #fff;
  text-shadow: none;
  animation: none;
  font-family: inherit;
  font-weight: 800;
  letter-spacing: .015em;
  font-size: 21px;
}
.dj-lara-widget .dj-lara-identity span {
  color: #b0b9cc;
  font-size: 10px;
  letter-spacing: .09em;
}
.dj-lara-widget .dj-lara-header > .dj-lara-change-name {
  flex: 0 1 auto;
  display: inline-flex;
  justify-content: flex-end;
  align-items: center;
  max-width: min(34%, 170px);
  min-width: 29px;
  margin: 0;
  padding: 7px 2px;
  font: inherit;
  font-size: 11px;
  line-height: 1.3;
  font-weight: 700;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  color: #e8edf6;
  text-align: right;
  border: 0;
  background: transparent;
  cursor: pointer;
  text-shadow: none;
}
.dj-lara-widget .dj-lara-header > .dj-lara-change-name:hover { color: #a7e3fb; }
.dj-lara-widget .dj-lara-header .dj-lara-close {
  flex: 0 0 36px;
  margin-left: 2px;
  background: #1b202a;
  color: #f3f5fa;
}
.dj-lara-widget .dj-lara-body { background: #090b11; }
.dj-lara-widget .dj-lara-messages {
  gap: 12px;
  scrollbar-color: rgba(136,151,177,.30) transparent;
}
.dj-lara-widget .dj-lara-messages::-webkit-scrollbar-thumb {
  background: rgba(136,151,177,.40);
}
.dj-lara-widget .dj-lara-row.bot { justify-content: flex-start; }
.dj-lara-widget .dj-lara-row.user { justify-content: flex-end; }
.dj-lara-widget .dj-lara-bubble {
  max-width: 87%;
  padding: 12px 14px 10px;
  font-size: 14px;
  line-height: 1.56;
  color: #f7f9fc;
  box-shadow: 0 8px 20px rgba(0,0,0,.23);
  overflow-wrap: anywhere;
}
.dj-lara-widget .dj-lara-bubble.bot {
  background: #1b1c27;
  color: #fff;
  border: 1px solid rgba(167,151,210,.32);
  border-left: 2px solid #a590d8;
  border-radius: 16px 16px 16px 5px;
}
.dj-lara-widget .dj-lara-bubble.user {
  background: #142735;
  color: #fff;
  border: 1px solid rgba(117,185,204,.36);
  border-right: 2px solid #55c1da;
  border-radius: 16px 16px 5px 16px;
}
.dj-lara-widget .dj-lara-message-name {
  display: block;
  margin: 0 0 6px;
  font-size: 11px;
  line-height: 1.3;
  letter-spacing: .015em;
  font-weight: 800;
  color: #d9c9ff;
  overflow-wrap: anywhere;
}
.dj-lara-widget .dj-lara-bubble.user .dj-lara-message-name {
  color: #8de6f4;
  text-align: right;
}
.dj-lara-widget .dj-lara-message-text { color: #f7f9fc; }
.dj-lara-widget .dj-lara-time {
  color: #aeb9ca;
  opacity: 1;
  font-weight: 500;
  font-size: 10px;
  margin-top: 8px;
}
.dj-lara-widget .dj-lara-delivery,
.dj-lara-widget .dj-lara-delivery.is-sent,
.dj-lara-widget .dj-lara-delivery.is-read .dj-lara-delivery-word {
  color: #e2ecf8;
  text-shadow: none;
}
.dj-lara-widget .dj-lara-delivery.is-read .dj-lara-delivery-checks {
  color: #49da93;
}
.dj-lara-widget .dj-lara-delivery.is-failed { color: #ff8b90; }
.dj-lara-widget .dj-lara-ai-points {
  color: #95e9c5;
  text-shadow: none;
}
.dj-lara-widget .dj-lara-ai-points.is-exhausted {
  color: #ffc4b8;
  background: rgba(219,76,76,.14);
}
.dj-lara-widget .dj-lara-form {
  background: #0f1119;
  border-top: 1px solid rgba(213,225,244,.13);
}
.dj-lara-widget .dj-lara-input-shell {
  background: #171b27;
  border-color: rgba(210,219,236,.21);
}
.dj-lara-widget .dj-lara-input { color: #fff; }
.dj-lara-widget .dj-lara-input::placeholder { color: #8c98ac; }
.dj-lara-widget .dj-lara-quota-footer { color: #a7eacb; }
.dj-lara-widget .dj-lara-ai-privacy { color: #a8b3c4; }
@media(max-width:640px) {
  .dj-lara-widget .dj-lara-header {
    display: grid !important;
    grid-template-columns: minmax(0,1fr) minmax(29px,max-content) 36px;
    align-items: center;
    column-gap: 8px;
  }
  .dj-lara-widget .dj-lara-header > .dj-lara-change-name {
    max-width: min(30vw,135px);
    justify-self: end;
  }
  .dj-lara-widget .dj-lara-bubble { max-width: 89%; font-size: 13.5px; }
  .dj-lara-widget .dj-lara-header .dj-lara-close { justify-self: end; }
}
@media(prefers-reduced-motion:reduce) {
  .dj-lara-widget .dj-lara-message-name { transition: none; }
}


/* COMPACT_CHAT_ADMIN_HEADER_V1 — smaller chrome, more room for song requests */
.dj-lara-widget .dj-lara-header {
  display: grid !important;
  grid-template-columns: minmax(0,1fr) minmax(56px,max-content) 35px;
  align-items: center;
  gap: 8px;
  padding: 11px 13px 10px !important;
  position: relative;
  z-index: 20;
}
.dj-lara-widget .dj-lara-header-main {
  min-width: 0;
  gap: 9px;
}
.dj-lara-widget .dj-lara-identity strong {
  font-size: 19px;
  line-height: 1.08;
}
.dj-lara-widget .dj-lara-identity span {
  color: #afbdce;
  font-size: 10px;
  line-height: 1.2;
  white-space: nowrap;
  letter-spacing: .02em;
  text-transform: none;
}
.dj-lara-widget .dj-lara-header-side {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  justify-content: center;
  gap: 6px;
  min-width: 0;
  max-width: min(34vw,150px);
}
.dj-lara-widget .dj-lara-header-side > .dj-lara-change-name {
  display: block;
  margin: 0;
  padding: 0;
  max-width: 100%;
  min-width: 24px;
  color: #fff;
  font-size: 11px;
  line-height: 1.25;
  font-weight: 750;
  text-align: right;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.dj-lara-widget .dj-lara-header-side .dj-lara-ai-admin,
.dj-lara-widget .dj-lara-header-side .dj-lara-ai-admin-active {
  display: block;
  margin: 0;
  padding: 0;
  min-width: 0;
  line-height: 1;
  background: transparent;
  border: 0;
  border-radius: 0;
}
.dj-lara-widget .dj-lara-header-side .dj-lara-ai-admin[hidden],
.dj-lara-widget .dj-lara-header-side .dj-lara-ai-admin-active[hidden] {
  display: none !important;
}
.dj-lara-widget .dj-lara-header-side .dj-lara-ai-admin-open,
.dj-lara-widget .dj-lara-header-side .dj-lara-admin-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 24px;
  margin: 0;
  padding: 4px 8px;
  border: 1px solid rgba(82,199,142,.45);
  border-radius: 8px;
  background: #123322;
  color: #83f2b2;
  text-decoration: none;
  text-shadow: none;
  font-size: 10px;
  font-weight: 800;
  line-height: 1.15;
  white-space: nowrap;
  cursor: pointer;
  box-shadow: none;
}
.dj-lara-widget .dj-lara-header-side .dj-lara-ai-admin {
  position: relative;
}
.dj-lara-widget .dj-lara-header-side .dj-lara-ai-admin-login {
  position: absolute;
  top: calc(100% + 8px);
  right: 0;
  z-index: 150;
  width: min(300px,calc(100vw - 38px));
  padding: 12px;
  background: #101c21;
  border: 1px solid rgba(80,223,164,.55);
  box-shadow: 0 18px 32px rgba(0,0,0,.67);
  border-radius: 12px;
  white-space: normal;
}
.dj-lara-widget .dj-lara-header-side .dj-lara-ai-admin-login[hidden] {
  display: none !important;
}
.dj-lara-widget .dj-lara-header-side .dj-lara-ai-admin-active {
  position: relative;
}
.dj-lara-widget .dj-lara-ai-admin-menu {
  position: absolute;
  z-index: 150;
  top: calc(100% + 8px);
  right: 0;
  width: 160px;
  padding: 11px;
  display: flex;
  flex-direction: column;
  gap: 10px;
  background: #14211f;
  border: 1px solid rgba(71,202,136,.48);
  border-radius: 12px;
  box-shadow: 0 14px 32px rgba(0,0,0,.65);
  color: #e8fff2;
  font-size: 11px;
  white-space: normal;
}
.dj-lara-widget .dj-lara-ai-admin-menu[hidden] {
  display: none !important;
}
.dj-lara-widget .dj-lara-ai-admin-menu #djLaraAdminLogout {
  width: 100%;
  min-height: 32px;
  color: #fff;
  font-weight: 750;
  background: #216443;
}
.dj-lara-widget .dj-lara-form {
  position: relative;
  padding: 10px 13px 20px !important;
}
.dj-lara-widget .dj-lara-quota-footer {
  display: none !important;
}
.dj-lara-widget .dj-lara-privacy-info {
  display: block;
  position: absolute;
  left: 14px;
  bottom: 3px;
  z-index: 12;
  width: 22px;
  margin: 0;
  padding: 0;
  color: #9faabd;
}
.dj-lara-widget .dj-lara-privacy-info summary {
  display: block;
  width: 21px;
  height: 17px;
  font-size: 14px;
  font-weight: 750;
  line-height: 17px;
  cursor: pointer;
  list-style: none;
  text-align: left;
}
.dj-lara-widget .dj-lara-privacy-info summary::-webkit-details-marker {
  display:none;
}
.dj-lara-widget .dj-lara-privacy-info summary:focus-visible {
  outline: 2px solid #64d6f5;
  border-radius: 4px;
}
.dj-lara-widget .dj-lara-privacy-info .dj-lara-ai-privacy {
  position: absolute;
  bottom: 24px;
  left: 0;
  z-index: 22;
  width: min(310px,calc(100vw - 45px));
  padding: 12px;
  margin: 0;
  border-radius: 10px;
  border: 1px solid rgba(142,180,212,.44);
  background: #161e2b;
  box-shadow: 0 18px 35px rgba(0,0,0,.75);
  color: #ecf1f9;
  font-size: 11px;
  line-height: 1.55;
  overflow-wrap: anywhere;
}
.dj-lara-widget .dj-lara-privacy-info:not([open]) .dj-lara-ai-privacy {
  display:none;
}
.dj-lara-widget .dj-lara-quota-progress {
  margin: 4px 0 0;
  padding: 0;
}
.dj-lara-widget .dj-lara-quota-progress-label {
  margin-bottom: 2px;
  font-size: 9px;
}
.dj-lara-widget .dj-lara-quota-progress-track {
  height: 5px;
}
.dj-lara-widget .dj-lara-messages {
  gap: 9px;
}
.dj-lara-widget .dj-lara-bubble {
  padding: 10px 12px 9px;
}
.dj-lara-widget .dj-lara-message-name {
  font-size: 10px;
  margin-bottom: 3px;
}
.dj-lara-widget .dj-lara-time {
  margin-top: 4px;
}
@media(max-width:640px) {
  .dj-lara-widget .dj-lara-header {
    display: grid !important;
    grid-template-columns: minmax(0,1fr) minmax(55px,max-content) 34px;
    padding: 10px 12px !important;
    column-gap: 7px;
  }
  .dj-lara-widget .dj-lara-header-side {
    max-width: min(34vw,126px);
  }
  .dj-lara-widget .dj-lara-header-main {
    min-width: 0;
  }
  .dj-lara-widget .dj-lara-identity strong { font-size: 18px; }
  .dj-lara-widget .dj-lara-identity span { font-size: 9px; }
  .dj-lara-widget .dj-lara-form { padding: 9px 13px 20px !important; }
}


/* DJ_PANEL_ONLINE_CLOCK_V1: compact timer beside the LIVE DJ name. */
.dj-lara-widget .dj-lara-title-line{display:flex;align-items:center;gap:8px;min-width:0;max-width:100%;flex-wrap:wrap}
.dj-lara-widget .dj-lara-title-line strong{flex:0 1 auto;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.dj-lara-widget .dj-lara-panel-online-clock{display:inline-flex;align-items:center;flex:0 0 auto;white-space:nowrap;padding:4px 7px;border-radius:8px;border:1px solid rgba(63,255,119,.35);background:rgba(63,255,119,.1);color:#9df7b2;font:800 11px/1.1 Arial,sans-serif;letter-spacing:.02em;font-variant-numeric:tabular-nums}
.dj-lara-widget .dj-lara-panel-online-clock[hidden]{display:none!important}
@media(max-width:640px){.dj-lara-widget .dj-lara-panel-online-clock{font-size:10px;padding:3px 5px}}

/* RAX_LIVE_DJ_AUTO_WELCOME_20261018: compact greeting beside the DJ photo. */
#djLaraLauncher .dj-lara-auto-welcome-teaser{
  position:absolute;right:calc(100% + 13px);bottom:9px;
  display:block;z-index:22;width:max-content;max-width:min(260px,calc(100vw - 120px));
  padding:11px 13px;border:1px solid rgba(63,255,119,.6);border-radius:14px 14px 5px 14px;
  color:#fff;background:rgba(11,24,32,.98);box-shadow:0 8px 26px rgba(0,0,0,.55),0 0 16px rgba(63,255,119,.16);
  font:700 12px/1.45 Arial,sans-serif;letter-spacing:0;text-transform:none;text-align:left;
  white-space:normal;overflow-wrap:anywhere;pointer-events:auto;cursor:pointer;
}
#djLaraLauncher .dj-lara-auto-welcome-teaser[hidden]{display:none!important}
#djLaraLauncher .dj-lara-auto-welcome-teaser:after{
  content:"";position:absolute;left:100%;bottom:15px;border:7px solid transparent;
  border-left-color:rgba(63,255,119,.55);border-right:0;
}
@media(max-width:640px){#djLaraLauncher .dj-lara-auto-welcome-teaser{max-width:min(215px,calc(100vw - 110px));font-size:11px;padding:9px 11px;bottom:15px}}

