.talk-back{--success:#2d8a5c;--inset:color-mix(in srgb, var(--border) 35%, var(--bg));flex-direction:column;align-items:center;gap:1.75rem;width:100%;display:flex}.talk-back .page-intro,.talk-back .lang-selector{align-self:stretch}.talk-back .video-area{flex-wrap:wrap;justify-content:center;gap:1.25rem;width:100%;display:flex}.talk-back .video-wrapper{aspect-ratio:16/9;border-radius:var(--radius);border:1px solid var(--border);background:#000;width:100%;max-width:36rem;transition:opacity .25s,transform .25s;position:relative;overflow:hidden}.talk-back .video-wrapper.hidden{display:none}.talk-back video{object-fit:cover;width:100%;height:100%;display:block;transform:scaleX(-1)}.talk-back .video-label{font-size:var(--text-xs);letter-spacing:.08em;color:#ffffff80;text-transform:uppercase;pointer-events:none;font-weight:700;position:absolute;bottom:.625rem;left:.875rem}.talk-back .rec-badge{font-size:var(--text-xs);letter-spacing:.08em;color:var(--accent);opacity:0;pointer-events:none;font-weight:700;transition:opacity .2s;position:absolute;top:.75rem;right:.875rem}.talk-back .rec-badge.active{opacity:1;animation:1.1s step-start infinite talk-back-blink}@keyframes talk-back-blink{50%{opacity:0}}.talk-back .controls{flex-wrap:wrap;justify-content:center;gap:.875rem;display:flex}.talk-back .controls .btn{margin:0}.talk-back .btn-ptt{user-select:none}.talk-back .btn-ptt:not(:disabled):hover{background:var(--bg-elevated);border-color:color-mix(in srgb, var(--border) 60%, var(--text))}.talk-back .btn-ptt--active,.talk-back .btn-ptt--active:hover{color:#fff;background:var(--accent)!important;border-color:var(--accent)!important}.talk-back .btn-icon{font-size:1rem;line-height:1}.talk-back .status{font-size:var(--text-xs);color:var(--text-muted);text-align:center;min-height:1.2em;margin:0}.talk-back .hint{color:var(--text-muted);text-align:center;opacity:.85;min-height:1em;margin:0;font-size:.75rem}.talk-back .lang-selector{align-items:center;gap:.75rem;display:flex}.talk-back .lang-label{letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);font-size:.75rem;font-weight:600}.talk-back .lang-group{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius);gap:2px;padding:1rem;display:flex}.talk-back .lang-btn{color:var(--text-muted);font-size:var(--text-xs);cursor:pointer;background:0 0;border:none;border-radius:4px;padding:1rem;font-weight:600;transition:background .15s,color .15s}.talk-back .lang-btn:hover{background:var(--inset);color:var(--text)}.talk-back .lang-btn--active{background:var(--accent-hover);color:#fff}.talk-back .transcript-panel{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius);width:100%;max-width:36rem;overflow:hidden}.talk-back .transcript-header{border-bottom:1px solid var(--border);align-items:center;gap:.625rem;padding:1rem;display:flex}.talk-back .transcript-title{letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);flex:1;font-size:.75rem;font-weight:600}.talk-back .wpm-display{font-family:var(--font-mono);letter-spacing:.08em;color:var(--text-muted);background:var(--bg);border:1px solid var(--border);border-radius:var(--radius);text-align:center;visibility:hidden;min-width:4.5em;padding:1rem;font-size:.75rem;font-weight:600;transition:color .3s,border-color .3s}.talk-back .wpm-display.active{visibility:visible;color:var(--success);border-color:color-mix(in srgb, var(--success) 40%, var(--border))}.talk-back .speech-indicator{letter-spacing:.08em;color:var(--success);min-width:1em;font-size:.75rem;font-weight:600}.talk-back .speech-indicator.active:before{content:"● LIVE";animation:1.4s step-start infinite talk-back-blink}.talk-back .speech-indicator.unsupported{color:var(--text-muted)}.talk-back .speech-indicator.unsupported:before{content:"Unavailable — use Chrome";opacity:1;animation:none}.talk-back .transcript-body{min-height:80px;max-height:180px;padding:1rem;overflow-y:auto}.talk-back .transcript-placeholder{color:var(--text-muted);font-size:var(--text-xs);margin:0;font-style:italic}.talk-back .transcript-text{font-size:var(--text-base);color:var(--text);word-break:break-word;margin:0;line-height:1}.talk-back .transcript-text .final{color:var(--text)}.talk-back .transcript-text .interim{color:var(--text-muted);font-style:italic}@media (prefers-reduced-motion:reduce){.talk-back .rec-badge.active,.talk-back .speech-indicator.active:before{animation:none}}
