/* ==========================================================================
   Law Tech Rants: Keynote Glass
   Tokens → base → glass → header → home → article → archive → footer
   ========================================================================== */

/* ---------- Tokens ---------- */

:root {
	color-scheme: light;
	--ltr-bg: #fbfbfd;
	--ltr-bg-alt: #f2f2f5;
	--ltr-ink: #1d1d1f;
	--ltr-ink-2: #48484c;
	--ltr-ink-3: #6b6b70;
	--ltr-line: rgb(0 0 0 / 0.1);
	--ltr-line-strong: rgb(0 0 0 / 0.16);
	--ltr-accent: #c4163f;
	--ltr-accent-fill: #c4163f;
	--ltr-accent-soft: rgb(196 22 63 / 0.1);
	--ltr-link: #b3123a;
	--ltr-focus: #c4163f;
	--ltr-selection: rgb(196 22 63 / 0.18);

	--ltr-code-bg: #f2f2f5;
	--ltr-code-ink: #1d1d1f;
	--ltr-code-line: rgb(0 0 0 / 0.07);
	--ltr-inline-code-bg: rgb(0 0 0 / 0.055);

	/* Liquid glass */
	--ltr-glass-fill: rgb(251 251 253 / 0.72);
	--ltr-glass-fill-strong: rgb(251 251 253 / 0.82);
	--ltr-glass-rim:
		inset 0 1px 0 rgb(255 255 255 / 0.85),
		inset 0 -1px 0 rgb(0 0 0 / 0.035),
		inset 0 0 0 0.5px rgb(0 0 0 / 0.1);
	--ltr-glass-shadow: 0 10px 34px -6px rgb(0 0 0 / 0.16), 0 2px 6px rgb(0 0 0 / 0.05);
	--ltr-glass-sheen: linear-gradient(180deg, rgb(255 255 255 / 0.55), rgb(255 255 255 / 0) 55%);
	--ltr-glass-filter: blur(24px) saturate(190%);

	--ltr-lead-bg: #0b0b0d;
	--ltr-lead-ink: #f5f5f7;
	--ltr-lead-ink-2: #a8a8ae;
	--ltr-lead-link: #ff6d8a;
	--ltr-lead-rim: none;
	--ltr-logo-back: #c4163f;
	--ltr-logo-front: #1d1d1f;
	--ltr-logo-front-o: 0.72;
	--ltr-logo-rim: 0.55;
	--ltr-logo-dot: #ff4d6d;
	--ltr-radius-tile: 28px;
	--ltr-radius-card: 18px;
	--ltr-bar-h: 52px;
	--ltr-ease: cubic-bezier(0.22, 1, 0.36, 1);
	--ltr-spring: cubic-bezier(0.16, 1, 0.3, 1);
	--ltr-measure: 68ch;
	--ltr-gutter: clamp(1rem, 4vw, 2.5rem);

	--ltr-font: var(--wp--preset--font-family--geist, Geist, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif);
	--ltr-mono: var(--wp--preset--font-family--geist-mono, "Geist Mono", ui-monospace, Menlo, Consolas, monospace);
}

@media (prefers-color-scheme: dark) {
	:root:not([data-theme="light"]) {
		color-scheme: dark;
		--ltr-bg: #000;
		--ltr-bg-alt: #141416;
		--ltr-ink: #f5f5f7;
		--ltr-ink-2: #b4b4ba;
		--ltr-ink-3: #8e8e94;
		--ltr-line: rgb(255 255 255 / 0.12);
		--ltr-line-strong: rgb(255 255 255 / 0.2);
		--ltr-accent: #ff5577;
		--ltr-accent-fill: #d0214b;
		--ltr-accent-soft: rgb(255 85 119 / 0.14);
		--ltr-link: #ff6d8a;
		--ltr-focus: #ff6d8a;
		--ltr-selection: rgb(255 85 119 / 0.3);
		--ltr-code-bg: #111113;
		--ltr-code-ink: #ececf0;
		--ltr-code-line: rgb(255 255 255 / 0.08);
		--ltr-inline-code-bg: rgb(255 255 255 / 0.1);
		--ltr-logo-back: #ff5577;
		--ltr-logo-front: #3a3a3e;
		--ltr-logo-front-o: 0.66;
		--ltr-logo-rim: 0.8;
		--ltr-logo-dot: #ff8aa0;
		--ltr-logo-back: #ff5577;
	--ltr-logo-front: #3a3a3e;
	--ltr-logo-front-o: 0.66;
	--ltr-logo-rim: 0.8;
	--ltr-logo-dot: #ff8aa0;
	--ltr-lead-bg: #1d1d1f;
		--ltr-lead-ink: #f5f5f7;
		--ltr-lead-ink-2: #a8a8ae;
		--ltr-lead-link: #ff6d8a;
		--ltr-lead-rim: inset 0 1px 0 rgb(255 255 255 / 0.14), inset 0 0 0 0.5px rgb(255 255 255 / 0.12);
		--ltr-glass-fill: rgb(28 28 31 / 0.68);
		--ltr-glass-fill-strong: rgb(30 30 33 / 0.84);
		--ltr-glass-rim:
			inset 0 1px 0 rgb(255 255 255 / 0.2),
			inset 0 -1px 0 rgb(0 0 0 / 0.3),
			inset 0 0 0 0.5px rgb(255 255 255 / 0.14);
		--ltr-glass-shadow: 0 12px 40px -8px rgb(0 0 0 / 0.7), 0 2px 6px rgb(0 0 0 / 0.4);
		--ltr-glass-sheen: linear-gradient(180deg, rgb(255 255 255 / 0.09), rgb(255 255 255 / 0) 55%);
	}
}

:root[data-theme="dark"] {
	color-scheme: dark;
	--ltr-bg: #000;
	--ltr-bg-alt: #141416;
	--ltr-ink: #f5f5f7;
	--ltr-ink-2: #b4b4ba;
	--ltr-ink-3: #8e8e94;
	--ltr-line: rgb(255 255 255 / 0.12);
	--ltr-line-strong: rgb(255 255 255 / 0.2);
	--ltr-accent: #ff5577;
	--ltr-accent-fill: #d0214b;
	--ltr-accent-soft: rgb(255 85 119 / 0.14);
	--ltr-link: #ff6d8a;
	--ltr-focus: #ff6d8a;
	--ltr-selection: rgb(255 85 119 / 0.3);
	--ltr-code-bg: #111113;
	--ltr-code-ink: #ececf0;
	--ltr-code-line: rgb(255 255 255 / 0.08);
	--ltr-inline-code-bg: rgb(255 255 255 / 0.1);
	--ltr-lead-bg: #1d1d1f;
	--ltr-lead-ink: #f5f5f7;
	--ltr-lead-ink-2: #a8a8ae;
	--ltr-lead-link: #ff6d8a;
	--ltr-lead-rim: inset 0 1px 0 rgb(255 255 255 / 0.14), inset 0 0 0 0.5px rgb(255 255 255 / 0.12);
	--ltr-glass-fill: rgb(28 28 31 / 0.68);
	--ltr-glass-fill-strong: rgb(30 30 33 / 0.84);
	--ltr-glass-rim:
		inset 0 1px 0 rgb(255 255 255 / 0.2),
		inset 0 -1px 0 rgb(0 0 0 / 0.3),
		inset 0 0 0 0.5px rgb(255 255 255 / 0.14);
	--ltr-glass-shadow: 0 12px 40px -8px rgb(0 0 0 / 0.7), 0 2px 6px rgb(0 0 0 / 0.4);
	--ltr-glass-sheen: linear-gradient(180deg, rgb(255 255 255 / 0.09), rgb(255 255 255 / 0) 55%);
}

/* ---------- Base ---------- */

html {
	-webkit-text-size-adjust: 100%;
	scroll-padding-top: calc(var(--ltr-bar-h) + 24px);
	background: var(--ltr-bg);
}

body {
	background: var(--ltr-bg);
	color: var(--ltr-ink);
	font-family: var(--ltr-font);
	font-feature-settings: "ss01" on, "cv11" on;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	text-rendering: optimizeLegibility;
	transition: background-color 0.4s var(--ltr-ease), color 0.4s var(--ltr-ease);
}

::selection { background: var(--ltr-selection); color: inherit; }

:where(a, button, input, summary, [tabindex]):focus-visible {
	outline: 2px solid var(--ltr-focus);
	outline-offset: 3px;
	border-radius: 6px;
}

a { text-underline-offset: 0.18em; text-decoration-thickness: 1px; }

html { scrollbar-color: var(--ltr-line-strong) transparent; }

.screen-reader-text {
	position: absolute !important;
	width: 1px; height: 1px;
	padding: 0; margin: -1px;
	overflow: hidden; clip: rect(0 0 0 0);
	white-space: nowrap; border: 0;
}

.ltr-main { margin-block-start: 0; }
/* Short pages: keep the footer at the bottom of the window. */
.wp-site-blocks { display: flex; flex-direction: column; min-height: 100vh; min-height: 100dvh; }
.wp-site-blocks > .ltr-main { flex: 1 0 auto; }
.wp-site-blocks > .ltr-footer-wrap { margin-top: auto; }
.wp-site-blocks > * + * { margin-block-start: 0; }

/* Split titles: "Headline — subline" */
.ltr-title__main { display: block; }
.ltr-title__sub {
	display: block;
	margin-top: 0.3em;
	font-size: 0.5em;
	font-weight: 500;
	letter-spacing: -0.012em;
	line-height: 1.25;
	color: var(--ltr-ink-3);
}

/* ---------- Glass material ---------- */

.ltr-glass,
.ltr-bar__inner,
.ltr-search,
.ltr-toc__pill,
.ltr-toc__sheet,
.ltr-code__bar,
.wp-block-navigation__responsive-container.is-menu-open {
	background-color: var(--ltr-glass-fill);
	background-image: var(--ltr-glass-sheen);
	-webkit-backdrop-filter: var(--ltr-glass-filter);
	backdrop-filter: var(--ltr-glass-filter);
	box-shadow: var(--ltr-glass-rim);
}

/* Chromium: one SVG filter blurs, saturates and bends the backdrop at the rim. */
.ltr-refract .ltr-bar__inner,
.ltr-refract .ltr-toc__pill {
	-webkit-backdrop-filter: url(#ltr-lens);
	backdrop-filter: url(#ltr-lens);
}

@media (prefers-reduced-transparency: reduce) {
	.ltr-bar__inner,
	.ltr-search,
	.ltr-toc__pill,
	.ltr-toc__sheet,
	.ltr-code__bar,
	.wp-block-navigation__responsive-container.is-menu-open {
		background-color: var(--ltr-bg-alt) !important;
		-webkit-backdrop-filter: none !important;
		backdrop-filter: none !important;
	}
}

/* ---------- Capsules, chevron links, chips ---------- */

.ltr-capsule,
.wp-block-read-more.ltr-capsule {
	display: inline-flex;
	align-items: center;
	gap: 0.4em;
	min-height: 44px;
	padding: 0 1.35em;
	border-radius: 999px;
	font-size: 1rem;
	font-weight: 500;
	letter-spacing: -0.01em;
	text-decoration: none;
	transition: transform 0.35s var(--ltr-spring), background-color 0.25s var(--ltr-ease), box-shadow 0.25s var(--ltr-ease);
}
.ltr-capsule--fill,
.wp-block-read-more.ltr-capsule--fill {
	background: var(--ltr-accent-fill);
	color: #fff;
	box-shadow: inset 0 1px 0 rgb(255 255 255 / 0.25), 0 6px 18px -8px var(--ltr-accent-fill);
}
.ltr-capsule--fill:hover { background: color-mix(in srgb, var(--ltr-accent-fill) 88%, #000); color: #fff; }
.ltr-capsule:active { transform: scale(0.97); }

.ltr-chevron-link { margin: 0; }
.ltr-chevron-link a,
.wp-block-read-more.ltr-chevron {
	display: inline-flex;
	align-items: center;
	min-height: 44px;
	color: var(--ltr-link);
	font-size: 1.0625rem;
	font-weight: 500;
	text-decoration: none;
}
.ltr-chevron-link a::after,
.wp-block-read-more.ltr-chevron::after {
	content: "";
	width: 0.42em; height: 0.42em;
	margin-left: 0.45em;
	border: solid currentColor;
	border-width: 1.6px 1.6px 0 0;
	transform: rotate(45deg) translateY(1px);
	transition: transform 0.3s var(--ltr-ease);
}
.ltr-chevron-link a:hover { text-decoration: underline; }
.ltr-chevron-link a:hover::after { transform: translateX(3px) rotate(45deg) translateY(1px); }

.ltr-chips {
	display: flex;
	flex-wrap: wrap;
	gap: 0.4rem;
	margin: 0;
	font-size: 0.8125rem;
	line-height: 1;
}
.ltr-chips a {
	display: inline-flex;
	align-items: center;
	min-height: 28px;
	padding: 0 0.75em;
	border-radius: 999px;
	background: var(--ltr-inline-code-bg);
	color: var(--ltr-ink-2);
	font-weight: 500;
	text-decoration: none;
	white-space: nowrap;
	transition: background-color 0.2s var(--ltr-ease), color 0.2s var(--ltr-ease);
}
.ltr-chips a:hover { background: var(--ltr-accent-soft); color: var(--ltr-link); }
.ltr-chips .wp-block-post-terms__separator { display: none; }
.ltr-chips--2 a:nth-of-type(n + 3) { display: none; }

.ltr-meta {
	gap: 0.35rem 0.9rem;
	margin: 0;
	color: var(--ltr-ink-3);
	font-size: 0.9375rem;
	font-variant-numeric: tabular-nums;
}
.ltr-meta > p,
.ltr-meta > .wp-block-post-date { margin: 0; }
.ltr-meta > * + *:not(.ltr-chips)::before {
	content: "";
	display: inline-block;
	width: 3px; height: 3px;
	margin-right: 0.9rem;
	border-radius: 50%;
	background: currentColor;
	vertical-align: middle;
	opacity: 0.6;
}
.ltr-meta .ltr-chips { flex-basis: 100%; justify-content: inherit; margin-top: 0.5rem; }
.ltr-meta a { color: inherit; }

/* ---------- Header: glass bar that condenses into a floating capsule ---------- */

.ltr-header {
	position: sticky;
	top: var(--wp-admin--admin-bar--height, 0px);
	z-index: 100;
	height: var(--ltr-bar-h);
	margin: 0 0 calc(var(--ltr-bar-h) * -1);
}
.ltr-main { padding-top: var(--ltr-bar-h); }
.ltr-main.ltr-home { padding-top: 0; }

.ltr-bar {
	position: relative;
	height: var(--ltr-bar-h);
	padding: 0;
}

.ltr-bar__inner {
	position: absolute;
	inset: 0 0 auto 0;
	margin: 0 auto;
	height: var(--ltr-bar-h);
	max-width: 100%;
	padding: 0 max(var(--ltr-gutter), calc((100% - 1180px) / 2));
	gap: 1rem;
	border-radius: 0;
	box-shadow: var(--ltr-glass-rim), 0 0.5px 0 var(--ltr-line-strong), 0 6px 24px -14px rgb(0 0 0 / 0.18);
	transition:
		max-width 0.6s var(--ltr-ease),
		top 0.6s var(--ltr-ease),
		padding 0.6s var(--ltr-ease),
		border-radius 0.6s var(--ltr-ease),
		box-shadow 0.6s var(--ltr-ease),
		height 0.6s var(--ltr-ease);
}

.ltr-bar.is-condensed .ltr-bar__inner {
	top: 10px;
	max-width: min(980px, calc(100% - 20px));
	height: 48px;
	padding: 0 8px 0 14px;
	border-radius: 999px;
	box-shadow: var(--ltr-glass-rim), var(--ltr-glass-shadow);
}

.ltr-brand { gap: 0.55rem; flex-shrink: 0; }
.ltr-brand__mark { display: flex; line-height: 0; }
.ltr-logo-defs { position: absolute; width: 0; height: 0; overflow: hidden; }

.ltr-brand__name {
	margin: 0;
	font-size: 1.0625rem;
	font-weight: 650;
	letter-spacing: -0.022em;
	white-space: nowrap;
}
.ltr-brand__name a { color: var(--ltr-ink); text-decoration: none; }
.ltr-brand__text { display: flex; flex-direction: column; line-height: 1.1; }
.ltr-brand__text > * { margin: 0 !important; }
.ltr-brand__by { font-size: 0.6875rem; font-weight: 450; color: var(--ltr-ink-3); white-space: nowrap; }

/* Three-slot bar: brand | capsule nav | utilities */
.ltr-bar__inner.wp-block-group {
	display: grid !important;
	grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
	align-items: center;
}
.ltr-bar__inner > .ltr-actions { justify-self: end; }

/* The nav is a capsule set inside the glass bar */
.ltr-nav { font-size: 0.875rem; }
.ltr-nav .wp-block-navigation__container {
	gap: 2px;
	padding: 3px;
	border-radius: 999px;
	background: var(--ltr-inline-code-bg);
	box-shadow: inset 0 0 0 0.5px var(--ltr-line);
}
.ltr-nav .wp-block-navigation-item { background: none !important; }
.ltr-nav .wp-block-navigation-item__content {
	display: inline-flex;
	align-items: center;
	min-height: 32px;
	padding: 0 1rem !important;
	border-radius: 999px;
	color: var(--ltr-ink-2);
	font-weight: 500;
	letter-spacing: -0.005em;
	text-decoration: none;
	transition: color 0.2s var(--ltr-ease), background-color 0.25s var(--ltr-ease), box-shadow 0.25s var(--ltr-ease);
}
.ltr-nav .wp-block-navigation-item__content:hover { color: var(--ltr-ink); }
.ltr-nav .current-menu-item > .wp-block-navigation-item__content,
.ltr-nav .wp-block-navigation-item__content[aria-current="page"],
.ltr-nav .wp-block-navigation-item__content[aria-expanded="true"] {
	color: var(--ltr-ink);
	background: var(--ltr-glass-fill-strong);
	background-image: var(--ltr-glass-sheen);
	box-shadow: var(--ltr-glass-rim), 0 2px 8px -3px rgb(0 0 0 / 0.2);
}
.ltr-nav__topics .wp-block-navigation-item__content::after {
	content: "";
	width: 0.36em; height: 0.36em;
	margin-left: 0.5em;
	border: solid currentColor;
	border-width: 0 1.5px 1.5px 0;
	transform: translateY(-2px) rotate(45deg);
	opacity: 0.7;
	transition: transform 0.3s var(--ltr-ease);
}
.ltr-nav__topics .wp-block-navigation-item__content[aria-expanded="true"]::after { transform: translateY(1px) rotate(-135deg); }

/* Search capsule with shortcut hint */
.ltr-search-btn {
	display: inline-flex;
	align-items: center;
	gap: 0.45rem;
	height: 36px;
	padding: 0 0.5rem 0 0.8rem;
	border: 0;
	border-radius: 999px;
	background: var(--ltr-inline-code-bg);
	box-shadow: inset 0 0 0 0.5px var(--ltr-line);
	color: var(--ltr-ink-3);
	font: inherit;
	font-size: 0.875rem;
	cursor: pointer;
	transition: color 0.2s var(--ltr-ease), background-color 0.2s var(--ltr-ease);
}
.ltr-search-btn:hover { color: var(--ltr-ink); }
.ltr-search-btn svg { color: var(--ltr-ink-2); flex-shrink: 0; }
.ltr-search-btn__label { margin-right: 0.75rem; }
.ltr-search-btn__kbd {
	padding: 2px 6px;
	border-radius: 6px;
	background: var(--ltr-bg);
	box-shadow: inset 0 0 0 0.5px var(--ltr-line-strong), 0 1px 0 var(--ltr-line);
	font-family: var(--ltr-font);
	font-size: 0.6875rem;
	font-weight: 550;
	color: var(--ltr-ink-3);
	white-space: nowrap;
}

/* Topics sheet (popover), anchored under the bar */
.ltr-topics-sheet {
	position: fixed;
	inset: calc(var(--wp-admin--admin-bar--height, 0px) + 68px) auto auto 50%;
	translate: -50% 0;
	width: min(760px, calc(100vw - 24px));
	max-height: min(70vh, 620px);
	margin: 0;
	padding: 1.25rem 1.25rem 1.4rem;
	overflow-y: auto;
	border: 0;
	border-radius: 26px;
	color: var(--ltr-ink);
	background-color: var(--ltr-glass-fill-strong);
	background-image: var(--ltr-glass-sheen);
	-webkit-backdrop-filter: var(--ltr-glass-filter);
	backdrop-filter: var(--ltr-glass-filter);
	box-shadow: var(--ltr-glass-rim), var(--ltr-glass-shadow);
	opacity: 0;
	transform: translateY(-8px) scale(0.98);
	transform-origin: top center;
	transition: opacity 0.3s var(--ltr-ease), transform 0.45s var(--ltr-spring), overlay 0.3s allow-discrete, display 0.3s allow-discrete;
}
.ltr-topics-sheet:not(:popover-open) { display: none; }
.ltr-topics-sheet:popover-open { opacity: 1; transform: none; }
@starting-style { .ltr-topics-sheet:popover-open { opacity: 0; transform: translateY(-8px) scale(0.98); } }
.ltr-topics-sheet::backdrop { background: rgb(0 0 0 / 0.1); }
.ltr-topics-sheet__head { margin: 0 0.25rem 1rem !important; gap: 1rem; }
.ltr-topics-sheet__title { margin: 0; font-size: 1.1875rem; font-weight: 700; letter-spacing: -0.025em; }
.ltr-topics-sheet .ltr-chevron-link a { min-height: 0; font-size: 0.9375rem; }
.ltr-topics-sheet .ltr-topics.wp-block-tag-cloud { gap: 0.45rem; }
.ltr-topics-sheet .ltr-topics.wp-block-tag-cloud a {
	background-color: var(--ltr-bg);
	background-image: none;
	box-shadow: inset 0 0 0 0.5px var(--ltr-line-strong);
}
.ltr-topics-sheet .ltr-topics.wp-block-tag-cloud a:hover { box-shadow: inset 0 0 0 0.5px var(--ltr-line-strong), 0 6px 16px -8px rgb(0 0 0 / 0.25); }

.ltr-actions { display: flex; align-items: center; gap: 0.35rem; flex-shrink: 0; }

.ltr-icon-btn {
	display: inline-grid;
	place-items: center;
	width: 40px; height: 40px;
	padding: 0;
	border: 0;
	border-radius: 50%;
	background: transparent;
	color: var(--ltr-ink);
	cursor: pointer;
	transition: background-color 0.2s var(--ltr-ease);
}
.ltr-icon-btn:hover { background: var(--ltr-inline-code-bg); }

/* Theme switch: a glass lens that slides between sun and moon */
.ltr-switch {
	padding: 0;
	border: 0;
	background: none;
	cursor: pointer;
	-webkit-tap-highlight-color: transparent;
}
.ltr-switch__track {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: space-between;
	box-sizing: border-box;
	width: 58px; height: 32px;
	padding: 0 9px;
	border-radius: 999px;
	background: var(--ltr-inline-code-bg);
	box-shadow: inset 0 0 0 0.5px var(--ltr-line-strong), inset 0 1px 3px rgb(0 0 0 / 0.08);
	color: var(--ltr-ink-3);
}
.ltr-switch__sun, .ltr-switch__moon { position: relative; z-index: 1; transition: color 0.3s var(--ltr-ease); }
.ltr-switch__thumb {
	position: absolute;
	top: 3px; left: 3px;
	width: 26px; height: 26px;
	border-radius: 50%;
	background: rgb(255 255 255 / 0.92);
	background-image: linear-gradient(180deg, rgb(255 255 255 / 0.95), rgb(255 255 255 / 0.6));
	box-shadow: inset 0 1px 0 #fff, inset 0 0 0 0.5px rgb(0 0 0 / 0.14), 0 3px 10px -2px rgb(0 0 0 / 0.4), 0 1px 2px rgb(0 0 0 / 0.15);
	-webkit-backdrop-filter: blur(3px) saturate(160%);
	backdrop-filter: blur(3px) saturate(160%);
	transition: none;
}
.ltr-ready .ltr-switch__thumb { transition: transform 0.5s var(--ltr-spring); }
.ltr-switch:active .ltr-switch__thumb { scale: 1.12 1; }
.ltr-switch[aria-checked="true"] .ltr-switch__thumb { transform: translateX(26px); }
.ltr-switch[aria-checked="false"] .ltr-switch__sun { color: #d97706; }
.ltr-switch[aria-checked="true"] .ltr-switch__moon { color: #9a6700; }

/* Search sheet (popover) */
.ltr-search {
	position: fixed;
	inset: calc(var(--wp-admin--admin-bar--height, 0px) + 68px) auto auto 50%;
	translate: -50% 0;
	width: min(640px, calc(100vw - 24px));
	margin: 0;
	padding: 10px 10px 14px;
	border: 0;
	border-radius: 24px;
	color: var(--ltr-ink);
	background-color: var(--ltr-glass-fill-strong);
	box-shadow: var(--ltr-glass-rim), var(--ltr-glass-shadow);
	opacity: 0;
	transform: translateY(-8px) scale(0.98);
	transition: opacity 0.3s var(--ltr-ease), transform 0.4s var(--ltr-spring), overlay 0.3s allow-discrete, display 0.3s allow-discrete;
}
.ltr-search:popover-open { opacity: 1; transform: none; }
@starting-style { .ltr-search:popover-open { opacity: 0; transform: translateY(-8px) scale(0.98); } }
.ltr-search::backdrop { background: rgb(0 0 0 / 0.12); }

.ltr-search__form {
	display: flex;
	align-items: center;
	gap: 0.6rem;
	height: 52px;
	padding: 0 14px;
	border-radius: 16px;
	background: var(--ltr-inline-code-bg);
	color: var(--ltr-ink-3);
}
.ltr-search__form input {
	flex: 1;
	min-width: 0;
	border: 0;
	background: transparent;
	color: var(--ltr-ink);
	font: inherit;
	font-size: 1.0625rem;
	letter-spacing: -0.01em;
	outline: none;
}
.ltr-search__form input::placeholder { color: var(--ltr-ink-3); }
.ltr-search__form input::-webkit-search-cancel-button { display: none; }
.ltr-search__esc {
	padding: 3px 7px;
	border-radius: 6px;
	box-shadow: inset 0 0 0 1px var(--ltr-line-strong);
	font-family: var(--ltr-mono);
	font-size: 0.6875rem;
	color: var(--ltr-ink-3);
}
.ltr-search__hint {
	display: flex;
	flex-wrap: wrap;
	gap: 0.3rem 0.9rem;
	margin: 12px 8px 0;
	font-size: 0.875rem;
	color: var(--ltr-ink-3);
}
.ltr-search__hint a { color: var(--ltr-link); text-decoration: none; }
.ltr-search__hint a:hover { text-decoration: underline; }

/* Mobile navigation overlay as a glass sheet */
.ltr-nav .wp-block-navigation__responsive-container-open,
.ltr-nav .wp-block-navigation__responsive-container-close {
	width: 40px; height: 40px;
	align-items: center; justify-content: center;
	border-radius: 50%;
	color: var(--ltr-ink);
}
/* A backdrop-filter on the bar would trap the fixed overlay inside the bar; drop it while the menu is open. */
.ltr-bar__inner:has(.is-menu-open) {
	-webkit-backdrop-filter: none !important;
	backdrop-filter: none !important;
	background-color: var(--ltr-bg) !important;
}
.wp-block-navigation__responsive-container.is-menu-open {
	position: fixed !important;
	inset: 0 !important;
	z-index: 200 !important;
	-webkit-backdrop-filter: blur(24px) saturate(180%);
	backdrop-filter: blur(24px) saturate(180%);
	background-color: var(--ltr-glass-fill-strong) !important;
	color: var(--ltr-ink) !important;
	padding: calc(var(--wp-admin--admin-bar--height, 0px) + 20px) 24px 32px !important;
}
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content {
	padding-top: 56px !important;
	align-items: flex-start !important;
}
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container {
	gap: 0.25rem !important;
	align-items: flex-start !important;
}
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content {
	font-size: 1.375rem;
	font-weight: 600;
	letter-spacing: -0.02em;
	color: var(--ltr-ink) !important;
	padding: 0.35rem 0 !important;
	min-height: 0;
	background: none !important;
}

@media (max-width: 899px) {
	.ltr-bar.is-condensed .ltr-bar__inner { padding: 0 6px 0 12px; }
	.ltr-search-btn__label { display: none; }
}
@media (max-width: 599px) {
	.ltr-bar__inner.wp-block-group { grid-template-columns: minmax(0, 1fr) auto auto; gap: 0.25rem; }
	.ltr-nav { order: 3; }
	.ltr-actions { gap: 0.15rem; }
	.ltr-search-btn { width: 40px; height: 40px; padding: 0; justify-content: center; background: transparent; box-shadow: none; }
	.ltr-search-btn__kbd { display: none; }
	.ltr-nav .wp-block-navigation__container { padding: 0; background: none; box-shadow: none; }
}
@media (max-width: 400px) {
	.ltr-brand__name { font-size: 1rem; }
	.ltr-switch__track { width: 52px; padding: 0 7px; }
	.ltr-switch[aria-checked="true"] .ltr-switch__thumb { transform: translateX(20px); }
}

/* ---------- Bands ---------- */

.ltr-band {
	padding-block: clamp(3rem, 6vw, 5rem);
	padding-inline: var(--ltr-gutter);
	margin: 0;
}
.ltr-band__title {
	margin: 0 0 clamp(2rem, 4vw, 3rem);
	font-size: clamp(1.5rem, 2.6vw, 2.125rem);
	font-weight: 700;
	letter-spacing: -0.035em;
	line-height: 1.05;
	text-wrap: balance;
}
.ltr-band__intro { margin-bottom: clamp(1.75rem, 3.5vw, 2.5rem); }
.ltr-band__intro .ltr-band__title { margin-bottom: 0.75rem; }
.ltr-band__lede {
	max-width: 46ch;
	margin: 0;
	font-size: clamp(1rem, 1.2vw, 1.125rem);
	line-height: 1.5;
	color: var(--ltr-ink-2);
	letter-spacing: -0.012em;
	text-wrap: pretty;
}
.ltr-band__head { flex-wrap: nowrap !important; align-items: baseline !important; gap: 0.5rem 1.5rem; margin-bottom: clamp(1.25rem, 2.2vw, 1.75rem); }
.ltr-band__head .ltr-band__title { margin: 0; }
.ltr-band__intro > * { margin-block-start: 0 !important; }

/* ---------- Home: keynote stage ---------- */

.ltr-keynote {
	margin: 0;
	padding: calc(var(--ltr-bar-h) + clamp(3.5rem, 8vw, 6.5rem)) var(--ltr-gutter) clamp(2rem, 4vw, 3rem);
	text-align: center;
	background: var(--ltr-bg);
	overflow: hidden;
}
.ltr-keynote__list { list-style: none; margin: 0; padding: 0; }
.ltr-keynote__stage { max-width: 1040px; margin: 0 auto; }

.ltr-keynote__title {
	margin: 0 auto;
	max-width: 20ch;
	font-size: clamp(1.75rem, 3.4vw, 2.625rem);
	font-weight: 700;
	letter-spacing: -0.038em;
	line-height: 1.02;
	text-wrap: balance;
}
.ltr-keynote__title a { color: var(--ltr-ink); text-decoration: none; }
.ltr-keynote__title .ltr-title__sub {
	max-width: 30ch;
	margin: 0.55em auto 0;
	font-size: clamp(1.0625rem, 1.4vw, 1.25rem);
	font-weight: 500;
	letter-spacing: -0.02em;
	color: var(--ltr-ink-2);
	text-wrap: balance;
}

.ltr-keynote__deck {
	max-width: 40ch;
	margin: clamp(1.25rem, 2.5vw, 1.75rem) auto 0;
	font-size: clamp(1rem, 1.25vw, 1.125rem);
	line-height: 1.55;
	color: var(--ltr-ink-3);
	letter-spacing: -0.01em;
	text-wrap: pretty;
}
.ltr-keynote__deck p { margin: 0; }
.ltr-keynote__title:has(.ltr-title__sub) + .ltr-keynote__deck { display: none; }

.ltr-keynote__actions { gap: 0.5rem 1.75rem; margin-top: 2rem; }
.ltr-keynote__meta { margin-top: 1.75rem; justify-content: center; }
.ltr-keynote__meta .ltr-chips { justify-content: center; }

/* ---------- Home: tiles (launch grid) ---------- */

.ltr-band--tiles { background: var(--ltr-bg); padding-top: clamp(0.5rem, 2vw, 1.25rem); }

.ltr-tiles__grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 12px;
	margin: 0;
	padding: 0;
	list-style: none;
}
.ltr-tiles__grid > li { display: flex; margin: 0; }
.ltr-tiles__grid > li:first-child { grid-column: 1 / -1; }

.ltr-tile {
	position: relative;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	width: 100%;
	padding: 1.5rem 1.5rem 1.35rem;
	border-radius: 22px;
	background: var(--ltr-bg-alt);
	text-align: left;
	transition: transform 0.5s var(--ltr-ease), box-shadow 0.5s var(--ltr-ease), background-color 0.3s var(--ltr-ease);
}
.ltr-tile:hover { transform: translateY(-2px); box-shadow: 0 16px 36px -22px rgb(0 0 0 / 0.3); }

.ltr-tile__title {
	margin: 0;
	font-size: clamp(1.125rem, 1.35vw, 1.25rem);
	font-weight: 650;
	letter-spacing: -0.02em;
	line-height: 1.2;
	text-wrap: pretty;
}
.ltr-tile__title a { color: var(--ltr-ink); text-decoration: none; }
.ltr-tile__title a::after { content: ""; position: absolute; inset: 0; border-radius: inherit; }
.ltr-tile__title .ltr-title__sub { font-size: 0.8em; font-weight: 450; margin-top: 0.35em; line-height: 1.35; letter-spacing: -0.008em; }
.ltr-tile__deck {
	margin: 0.6rem 0 0;
	font-size: 0.9375rem;
	line-height: 1.5;
	color: var(--ltr-ink-2);
	text-wrap: pretty;
}
.ltr-tile__deck p { margin: 0; }
.ltr-tile__title:has(.ltr-title__sub) + .ltr-tile__deck { display: none; }
.ltr-tile__meta { justify-content: flex-start; margin-top: auto; padding-top: 1.25rem; font-size: 0.8125rem; }
.ltr-tile .ltr-chevron { display: none; }

/* Lead launch: full width, centred, the one inverted tile in both modes */
.ltr-tiles__grid > li:first-child .ltr-tile {
	align-items: center;
	text-align: center;
	padding: clamp(1.75rem, 3vw, 2.25rem) clamp(1.5rem, 4vw, 3rem);
	border-radius: var(--ltr-radius-tile);
	background: var(--ltr-lead-bg);
	color: var(--ltr-lead-ink);
	box-shadow: var(--ltr-lead-rim);
}
.ltr-tiles__grid > li:first-child .ltr-tile__title { max-width: 22ch; font-size: clamp(1.5rem, 2.6vw, 2rem); font-weight: 700; letter-spacing: -0.032em; line-height: 1.1; text-wrap: balance; }
.ltr-tiles__grid > li:first-child .ltr-tile__title .ltr-title__sub { font-size: 0.55em; margin: 0.5em auto 0; max-width: 36ch; }
.ltr-tiles__grid > li:first-child .ltr-tile__title a { color: var(--ltr-lead-ink); }
.ltr-tiles__grid > li:first-child .ltr-tile .ltr-title__sub,
.ltr-tiles__grid > li:first-child .ltr-tile .ltr-tile__deck,
.ltr-tiles__grid > li:first-child .ltr-tile .ltr-meta { color: var(--ltr-lead-ink-2); }
.ltr-tiles__grid > li:first-child .ltr-tile__meta { justify-content: center; margin-top: 0.85rem; padding-top: 0; }
.ltr-tiles__grid > li:first-child .ltr-tile .ltr-chevron { display: inline-flex; position: relative; z-index: 1; margin-top: 0; min-height: 36px; color: var(--ltr-lead-link); }

@media (max-width: 1023px) { .ltr-tiles__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 599px) {
	.ltr-tiles__grid { grid-template-columns: 1fr; gap: 10px; }
	.ltr-tile { padding: 1.25rem 1.25rem 1.15rem; border-radius: 20px; }
}

/* ---------- Home: topics ---------- */

.ltr-band--topics { background: var(--ltr-bg-alt); }
.ltr-topics.wp-block-tag-cloud {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.6rem;
	margin: 0;
}
.ltr-topics.wp-block-tag-cloud a {
	display: inline-flex;
	align-items: baseline;
	gap: 0.45em;
	margin: 0;
	padding: 0.6em 1.05em;
	border-radius: 999px;
	font-weight: 550;
	letter-spacing: -0.015em;
	line-height: 1.1;
	color: var(--ltr-ink);
	text-decoration: none;
	background-color: var(--ltr-glass-fill-strong);
	background-image: var(--ltr-glass-sheen);
	box-shadow: var(--ltr-glass-rim), 0 4px 14px -8px rgb(0 0 0 / 0.18);
	transition: transform 0.4s var(--ltr-spring), box-shadow 0.3s var(--ltr-ease), color 0.2s var(--ltr-ease);
}
.ltr-topics.wp-block-tag-cloud a:hover { transform: translateY(-2px); color: var(--ltr-link); box-shadow: var(--ltr-glass-rim), 0 10px 24px -10px rgb(0 0 0 / 0.25); }
@media (max-width: 599px) {
	.ltr-topics.wp-block-tag-cloud { gap: 0.4rem; }
	.ltr-topics.wp-block-tag-cloud a { font-size: 0.9375rem !important; padding: 0.55em 0.9em; }
}
.ltr-topics .tag-link-count {
	font-size: 0.75rem;
	font-weight: 500;
	color: var(--ltr-ink-3);
	font-variant-numeric: tabular-nums;
}

/* ---------- Ledger (all posts, archives, search) ---------- */

.ltr-ledger__head { margin-bottom: clamp(1.5rem, 3vw, 2.25rem); gap: 0.5rem 2rem; }
.ltr-ledger__head .ltr-band__title { margin: 0; }
.ltr-ledger__count {
	margin: 0;
	color: var(--ltr-ink-3);
	font-size: 1rem;
	font-variant-numeric: tabular-nums;
}

.ltr-ledger__list { list-style: none; margin: 0; padding: 0; }
.ltr-ledger__list > li { margin: 0; border-bottom: 1px solid var(--ltr-line); }
.ltr-ledger__list > li.ltr-month { padding: 2.5rem 0 0.75rem; }
.ltr-ledger__list > li.ltr-month:first-child { padding-top: 0.5rem; }
.ltr-month__label {
	margin: 0;
	font-size: 1.0625rem;
	font-weight: 650;
	letter-spacing: -0.015em;
	color: var(--ltr-ink);
}

.ltr-row {
	position: relative;
	display: grid;
	grid-template-columns: 7.5rem minmax(0, 1fr) auto;
	gap: 0.35rem 2rem;
	align-items: baseline;
	padding: 1.35rem 0.75rem;
	margin: 0 -0.75rem;
	border-radius: 14px;
	transition: background-color 0.25s var(--ltr-ease);
}
.ltr-row:hover { background: var(--ltr-bg-alt); }
.ltr-row__date {
	margin: 0;
	font-size: 0.875rem;
	color: var(--ltr-ink-3);
	font-variant-numeric: tabular-nums;
	white-space: nowrap;
}
.ltr-row__title {
	margin: 0;
	font-size: clamp(1rem, 1.15vw, 1.0625rem);
	font-weight: 600;
	letter-spacing: -0.02em;
	line-height: 1.25;
	text-wrap: pretty;
}
.ltr-row__title a { color: var(--ltr-ink); text-decoration: none; }
.ltr-row__title a::after { content: ""; position: absolute; inset: 0; border-radius: 14px; }
.ltr-row__title .ltr-title__sub { font-size: 0.78em; margin-top: 0.2em; font-weight: 450; }
.ltr-row__tags { justify-content: flex-end; flex-wrap: nowrap; position: relative; z-index: 1; }

.ltr-pager { margin-top: 2.5rem; font-size: 0.9375rem; font-variant-numeric: tabular-nums; }
.ltr-pager a,
.ltr-pager .page-numbers {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 40px;
	min-height: 40px;
	padding: 0 0.7rem;
	border-radius: 999px;
	color: var(--ltr-ink-2);
	text-decoration: none;
}
.ltr-pager a:hover { background: var(--ltr-bg-alt); color: var(--ltr-ink); }
.ltr-pager .page-numbers.current { background: var(--ltr-ink); color: var(--ltr-bg); font-weight: 600; }
.ltr-pager .wp-block-query-pagination-previous,
.ltr-pager .wp-block-query-pagination-next { font-weight: 500; color: var(--ltr-link); }

.ltr-empty {
	padding: 0.5rem 0 2rem;
	font-size: 1.125rem;
	line-height: 1.5;
	color: var(--ltr-ink-2);
	max-width: 44ch;
}

@media (max-width: 781px) {
	.ltr-row { grid-template-columns: 1fr; padding: 1.15rem 0.75rem; }
	.ltr-row__tags { justify-content: flex-start; margin-top: 0.35rem; }
	.ltr-row__date { order: -1; }
}

/* ---------- Archive + search header ---------- */

.ltr-main.ltr-archive { padding: calc(var(--ltr-bar-h) + clamp(2.5rem, 5vw, 4rem)) var(--ltr-gutter) clamp(3rem, 6vw, 4.5rem); }
.ltr-archive__header { margin-bottom: clamp(2rem, 4vw, 3rem); }
.ltr-archive__title {
	margin: 0;
	font-size: clamp(1.875rem, 3.6vw, 2.75rem);
	font-weight: 700;
	letter-spacing: -0.042em;
	line-height: 1.02;
	text-wrap: balance;
}
.ltr-archive__lede { margin-top: 0.75rem; font-size: clamp(1rem, 1.3vw, 1.125rem); line-height: 1.55; color: var(--ltr-ink-2); max-width: 52ch; }
.ltr-archive__header .ltr-ledger__count { margin-top: 1rem; }

.ltr-searchfield { margin-top: 1.5rem; max-width: 560px; }
.ltr-searchfield .wp-block-search__inside-wrapper {
	padding: 4px;
	border: 0;
	border-radius: 999px;
	background: var(--ltr-bg-alt);
	box-shadow: inset 0 0 0 1px var(--ltr-line);
}
.ltr-searchfield .wp-block-search__input {
	padding: 0 1rem;
	border: 0;
	background: transparent;
	color: var(--ltr-ink);
	font: inherit;
	font-size: 1.0625rem;
	min-height: 44px;
}
.ltr-searchfield .wp-block-search__input:focus { outline: none; }
.ltr-searchfield .wp-block-search__inside-wrapper:focus-within { box-shadow: inset 0 0 0 2px var(--ltr-focus); }
.ltr-searchfield .wp-block-search__button {
	margin: 0;
	width: 44px; height: 44px;
	padding: 0;
	display: grid; place-items: center;
	border-radius: 50%;
	background: var(--ltr-accent-fill);
	color: #fff;
}
.ltr-searchfield .wp-block-search__button svg { fill: currentColor; width: 22px; height: 22px; }

/* ---------- 404 ---------- */

.ltr-main.ltr-404 { padding: calc(var(--ltr-bar-h) + clamp(4rem, 10vw, 7rem)) var(--ltr-gutter) clamp(4rem, 10vw, 7rem); text-align: center; }
.ltr-404__title {
	font-size: clamp(1.875rem, 3.8vw, 2.75rem);
	font-weight: 700;
	letter-spacing: -0.04em;
	line-height: 1.02;
	margin: 0;
	text-wrap: balance;
}
.ltr-404__lede { margin: 1.25rem auto 0; max-width: 40ch; font-size: 1.125rem; color: var(--ltr-ink-2); }
.ltr-404 .ltr-searchfield { margin: 2rem auto 0; }
.ltr-404__home { margin-top: 1rem; }

/* ---------- Article ---------- */

.ltr-article { padding: 0 var(--ltr-gutter); }

.ltr-article__header {
	padding: clamp(3rem, 7vw, 5rem) 0 clamp(2rem, 4vw, 3rem);
	text-align: center;
}
.ltr-article__title {
	margin: 0 auto;
	max-width: 22ch;
	font-size: clamp(1.75rem, 3.4vw, 2.625rem);
	font-weight: 700;
	letter-spacing: -0.04em;
	line-height: 1.05;
	text-wrap: balance;
}
.ltr-article__title .ltr-title__sub {
	max-width: 34ch;
	margin: 0.6em auto 0;
	font-size: clamp(1rem, 1.3vw, 1.1875rem);
	font-weight: 500;
	letter-spacing: -0.018em;
	color: var(--ltr-ink-2);
}
.ltr-article__deck {
	max-width: 42ch;
	margin: 1.5rem auto 0 !important;
	font-size: clamp(1rem, 1.25vw, 1.125rem);
	line-height: 1.55;
	color: var(--ltr-ink-3);
	text-wrap: pretty;
}
.ltr-article__deck p { margin: 0; }
.ltr-article__meta { margin-top: 1.75rem !important; justify-content: center; }
.ltr-byline a { color: var(--ltr-ink); font-weight: 600; text-decoration: none; }
.ltr-byline a:hover { text-decoration: underline; }
.ltr-article__tags { justify-content: center; margin-top: 1.25rem !important; }

.ltr-page .ltr-article__header { padding-bottom: clamp(1.5rem, 3vw, 2.5rem); }

/* ---------- Prose ---------- */

.ltr-prose {
	padding-bottom: clamp(3rem, 6vw, 4.5rem);
	font-size: var(--wp--preset--font-size--body);
	line-height: 1.72;
	letter-spacing: -0.003em;
	color: var(--ltr-ink);
}
.ltr-prose > * { max-width: var(--ltr-measure); margin-left: auto !important; margin-right: auto !important; }
.ltr-prose > * + * { margin-top: 1.15em; margin-bottom: 0; }

.ltr-prose h2 {
	margin-top: 2.4em !important;
	margin-bottom: 0 !important;
	font-size: var(--wp--preset--font-size--section);
	font-weight: 700;
	letter-spacing: -0.03em;
	line-height: 1.15;
	text-wrap: balance;
}
.ltr-prose h3 {
	margin-top: 2em !important;
	font-size: 1.1875rem;
	font-weight: 650;
	letter-spacing: -0.015em;
	line-height: 1.3;
}
.ltr-prose h4 { margin-top: 1.8em !important; font-size: 1.0625rem; font-weight: 650; letter-spacing: -0.012em; }
.ltr-prose h2 + *, .ltr-prose h3 + *, .ltr-prose h4 + * { margin-top: 0.7em !important; }
.ltr-prose h2 .ltr-anchor,
.ltr-prose h3 .ltr-anchor {
	margin-left: 0.3em;
	color: var(--ltr-ink-3);
	text-decoration: none;
	opacity: 0;
	transition: opacity 0.2s var(--ltr-ease);
}
.ltr-prose h2:hover .ltr-anchor,
.ltr-prose h3:hover .ltr-anchor,
.ltr-prose .ltr-anchor:focus-visible { opacity: 1; }

.ltr-prose a { color: var(--ltr-link); text-decoration-color: color-mix(in srgb, var(--ltr-link) 40%, transparent); }
.ltr-prose a:hover { text-decoration-color: currentColor; }

.ltr-prose strong { font-weight: 650; }

.ltr-prose ul, .ltr-prose ol { padding-left: 1.3em; }
.ltr-prose li + li { margin-top: 0.45em; }
.ltr-prose li::marker { color: var(--ltr-ink-3); }
.ltr-prose ol li::marker { font-variant-numeric: tabular-nums; font-weight: 600; }

.ltr-prose blockquote {
	padding: 0.2em 0 0.2em 1.25em;
	margin-top: 1.6em !important;
	box-shadow: inset 2px 0 0 var(--ltr-ink);
	font-size: 1.1875em;
	line-height: 1.5;
	letter-spacing: -0.012em;
	color: var(--ltr-ink);
}
.ltr-prose blockquote p { margin: 0; }
.ltr-prose blockquote p + p { margin-top: 0.8em; }

.ltr-prose hr { border: 0; height: 1px; background: var(--ltr-line-strong); margin-block: 3em !important; }

.ltr-prose img { max-width: 100%; height: auto; border-radius: var(--ltr-radius-card); }
.ltr-prose figcaption { font-size: 0.875rem; color: var(--ltr-ink-3); text-align: center; margin-top: 0.75em; }

.ltr-prose :not(pre) > code {
	padding: 0.12em 0.38em;
	border-radius: 6px;
	background: var(--ltr-inline-code-bg);
	font-family: var(--ltr-mono);
	font-size: 0.84em;
	letter-spacing: 0;
	overflow-wrap: anywhere;
}

/* Code panels: plain surface, glass toolbar */
.ltr-prose > pre,
.ltr-prose .ltr-code {
	max-width: min(820px, 100%);
}
.ltr-code {
	position: relative;
	margin-top: 1.6em !important;
	border-radius: var(--ltr-radius-card);
	background: var(--ltr-code-bg);
	box-shadow: inset 0 0 0 0.5px var(--ltr-code-line);
	overflow: hidden;
}
.ltr-code + * { margin-top: 1.6em !important; }
.ltr-code__bar {
	position: sticky;
	top: 0;
	z-index: 2;
	display: flex;
	align-items: center;
	justify-content: space-between;
	height: 40px;
	padding: 0 6px 0 16px;
	box-shadow: var(--ltr-glass-rim), 0 0.5px 0 var(--ltr-code-line);
	font-size: 0.75rem;
	color: var(--ltr-ink-3);
}
.ltr-code__lang { font-family: var(--ltr-mono); letter-spacing: 0.02em; text-transform: lowercase; }
.ltr-code__copy {
	display: inline-flex;
	align-items: center;
	gap: 0.4em;
	height: 30px;
	padding: 0 0.8em;
	border: 0;
	border-radius: 999px;
	background: transparent;
	color: var(--ltr-ink-2);
	font: inherit;
	font-size: 0.8125rem;
	font-weight: 500;
	cursor: pointer;
	transition: background-color 0.2s var(--ltr-ease), color 0.2s var(--ltr-ease);
}
.ltr-code__copy:hover { background: var(--ltr-inline-code-bg); color: var(--ltr-ink); }
.ltr-code__copy[data-state="done"] { color: #1f8a4c; }
:root[data-theme="dark"] .ltr-code__copy[data-state="done"] { color: #4ade80; }
@media (prefers-color-scheme: dark) { :root:not([data-theme="light"]) .ltr-code__copy[data-state="done"] { color: #4ade80; } }

.ltr-prose pre {
	margin: 0;
	padding: 1.1rem 1.25rem 1.25rem;
	overflow-x: auto;
	background: var(--ltr-code-bg);
	color: var(--ltr-code-ink);
	font-family: var(--ltr-mono);
	font-size: 0.8125rem;
	line-height: 1.7;
	tab-size: 2;
	border-radius: var(--ltr-radius-card);
	scrollbar-width: thin;
}
.ltr-code pre { border-radius: 0; }
.ltr-prose pre code { font-family: inherit; font-size: inherit; background: none; padding: 0; white-space: pre; }

/* Syntax colours, tuned per mode */
.hljs-comment, .hljs-quote { color: #6e7781; font-style: italic; }
.hljs-keyword, .hljs-selector-tag, .hljs-built_in, .hljs-meta .hljs-keyword { color: #7b35c9; }
.hljs-string, .hljs-regexp, .hljs-addition, .hljs-meta .hljs-string { color: #0a6e5c; }
.hljs-number, .hljs-literal, .hljs-symbol, .hljs-bullet { color: #8a4b00; }
.hljs-title, .hljs-title.function_, .hljs-section { color: #1f5fbf; }
.hljs-attr, .hljs-attribute, .hljs-variable, .hljs-template-variable, .hljs-property { color: #0b6e8a; }
.hljs-type, .hljs-class .hljs-title, .hljs-params { color: #1d1d1f; }
.hljs-meta { color: #6e7781; }
.hljs-deletion { color: #a33a00; }

:root[data-theme="dark"] .hljs-comment, :root[data-theme="dark"] .hljs-quote { color: #8b929a; }
:root[data-theme="dark"] .hljs-keyword, :root[data-theme="dark"] .hljs-selector-tag, :root[data-theme="dark"] .hljs-built_in { color: #c9a2ff; }
:root[data-theme="dark"] .hljs-string, :root[data-theme="dark"] .hljs-regexp, :root[data-theme="dark"] .hljs-addition { color: #7ee2b8; }
:root[data-theme="dark"] .hljs-number, :root[data-theme="dark"] .hljs-literal, :root[data-theme="dark"] .hljs-symbol { color: #ffc27a; }
:root[data-theme="dark"] .hljs-title, :root[data-theme="dark"] .hljs-title.function_, :root[data-theme="dark"] .hljs-section { color: #8fb8ff; }
:root[data-theme="dark"] .hljs-attr, :root[data-theme="dark"] .hljs-attribute, :root[data-theme="dark"] .hljs-variable, :root[data-theme="dark"] .hljs-property { color: #7fd4e6; }
:root[data-theme="dark"] .hljs-type, :root[data-theme="dark"] .hljs-params { color: #ececf0; }
@media (prefers-color-scheme: dark) {
	:root:not([data-theme="light"]) .hljs-comment, :root:not([data-theme="light"]) .hljs-quote { color: #8b929a; }
	:root:not([data-theme="light"]) .hljs-keyword, :root:not([data-theme="light"]) .hljs-selector-tag, :root:not([data-theme="light"]) .hljs-built_in { color: #c9a2ff; }
	:root:not([data-theme="light"]) .hljs-string, :root:not([data-theme="light"]) .hljs-regexp, :root:not([data-theme="light"]) .hljs-addition { color: #7ee2b8; }
	:root:not([data-theme="light"]) .hljs-number, :root:not([data-theme="light"]) .hljs-literal, :root:not([data-theme="light"]) .hljs-symbol { color: #ffc27a; }
	:root:not([data-theme="light"]) .hljs-title, :root:not([data-theme="light"]) .hljs-title.function_, :root:not([data-theme="light"]) .hljs-section { color: #8fb8ff; }
	:root:not([data-theme="light"]) .hljs-attr, :root:not([data-theme="light"]) .hljs-attribute, :root:not([data-theme="light"]) .hljs-variable, :root:not([data-theme="light"]) .hljs-property { color: #7fd4e6; }
	:root:not([data-theme="light"]) .hljs-type, :root:not([data-theme="light"]) .hljs-params { color: #ececf0; }
}

/* Tables: hairline rows, horizontal scroll on small screens */
.ltr-table {
	max-width: min(900px, 100%) !important;
	margin-top: 1.8em !important;
	overflow-x: auto;
	border-radius: var(--ltr-radius-card);
	box-shadow: inset 0 0 0 1px var(--ltr-line);
	scrollbar-width: thin;
}
.ltr-table + * { margin-top: 1.8em !important; }
.ltr-prose table {
	width: 100%;
	border-collapse: collapse;
	font-size: 0.9375rem;
	line-height: 1.45;
	font-variant-numeric: tabular-nums;
}
.ltr-prose th,
.ltr-prose td {
	padding: 0.8em 1em;
	text-align: left;
	vertical-align: top;
	border: 0;
	border-bottom: 1px solid var(--ltr-line);
}
.ltr-prose thead th,
.ltr-prose tr:first-child th {
	background: var(--ltr-bg-alt);
	font-size: 0.8125rem;
	font-weight: 650;
	color: var(--ltr-ink-2);
	white-space: nowrap;
}
.ltr-prose tbody tr:last-child td { border-bottom: 0; }
.ltr-prose td:first-child { font-weight: 550; }

/* Article footer */
.ltr-article__footer { padding-bottom: clamp(3rem, 6vw, 4.5rem); }
.ltr-signoff {
	max-width: var(--ltr-measure);
	margin: 0 auto !important;
	gap: 1rem;
	padding-top: 2rem;
	border-top: 1px solid var(--ltr-line);
}
.ltr-signoff__mark { flex-shrink: 0; }
.ltr-signoff__name { margin: 0; font-weight: 650; letter-spacing: -0.015em; }
.ltr-signoff__bio { margin: 0.25rem 0 0; font-size: 1rem; line-height: 1.55; color: var(--ltr-ink-2); }
.ltr-signoff__bio a { color: var(--ltr-link); }

/* Previous / next */
.ltr-next { background: var(--ltr-bg-alt); padding-block: clamp(3rem, 6vw, 4.5rem); }
.ltr-next__grid { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
.ltr-next__item {
	position: relative;
	margin: 0;
	padding: 1.75rem;
	border-radius: var(--ltr-radius-tile);
	background: var(--ltr-bg);
	font-size: 0.875rem;
	color: var(--ltr-ink-3);
	transition: transform 0.4s var(--ltr-ease), box-shadow 0.4s var(--ltr-ease);
}
.ltr-next__item:hover { transform: translateY(-2px); box-shadow: 0 16px 40px -24px rgb(0 0 0 / 0.3); }
.ltr-next__item a {
	display: block;
	margin-top: 0.4rem;
	color: var(--ltr-ink);
	font-size: 1.125rem;
	font-weight: 650;
	letter-spacing: -0.022em;
	line-height: 1.25;
	text-decoration: none;
	text-wrap: balance;
}
.ltr-next__item a::after { content: ""; position: absolute; inset: 0; border-radius: inherit; }
.ltr-next__item--next { text-align: right; }
.ltr-next__item:empty { display: none; }
@media (max-width: 781px) { .ltr-next__grid { grid-template-columns: 1fr; } .ltr-next__item--next { text-align: left; } }

.ltr-comments { padding: 0 var(--ltr-gutter) 3rem; font-size: var(--wp--preset--font-size--body); }
.ltr-comments:empty { display: none; }
.ltr-comments > * { max-width: 700px; margin-inline: auto !important; }
.ltr-comments .comment-reply-title { font-size: 1.1875rem; font-weight: 650; letter-spacing: -0.02em; }
.ltr-comments textarea,
.ltr-comments input[type="text"],
.ltr-comments input[type="email"],
.ltr-comments input[type="url"] {
	width: 100%;
	padding: 0.75rem 1rem;
	border: 0;
	border-radius: 14px;
	background: var(--ltr-bg-alt);
	box-shadow: inset 0 0 0 1px var(--ltr-line);
	color: var(--ltr-ink);
	font: inherit;
	font-size: 1rem;
}
.ltr-comments textarea:focus, .ltr-comments input:focus { outline: none; box-shadow: inset 0 0 0 2px var(--ltr-focus); }
.ltr-comments .logged-in-as, .ltr-comments .comment-notes { font-size: 0.875rem; color: var(--ltr-ink-3); }
.ltr-comments .wp-block-button__link, .ltr-comments input[type="submit"] {
	min-height: 44px; padding: 0 1.35em; border: 0; border-radius: 999px;
	background: var(--ltr-accent-fill); color: #fff; font: inherit; font-weight: 500; cursor: pointer;
}

/* ---------- Floating TOC capsule ---------- */

.ltr-toc {
	position: fixed;
	left: 50%;
	bottom: max(18px, env(safe-area-inset-bottom));
	z-index: 90;
	transform: translate(-50%, 140%);
	opacity: 0;
	transition: transform 0.6s var(--ltr-spring), opacity 0.35s var(--ltr-ease);
	pointer-events: none;
}
.ltr-toc.is-visible { transform: translate(-50%, 0); opacity: 1; pointer-events: auto; }

.ltr-toc__pill {
	position: relative;
	display: flex;
	align-items: center;
	gap: 0.6rem;
	max-width: min(440px, calc(100vw - 32px));
	height: 48px;
	padding: 0 1.2rem 0 1rem;
	border: 0;
	border-radius: 999px;
	color: var(--ltr-ink);
	box-shadow: var(--ltr-glass-rim), var(--ltr-glass-shadow);
	font: inherit;
	font-size: 0.9375rem;
	font-weight: 550;
	letter-spacing: -0.01em;
	overflow: hidden;
	cursor: pointer;
	transition: transform 0.35s var(--ltr-spring);
}
.ltr-toc__pill:active { transform: scale(0.97); }
.ltr-toc__pill svg { flex-shrink: 0; color: var(--ltr-ink-3); }
.ltr-toc__current { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.ltr-toc__progress {
	position: absolute;
	left: 18px; right: 18px; bottom: 5px;
	height: 2px;
	border-radius: 2px;
	background: var(--ltr-accent);
	transform-origin: left center;
	transform: scaleX(var(--ltr-progress, 0));
	opacity: 0.85;
}

.ltr-toc__sheet {
	position: fixed;
	inset: auto auto calc(max(18px, env(safe-area-inset-bottom)) + 60px) 50%;
	translate: -50% 0;
	width: min(460px, calc(100vw - 24px));
	max-height: min(62vh, 560px);
	margin: 0;
	padding: 1rem 0.5rem 0.5rem;
	overflow-y: auto;
	border: 0;
	border-radius: 26px;
	color: var(--ltr-ink);
	background-color: var(--ltr-glass-fill-strong);
	box-shadow: var(--ltr-glass-rim), var(--ltr-glass-shadow);
	opacity: 0;
	transform: translateY(10px) scale(0.98);
	transform-origin: bottom center;
	transition: opacity 0.3s var(--ltr-ease), transform 0.45s var(--ltr-spring), overlay 0.3s allow-discrete, display 0.3s allow-discrete;
}
.ltr-toc__sheet:popover-open { opacity: 1; transform: none; }
@starting-style { .ltr-toc__sheet:popover-open { opacity: 0; transform: translateY(10px) scale(0.98); } }
.ltr-toc__heading { margin: 0 0.9rem 0.5rem; font-size: 0.8125rem; font-weight: 600; color: var(--ltr-ink-3); }
.ltr-toc__list { list-style: none; margin: 0; padding: 0; counter-reset: toc; }
.ltr-toc__list a {
	display: grid;
	grid-template-columns: 1.6rem 1fr;
	gap: 0.3rem;
	padding: 0.6rem 0.9rem;
	border-radius: 14px;
	color: var(--ltr-ink-2);
	font-size: 0.9375rem;
	line-height: 1.35;
	text-decoration: none;
}
.ltr-toc__list li { counter-increment: toc; }
.ltr-toc__list a::before { content: counter(toc); color: var(--ltr-ink-3); font-variant-numeric: tabular-nums; font-size: 0.8125rem; padding-top: 0.1em; }
.ltr-toc__list a:hover { background: var(--ltr-inline-code-bg); color: var(--ltr-ink); }
.ltr-toc__list a[aria-current="true"] { color: var(--ltr-ink); font-weight: 600; background: var(--ltr-accent-soft); }
.ltr-toc__list a[aria-current="true"]::before { color: var(--ltr-accent); }

/* ---------- Footer ---------- */

.ltr-footer-wrap { margin: 0; }
.ltr-footer {
	padding: clamp(2.75rem, 5vw, 3.75rem) var(--ltr-gutter) 1.75rem;
	background: var(--ltr-bg-alt);
	border-top: 1px solid var(--ltr-line);
	color: var(--ltr-ink-3);
	font-size: 0.875rem;
	line-height: 1.5;
}
.ltr-footer a { color: var(--ltr-ink-2); text-decoration: none; transition: color 0.2s var(--ltr-ease); }
.ltr-footer a:hover { color: var(--ltr-ink); }

.ltr-footer__top {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	justify-content: space-between;
	gap: 1.75rem 3rem;
	padding-bottom: 1.75rem;
	border-bottom: 1px solid var(--ltr-line);
}
.ltr-footer__brand > * { margin: 0 !important; }
.ltr-footer__lockup { display: inline-flex; align-items: center; gap: 0.7rem; }
.ltr-footer__lockup svg { flex-shrink: 0; }
.ltr-footer__lockup > span { display: flex; flex-direction: column; line-height: 1.15; }
.ltr-footer__lockup strong { color: var(--ltr-ink); font-size: 1.0625rem; font-weight: 650; letter-spacing: -0.022em; }
.ltr-footer__lockup strong + span { font-size: 0.75rem; color: var(--ltr-ink-3); }
.ltr-footer__blurb { max-width: 40ch; margin-top: 0.85rem !important; color: var(--ltr-ink-3); }

.ltr-footer__links {
	display: flex;
	flex-wrap: wrap;
	gap: 0.25rem;
	margin: 0;
	padding: 4px;
	list-style: none;
	border-radius: 999px;
	background: var(--ltr-inline-code-bg);
	box-shadow: inset 0 0 0 0.5px var(--ltr-line);
}
.ltr-footer__links li { margin: 0; }
.ltr-footer__links a {
	display: inline-flex;
	align-items: center;
	min-height: 32px;
	padding: 0 0.95rem;
	border-radius: 999px;
	font-weight: 500;
}
.ltr-footer__links a:hover { background: var(--ltr-glass-fill-strong); box-shadow: var(--ltr-glass-rim); }

.ltr-footer__base { padding-top: 1.25rem; gap: 0.75rem 1.5rem; }
.ltr-footer__base p { margin: 0; }
.ltr-footer__copy { gap: 0.3em !important; font-variant-numeric: tabular-nums; }
.ltr-footer__utils { display: flex; align-items: center; gap: 1.25rem; }
.ltr-footer__top-link { display: inline-flex; align-items: center; gap: 0.35rem; }
.ltr-link-btn {
	padding: 0;
	border: 0;
	background: none;
	color: var(--ltr-link);
	font: inherit;
	cursor: pointer;
}
.ltr-link-btn:hover { text-decoration: underline; }
@media (max-width: 599px) {
	.ltr-meta { font-size: 0.8125rem; gap: 0.25rem 0.65rem; }
	.ltr-meta > * + *:not(.ltr-chips)::before { margin-right: 0.65rem; }
	.ltr-band__head .ltr-chevron-link a { font-size: 0.9375rem; white-space: nowrap; }
}
@media (max-width: 599px) {
	.ltr-footer__top { flex-direction: column; }
	.ltr-footer__links { width: 100%; justify-content: space-between; }
}

/* ---------- Motion preferences ---------- */

@media (prefers-reduced-motion: reduce) {
	*, *::before, *::after {
		transition-duration: 0.01ms !important;
		animation-duration: 0.01ms !important;
		scroll-behavior: auto !important;
	}
}
@media (prefers-reduced-motion: no-preference) {
	html { scroll-behavior: smooth; }
}

/* ---------- Editor parity ---------- */

.editor-styles-wrapper { background: var(--ltr-bg); color: var(--ltr-ink); }
