/* PR 本文プレビュー共有スタイル（pr-view.html / qa-build.html 共通・dark テーマ） */

/* ---- PR ヘッダカード ---- */
.pr-header-card {
  background: #0f0f0f;
  border: 1px solid #2e2e2e;
  border-radius: 8px;
  padding: 16px;
  margin-bottom: 14px;
}
.pr-title {
  font-size: 16px;
  font-weight: 600;
  color: #fafafa;
  line-height: 1.4;
}
.pr-title .pr-num { color: #888; font-weight: 400; }
.pr-meta {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px;
  margin-top: 10px;
  font-size: 12px;
  color: #888;
}
.pr-badge { display: inline-block; font-weight: 600; padding: 2px 10px; border-radius: 4px; }
.pr-author { color: #ccc; }
.pr-branch { font-family: "Source Code Pro", "SF Mono", monospace; color: #60a5fa; }
.pr-stat { font-family: "Source Code Pro", "SF Mono", monospace; }
.pr-link { color: #3ecf8e; text-decoration: none; margin-left: auto; }
.pr-link:hover { text-decoration: underline; }

.md-empty { color: #666; font-size: 14px; padding: 24px 0; text-align: center; }

.broken-img {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: 12px;
  color: #888;
  background: #1a1a1a;
  border: 1px dashed #3a3a3a;
  border-radius: 6px;
  padding: 6px 10px;
}
.broken-img a { color: #60a5fa; }

/* ---- 本文 Markdown（GitHub body_html を描画）---- */
.md-content {
  color: #d0d0d0;
  font-size: 14px;
  line-height: 1.7;
  word-wrap: break-word;
  overflow-wrap: anywhere;
}
.md-content > *:first-child { margin-top: 0; }
.md-content > *:last-child { margin-bottom: 0; }

.md-content h1, .md-content h2, .md-content h3,
.md-content h4, .md-content h5, .md-content h6 {
  color: #fafafa;
  font-weight: 600;
  line-height: 1.3;
  margin: 22px 0 10px;
}
.md-content h1 { font-size: 22px; border-bottom: 1px solid #2e2e2e; padding-bottom: 6px; }
.md-content h2 { font-size: 18px; border-bottom: 1px solid #2e2e2e; padding-bottom: 6px; }
.md-content h3 { font-size: 16px; }
.md-content h4 { font-size: 14px; }
.md-content h5, .md-content h6 { font-size: 13px; color: #aaa; }

.md-content p { margin: 10px 0; }
.md-content a { color: #60a5fa; text-decoration: none; }
.md-content a:hover { text-decoration: underline; }

.md-content ul, .md-content ol { margin: 10px 0; padding-left: 26px; }
.md-content li { margin: 4px 0; }
.md-content li::marker { color: #888; }

/* タスクリスト */
.md-content input[type="checkbox"] { margin-right: 6px; vertical-align: middle; accent-color: #3ecf8e; }
.md-content .task-list-item { list-style: none; }
.md-content .contains-task-list { padding-left: 6px; }

.md-content blockquote {
  margin: 10px 0;
  padding: 4px 14px;
  border-left: 3px solid #3a3a3a;
  color: #aaa;
}

.md-content code {
  background: #1a1a1a;
  border: 1px solid #2e2e2e;
  border-radius: 4px;
  padding: 1px 5px;
  font-family: "Source Code Pro", "SF Mono", monospace;
  font-size: 12px;
  color: #3ecf8e;
}
.md-content pre {
  background: #0d0d0d;
  border: 1px solid #2e2e2e;
  border-radius: 8px;
  padding: 14px;
  margin: 12px 0;
  overflow-x: auto;
}
.md-content pre code {
  background: none;
  border: none;
  padding: 0;
  color: #d0d0d0;
  font-size: 12px;
  line-height: 1.5;
}

/* テーブル（横スクロール可） */
.md-content table {
  display: block;
  width: max-content;
  max-width: 100%;
  overflow-x: auto;
  border-collapse: collapse;
  margin: 12px 0;
  font-size: 13px;
}
.md-content th, .md-content td {
  border: 1px solid #2e2e2e;
  padding: 6px 12px;
  text-align: left;
}
.md-content th { background: #1a1a1a; color: #ccc; font-weight: 600; }
.md-content tr:nth-child(even) td { background: #141414; }

/* 画像 */
.md-content img {
  max-width: 100%;
  height: auto;
  border-radius: 6px;
  margin: 6px 0;
  background: #1a1a1a;
}

.md-content hr { border: none; border-top: 1px solid #2e2e2e; margin: 18px 0; }

/* GitHub の <details>（折りたたみ） */
.md-content details {
  border: 1px solid #2e2e2e;
  border-radius: 6px;
  padding: 8px 12px;
  margin: 10px 0;
}
.md-content summary { cursor: pointer; color: #ccc; font-weight: 600; }
