/* r2: static, figure-scoped composition. Existing article type and assets stay unchanged. */
.jxd-figure { max-width: 100%; margin: 32px 0; padding: 0; overflow: hidden; border: 1px solid #edc13655; border-radius: 18px; background: #090a18; color: #f0ece0; }
.jxd-figure .jxd-visual { display: block; width: 100%; background: #090a18; container-type: inline-size; }
.jxd-figure img { display: block; width: 100%; max-width: 100%; height: auto; }
.jxd-figure .jxd-stacked { max-width: 480px; margin: 0 auto; }
.jxd-figure .jxd-wide { display: none; }
@container (min-width: 720px) {
  .jxd-figure .jxd-stacked { display: none; }
  .jxd-figure .jxd-wide { display: block; }
}
.jxd-figure figcaption { padding: 22px 24px 0; font: normal 400 16px/1.7 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif; }
.jxd-figure figcaption strong { display: block; margin: 0 0 8px; color: #f0ece0; font: 400 25px/1.3 Georgia,"Times New Roman",serif; }
.jxd-figure figcaption p { margin: 0 0 12px; }
.jxd-figure .jxd-fiction { color: #bcb9c7; font-size: 14px; }
.jxd-figure details.jxd-equivalent { margin: 18px 24px 24px; padding: 0; border: 0; border-top: 1px solid #edc13644; background: transparent; font: normal 400 16px/1.7 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif; }
.jxd-figure .jxd-equivalent summary { min-height: 44px; padding: 12px 0; margin: 0; color: #edc136; cursor: pointer; font: normal 600 16px/1.7 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif; }
.jxd-figure .jxd-equivalent summary:focus-visible { outline: 2px solid #edc136; outline-offset: 4px; }
.jxd-figure .jxd-equivalent ol { padding-left: 22px; margin: 0 0 6px; }
.jxd-figure .jxd-equivalent li { padding: 4px 0; }
@media (max-width: 600px) {
  .jxd-figure { margin: 24px 0; border-radius: 14px; }
  .jxd-figure figcaption { padding: 18px 18px 0; }
  .jxd-figure details.jxd-equivalent { margin: 14px 18px 20px; }
}
@media print {
  .jxd-figure { border: 0; border-radius: 0; margin: 12pt 0; background: transparent; color: #111; break-inside: auto; }
  .jxd-figure .jxd-visual, .jxd-figure details.jxd-equivalent:not([open]) { display: none; }
  .jxd-figure figcaption { padding: 0; }
  .jxd-figure figcaption strong, .jxd-figure .jxd-fiction, .jxd-figure .jxd-equivalent summary { color: #111; }
  .jxd-figure details.jxd-equivalent { margin: 6pt 0 0; border: 0; }
}
@media (forced-colors: active) {
  .jxd-figure { border-color: CanvasText; }
  .jxd-figure .jxd-equivalent summary { color: CanvasText; }
  .jxd-figure .jxd-equivalent summary:focus-visible { outline-color: Highlight; }
}
