.motion-guide__send { display: grid; gap: 12px; padding: 20px 0; }
.motion-guide__send textarea { width: 100%; min-height: 95px; padding: 12px; }
.motion-guide__send select { max-width: 180px; }
.motion-guide__actor { display: flex; align-items: center; flex-wrap: wrap; gap: 12px; padding: 16px; border: 1px solid var(--line); border-radius: 8px; background: var(--canvas); }
.motion-guide__actor img { width: 56px; height: 56px; object-fit: contain; border-radius: 6px; }
.motion-guide__actor > div { flex: 1; min-width: min(180px, 100%); overflow-wrap: anywhere; }
.motion-guide__actor strong { font-size: 14px; }
.motion-guide__actor p { margin: 4px 0 0; }

/* A video request, followed on the video step as generation panels show one (its texts scoped to the panel, above the guide's paragraph style): where it stands and what was chosen,
   its state in a line, what it needs (answers, a price), and the actions — the cancelling first, the step forward last. */
.video-request__status { display: grid; gap: 16px; font-size: 14px; }
.video-request__progress { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 8px 16px; padding-bottom: 16px; border-bottom: 1px solid var(--line); }
.video-request__status .video-request__choice { margin: 0; color: var(--muted); font-size: 13px; font-variant-numeric: tabular-nums; }
.video-request__state { display: grid; grid-template-columns: 22px minmax(0, 1fr); gap: 12px; align-items: start; }
.video-request__state h4 { margin: 0; font-size: 15px; font-weight: 600; line-height: 22px; }
.video-request__status .video-request__state p { margin: 2px 0 0; color: var(--muted); font-size: 13px; line-height: 20px; overflow-wrap: anywhere; }
.video-request__icon { display: grid; place-items: center; width: 22px; height: 22px; border-radius: 50%; font-size: 12px; font-weight: 700; line-height: 1; }
.is-neutral > .video-request__icon { border: 2px solid var(--line); }
.is-question > .video-request__icon { background: var(--accent); color: var(--accent-ink); }
.is-question > .video-request__icon::before { content: "?"; }
.is-error > .video-request__icon { background: #fceceb; color: var(--danger); }
.is-warning > .video-request__icon { background: #fff2d6; color: var(--warning); }
.is-error > .video-request__icon::before, .is-warning > .video-request__icon::before { content: "!"; }
/* A wait turns: a small spinner in the icon's place. */
.is-working > .video-request__icon { width: 18px; height: 18px; margin: 2px; border: 2px solid var(--line); border-top-color: var(--ink); animation: viewer-spin .8s linear infinite; }
@media (prefers-reduced-motion: reduce) { .is-working > .video-request__icon { animation-duration: 3s; } }
/* The questions, numbered, each on its own tinted row; the answer under them. */
.video-request__questions { display: grid; gap: 8px; margin: 0 0 0 34px; padding: 0; list-style: none; counter-reset: video-question; }
.video-request__questions li { display: grid; grid-template-columns: 22px minmax(0, 1fr); gap: 10px; padding: 11px 14px; border-radius: 8px; background: var(--canvas); line-height: 22px; overflow-wrap: anywhere; counter-increment: video-question; }
.video-request__questions li::before { content: counter(video-question); display: grid; place-items: center; width: 22px; height: 22px; border: 1px solid var(--line); border-radius: 50%; background: var(--surface); color: var(--muted); font-size: 11px; font-weight: 600; }
.video-request__answer { display: grid; gap: 0; margin-left: 34px; }
.video-request__answer .field__input { min-height: 92px; padding: 10px 12px; font: inherit; line-height: 22px; resize: vertical; }
/* The price, large, and the wallet under it. */
.video-request__offer { display: grid; gap: 2px; }
.video-request__status .video-request__price { margin: 0; color: var(--ink); font-size: 28px; font-weight: 600; line-height: 34px; font-variant-numeric: tabular-nums; }
.video-request__status .video-request__wallet { margin: 0; color: var(--muted); font-size: 13px; }
.video-request__status .video-request__wallet.is-short { color: var(--danger); }
.video-request__status .video-request__note { margin: 0; color: var(--muted); font-size: 13px; line-height: 20px; }
.video-request__state + .video-request__note { margin-left: 34px; } /* a word more on the state, under its title */
.video-request__player { display: block; width: 100%; max-height: 65vh; background: #10150e; border-radius: 12px; }
.video-request__actions { display: flex; flex-wrap: wrap; align-items: center; justify-content: flex-end; gap: 8px; padding-top: 16px; border-top: 1px solid var(--line); }
.video-request__cancel { margin-right: auto; }
@media (max-width: 767px) {
  .video-request__questions, .video-request__answer, .video-request__state + .video-request__note { margin-left: 0; }
  .video-request__actions .button:not(.video-request__cancel) { flex: 1 1 auto; }
}
