/**
 * ifuk-glossary: ネタダナ向け調整
 */

:root {
	--ifgl-accent: var(--wp--preset--color--accent, #3b82c4);
	--ifgl-ink: var(--wp--preset--color--text, #2b2320);
	--ifgl-muted: var(--wp--preset--color--text-light, #6b5f58);
	--ifgl-line: var(--wp--preset--color--text, #2b2320);
	--ifgl-soft: var(--wp--preset--color--primary-soft, #fdebc8);
	--ifgl-link: var(--wp--preset--color--text, #2b2320);
}

.ifgl-archive,
.ifgl-single {
	width: 100%;
}

.ifgl-page-header {
	padding-top: clamp(24px, 5vw, 48px);
}

.ifgl-page-header h1,
.ifgl-type-section__header h2,
.ifgl-group h3,
.ifgl-term-card__title,
.ifgl-term-header h1 {
	font-weight: 900;
	letter-spacing: 0.04em;
}

.ifgl-page-header > p:last-child,
.ifgl-type-section__header p {
	color: var(--ifgl-muted);
}

.ifgl-type-nav a,
.ifgl-index-nav a,
.ifgl-back-link {
	border: 2px solid var(--ifgl-line);
	background: var(--wp--preset--color--white);
	color: var(--ifgl-ink);
	box-shadow: 0 2px 0 color-mix(in srgb, var(--ifgl-ink) 18%, transparent);
}

.ifgl-type-nav a:hover,
.ifgl-type-nav a:focus-visible,
.ifgl-index-nav a:hover,
.ifgl-index-nav a:focus-visible,
.ifgl-back-link:hover,
.ifgl-back-link:focus-visible {
	border-color: var(--ifgl-ink);
	background: var(--wp--preset--color--primary-soft);
	color: var(--ifgl-ink);
}

.ifgl-type-nav a[aria-current="page"] {
	border-color: var(--ifgl-ink);
	background: var(--ifgl-ink);
	color: var(--wp--preset--color--white);
}

.ifgl-type-nav a:focus-visible,
.ifgl-index-nav a:focus-visible,
.ifgl-term-card:focus-visible,
.ifgl-related-term-card:focus-visible,
.ifgl-chip-list a:focus-visible,
.ifgl-back-link:focus-visible,
.ifgl-term-content a:focus-visible,
.ifgl-sources a:focus-visible,
.ifgl-related a:focus-visible {
	outline-color: var(--ifgl-accent);
}

.ifgl-type-section + .ifgl-type-section,
.ifgl-group {
	border-color: color-mix(in srgb, var(--ifgl-ink) 22%, transparent);
}

.ifgl-type-section__count {
	background: var(--wp--preset--color--accent-soft);
	color: color-mix(in srgb, var(--ifgl-accent) 65%, var(--ifgl-ink));
}

.ifgl-index-nav {
	border: 3px solid var(--ifgl-line);
	border-radius: 14px;
	background: var(--wp--preset--color--primary-soft);
	box-shadow: 0 4px 0 color-mix(in srgb, var(--ifgl-ink) 16%, transparent);
}

.ifgl-index-nav span {
	color: color-mix(in srgb, var(--ifgl-muted) 55%, var(--wp--preset--color--white));
}

.ifgl-term-grid {
	gap: 16px;
}

.ifgl-term-card,
.ifgl-related-term-card {
	border: 3px solid var(--ifgl-line);
	border-radius: 14px;
	background: var(--wp--preset--color--white);
	color: var(--ifgl-ink);
	box-shadow: none;
}

.ifgl-term-card:hover,
.ifgl-term-card:focus-visible,
.ifgl-related-term-card:hover,
.ifgl-related-term-card:focus-visible {
	border-color: var(--ifgl-line);
	box-shadow: 0 5px 0 color-mix(in srgb, var(--ifgl-ink) 18%, transparent);
	transform: translateY(-3px);
	text-decoration: none;
}

.ifgl-type-nav a:hover,
.ifgl-index-nav a:hover,
.ifgl-chip-list a:hover,
.ifgl-back-link:hover {
	text-decoration: none;
}

.ifgl-type-badge {
	background: var(--wp--preset--color--surface);
	color: var(--ifgl-muted);
}

.ifgl-type-badge--stage {
	background: var(--wp--preset--color--accent-soft);
	color: color-mix(in srgb, var(--ifgl-accent) 65%, var(--ifgl-ink));
}

.ifgl-type-badge--netag {
	background: var(--wp--preset--color--primary-soft);
	color: var(--ifgl-ink);
}

.ifgl-type-badge--industry {
	background: var(--wp--preset--color--surface);
	color: var(--ifgl-muted);
}

.ifgl-term-card__action,
.ifgl-term-content a,
.ifgl-sources a,
.ifgl-related li a:hover,
.ifgl-related li a:focus-visible {
	color: var(--ifgl-accent);
}

.ifgl-term-content a:hover,
.ifgl-sources a:hover,
.ifgl-related li a:hover {
	text-decoration: underline;
	text-decoration-thickness: 0.08em;
	text-underline-offset: 0.25em;
}

.ifgl-empty {
	border: 3px dashed var(--ifgl-line);
	border-radius: 14px;
	background: transparent;
	text-align: center;
}

.ifgl-term-header {
	border-bottom: 3px solid var(--ifgl-line);
}

.ifgl-term-lead {
	border: 2px solid var(--ifgl-line);
	background: var(--wp--preset--color--primary-soft);
}

.ifgl-term-relations,
.ifgl-sources,
.ifgl-related {
	border: 3px solid var(--ifgl-line);
	border-radius: 14px;
	background: var(--wp--preset--color--white);
}

.ifgl-term-relations {
	background: var(--wp--preset--color--accent-soft);
}

.ifgl-related li,
.ifgl-related li:last-child {
	border-color: color-mix(in srgb, var(--ifgl-ink) 20%, transparent);
}

.ifgl-back-link {
	font-weight: 900;
	text-decoration: none;
}

@media (max-width: 599px) {
	.ifgl-page-header {
		padding-inline: 0;
	}

	.ifgl-page-header > p:last-child {
		font-size: 15px;
	}

	.ifgl-type-nav {
		padding-inline: 0;
	}

	.ifgl-term-card,
	.ifgl-related-term-card {
		padding: 18px;
	}

	.ifgl-term-relations,
	.ifgl-sources,
	.ifgl-related {
		padding: 22px 18px;
	}
}

@media (prefers-reduced-motion: reduce) {
	.ifgl-term-card,
	.ifgl-related-term-card {
		transition: none;
	}

	.ifgl-term-card:hover,
	.ifgl-term-card:focus-visible,
	.ifgl-related-term-card:hover,
	.ifgl-related-term-card:focus-visible {
		transform: none;
	}
}
