/* ===== 電子公告（CPT: disclosure）専用 ===== */
:root {
  /* 調整用トークン（既存サイトに合わせて変更） */
  --krt-font-size-title: 16px; /* タイトル文字サイズ */
  --krt-font-size-meta: 14px; /* 投稿日文字サイズ */
  --krt-line-height: 1.6; /* 行間 */
  --krt-gap-row: 8px; /* 行内の隙間 */
  --krt-pad-row-y: 12px; /* 行の上下パディング */
  --krt-pad-row-x: 8px; /* 行の左右パディング */
  --krt-col-date: 160px; /* 日付列の幅 */
  --krt-col-linktext: 240px; /* リンクテキスト列の幅 */
  --krt-color-border: #e5e5e5; /* ボーダー色 */
  --krt-color-muted: #666; /* 補助テキスト色 */
}

/* 一覧テーブル（グリッド化） */
.krt-disclosure-table {
  display: grid;
  gap: var(--krt-gap-row);
}

.krt-disclosure-row {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--krt-gap-row);
  padding: var(--krt-pad-row-y) var(--krt-pad-row-x);
  border-bottom: 1px solid var(--krt-color-border);
}

.krt-disclosure-row--head {
  font-weight: 600;
  border-bottom: 2px solid var(--krt-color-border);
}

.krt-disclosure-cell {
  overflow: hidden;
  min-width: 0;
}

/* タイトル */
.krt-entry-title {
  margin: 0;
  font-size: var(--krt-font-size-title);
  line-height: var(--krt-line-height);
}

.krt-entry-title a {
  text-decoration: none;
}
.krt-entry-title a:hover {
  text-decoration: underline;
}
.krt-entry-title a:focus-visible {
  outline: 2px solid currentColor;
  outline-offset: 2px;
}

/* 投稿日・補助 */
.krt-disclosure-cell time {
  font-size: var(--krt-font-size-meta);
  color: var(--krt-color-muted);
}

/* 0件時 */
.krt-disclosure-empty {
  text-align: center;
  padding: 56px 0;
  color: var(--krt-color-muted);
}

/* レスポンシブ（タブレット以上で3カラム） */
@media (min-width: 768px) {
  .krt-disclosure-row,
  .krt-disclosure-row--head {
    grid-template-columns: 1fr var(--krt-col-date) var(--krt-col-linktext);
    align-items: center;
  }
}

/* 印刷を少し整える（任意） */
@media print {
  .krt-disclosure-row,
  .krt-disclosure-row--head {
    grid-template-columns: 1fr 120px 200px;
    border-color: #ccc;
  }
  a[href]:after {
    content: " (" attr(href) ")";
    font-size: 12px;
  }
}
