/* kit/preload.css: the loading system's visible rules (6 Nov 2026; kit/preload.js, kit/README.md "The loading system").
   html.kit-warmup is set by preload.js, so with JavaScript off nothing here applies and every stage shows as authored.
   1. A stage's composition shows only once its first frame is drawn (is-warm, from LUMEN through kit.preload.mark), with a short
      graceful fade; warm-ahead makes that happen off screen, so a reader never sees a blank or half-drawn stage.
   2. Present mode's ready signal: the PRESENT tag's dot is amber while the talk warms and turns green when every shot is warm
      (html[data-talk-ready]); it lifts out of its dimmed state for a moment when that happens. Never red (the kit forbids it). */
html.kit-warmup section.o-shot .o-shot__stage > [data-composition-id]{opacity:0;transition:opacity .42s cubic-bezier(.2,.6,.2,1)}
html.kit-warmup section.o-shot .o-shot__stage.is-warm > [data-composition-id]{opacity:1}

html.is-present [data-present-tag] > span[aria-hidden="true"]{background:#e2b75c !important;box-shadow:0 0 8px rgba(226,183,92,.55)}
html.is-present[data-talk-ready] [data-present-tag] > span[aria-hidden="true"]{background:#7fd1a3 !important;box-shadow:0 0 9px rgba(127,209,163,.6);transition:background-color .9s ease,box-shadow .9s ease}
html.is-present[data-talk-just-ready] [data-present-tag].is-dim{opacity:.85}

@media (prefers-reduced-motion: reduce){
  html.kit-warmup section.o-shot .o-shot__stage > [data-composition-id]{transition:none}
}
