/* talk.css: the in-page slide player used on /speaking. */
.talk { display: flex; flex-direction: column; gap: var(--space-4, 16px); }
.talk-frame { position: relative; width: 100%; aspect-ratio: 16 / 9; background: #0d0b14; border-radius: var(--radius-lg, 18px); overflow: hidden; box-shadow: var(--shadow-lg, 0 24px 56px rgba(0,0,0,.18)); }
.talk-frame .talk-stage { position: absolute; left: 0; top: 0; width: 1920px; height: 1080px; border: 0; transform-origin: 0 0; background: #0d0b14; }
.talk-frame:fullscreen { border-radius: 0; aspect-ratio: auto; width: 100vw; height: 100vh; background: #000; box-shadow: none; }
.talk-frame:-webkit-full-screen { border-radius: 0; width: 100vw; height: 100vh; background: #000; }
.talk-lock { position: absolute; right: 14px; top: 14px; display: inline-flex; align-items: center; gap: 8px; background: rgba(13, 11, 20, .88); color: #f3f1f8; border: 1px solid rgba(53, 224, 207, .55); border-radius: 999px; padding: 7px 14px; font-size: 13px; font-weight: 600; letter-spacing: .01em; pointer-events: none; }
.talk-lock svg { width: 14px; height: 14px; }
.talk-lock[hidden] { display: none; }
.talk-bar { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; }
.talk-bar[hidden], .talk-tools[hidden], .talk-gate[hidden] { display: none; }
.talk-count { font-variant-numeric: tabular-nums; min-width: 5.5em; text-align: center; font-weight: 600; }
.talk-mark { margin-left: auto; font-size: var(--text-sm, 14px); color: var(--color-text-muted, #57564c); }
.talk-tools { display: flex; flex-wrap: wrap; align-items: end; gap: 12px; padding: var(--space-4, 16px); border: 1px dashed var(--color-border, #d9d6cd); border-radius: var(--radius-md, 10px); }
.talk-tools .form-field { flex: 1 1 320px; margin: 0; }
.talk-tools .hint { display: block; font-size: var(--text-xs, 12px); color: var(--color-text-muted, #57564c); margin-top: 4px; }
.talk-gate .handoff-fields { margin-top: var(--space-4, 16px); }
.talk-keys { font-size: var(--text-xs, 12px); color: var(--color-text-muted, #57564c); }
@media (max-width: 640px) { .talk-mark { margin-left: 0; width: 100%; } .talk-lock { display: none; } }
