/* 共通フォーム */
.zkb-form,
.zkb-filter-form { display:grid; gap:16px; margin:24px 0; }
.zkb-form input[type="text"], .zkb-form input[type="datetime-local"], .zkb-form input[type="number"], .zkb-form textarea, .zkb-form select, .zkb-form input[type="file"], .zkb-filter-form input[type="text"], .zkb-filter-form select { width:100%; max-width:720px; padding:10px 12px; border:1px solid #d1d5db; border-radius:10px; box-sizing:border-box; background:#fff; }
.zkb-form button, .zkb-filter-form button { width:fit-content; padding:10px 18px; border:0; border-radius:10px; cursor:pointer; background:#111827; color:#fff; }
/* 一覧 */
.zkb-board-list { display:grid; gap:18px; }
.zkb-card { border:1px solid #e5e7eb; border-radius:14px; padding:16px; background:#fff; }
.zkb-card-grid { display:grid; grid-template-columns:220px 1fr; gap:16px; }
.zkb-card-image img { width:100%; height:auto; display:block; border-radius:12px; }
.zkb-no-image { width:100%; min-height:140px; display:grid; place-items:center; border-radius:12px; background:#f3f4f6; color:#6b7280; font-size:13px; }
.zkb-card-title { margin:0 0 10px; line-height:1.5; }
.zkb-card-title a { text-decoration:none; }
.zkb-meta, .zkb-extra-meta { display:flex; flex-wrap:wrap; gap:10px 14px; font-size:14px; color:#4b5563; margin-bottom:10px; }
.zkb-summary { line-height:1.8; margin-bottom:10px; }
.zkb-notice { padding:12px 16px; background:#ecfdf5; border:1px solid #10b981; border-radius:10px; margin-bottom:16px; }
/* 個別ページ */
.zkb-detail-meta { margin-top:32px; padding:18px; border:1px solid #e5e7eb; border-radius:14px; background:#fff; }
.zkb-detail-meta ul { margin:0; padding-left:20px; }
.zkb-image-gallery { display:grid; grid-template-columns:repeat(auto-fill, minmax(180px, 1fr)); gap:12px; margin-top:16px; }
.zkb-image-item img { width:100%; height:auto; display:block; border-radius:12px; }
@media (max-width: 768px) { .zkb-card-grid { grid-template-columns:1fr; } }
