.jt-embed { margin: 1.75em 0; font-family: var(--jt-font-body, system-ui, sans-serif); }
.jt-prose .wp-block-embed .jt-embed { margin: 0; }
.jt-embed__frame {
  position: relative;
  width: 100%;
  aspect-ratio: 16 / 9;
  overflow: hidden;
  background: var(--jt-surface-2, #e9e9e4);
  border-radius: var(--jt-radius, 4px);
}
.jt-embed__play {
  position: absolute; inset: 0;
  display: block; width: 100%; height: 100%;
  margin: 0; padding: 0; border: 0;
  background: transparent; color: inherit;
  cursor: pointer;
  box-shadow: none;
}
.jt-embed__play:focus-visible { outline: 3px solid var(--jt-focus, var(--jt-link, #057a3c)); outline-offset: -3px; }
.jt-embed__poster,
.jt-prose .jt-embed__poster {
  position: absolute; inset: 0;
  display: block; width: 100%; height: 100%; max-width: none;
  margin: 0; border-radius: 0;
  object-fit: cover;
}
.jt-embed__icon {
  position: absolute; left: 50%; top: 50%;
  width: 68px; height: 48px;
  transform: translate(-50%, -50%);
  line-height: 0;
  pointer-events: none;
}
.jt-embed__icon svg { display: block; width: 100%; height: 100%; }
.jt-embed__icon-bg { fill: var(--jt-accent, #0cf57e); }
.jt-embed__icon-fg { fill: var(--jt-accent-ink, #000000); }
.jt-embed__play:hover .jt-embed__icon,
.jt-embed__play:focus-visible .jt-embed__icon { transform: translate(-50%, -50%) scale(1.08); }
@media (prefers-reduced-motion: no-preference) {
  .jt-embed__icon { transition: transform .15s ease; }
}
.jt-embed__frame > iframe {
  position: absolute; inset: 0;
  width: 100%; height: 100%;
  border: 0;
}
.jt-embed__meta { margin: 0; }
.jt-embed__link,
.jt-prose .jt-embed__link {
  display: inline-flex; align-items: center;
  min-height: 44px;
  font-size: var(--jt-fs-ui, 16px); font-weight: 700; line-height: 1.3;
  color: var(--jt-link, #057a3c);
}
.jt-embed__load {
  display: inline-flex; align-items: center; justify-content: center;
  min-height: 44px; padding: 0 18px;
  font: inherit; font-size: var(--jt-fs-ui, 16px); font-weight: 700; line-height: 1.2;
  color: var(--jt-text, #111111);
  background: transparent;
  border: 2px solid var(--jt-text, #111111);
  border-radius: var(--jt-radius, 4px);
  box-shadow: none;
  cursor: pointer;
}
.jt-embed__load:hover { background: var(--jt-surface-2, #e9e9e4); }
.jt-embed__load[aria-busy="true"] { cursor: progress; }
.jt-embed--x {
  max-width: 550px;
  margin-inline: auto;
  padding: 16px;
  border: 1px solid var(--jt-border, #dedede);
  border-radius: var(--jt-radius, 4px);
  background: var(--jt-surface, #f4f4f1);
  color: var(--jt-text, #111111);
}
.jt-embed__post { overflow-wrap: anywhere; }
.jt-embed--x blockquote,
.jt-prose .jt-embed--x blockquote {
  margin: 0; padding: 0;
  border: 0;
  font-family: var(--jt-font-body, system-ui, sans-serif);
  font-size: var(--jt-fs-ui, 16px); font-weight: 400; line-height: 1.5;
  color: var(--jt-text, #111111);
}
.jt-embed--x blockquote p,
.jt-prose .jt-embed--x blockquote p { margin: 0 0 .6em; }
.jt-embed--x blockquote a { color: var(--jt-link, #057a3c); }
.jt-embed--x.is-loaded { padding: 0; border: 0; background: transparent; }
.jt-embed--x.is-loaded .jt-embed__bar { display: none; }
.jt-embed__bar {
  display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between;
  gap: 8px 16px;
  margin-top: 12px;
}
.wp-embed-responsive .wp-block-embed .wp-block-embed__wrapper:has(.jt-embed)::before,
.wp-block-embed .wp-block-embed__wrapper:has(.jt-embed)::before { content: none; display: none; padding-top: 0; }
.jt-prose .jt-embed__frame > iframe { height: 100%; aspect-ratio: auto; }
