/* Lee Abrams video stage: Able Player with the synced transcript beside it, and the transcript search (la-transcript.js). Ported from LeBatardAF lbaf-content. */
.la-stage { width: 100%; }
.la-stage--transcript { display: grid; grid-template-columns: minmax(0, 1.75fr) minmax(0, 1fr); gap: 20px; align-items: stretch; }
.la-stage .able-wrapper { margin: 0 !important; width: 100% !important; max-width: 100% !important; box-shadow: none; border: 0; }
.la-stage .able, .la-stage .able-player { border-radius: 4px 4px 0 0; overflow: hidden; }
.la-stage .able-player { background: #000; }
.la-stage .able-controller { background: var(--ds-color-console) !important; border-top: 0 !important; }
.la-stage .able-controller .able-button-handler, .la-stage .able-controller button, .la-stage .able-controller svg { color: var(--ds-color-tile) !important; fill: currentColor; }
.la-stage .able-controller button:hover, .la-stage .able-controller button:focus-visible { color: var(--ds-color-amber) !important; }
.la-stage .able-controller button:focus-visible { outline: 2px solid var(--ds-color-amber); outline-offset: 1px; }
.la-stage .able-seekbar { background: rgba(255, 255, 255, 0.22) !important; }
.la-stage .able-seekbar-played { background: var(--ds-color-amber) !important; }
.la-stage .able-seekbar-loaded { background: rgba(255, 255, 255, 0.35) !important; }
.la-stage .able-seekbar-head { background: var(--ds-color-paper) !important; border-color: var(--ds-color-amber) !important; }
.la-stage .able-status-bar { background: var(--ds-color-console) !important; color: var(--ds-color-on-console-soft) !important; border-radius: 0 0 4px 4px; }
.la-stage .able-status-bar * { color: inherit !important; }
.la-stage__transcript { position: relative; min-height: 0; }
.la-stage__transcript .la-tr { position: absolute; inset: 0; display: flex; flex-direction: column; background: var(--ds-color-paper); color: var(--ds-color-console); border-radius: 10px; overflow: hidden; }
.la-tr .able-transcript-area, .la-tr .able-window-toolbar, .la-tr .able-transcript { position: static !important; width: auto !important; height: auto !important; box-shadow: none !important; border: 0 !important; margin: 0 !important; }
.la-tr .able-transcript-area { display: flex !important; flex-direction: column; flex: 1 1 auto; min-height: 0; background: transparent !important; }
.la-tr .able-window-toolbar { display: flex; align-items: center; justify-content: space-between; gap: 10px; padding: 10px 16px !important; background: var(--ds-color-greenbar) !important; color: var(--ds-color-console) !important; font-size: 14px; border-bottom: 2px solid var(--ds-color-console) !important; }
.la-tr .able-window-toolbar label { color: var(--ds-color-console) !important; font-weight: 700; margin: 0; }
.la-tr .autoscroll-transcript { display: flex !important; align-items: center; gap: 8px; float: none !important; margin: 0 !important; }
.la-tr .autoscroll-transcript input { width: 18px; height: 18px; margin: 0 !important; accent-color: var(--ds-color-console); }
.la-tr .transcript-language-select-wrapper { float: none !important; margin: 0 !important; }
.la-tr .able-window-toolbar select { font-size: 14px; }
.la-tr .able-window-toolbar .able-button-handler-preferences { display: none !important; }
.la-tr .able-transcript { flex: 1 1 auto; overflow-y: auto !important; padding: 16px 20px 24px !important; font-family: var(--ds-font-body); font-size: 17px; line-height: 1.75; background: var(--ds-color-paper) !important; color: var(--ds-color-console) !important; overscroll-behavior: contain; }
.la-tr .able-transcript h2, .la-tr .able-transcript .able-transcript-heading { font-family: var(--ds-font-display); font-weight: 400; font-size: 22px; margin: 0 0 8px; color: var(--ds-color-console); }
.la-tr .able-transcript-seekpoint { cursor: pointer; border-radius: 0.35em 0.2em; padding: 0.05em 0.1em; margin: 0 -0.1em; -webkit-box-decoration-break: clone; box-decoration-break: clone; }
.la-tr .able-transcript-seekpoint:hover { background: var(--ds-color-greenbar); }
.la-tr .able-transcript-seekpoint:focus-visible { outline: 2px solid var(--ds-color-onair); outline-offset: 1px; }
/* the highlighter: the live line gets a marker swipe with soft, uneven ends */
.la-tr .able-highlight, .la-tr .able-transcript-seekpoint.able-highlight { background: linear-gradient(100deg, rgba(242, 181, 68, 0) 0%, rgba(242, 181, 68, 0.85) 3%, var(--ds-color-amber) 12%, var(--ds-color-amber) 90%, rgba(242, 181, 68, 0.75) 97%, rgba(242, 181, 68, 0) 100%) !important; color: var(--ds-color-console) !important; }
.la-tr .la-tr-turn::before, .la-tr .la-tr-para::before { content: ""; display: block; height: 0.85em; }
.la-tr .able-unspoken { color: var(--ds-color-walnut); font-style: italic; }
@media (max-width: 900px) {
  .la-stage--transcript { grid-template-columns: minmax(0, 1fr); gap: 14px; }
  .la-stage__transcript { height: 46vh; min-height: 280px; }
}
.la-audio .able-wrapper { margin: 0 !important; width: 100% !important; max-width: 100% !important; box-shadow: none; border: 0; }
.la-audio .able-controller, .la-audio .able-status-bar { background: var(--ds-color-console) !important; color: var(--ds-color-tile) !important; border: 0 !important; }
.la-audio .able-controller { border-radius: 4px 4px 0 0; }
.la-audio .able-status-bar { border-radius: 0 0 4px 4px; }
/* LA transcript search: form in Able Player's toolbar beside "Auto scroll", results between the toolbar and the transcript (la-transcript.js). */
.la-sr { position: absolute !important; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }
.la-tr .able-window-toolbar { flex-wrap: nowrap; }
.la-tr .autoscroll-transcript { flex: 0 0 auto; }
.la-tr-search { order: 4; flex: 0 1 260px; min-width: 0; display: flex; gap: 6px; margin: 0 0 0 auto; } /* Able Player puts "Auto scroll" at order 3 */
.la-tr-search input[type="search"] { flex: 1 1 auto; min-width: 0; width: 100%; height: 32px; margin: 0; padding: 0 10px; font: inherit; font-size: 16px; color: var(--ds-color-console, #2b3a36); background: #fff; border: 2px solid var(--ds-color-console, #2b3a36); border-radius: 4px; box-shadow: none; }
.la-tr-search input[type="search"]:focus-visible { outline: 2px solid var(--ds-color-onair, #b8341f); outline-offset: 1px; }
.la-tr-search button[type="submit"] { flex: 0 0 auto; height: 32px; margin: 0; padding: 0 12px; font: inherit; font-size: 14px; font-weight: 700; line-height: 1; color: var(--ds-color-console, #2b3a36); background: var(--ds-color-amber, #f2b544); border: 2px solid var(--ds-color-console, #2b3a36); border-radius: 4px; cursor: pointer; }
.la-tr-search button[type="submit"]:hover { background: var(--ds-color-console, #2b3a36); color: var(--ds-color-amber, #f2b544); }
.la-tr-search button[type="submit"]:focus-visible { outline: 2px solid var(--ds-color-onair, #b8341f); outline-offset: 2px; }
.la-tr-results { flex: 0 0 auto; max-height: 55%; display: none; flex-direction: column; padding: 8px 16px 10px; background: var(--ds-color-paper, #f8f8f5); border-bottom: 1px solid rgba(43, 58, 54, 0.14); }
.la-tr-results.is-open { display: flex; }
.la-tr-search__sum { flex: 0 0 auto; margin: 0; font-size: 14px; line-height: 1.4; color: var(--ds-color-walnut, #6b4429); }
.la-tr-search__list:empty { display: none; }
.la-tr-search__list { flex: 0 1 auto; min-height: 0; list-style: none; margin: 8px 0 0; padding: 0; overflow-y: auto; overscroll-behavior: contain; border-top: 1px solid rgba(43, 58, 54, 0.1); }
.la-tr-search__list li { margin: 0; padding: 0; border-bottom: 1px solid rgba(43, 58, 54, 0.1); }
.la-tr-search__list button { display: flex; gap: 12px; align-items: baseline; width: 100%; margin: 0; padding: 8px 4px; font: inherit; font-size: 14px; line-height: 1.45; text-align: left; color: var(--ds-color-console, #2b3a36); background: transparent; border: 0; border-radius: 0; cursor: pointer; }
.la-tr-search__list button:hover { background: var(--ds-color-greenbar, #e1e6de); }
.la-tr-search__list button:focus-visible { outline: 2px solid var(--ds-color-onair, #b8341f); outline-offset: -2px; }
.la-tr-search__time { flex: 0 0 auto; min-width: 4.2em; font-weight: 700; font-variant-numeric: tabular-nums; color: var(--ds-color-onair, #b8341f); }
.la-tr-search__text { flex: 1 1 auto; min-width: 0; }
.la-tr-results mark { background: var(--ds-color-amber, #f2b544); color: inherit; padding: 0 1px; }
.la-tr .la-tr-hit { text-decoration: underline; text-decoration-color: var(--ds-color-amber, #f2b544); text-decoration-thickness: 3px; text-underline-offset: 3px; }
.la-tr .able-transcript-area .able-transcript { flex: 1 1 0; min-height: 0; } /* the transcript takes what the search results leave */

.la-stage__transcript { display: flex; flex-direction: column; }
.la-stage__label { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); margin: -1px; }
