/* ==========================================================================
   Žodynas — sailing dictionary design
   Chart-card system: pale sea-mist paper, deep chart-navy ink, coral accent
   for interaction, muted seafoam for structure. Fonts: the theme's own
   (no web fonts are loaded: plan 005, M10).
   ========================================================================== */

:root {
	--dict-paper: #f4f6f5;
	--dict-paper-raised: #ffffff;
	--dict-ink: #0f2a3d;
	--dict-ink-soft: #4a5c68;
	--dict-accent: #ff6b35;
	--dict-second: #2f6f63;
	--dict-line: #d7ddd9;
	--dict-display: inherit;
	--dict-serif: inherit;
	--dict-mono: inherit;
}

/* A short diagonal tick, borrowed from a compass-rose graduation mark —
   used everywhere the dictionary needs a wayfinding mark instead of a
   generic bullet or dash. */
.zgd-tick {
	display: inline-block;
	width: 1px;
	height: 12px;
	background: var(--dict-line);
	transform: rotate(22deg);
	vertical-align: middle;
}

/* ---------- Single term page ---------- */

.zgd-main {
	background: var(--dict-paper);
	padding: 64px 24px 96px;
	box-sizing: border-box;
}

.zgd-card {
	max-width: 720px;
	margin: 0 auto;
	box-sizing: border-box;
}

@media (max-width: 480px) {
	.zgd-main {
		padding: 40px 18px 64px;
	}
}

.zgd-eyebrow {
	display: flex;
	align-items: center;
	gap: 10px;
	font-family: var(--dict-mono);
	font-size: 12px;
	font-weight: 500;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--dict-ink-soft);
	margin-bottom: 40px;
}

.zgd-eyebrow a {
	color: var(--dict-ink-soft);
	text-decoration: none;
	border-bottom: 1px solid transparent;
	transition: color 0.15s ease, border-color 0.15s ease;
}

.zgd-eyebrow a:hover,
.zgd-eyebrow a:focus-visible {
	color: var(--dict-accent);
	border-color: var(--dict-accent);
}

.zgd-eyebrow-current {
	color: var(--dict-ink);
}

.zgd-head {
	margin-bottom: 32px;
}

.zgd-headword {
	font-family: var(--dict-display);
	font-weight: 700;
	font-size: clamp(40px, 7vw, 64px);
	line-height: 1.05;
	letter-spacing: -0.01em;
	color: var(--dict-ink);
	margin: 0 0 14px;
}

.zgd-en-headword {
	display: flex;
	align-items: center;
	gap: 8px;
	font-family: var(--dict-mono);
	font-size: 13px;
	font-weight: 500;
	letter-spacing: 0.1em;
	color: var(--dict-second);
	margin: 0 0 12px;
}

.zgd-category {
	display: inline-block;
	font-family: var(--dict-mono);
	font-size: 11px;
	font-weight: 600;
	letter-spacing: 0.1em;
	color: var(--dict-second);
	background: rgba(47, 111, 99, 0.08);
	border: 1px solid rgba(47, 111, 99, 0.25);
	border-radius: 3px;
	padding: 4px 9px;
	margin: 0;
}

.zgd-rule {
	border: none;
	border-top: 1px solid var(--dict-line);
	margin: 0 0 32px;
}

.zgd-body {
	margin-bottom: 8px;
}

.zgd-def-lt {
	font-family: var(--dict-serif);
	font-size: 19px;
	line-height: 1.75;
	color: var(--dict-ink);
	max-width: 62ch;
	margin: 0 0 28px;
}

.zgd-def-en {
	font-family: var(--dict-serif);
	font-style: italic;
	font-size: 16px;
	line-height: 1.7;
	color: var(--dict-ink-soft);
	max-width: 62ch;
	margin: 0 0 32px;
	padding: 2px 0 2px 20px;
	border-left: 2px solid var(--dict-second);
}

.zgd-en-label {
	display: inline-block;
	font-family: var(--dict-mono);
	font-style: normal;
	font-size: 11px;
	font-weight: 600;
	letter-spacing: 0.1em;
	color: var(--dict-second);
	margin-right: 10px;
	vertical-align: 2px;
}

.zgd-adjacent {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: baseline;
	gap: 12px 20px;
	margin-bottom: 40px;
}

.zgd-adjacent-link {
	min-width: 0;
	overflow-wrap: break-word;
}

.zgd-adjacent-link {
	font-family: var(--dict-mono);
	font-size: 13px;
	font-weight: 500;
	letter-spacing: 0.03em;
	color: var(--dict-ink);
	text-decoration: none;
	display: inline-flex;
	align-items: center;
	gap: 8px;
	transition: color 0.15s ease;
}

.zgd-adjacent-link:hover,
.zgd-adjacent-link:focus-visible {
	color: var(--dict-accent);
}

.zgd-next {
	margin-left: auto;
	text-align: right;
}

.zgd-arrow {
	color: var(--dict-accent);
}

.zgd-back {
	font-family: var(--dict-mono);
	font-size: 13px;
	margin: 0;
}

.zgd-back a {
	color: var(--dict-ink-soft);
	text-decoration: none;
	display: inline-flex;
	align-items: center;
	gap: 8px;
	transition: color 0.15s ease;
}

.zgd-back a:hover,
.zgd-back a:focus-visible {
	color: var(--dict-accent);
}

.zgd-count {
	color: var(--dict-line);
}

/* ---------- Index page (/zodynas/) ---------- */

/* The hub page is plain content (no Bold Builder section), and the site runs
   content-width-wide, so nothing boxes it: give it the theme's own 1200px
   container and side gutter. */
.zgd-index .site-main .entry-content-inner {
	max-width: calc(1200px + 2 * var(--content-padding, 20px));
	margin: 0 auto;
	padding: 48px var(--content-padding, 20px) 96px;
	box-sizing: border-box;
}

@media (max-width: 480px) {
	.zgd-index .site-main .entry-content-inner {
		padding: 32px 16px 64px;
	}
}

.zgd-index h1.bt_bb_headline_tag {
	font-family: var(--dict-display);
	font-weight: 700;
	letter-spacing: -0.01em;
	color: var(--dict-ink);
}

.zgd-index-intro {
	font-family: var(--dict-serif);
	font-style: italic;
	font-size: 17px;
	line-height: 1.7;
	color: var(--dict-ink-soft);
	max-width: 62ch;
	margin-top: 8px;
}

.zgd-index-count {
	font-family: var(--dict-mono);
	font-size: 12px;
	font-weight: 600;
	letter-spacing: 0.08em;
	color: var(--dict-second);
	text-transform: uppercase;
	margin: 20px 0 0;
}

ul.glossary-terms-list {
	list-style: none;
	margin: 40px 0 0;
	padding: 0;
	column-count: 3;
	column-gap: 32px;
	font-family: var(--dict-display);
}

@media (max-width: 900px) {
	ul.glossary-terms-list {
		column-count: 2;
	}
}

@media (max-width: 560px) {
	ul.glossary-terms-list {
		column-count: 1;
	}
}

ul.glossary-terms-list li {
	break-inside: avoid;
	padding: 7px 0;
	border-bottom: 1px solid var(--dict-line);
}

ul.glossary-terms-list li a {
	display: flex;
	align-items: center;
	gap: 9px;
	font-size: 15px;
	font-weight: 500;
	color: var(--dict-ink);
	text-decoration: none;
	transition: color 0.15s ease;
}

ul.glossary-terms-list li a::before {
	content: "";
	display: inline-block;
	width: 1px;
	height: 11px;
	background: var(--dict-second);
	transform: rotate(22deg);
	flex: none;
}

ul.glossary-terms-list li a:hover,
ul.glossary-terms-list li a:focus-visible {
	color: var(--dict-accent);
}

ul.glossary-terms-list li a:hover::before,
ul.glossary-terms-list li a:focus-visible::before {
	background: var(--dict-accent);
}

/* A–Z jump bar and letter headings on the hub. */
.zgd-az {
	display: flex;
	flex-wrap: wrap;
	gap: 6px 10px;
	margin: 24px 0 0;
	font-family: var(--dict-mono);
	font-weight: 600;
}

.zgd-az a {
	display: inline-block;
	min-width: 1.6em;
	padding: 4px 6px;
	text-align: center;
	color: var(--dict-ink);
	text-decoration: none;
	border: 1px solid var(--dict-line);
}

.zgd-az-empty {
	display: inline-block;
	min-width: 1.6em;
	padding: 4px 6px;
	text-align: center;
	color: var(--dict-line);
	border: 1px solid transparent;
}

.zgd-az a:hover,
.zgd-az a:focus-visible {
	color: var(--dict-accent);
	border-color: var(--dict-accent);
}

h2.zgd-letter {
	margin: 40px 0 0;
	font-family: var(--dict-display);
	color: var(--dict-second);
	scroll-margin-top: 120px;
}

h2.zgd-letter + ul.glossary-terms-list {
	margin-top: 12px;
}

/* Error-report link on the term page. */
.zgd-report {
	margin-top: 24px;
	font-size: 13px;
	color: var(--dict-ink-soft);
}

.zgd-report a {
	color: var(--dict-second);
}

/* Respect reduced motion preferences. */
@media (prefers-reduced-motion: reduce) {
	.zgd-eyebrow a,
	.zgd-adjacent-link,
	.zgd-back a,
	ul.glossary-terms-list li a,
	ul.glossary-terms-list li a::before {
		transition: none;
	}
}
