@layer features {
html.lumi-overlay-runtime-page,
body.lumi-overlay-runtime-page {
  width: 100%;
  height: 100%;
  margin: 0;
  overflow: hidden;
  background-color: rgba(0, 0, 0, 0) !important;
}

body.lumi-overlay-runtime-page {
  font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

#lumi-overlay-root {
  position: fixed;
  inset: 0;
  overflow: hidden;
  pointer-events: none;
}

.lumi-overlay-stage {
  position: absolute;
  left: 0;
  top: 0;
  overflow: hidden;
  background-color: rgba(0, 0, 0, 0);
  transform-origin: 0 0;
}

.lumi-overlay-module {
  position: absolute;
  box-sizing: border-box;
  overflow: hidden;
  transform: translateZ(0);
}

.lumi-overlay-text {
  display: flex;
  line-height: 1.15;
}

.lumi-overlay-text-content {
  max-width: 100%;
  max-height: 100%;
}

.lumi-overlay-text.is-selected .lumi-overlay-text-content {
  overflow: hidden;
}

.lumi-overlay-text.overflow-wrap .lumi-overlay-text-content,
.lumi-overlay-text.overflow-shrink .lumi-overlay-text-content,
.lumi-overlay-text.overflow-clip .lumi-overlay-text-content {
  white-space: pre-wrap;
  overflow-wrap: anywhere;
}

.lumi-overlay-text.overflow-single-line .lumi-overlay-text-content,
.lumi-overlay-text.overflow-scroll .lumi-overlay-text-content {
  white-space: nowrap;
}

.lumi-overlay-text.overflow-scroll .lumi-overlay-text-content {
  min-width: max-content;
  animation: lumi-overlay-scroll 12s linear infinite;
}

@keyframes lumi-overlay-scroll {
  from { transform: translateX(100%); }
  to { transform: translateX(-100%); }
}

.lumi-overlay-image,
.lumi-overlay-video,
.lumi-overlay-web-root,
.lumi-overlay-chat-root {
  width: 100%;
  height: 100%;
  display: block;
  border: 0;
  background: transparent;
}

.lumi-overlay-audio {
  width: 100%;
  min-height: 3rem;
}

.lumi-overlay-audio-placeholder {
  position: absolute;
  inset: 0;
  display: grid;
  place-items: center;
  border: 1px dashed rgba(255,255,255,0.55);
  background: rgba(15,23,42,0.72);
  color: #fff;
  font: 700 0.9rem/1.2 system-ui, sans-serif;
  pointer-events: none;
}
}
