/* V1.128 — control and prediction requests own one target-bound lifecycle. */
body[data-control-decision-lifecycle="pending"] #controlDialog[data-control-decision="pending"] {
  isolation: isolate;
}

body[data-control-decision-lifecycle="pending"] #controlDialog [data-control-decision-pending="true"] {
  box-shadow:
    inset 0 0 24px color-mix(in srgb, currentColor 15%, transparent),
    0 18px 38px rgba(0, 0, 0, 0.42),
    0 0 28px color-mix(in srgb, currentColor 23%, transparent);
}

body[data-control-decision-lifecycle="success"] #controlDialog,
body[data-control-decision-lifecycle="error"] #controlDialog {
  transition: filter 120ms ease, opacity 120ms ease;
}

body[data-control-decision-lifecycle="cancelled"] #controlDialog [data-control-decision-pending="true"] {
  box-shadow: none !important;
  filter: none !important;
}

@media (prefers-reduced-motion: reduce) {
  body[data-control-decision-lifecycle] :is(#controlDialog, [data-control-action]) {
    transition: none !important;
  }
}

@media (forced-colors: active) {
  body[data-control-decision-lifecycle="pending"] #controlDialog [data-control-decision-pending="true"] {
    outline: 2px solid Highlight;
    outline-offset: 2px;
  }
}
