/* LK oracle-css overrides — documented capture-state fixes pinned here.
 * Loaded LAST (after the manifest + page CSS) so these rules win the cascade. */

/* fitvids: jquery.fitvids injects this stylesheet at RUNTIME on the live site,
 * so it is absent from both the linked sheets and the raw crawl HTML. Without
 * it, an embed iframe stays in normal flow and adds its intrinsic height ON TOP
 * of the aspect-ratio padding, so every fluid-width video renders ~150px too
 * tall (a video-showcase grid of N videos inflates by N×~150px — e.g.
 * jerome-h-block's media-appearances grid, +1050px). build-page-fixtures.ts
 * (applyFitvids) already wraps embeds in .fluid-width-video-wrapper with the
 * inline padding-top aspect ratio; these rules take the iframe out of flow to
 * fill that padding box, exactly as fitvids' own injected CSS does. */
.fluid-width-video-wrapper {
  width: 100%;
  position: relative;
  padding: 0;
}
.fluid-width-video-wrapper iframe,
.fluid-width-video-wrapper object,
.fluid-width-video-wrapper embed {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

/* Divi blog GRID column float: ~19 of 382 per-post dynamic CSS snapshots lack
 * the .et_pb_blog_grid .column{float:left} rule (Divi emits it per page;
 * those pages' related-posts cards stacked 1/3-width). Divi's own rule,
 * pinned globally — pages that already have it are unaffected. */
.et_pb_blog_grid .column { float: left; }

/* wp-video inline embeds: live's mediaelement JS rebuilds the player at
 * proportional size; the raw shortcode markup keeps width=1080 height=608
 * attributes and rendered 500x620 in a 500px column (adversarial QC). The
 * width/height attrs give the browser the aspect ratio; height:auto restores
 * proportional scaling statically. */
.wp-video { width: 100% !important; max-width: 100%; }
.wp-video video { width: 100%; height: auto; }
