/* EmDash版で足したもの（試作 kz-pages.css は変えずに、ここに追記する） */
.qchip { display: inline-flex; align-items: center; }
.qchip:has(input:checked) { background: var(--ink); border-color: var(--ink); color: var(--cream); }
.qchip:has(input:focus-visible) { outline: 2px solid var(--accent, #c27a3a); outline-offset: 2px; }

/* 記事内の表 */
.kz-content .emdash-table-wrapper { overflow-x: auto; margin: 28px 0; }
.kz-content .emdash-table { width: 100%; border-collapse: collapse; font-size: 14px; line-height: 1.7; }
.kz-content .emdash-table th, .kz-content .emdash-table td { border: 1px solid var(--line); padding: 10px 12px; text-align: left; vertical-align: top; background: transparent !important; }
.kz-content .emdash-table thead th { background: var(--ink) !important; color: var(--cream) !important; font-weight: 700; }
.kz-content .emdash-table tbody tr:nth-child(even) td { background: rgba(0,0,0,.03) !important; }
.kz-content .emdash-table tr { background: transparent !important; }

/* フォーム：迷惑投稿よけの見えない欄・確認画面・完了 */
.hp { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
.fm-errors { border: 1px solid #b4532a; background: rgba(180,83,42,.06); padding: 14px 18px; margin: 0 0 20px; font-size: 14px; line-height: 1.8; }
.fm-errors li { list-style: none; }
.fm-confirm dl { display: grid; grid-template-columns: 9em 1fr; gap: 0; border-top: 1px solid var(--line); margin: 0 0 28px; }
.fm-confirm dt, .fm-confirm dd { padding: 12px 0; border-bottom: 1px solid var(--line); margin: 0; font-size: 15px; line-height: 1.8; }
.fm-confirm dt { color: var(--sub); font-size: 13px; }
.fm-confirm dd { white-space: pre-wrap; word-break: break-word; }
.fm-btns { display: flex; gap: 12px; flex-wrap: wrap; }
.fm-done h2 { font-family: var(--serif); font-size: 26px; margin: 0 0 14px; }
.fm-done p { line-height: 1.9; margin: 0 0 12px; }
@media (max-width: 600px) { .fm-confirm dl { grid-template-columns: 1fr; } .fm-confirm dt { border-bottom: 0; padding-bottom: 0; } }
