:root {
  --chatoame-focus-ring: 0 0 0 3px rgba(32, 102, 181, .28);
  --chatoame-runtime-muted: #526173;
}
[data-chatoame-demand-loaded="1"] { contain: style; }
.chatoame-runtime-status[hidden] { display: none !important; }
.chatoame-runtime-status {
  margin: .65rem 0;
  padding: .65rem .8rem;
  border: 1px solid #cbd5e1;
  border-radius: .7rem;
  color: var(--chatoame-runtime-muted);
  background: #f8fafc;
  font: 500 .875rem/1.4 system-ui, sans-serif;
}
[data-chatoame-load-asset]:focus-visible,
[data-chatoame-export-kind]:focus-visible { outline: 0; box-shadow: var(--chatoame-focus-ring); }
@media print {
  .chatoame-no-export,
  .chatoame-runtime-status { display: none !important; }
}

.chatoame-runtime-progress {
  display: flex;
  align-items: center;
  gap: .55rem;
  max-width: min(42rem, calc(100% - 1rem));
  margin-left: auto;
  margin-right: auto;
}
.chatoame-runtime-progress__pulse {
  width: .65rem;
  height: .65rem;
  flex: 0 0 .65rem;
  border-radius: 999px;
  background: currentColor;
  opacity: .45;
  animation: chatoame-runtime-pulse 1.25s ease-in-out infinite;
}
@keyframes chatoame-runtime-pulse {
  0%, 100% { transform: scale(.72); opacity: .32; }
  50% { transform: scale(1); opacity: .72; }
}
@media (prefers-reduced-motion: reduce) {
  .chatoame-runtime-progress__pulse { animation: none; }
}
