/* V2.9 additions only. Existing figure elements keep their grid rows and order. */
.v2 .live-action-button { display: inline-flex; align-items: center; justify-content: center; gap: 9px; background: var(--blue); color: #fff; border: 0; border-radius: 9999px; min-height: 44px; padding: 12px 24px; font: 700 14px/1.3 Arial, Helvetica, sans-serif; white-space: nowrap; cursor: pointer; }
.live-action-button svg { width: 14px; height: 14px; flex: 0 0 14px; fill: currentColor; }
.live-action-button:hover { filter: brightness(.94); }
.live-action-button:focus-visible { outline: 3px solid #eea900; outline-offset: 5px; }
.live-action-workflow { display: flex; justify-content: center; padding: 36px 20px 40px; }
.site.v2 #stage-tools > figure.reference-art.live-action-figure { aspect-ratio: auto; display: block; }
.live-action-image-frame { width: 100%; aspect-ratio: 3 / 2; display: grid; place-items: center; }
.site.v2 #stage-tools .live-action-image-frame > img { display: block; width: 100%; height: 100%; min-height: 0; object-fit: contain; }
.live-action-caption { display: flex; justify-content: center; margin-top: 24px; }
.live-action-sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; clip-path: inset(50%); overflow: hidden; white-space: nowrap; }
.v2 .live-action-dialog { position: fixed; width: min(94vw, 1200px); max-width: none; max-height: calc(100dvh - 24px); overflow: auto; overscroll-behavior: contain; margin: auto; padding: 24px; border: 1px solid #dce6f1; border-radius: 18px; background: #fff; color: var(--navy); box-shadow: 0 20px 80px #07162f60; font: 16px/1.5 Arial, Helvetica, sans-serif; }
.live-action-dialog::backdrop { background: #071427c9; backdrop-filter: blur(3px); }
.v2 .live-action-dialog h2 { padding-right: 52px; margin: 0 0 24px; font-size: 26px; line-height: 1.25; font-weight: 400; letter-spacing: -.025em; }
.live-action-close { position: absolute; top: 14px; right: 14px; width: 44px; height: 44px; display: grid; place-items: center; border: 0; border-radius: 50%; background: #eef5fc; color: var(--navy); font: 28px/1 Arial, Helvetica, sans-serif; cursor: pointer; }
.live-action-screen { width: 100%; aspect-ratio: 16 / 9; background: #0e2440; color: #fff; border-radius: 10px; overflow: hidden; display: grid; place-items: center; }
.live-action-state { padding: 24px; text-align: center; }
.v2 .live-action-state h3 { font-size: clamp(27px,3vw,42px); line-height: 1.2; font-weight: 400; letter-spacing: -.025em; }
.v2 .live-action-state p { margin: 18px auto 0; max-width: 42ch; font: 16px/1.6 Arial, Helvetica, sans-serif; color: #d6e4f5; }
.live-action-screen video { width: 100%; height: 100%; min-height: 0; object-fit: contain; display: block; background: #000; }
.live-action-screen video:focus-visible { outline: 3px solid #eea900; outline-offset: -4px; }
@media (max-width: 540px) {
 .v2 .live-action-dialog { padding: 16px; border-radius: 14px; }
 .v2 .live-action-dialog h2 { font-size: 21px; padding-right: 44px; margin-bottom: 20px; }
 .live-action-close { top: 10px; right: 10px; }
 .live-action-state { padding: 12px; }
 .v2 .live-action-state h3 { font-size: 26px; }
 .v2 .live-action-state p { font-size: 14px; line-height: 1.45; margin-top: 12px; }
}
