/* A stable caption rail keeps speech legible without covering the artwork.
   Its marker lets the controller leave native captions alone if this CSS fails. */
#story-panel .story-caption-rail{--sg-caption-rail-ready:1;min-block-size:112px;display:grid;align-content:center;padding:16px 20px;margin:0;background:#101510;border-top:1px solid #626e59;color:#f3f0e7}
#story-panel .story-caption-rail p{margin:0;max-inline-size:78ch;color:#f3f0e7;font:500 18px/1.6 var(--sans,Arial,sans-serif);letter-spacing:0;white-space:normal;overflow-wrap:anywhere}
#story-panel .story-captions-control-slot{display:inline-flex;min-inline-size:112px;min-block-size:44px;flex:0 0 112px}
#story-panel #story-captions-toggle{inline-size:100%;margin:0}
#story-panel #story-captions-toggle[hidden]{display:none!important}
#story-panel #story-captions-toggle[aria-pressed="false"]{border-color:#8a947f;background:transparent}
#story-panel .story-caption-rail[data-captions-state="off"] p,
#story-panel .story-caption-rail[data-captions-state="idle"] p,
#story-panel .story-caption-rail[data-captions-state="fallback"] p,
#story-panel .story-caption-rail[data-captions-state="media-error"] p{color:#cbd2c3}
@media(max-width:700px){#story-panel .story-caption-rail{padding:14px;min-block-size:112px}#story-panel .story-caption-rail p{font-size:16px;line-height:1.6}#story-panel .story-captions-control-slot{flex:1 1 112px}}
