/* =========================
   Edusemi カスタム（左詰め・幅制限 / GitHub風）
   ========================= */
.edusemi-root {
  /* 日本語=ゴシック / 英語=サンセリフ */
  font-family: -apple-system, BlinkMacSystemFont, "Noto Sans JP",
               "Hiragino Kaku Gothic ProN", "Yu Gothic",
               "Segoe UI", Helvetica, Arial, sans-serif;
  line-height: 1.6;
  color: #24292e;
  background: #ffffff;
  margin: 0;
}

/* ラッパ（.wrapper or main.container を想定） */
.edusemi-root .wrapper,
.edusemi-root main.container {
  max-width: 980px;      /* GitHub README 相当 */
  margin: 0;             /* 左詰め */
  padding: 1.5rem 1rem;
}

/* 見出し */
.edusemi-root h1, .edusemi-root h2, .edusemi-root h3, .edusemi-root h4 {
  font-weight: 600;
  margin-top: 1.8rem;
  margin-bottom: 1rem;
  border-bottom: 1px solid #eaecef;
  padding-bottom: .3em;
  line-height: 1.25;
}
.edusemi-root h1 { font-size: 1.8em; }
.edusemi-root h2 { font-size: 1.5em; }
.edusemi-root h3 { font-size: 1.25em; }

.edusemi-root p { margin: 0 0 .8em; }

/* リンク */
.edusemi-root a { color: #0366d6; text-decoration: none; font-weight: 600; }
.edusemi-root a:hover { text-decoration: underline; }

/* 画像（左寄せ） */
.edusemi-root img {
  max-width: 100%; height: auto; display: block; margin: 1em 0;
}

/* テーブル（実用寄り：2px罫線＋横余白広め） */
.edusemi-root table { width: 100%; border-collapse: collapse; margin: 1em 0; }
.edusemi-root th, .edusemi-root td {
  border: 2px solid #bbb;
  padding: .6em 1.1em;       /* 横余白↑ */
  vertical-align: top;
}
.edusemi-root th {
  background: #f6f8fa;
  font-weight: 700;
  text-align: left;
  border-color: #999;        /* ヘッダー強め */
}
.edusemi-root tbody tr:nth-child(odd)  td { background: #fff; }
.edusemi-root tbody tr:nth-child(even) td { background: #f7f3ea; }

/* 引用 */
.edusemi-root blockquote {
  padding: .6em 1em; color: #6a737d;
  border-left: .25em solid #dfe2e5; background: #f6f8fa; margin: 1em 0;
}

/* コード */
.edusemi-root pre {
  background: #f6f8fa; padding: .8em; border: 1px solid #d1d5da;
  border-radius: 6px; overflow-x: auto;
}
.edusemi-root code {
  background: #f6f8fa; padding: .2em .4em; font-size: 90%;
  border-radius: 3px;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono",
               "Courier New", monospace;
}

/* 箇条書きの余白調整 */
.edusemi-root ul, .edusemi-root ol { margin: .6em 0 1em 1.2em; }
.edusemi-root li { margin: .25em 0; }

/* 横スクロール保険（表やコードがはみ出すのを回避） */
.edusemi-root .wrapper, .edusemi-root main.container { overflow-x: auto; }

/* モバイル */
@media (max-width: 768px) {
  .edusemi-root .wrapper,
  .edusemi-root main.container { max-width: 100%; padding: 1rem; }
  .edusemi-root h1 { font-size: 1.5em; }
  .edusemi-root h2 { font-size: 1.3em; }
  .edusemi-root h3 { font-size: 1.1em; }
}

/* タイトルが隠れるテーマ向けの救済 */
.edusemi-root .page-title, .edusemi-root .post-title { display: block !important; }
