/* ------------------------------------------------------------------
   Video accessibility provision (STQC / GIGW)
   Text alternative (transcript + description) shown under each inline
   video player. Uses the native <details>/<summary> disclosure so it
   is keyboard-accessible and needs no JavaScript (CSP-nonce safe).
   Colours follow the active theme via var(--nav-bg, …) — never hard
   hex, so contrast fixes track the selected theme.
------------------------------------------------------------------ */

.video-a11y {
    margin-top: .5rem;
    text-align: left;
    font-size: .9rem;
}

.video-a11y > summary {
    cursor: pointer;
    font-weight: 600;
    color: var(--nav-bg, #095a6f);
    padding: .35rem .25rem;
}

.video-a11y > summary:focus-visible {
    outline: 2px solid var(--nav-bg, #095a6f);
    outline-offset: 2px;
    border-radius: 4px;
}

.video-a11y .video-a11y-body {
    padding: .5rem .75rem;
    margin-top: .25rem;
    background: rgba(0, 0, 0, .03);
    border-left: 3px solid var(--nav-bg, #095a6f);
    border-radius: 0 6px 6px 0;
    line-height: 1.5;
}

.video-a11y .video-a11y-label {
    display: block;
    font-weight: 600;
    margin-bottom: .15rem;
}

.video-a11y .video-a11y-desc {
    margin-bottom: .6rem;
}

.video-a11y .video-a11y-transcript {
    /* No white-space:pre-wrap — it preserved the Razor source's newlines and
       indentation, rendering blank lines above "Transcript" and a stray indent
       on the text. The transcript is a single sentence, so let whitespace
       collapse normally to keep the spacing tight. */
    margin-bottom: 0;
}

.video-a11y .video-a11y-muted {
    color: #555;
    font-style: italic;
    margin-bottom: 0;
}
