/* PlaySubtitle Web subtitles (Steady Lines style). Loaded as a file so the page's Content Security Policy
   can forbid inline styles. Colours follow the website tokens: target #FFF5EB, source #C8BCAC. */
/* --ps-sub-bottom: the page lifts subtitles above its own controls while they show (default: approved 9.5%) */
.ps-subs { position: absolute; left: 50%; transform: translateX(-50%); width: 80%; text-align: center; pointer-events: none;
  bottom: var(--ps-sub-bottom, 9.5%); transition: opacity .45s ease, bottom .3s ease;
  font-family: "IBM Plex Sans Thai", "Segoe UI", "Leelawadee UI", "Noto Sans Thai", system-ui, sans-serif; line-height: 1.45; }
.ps-subs.ps-idle { opacity: 0; }
/* the rounded box behind the lines, when turned on: as wide as the text (up to 80%), still centred */
.ps-subs.ps-bg { width: max-content; max-width: 80%; box-sizing: border-box; padding: .3em .75em .35em; border-radius: .5em;
  background: var(--ps-bg, rgb(0 0 0 / .65)); }
.ps-subs.ps-bg.ps-blank { background: none; }
.ps-tl { color: #fff5eb; font-weight: 600; text-shadow: 0 0 2px rgb(0 0 0 / .9), 0 2px 6px rgb(0 0 0 / .75), 0 0 1px #000; }
.ps-src { color: #c8bcac; font-size: max(.8em, 12px); margin-top: .15em; text-shadow: 0 0 2px rgb(0 0 0 / .9), 0 2px 6px rgb(0 0 0 / .7); }
.ps-u { animation: ps-in .35s ease-out both, ps-warm .9s ease-out both; }
.ps-lock { display: inline-flex; align-items: center; gap: .5em; font-size: .72em; font-weight: 500; color: #fcf1e1;
  background: rgb(20 12 4 / .78); border: 1px solid rgb(253 130 81 / .28); border-radius: 999px; padding: .25em .35em .25em .9em;
  pointer-events: auto; text-shadow: none; }
.ps-lock a { background: #fd8251; color: #140c04; border-radius: 999px; padding: .2em .8em; font-weight: 600; text-decoration: none; }
.ps-lock a:focus-visible { outline: 2px solid #fcf1e1; outline-offset: 2px; }
@keyframes ps-in { from { opacity: 0; } to { opacity: 1; } }
@keyframes ps-warm { from { color: #ffc9a8; } to { color: inherit; } }
/* static (owner 2026-11-04): the whole line at once, no word motion */
.ps-subs.ps-static .ps-u { animation: none; }
@media (prefers-reduced-motion: reduce) { .ps-u { animation: none; } .ps-subs { transition: none; } }
