body {
    font-family: serif;
    /*max-width: 297mm;*/ /* A3: 297x420mm */
    max-width: 210mm; /* A4: 210x297mm */
    margin: auto;
    border-left: 1.5cm;
    border-right: 1.5cm;
    padding-top: 0.2cm;
    padding-bottom: 1.5cm;
    /* */
    /* truncate lines */
    word-break: break-all;
    overflow-wrap: break-word;
}

.MathJax {
    font-size: 1.3em;
}


h1 {font-size: 1.8rem; line-height: 2.2rem; margin-bottom: 1.2rem; margin-top: 1.2rem;}
h2 {font-size: 1.6rem; line-height: 2rem; margin-top: 2.6rem;}
h3 {font-size: 1.4rem; margin-top: 2.3rem;}
h4 {font-size: 1.2rem; margin-top: 2rem;}
h5 {font-size: 1rem; margin-top: 1.8rem;}
h6 {font-size: 1rem; font-style: italic; font-weight: normal; margin-top: 2.5rem;}
h2, h3, h4, h5, h6 {margin-bottom: 0.6rem;}

/* box of cursor hoverd links */

a {
    border: 1px;
    border-style: solid;
    border-color: rgba(0,0,0,0);
}

a:hover {
    border: 1px;
    border-style: solid;
    border-color: #336633;
}

/* additional tags */
.author, .date{text-align: right;}


/* Pagination */
.pagination-container {
    margin-top: 1.5em;
    text-align: center;
    font-size: 1.0em;
}

.pagination-link {
    text-decoration: none;
    color: #333;
    padding: 0 4px;
    min-width: 1.2em;
    display: inline-block;
}

.pagination-link:hover {
}

.pagination-link.active {
    font-weight: bold;
    color: #000;
    border: 1px solid #333;
}

.pagination-nav {
    font-size: 1.1em;
}

.pagination-info {
    font-size: 1.0em;
}



/* for base.html */

/* レイアウト専用テーブル：装飾を一切排除 */
.layout-table {
    width: 100%;
    border-collapse: collapse;
    border: none !important;      /* LaTeXスタイルの線を強制的に消す */
    table-layout: fixed;          /* ブラウザの自動計算を抑制 */
    margin: 0;
    padding: 0;
}

.layout-table tr, .layout-table td {
    border: none !important;      /* 行やセルの線も完全に消去 */
    padding: 0;
    vertical-align: baseline;     /* 文字の底辺を揃えて知的な印象に */
}

.td-right {
    text-align: right;
    white-space: nowrap;
}


.td-left {
    text-align: left;
}


/* for ranference */

#ranferences-area {
    /* 投稿list */
    margin-top: 2rem;
    max-width: 100%;
    margin-bottom: 2rem;
}

#ranferences-area > .ranference-post {
    /* 投稿それぞれ */
    margin: 0; padding: 0;
}


#ranferences-area > .ranference-post > .head-area > .faceman {
    /* 投稿者情報エリア (faceman) */
    font-size: 0.9rem; color: #555; font-weight: bold;
}


#ranferences-area > .ranference-post > .head-area > .ranference-meta {
    /* 投稿のその他メタ情報 */
    font-size: 0.8rem; color: #555;
}


#ranferences-area > .ranference-post > .body-area > .posted-content {
    /* 投稿の本文 */

    /* 左スペース */
    border-left: 3px solid #ccc;     /* 左側の垂直線 */
    padding-left: 15px; /* 線とテキストの間の余白 */
    margin-left: 10px;  /* 全体的な左インデント */

    /* 右スペース */
    border-right: 3px solid #ccc;     /* 右側の垂直線 */
    padding-right: 15px; /* 線とテキストの間の余白 */
    margin-right: 10px;  /* 全体的な右インデント */

    /* 改行を維持する設定 */
    white-space: pre-wrap;
    /* 上下の余白（任意） */
    margin-top: 5px; margin-bottom: 5px;
}

/* Markdown適用時の微調整 */
#ranferences-area > .ranference-post > .body-area > .posted-content.markdown-body {
    /* Markdownライブラリが独自の余白を持つ場合があるため、調整 */
}
