/* Shared article styles, scoped so existing Avada pages retain their appearance. */
.jra-article { --jra-ink:#252821; --jra-muted:#62695d; --jra-line:#d6d9cf; --jra-accent:#4b603d; color:var(--jra-ink); max-width:1120px; margin-inline:auto; text-align:left; font-size:18px; line-height:1.9; }
.jra-article *, .jra-article *::before, .jra-article *::after { box-sizing:border-box; }
.jra-article .jra-credits { font-size:15px; letter-spacing:.03em; }
.jra-article .jra-date { font-size:14px; color:var(--jra-muted); margin-top:4px; }
.jra-article .jra-summary { max-width:65ch; margin-block:24px; }
.jra-article .jra-poem-pair { display:grid; grid-template-columns:minmax(0,1fr); gap:40px; margin-block:40px; padding-block:32px; border-block:1px solid var(--jra-line); }
.jra-article .jra-language { min-width:0; }
.jra-article .jra-language-label { margin:0 0 24px; color:var(--jra-muted); font:600 13px/1.5 system-ui,sans-serif; letter-spacing:.12em; }
.jra-article .jra-poem-scroll { max-width:100%; overflow-x:auto; padding-block:4px 16px; }
.jra-article .jra-poem-scroll:focus-visible { outline:2px solid var(--jra-accent); outline-offset:4px; }
.jra-article .jra-poem { font-family:'Yu Mincho','Hiragino Mincho ProN',Georgia,serif; font-size:18px; line-height:2; overflow-wrap:anywhere; }
.jra-article .jra-poem p { margin:0 0 1.5em; font:inherit; }
.jra-article [lang='en'] .jra-poem { font-family:Georgia,'Times New Roman',serif; line-height:1.85; }
.jra-article .jra-prose { max-width:72ch; margin-block:36px; overflow-wrap:anywhere; }
.jra-article .jra-prose h2 { font-size:1.5em; margin-top:2em; }
.jra-article ruby rt { font-size:.55em; }
.jra-article a { color:var(--jra-accent); text-decoration:underline; text-underline-offset:.22em; transition:text-decoration-color .15s; }
.jra-article a:hover { text-decoration-color:transparent; }
.jra-article .jra-related h2 { font-size:20px; }
.jra-article .jra-related li { padding-block:6px; }
.jra-article .jra-source { color:var(--jra-muted); font-size:14px; margin-block:32px; }
@media (min-width:1024px) {
  .jra-article .jra-poem-pair { grid-template-columns:repeat(2,minmax(0,1fr)); gap:48px; }
  .jra-article.jra-vertical-ja [lang='ja'] .jra-poem { writing-mode:vertical-rl; text-orientation:mixed; height:28em; width:max-content; margin-inline:auto; line-height:2.05; }
  .jra-article.jra-vertical-ja [lang='ja'] .jra-poem p { margin:0 0 0 1.4em; }
}
@media (max-width:1023px) {
  .jra-article .jra-poem { writing-mode:horizontal-tb; height:auto; width:auto; }
  .jra-article .jra-poem-pair { gap:32px; margin-block:28px; padding-block:24px; }
  .jra-article .jra-poem { font-size:17px; }
}
@media print {
  .jra-article .jra-poem-pair { display:block; }
  .jra-article.jra-vertical-ja [lang='ja'] .jra-poem { writing-mode:horizontal-tb; height:auto; width:auto; }
  .jra-article .jra-poem-scroll { overflow:visible; }
  .jra-article .jra-language { margin-bottom:24px; }
}
@media (prefers-reduced-motion:reduce) { .jra-article a { transition:none; } }

/* JRA_READER_V2: performance and research additions */
.jra-article .jra-poem p, .jra-article .jra-prose p { color:var(--jra-ink); }
.jra-article .jra-video { min-width:0; }
.jra-article .jra-video-frame { width:100%; max-width:100%; aspect-ratio:16/9; min-height:200px; background:#171b15; }
.jra-article .jra-video-frame iframe { display:block; width:100%; height:100%; min-height:200px; border:0; }
.jra-article .jra-video-title { font-size:20px; line-height:1.6; margin-top:24px; }
.jra-article .jra-video-caption { font-size:15px; color:var(--jra-muted); }
.jra-article .jra-overview { padding-block:24px; border-block:1px solid var(--jra-line); margin-block:24px; max-width:72ch; }
.jra-article .jra-overview h2 { font:600 14px/1.6 system-ui,sans-serif; color:var(--jra-muted); }
.jra-article .jra-overview [lang='en'] { margin-top:24px; }
.jra-article .jra-toc { margin-block:24px 40px; border-block:1px solid var(--jra-line); padding-block:16px; }
.jra-article .jra-toc summary { cursor:pointer; font-weight:600; min-height:44px; padding-block:8px; }
.jra-article .jra-toc a { display:inline-block; padding-block:6px; }
.jra-article .jra-toc li { list-style:none; margin:0; }
.jra-article .jra-toc ul { margin:0; padding:0; }
.jra-article .jra-toc-level-3, .jra-article .jra-toc-level-4 { padding-left:1.25em; font-size:.9em; }
.jra-article .jra-prose h2, .jra-article .jra-prose h3, .jra-article .jra-prose h4 { scroll-margin-top:160px; }
.jra-article .jra-prose blockquote { margin:28px 0; padding:12px 24px; border-left:2px solid var(--jra-accent); background:#f5f6f1; font-style:normal; }
.jra-article .jra-citation { border-top:1px solid var(--jra-line); padding-top:24px; max-width:72ch; font-size:15px; overflow-wrap:anywhere; }
.jra-article .jra-citation h2 { font-size:18px; }
@media (min-width:1024px) {
  .jra-article .jra-single-language { grid-template-columns:minmax(0,1fr); }
  .jra-article.jra-vertical-ja [lang='ja'] .jra-poem-scroll { direction:rtl; }
  .jra-article.jra-vertical-ja [lang='ja'] .jra-poem { direction:ltr; }
}

/* Adopted 月金 palette, scoped to the portable article body. */
.jra-article.jra-article{--jra-ink:#1C3144;--jra-muted:#536471;--jra-line:#D4CBB8;--jra-accent:#15557F;color:var(--jra-ink)}
.jra-article .jra-prose blockquote{background:#F2EDE1;border-left-color:#15557F}.jra-article a{color:#15557F}.jra-article img{max-width:100%;height:auto}

/* Portable archive bodies retain source order without importing theme-wide styles. */
.jra-archive .jra-archive-body { max-width:76ch; margin:32px auto; overflow-wrap:anywhere; }
.jra-archive .jra-archive-body h2 { font-size:1.45em; line-height:1.6; margin-top:2em; }
.jra-archive .jra-archive-body h3 { font-size:1.18em; line-height:1.7; }
.jra-archive .jra-archive-center { text-align:center; }
.jra-archive .jra-archive-right { text-align:right; }
.jra-archive .jra-archive-large { font-size:1.5em; }
.jra-archive .jra-archive-section { margin-block:1.5em; }
.jra-archive .jra-archive-body iframe { display:block; width:100%; height:auto; min-height:200px; aspect-ratio:16/9; border:0; }
.jra-archive .jra-archive-body img { display:block; max-width:100%; height:auto; margin:20px auto; }
.jra-archive .jra-archive-note { font-size:14px; color:#536471; border-bottom:1px solid #D4CBB8; padding-bottom:16px; }
.jra-archive .jra-archive-body a { overflow-wrap:anywhere; }
@media (max-width:600px) { .jra-archive .jra-archive-body { font-size:17px; line-height:1.95; } }
