@charset "UTF-8";
/**
 * Glossary — 用語辞典の索引と記事内ツールチップ装飾
 *
 * template-parts/glossary-index.php と
 * CM Tooltip Glossary が生成するツールチップに対応するスタイル。
 *
 * @package dgb-child
 */

.dgb-glossary-index {
	max-width: var(--dgb-max-content);
	margin-inline: auto;
	padding: var(--dgb-space-xl) var(--dgb-container-pad-x);
	display: flex;
	flex-direction: column;
	gap: var(--dgb-space-xl);
}

.dgb-glossary-index__group {
	display: flex;
	flex-direction: column;
	gap: var(--dgb-space-sm);
}

.dgb-glossary-index__heading {
	font-size: var(--dgb-fs-h4);
	font-weight: var(--dgb-fw-bold);
	color: var(--dgb-color-primary);
	margin: 0;
	padding-bottom: var(--dgb-space-xs);
	border-bottom: 2px solid var(--dgb-color-accent);
}

.dgb-glossary-index__list {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-wrap: wrap;
	gap: var(--dgb-space-xs);
}

.dgb-glossary-index__item a {
	display: inline-block;
	min-width: 2.5rem;
	padding: 0.5rem 0.75rem;
	text-align: center;
	background: var(--dgb-color-bg-soft);
	color: var(--dgb-color-primary);
	border-radius: var(--dgb-radius-md);
	font-weight: var(--dgb-fw-medium);
	text-decoration: none;
	transition: background var(--dgb-dur-base) var(--dgb-ease), color var(--dgb-dur-base) var(--dgb-ease);
}

.dgb-glossary-index__item a:hover {
	background: var(--dgb-color-accent);
	color: #fff;
}

/* CM Tooltip Glossary が出力するリンクの装飾 */
.glossaryLink,
a.glossaryLink {
	border-bottom: 1px dashed var(--dgb-color-accent);
	color: var(--dgb-color-primary);
	cursor: help;
	text-decoration: none;
}


/* === 用語辞典 索引 listNav はみ出し対策 (2026-05-17) === */
.cm-glossary,
.cm-glossary .glossary-container {
	max-width: 100%;
	box-sizing: border-box;
}

#glossaryList-nav.listNav {
	max-width: 100%;
	box-sizing: border-box;
}

.cm-glossary .listNav .ln-letters {
	flex-wrap: wrap;
	max-width: 100%;
}

.cm-glossary .listNav .ln-letters a {
	float: none;
	flex: 0 0 auto;
}

.glossaryList {
	max-width: 100%;
}
