.insert-dialog { width: min(520px, calc(100% - 24px)); max-height: 90dvh; overflow-y: auto; }
.insert-dialog h2 { margin: 0 0 18px; font-size: 24px; }
.insert-dialog label { margin: 14px 0; }
.insert-dialog input, .insert-dialog select { display: block; margin-top: 6px; }
.insert-actions { display: flex; justify-content: end; gap: 8px;
  flex-wrap: wrap; margin-top: 20px; }
.insert-columns { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.insert-message, .rich-media-status { font-size: 12px; color: var(--muted); }
.insert-message:empty, .rich-media-status:empty, .media-feedback[hidden] { display: none; }
.media-feedback { margin: 12px 0; }
.rich-media-context { display: flex; align-items: center; gap: 12px; font-size: 12px;
  color: var(--muted); padding-top: 6px; }
.rich-media-context[hidden] { display: none; }
.rich-toolbar .rich-media-context button { width: auto; }
.rich-host figure, .article-body figure { max-width: 100%; }
.rich-host figure[data-align="center"], .article-body figure[data-align="center"] {
  margin-inline: auto;
}
.rich-host figure[data-align="right"], .article-body figure[data-align="right"] {
  margin-left: auto; margin-right: 0;
}
.rich-host figure[data-align="left"], .article-body figure[data-align="left"] {
  margin-left: 0; margin-right: auto;
}
.rich-host figure img, .article-body figure img { width: 100%; height: auto; }
.rich-host figure.ProseMirror-selectednode, .youtube-node.ProseMirror-selectednode {
  outline: 2px solid var(--accent); outline-offset: 4px; border-radius: 10px;
}
.youtube-embed { margin: 22px 0; max-width: 100%; }
.youtube-stage { width: 100%; max-width: 100%; min-width: 0;
  aspect-ratio: 16/9; min-height: 200px; border-radius: 12px;
  background: var(--soft); display: flex; flex-direction: column; align-items: center;
  justify-content: center; gap: 12px; overflow: hidden; padding: 18px; text-align: center; }
.youtube-stage p { margin: 0; }
.youtube-stage small { font: 12px/1.5 system-ui; color: var(--muted); }
.youtube-stage button { background: var(--tint); color: var(--accent); border-radius: 8px; }
.youtube-stage:has(iframe) { padding: 0; }
.youtube-stage iframe { width: 100%; height: 100%; min-height: 200px; border: 0; }
.youtube-embed > a { display: inline-block; font: 12px/1.5 system-ui; margin-top: 10px;
  color: var(--muted); }
@media(max-width:540px) {
  .compose .rich-advanced > summary { font-size: 10px; padding-inline: 3px; gap: 4px; }
}
