/* v339 — one video-size rule for every course of the workspace (Art of Adjustment, Yoga Nidra, Pranayama,
   Contraindications), YouTube and Bunny alike. Additive: course-workspace.v329.css / v337 / v338 are unchanged.
   The rule is the site's existing viewport-fit idea (styles.v85.css: video width limited by
   (100vh − vertical chrome) × 16/9), applied to the workspace with its real chrome:
     sticky site header (--cw-head, measured by the workspace) + sticky course tabs + the lesson title and the
     lesson navigation (previous · completed · next), which now sit directly under the player.
   The player stays 16:9, never wider than its column, never narrower than 420 px on desktop; full screen is untouched. */
.cw { --cw-tabs-h: 54px; --cw-under-player: 190px; }
.cw-stage { display: flex; flex-direction: column; scroll-margin-top: calc(var(--cw-head, 74px) + var(--cw-tabs-h) + 8px); }
.cw-stage > .cw-player { order: 0; }
.cw-stage > .cw-lesson__head { order: 1; }
.cw-stage > .cw-lesson__actions { order: 2; }
.cw-stage > .cw-sub-bar { order: 3; }
.cw-stage > .cw-lesson__summary { order: 4; }
.cw-stage > .cw-note { order: 5; }
.cw-stage > .cw-lesson__head { margin: .8rem 0 .2rem; }
.cw-stage > .cw-lesson__head h2 { margin: .2rem 0 .3rem; font-size: clamp(1.3rem, 2vw, 1.6rem); }
.cw-stage > .cw-lesson__actions { padding: .55rem 0; margin-bottom: 1rem; }
.cw-stage > .cw-sub-bar { margin-top: 0; margin-bottom: 1rem; }
@media (min-width: 721px) {
  .cw-player:not(:fullscreen):not(:-webkit-full-screen) {
    width: 100%; margin-inline: 0;
    max-width: max(420px, calc((100dvh - var(--cw-head, 74px) - var(--cw-tabs-h) - var(--cw-under-player)) * 16 / 9));
  }
}
@supports not (height: 100dvh) {
  @media (min-width: 721px) {
    .cw-player:not(:fullscreen) { max-width: max(420px, calc((100vh - var(--cw-head, 74px) - var(--cw-tabs-h) - var(--cw-under-player)) * 16 / 9)); }
  }
}

/* v339 — Contraindications: materials language, document actions, field guides */
.cw-ci-langs { align-items: center; }
.cw-ci-langs > span { margin-right: .3rem; font-size: .88rem; }
.cw-doc__actions { grid-column: 1 / -1; display: flex; flex-wrap: wrap; gap: .5rem; }
.cw-doc__actions .cw-doc__get { min-height: 44px; }
.cw-guides { list-style: none; margin: 0 0 1rem; padding: 0; display: grid; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); gap: .6rem; }
.cw-guide { display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: .8rem; width: 100%; min-height: 60px; padding: .7rem 1rem; border: 1px solid var(--cw-line); border-radius: 12px; background: var(--cw-card); font: inherit; color: inherit; text-align: left; cursor: pointer; }
.cw-guide:hover, .cw-guide:focus-visible { border-color: rgba(35, 39, 31, .35); }
.cw-guide[disabled] { opacity: .6; cursor: progress; }
.cw-guide__n { width: 30px; height: 30px; display: grid; place-items: center; border-radius: 50%; background: var(--cw-soft); font-family: var(--font-mono); font-size: .85rem; }
.cw-guide__t { font-weight: 500; }
.cw-guide__go svg { width: 18px; height: 18px; color: var(--cw-muted); }
.cw-guides__all { margin-bottom: 1.4rem; }
.cw-guides__all .btn { min-height: 44px; }
