/* Universal invocation: the mark keeps its folded corner; the control is a pill. */
.invocation-pill,
.stage.ai-output .story .invocation-pill {
  display:inline-flex;align-items:center;justify-content:center;gap:0;
  width:auto;max-width:100%;min-height:54px;padding:10px 24px 10px 16px;
  border:1px solid #ffffff55;border-radius:999px;
  background:#141513;color:#fff;box-shadow:0 4px 12px #0003;
  text-decoration:none;cursor:pointer;transition:border-color .3s,box-shadow .3s,transform .2s;
}
.invocation-pill::after,.invocation-pill::before { display:none!important; }
.invocation-pill > img { display:block;width:30px;height:34px;object-fit:contain;margin:0 8px 0 0; }
.invocation-pill > b,.invocation-pill > strong {
  display:block;border:0;padding-left:0;
  font:700 1rem/1.2 Arial,sans-serif;letter-spacing:.08em;white-space:nowrap;color:inherit;
}
.story .invocation-pill { margin-top:12px; }
.invocation-question { display:block;margin-top:28px;color:#f4efe7;font:700 .75rem/1.4 Arial,sans-serif;letter-spacing:.08em; }
.stage.moment-ready .invocation-pill { border-color:#ff4b18;box-shadow:0 3px 0 #7b260e,0 8px 28px #ff4b182b; }
.stage.is-pro.moment-ready .invocation-pill { border-color:#a78bfa;box-shadow:0 3px 0 #442466,0 8px 28px #a78bfa29; }
.invocation-pill:hover { transform:translateY(-2px);border-color:#ff4b18; }
.invocation-pill:active { transform:translateY(2px);box-shadow:none; }
.invocation-pill:focus-visible { outline:3px solid #ff8b69;outline-offset:4px; }
.stage.moment-ready:not(.working) .story .invocation-pill {
  border-color:#ff6938;background:#26150f;
  box-shadow:0 4px 0 #913115,0 0 0 2px #ff4b1860,0 10px 40px #ff4b1860;
  animation:invocation-emphasis 2.8s ease-in-out 2;
}
@keyframes invocation-emphasis {
  0%,100% { transform:translateY(0) scale(1); }
  50% { transform:translateY(-3px) scale(1.045);box-shadow:0 6px 0 #913115,0 0 0 6px #ff4b1820,0 14px 50px #ff4b1890; }
}
@media(prefers-reduced-motion:reduce) {
  .stage.moment-ready:not(.working) .story .invocation-pill { animation:none; }
}
.live-squire-link.invocation-pill { min-height:42px;padding:7px 16px; }
.live-squire-link.invocation-pill img { width:23px;height:26px; }
.live-squire-link.invocation-pill b { font-size:.8rem; }
.receipt-live-cta.invocation-pill,.capture-submit.invocation-pill { margin-top:20px;background:#ff4b18;border-color:#ff4b18;color:#fff; }
@media(max-width:760px) { .invocation-question { margin-top:14px; }.stage.ai-output .story .invocation-pill { margin-top:10px; } }

/* The extension action belongs to the viewport, never the filmed device. */
.floating-invocation {
  position:relative;z-index:5;margin-top:20px;align-self:flex-start;
  opacity:0;visibility:hidden;pointer-events:none;transform:translateY(-8px);
  transition:opacity .4s ease,transform .4s ease,visibility .4s;
}
.stage.moment-ready:not(.working) .floating-invocation {
  opacity:1;visibility:visible;pointer-events:auto;transform:none;
}
.stage.moment-ready:not(.working) .floating-invocation .invocation-pill {
  border-color:#ff6938;background:#26150f;
  box-shadow:0 4px 0 #913115,0 0 0 2px #ff4b1860,0 10px 40px #ff4b1860;
  animation:invocation-emphasis 2.8s .4s ease-in-out 1;
}
.stage.ai-output .ai-conversation { top:190px; }
/* Keep live capture available without a second branded scene button. */
.demo-nav .live-squire-link.invocation-pill { background:transparent;border:0;box-shadow:none;padding:8px; }
.demo-nav .live-squire-link.invocation-pill img { display:none; }
.demo-nav .live-squire-link.invocation-pill b { font-size:.75rem;letter-spacing:.03em;text-transform:none; }
@media(max-width:760px) { .floating-invocation { margin-top:16px; } }
@media(prefers-reduced-motion:reduce) {
  .floating-invocation { transition:none; }
  .stage.moment-ready:not(.working) .floating-invocation .invocation-pill { animation:none; }
}
