
/* --- カテゴリ/アーカイブ（設計 1a CATEGORY）---------------------------------
   出自: _core/data/kaikei-tax-theme/css-src/category.css(89行)
   セレクタ対応: #main → .main / #content-in → .contents > .container /
                .entry-content → .articleBody / .article → .articleContainer /
                .site-name-text → .siteInfo__title
   削除(移植先で意味を失うCocoon固有DOM依存・計8宣言):
     .sns-share / .sns-follow / .date-tags / .toc / .entry-categories-tags /
     .author-info / .footer-meta の display:none 群
     → Xwrite ではネイティブ設定(theme_mod)で消す(Phase 4)。特に .toc の抑止は
       ネイティブ目次を採用するため持ち込むと目次が消える=移植してはいけない。
   -------------------------------------------------------------------------- */
.archive .main, .category .main{ background:transparent; padding:0; }
.kt-cathead{ background:var(--kt-paper); border:1px solid var(--kt-line); padding:22px 26px; margin-bottom:14px; }
.kt-cathead__label{ display:block; font:500 10px/1 var(--kt-mono); letter-spacing:.14em; color:var(--kt-muted); margin-bottom:10px; }
.kt-cathead h1{ margin:0 0 12px; font-size:24px; font-weight:600; line-height:1.6; color:var(--kt-ink); border:0; padding:0; background:none; }
.kt-cathead p{ margin:0; font-size:14px; line-height:1.95; color:var(--kt-text); max-width:760px; }
.kt-tagfilter{ background:var(--kt-paper); border:1px solid var(--kt-line); padding:14px 26px; margin-bottom:14px; display:flex; align-items:center; gap:16px; flex-wrap:wrap; }
.kt-tagfilter__label{ font:500 10px/1 var(--kt-mono); letter-spacing:.14em; color:var(--kt-muted); flex:0 0 auto; }
.kt-tagfilter__row{ display:flex; flex-wrap:wrap; gap:7px; }
.kt-archive-list{ background:var(--kt-paper); border:1px solid var(--kt-line); }
.kt-archive-list .kt-list{ border:0; }

/* --- 記事ページの追加部品（設計 1a ARTICLE）--------------------------------- */
.kt-catbadge{ margin:0 0 10px; }
.kt-catbadge a{ display:inline-block; background:#2C463B; color:#fff !important; font-size:14px; font-weight:600; padding:9px 16px; line-height:1.6; text-decoration:none; }
.articleBody .kt-meta, .articleContainer .kt-meta{ margin:0 0 20px; }
.kt-toc{ list-style:none; margin:0; padding:0; counter-reset:kt-toc; }
.kt-toc li{ padding:7px 13px; border-bottom:1px solid var(--kt-line-2); border-left:2px solid var(--kt-accent); background:var(--kt-panel); font-size:13px; line-height:1.5; color:var(--kt-ink); }
.kt-toc li:last-child{ border-bottom:0; }
.kt-side-hubs{ background:var(--kt-deep); padding:13px 16px; margin-bottom:16px; display:flex; flex-direction:column; gap:11px; }
.kt-side-hubs a{ display:block; padding:0; font-size:13px; line-height:1.6; color:#fff !important; text-decoration:none; }
.kt-side-hubs a:hover{ text-decoration:underline; }
.kt-side-cats{ list-style:none; margin:0; padding:0; }
.kt-side-cats li{ border-bottom:1px solid var(--kt-line-2); }
.kt-side-cats li:last-child{ border-bottom:0; }
.kt-side-cats a{ display:block; padding:7px 13px; font-size:13px; line-height:1.5; color:var(--kt-text) !important; border-left:2px solid transparent; text-decoration:none; }
.kt-side-cats li.is-current a{ border-left-color:var(--kt-accent); color:var(--kt-ink) !important; }
.kt-side-cats li.is-current{ background:var(--kt-panel); font-weight:600; }
.kt-side-tags{ padding:12px 14px; display:grid; grid-template-columns:34px 1fr; gap:8px 10px; align-items:start; }
.kt-side-tags__label{ font:500 10px/1 var(--kt-mono); letter-spacing:.14em; color:var(--kt-muted); }
.kt-side-tags__row{ display:flex; flex-wrap:wrap; gap:5px; }
.kt-side-tags .kt-tag{ font-size:11px; padding:4px 8px; }
.single .main, .page .main{ background:var(--kt-paper); }

/* 設計の本文サイズ（カプセル/免責は 16px 基準） */
.kt-capsule, .kt-note{ font-size:16px; }

/* --- 照合で出た残差の是正 (2026-08-13 stydiff) ---------------------------- */
.kt-srclist a{ padding:0; }
/* テーマ既定が th/td に付ける罫を kt の表から外す */
.articleBody .kt-table th, .articleBody .kt-table td{ border-top:0; border-left:0; border-right:0; }
.articleBody .kt-table thead th{ border-bottom:0; }
/* 部品内の p は各部品の指定を優先（.articleBody > p 化に伴う保険） */
.articleBody .kt-note p{ font-size:12px; line-height:2; color:#56645C; }

/* --- 行間: 継承を設計の normal 相当へ (stydiff 2周目) --------------------- */
.kt-tile{ line-height:normal; }
.kt-panel__title, .kt-panel__count, .kt-side-panel__head, .kt-list thead th,
.siteInfo__title, .kt-srcs__label, .kt-src{ line-height:1.45; }
.kt-table thead th, .kt-table tbody th, .kt-table tbody td,
.kt-list tbody th, .kt-list td, .kt-list__title a{ line-height:1.5; }
.kt-list__date{ line-height:1.2; }
/* 画面ごとの設計差 */
.home .kt-list__title a{ font-size:13px; }
.home .kt-side-panel__head{ padding:10px 14px; }
.category .kt-list thead th, .archive .kt-list thead th{ padding:9px 16px; }
.kt-panel__count{ line-height:1; }
.kt-list tbody th.kt-list__date{ line-height:1; }
.kt-list__cat a{ color:var(--kt-link) !important; text-decoration:none; }
.kt-srclist a{ text-decoration:none; }
.kt-srclist a:hover{ text-decoration:underline; }

/* --- 一覧系(カテゴリ/タグ/検索/404)は全幅・ページネーション整形 --------------- */
.archive .main, .search .main, .error404 .main{
  background:transparent; padding:0; width:auto; max-width:100%; flex:1 1 auto;
}
.archive .contents > .container, .search .contents > .container,
.error404 .contents > .container{ display:block; }
.kt-archive{ max-width:1240px; margin:0 auto; padding-top:24px; }
.pagination{ margin:18px 0 0; }
.pagination .page-numbers{
  display:inline-block; min-width:34px; padding:8px 10px; margin:0 3px 0 0;
  font:500 12px/1 var(--kt-mono); text-align:center;
  background:var(--kt-paper); border:1px solid var(--kt-line);
  color:var(--kt-ink) !important; text-decoration:none;
}
.pagination .page-numbers.current{ background:var(--kt-deep); border-color:var(--kt-deep); color:#fff !important; }
.pagination .page-numbers:hover{ border-color:var(--kt-accent); }
