/* STW video (stw-theme-v2-next, VIDEO lane). Dark site look kept; uses the theme's existing fonts only. */

/* ---------- film watch page: player on top ---------- */
.stw-watch__stage { background: #000; padding-top: clamp(64px, 8vw, 88px); }
.stw-player { position: relative; width: 100%; max-width: min(1280px, calc(72vh * 16 / 9)); margin: 0 auto; aspect-ratio: 16 / 9; background: #000; }
.stw-player video, .stw-player iframe, .stw-player__poster { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; object-fit: cover; }
.stw-player video { object-fit: contain; }
.stw-player__play { position: absolute; inset: 0; margin: auto; width: 88px; height: 88px; border-radius: 50%; border: 0; background: rgba(0, 0, 0, .55); color: #fff; cursor: pointer; display: grid; place-items: center; }
.stw-player__play:hover { background: rgba(0, 0, 0, .75); }
.stw-player__play:focus-visible { outline: 2px solid #fff; outline-offset: 4px; }

/* the stage now carries the top spacing the fixed header needs */
.stw-watch__stage ~ .stw-article .stw-article-inner { padding-top: 32px; }

.stw-watch__logline { font-family: Georgia, serif; font-size: 20px; line-height: 1.5; color: #666; margin: 0 0 12px; }
.stw-watch__meta { display: flex; flex-wrap: wrap; gap: 8px 10px; align-items: center; margin: 0 0 28px; }
.stw-badge { font: 600 12px/1 'Inter', system-ui, sans-serif; padding: 6px 10px; border: 1px solid currentColor; border-radius: 999px; font-variant-numeric: tabular-nums; }
.stw-watch__meta .stw-badge { color: #555; }
.stw-yt { display: inline-flex; align-items: center; gap: 6px; padding: 10px 16px; border-radius: 999px; background: #1a1a1a; color: #fff; font: 600 14px/1 'Inter', system-ui, sans-serif; text-decoration: none; }
.stw-yt--sub { background: #c00; }
.stw-yt:hover { filter: brightness(1.15); }

.stw-plan-card { display: block; margin: 0 0 28px; padding: 16px 18px; border: 1px solid rgba(0, 0, 0, .15); border-left: 4px solid #C0392B; border-radius: 6px; color: #1a1a1a; text-decoration: none; background: #fff; }
.stw-plan-card__kicker { display: block; font: 600 11px/1.2 'Inter', system-ui, sans-serif; letter-spacing: .08em; text-transform: uppercase; color: #C0392B; }
.stw-plan-card__title { display: block; font-family: 'Instrument Serif', Georgia, serif; font-size: 22px; line-height: 1.25; margin-top: 6px; }

.stw-chapters { margin: 0 0 28px; }
.stw-chapters h2 { font: 600 13px/1.2 'Inter', system-ui, sans-serif; letter-spacing: .08em; text-transform: uppercase; margin: 0 0 8px; }
.stw-chapters ol { list-style: none; padding: 0; margin: 0; }
.stw-chapters a { display: flex; gap: 12px; padding: 9px 0; color: inherit; text-decoration: none; border-bottom: 1px solid rgba(0, 0, 0, .1); font-family: 'Inter', system-ui, sans-serif; font-size: 15px; }
.stw-chapters__t { min-width: 3.5rem; opacity: .6; font-variant-numeric: tabular-nums; }

.stw-transcript { margin: 0 0 28px; font-family: 'Inter', system-ui, sans-serif; }
.stw-transcript summary { cursor: pointer; font-weight: 600; padding: 8px 0; }
.stw-transcript__body { font-size: 15px; line-height: 1.6; opacity: .85; max-height: 60vh; overflow-y: auto; }

/* ---------- shorts swipe feed ---------- */
body.stw-shorts-feed { overflow-x: hidden; }
.stw-feed__topbar { position: fixed; top: 0; left: 0; right: 0; z-index: 6; background: linear-gradient(rgba(0, 0, 0, .6), transparent); }
.stw-feed { position: relative; height: 100svh; overflow-y: auto; scroll-snap-type: y mandatory; overscroll-behavior: contain; background: #000; }
.stw-feed__item { position: relative; height: 100svh; scroll-snap-align: start; scroll-snap-stop: always; overflow: hidden; }
.stw-feed__poster, .stw-feed__item > .stw-feed__player { position: absolute; inset: 0; margin: auto; height: 100%; width: auto; max-width: 100%; aspect-ratio: 9 / 16; object-fit: cover; }
.stw-feed > .stw-feed__player { display: none; }
.stw-feed__item > .stw-feed__player { z-index: 1; }
.stw-feed__overlay { position: absolute; left: 0; right: 0; bottom: 0; z-index: 2; padding: 16px 72px 28px 16px; background: linear-gradient(transparent, rgba(0, 0, 0, .8)); max-width: 560px; margin: 0 auto; pointer-events: none; }
.stw-feed__overlay a { pointer-events: auto; }
.stw-feed__title { font-family: 'Instrument Serif', Georgia, serif; font-weight: 400; font-size: 26px; line-height: 1.15; margin: 0 0 6px; }
.stw-feed__desc { font-size: 14px; line-height: 1.45; margin: 0 0 8px; color: rgba(255, 255, 255, .85); }
.stw-feed__meta { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; margin: 0 0 8px; font-size: 13px; }
.stw-feed__place { opacity: .8; }
.stw-feed__meta .stw-yt { background: #fff; color: #000; padding: 8px 12px; font-size: 13px; }
.stw-feed__film { display: inline-block; color: #fff; font-weight: 600; text-decoration: underline; }
.stw-feed__mute { position: fixed; top: 64px; right: 14px; z-index: 6; width: 40px; height: 40px; border-radius: 50%; border: 0; background: rgba(0, 0, 0, .45); color: #fff; cursor: pointer; display: inline-flex; align-items: center; justify-content: center; }
.stw-feed__mute-on { display: none; }
.stw-feed__mute.is-unmuted .stw-feed__mute-off { display: none; }
.stw-feed__mute.is-unmuted .stw-feed__mute-on { display: inline; }
.stw-feed__actions.ss-actions { position: fixed; right: 8px; top: 50%; transform: translateY(-50%); z-index: 6; }

@media (min-width: 900px) {
  .stw-feed__overlay { max-width: calc(100svh * 9 / 16); padding-right: 16px; }
  .stw-feed__actions.ss-actions { right: calc(50% - 100svh * 9 / 32 - 84px); }
}
@media (max-width: 1100px) {
  .stw-feed__actions .ss-action__lbl { display: none; }
}
@media (prefers-reduced-motion: reduce) {
  .stw-feed { scroll-behavior: auto; }
}
