/*
 * Two-tier drill-out navigation — provisional compact-screen experiment.
 * The native nested menu remains the complete desktop and no-JavaScript presentation.
 */
.drill-nav { display: none; }

@media (max-width: 1000px) {
	.site-nav__menu--primary { display: none; }
	.site-nav__menu--mobile { display: flex; }
	.site-nav--shared-fallback .site-nav__fallback { display: block; }
	.site-nav__menu--mobile .sub-menu,
	.site-nav--shared-fallback .site-nav__fallback .children {
		position: static;
		min-width: 0;
		margin: .5rem 0 0;
		padding: 0 0 0 1rem;
		visibility: visible;
		opacity: 1;
	}
	.nav-enhanced .site-nav__menu .sub-menu,
	.nav-enhanced .site-nav__fallback .children,
	.nav-enhanced .site-nav__search-form,
	.nav-enhanced .menu-item-has-children > a,
	.nav-enhanced .page_item_has_children > a { display: none; }
	.nav-enhanced .site-nav__search { width: auto; transition: none; }
	.nav-enhanced .site-nav { flex: 1 1 auto; overflow-x: auto; }
	.nav-enhanced .site-nav__menu--mobile { margin-left: auto; }
	.nav-enhanced .site-nav__tools { margin-left: 0; }

	.drill-nav__top-disclosure,
	.drill-nav__search-trigger {
		display: inline-flex;
		align-items: center;
		gap: .35rem;
		min-height: 2.75rem;
		border: 0;
		padding: .45rem .2rem;
		background: transparent;
		color: var(--abp-color-text);
		font-size: .75rem;
		font-weight: 700;
		letter-spacing: .08em;
		text-transform: uppercase;
		cursor: pointer;
	}
	.drill-nav__top-disclosure::after { content: '▾'; font-size: 1.6em; line-height: .75; }
	.drill-nav__search-trigger { justify-content: center; width: 2.75rem; padding-inline: .55rem; }
	.drill-nav__search-trigger svg { width: 1.25rem; height: 1.25rem; fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; }
	.drill-nav__top-disclosure[aria-expanded="true"],
	.drill-nav__search-trigger[aria-expanded="true"] { color: var(--abp-color-link); }

	.drill-nav__parent {
		display: inline-flex;
		align-items: center;
		min-height: 2.75rem;
		border: 0;
		padding: .45rem .2rem;
		background: transparent;
		color: currentColor;
		font: inherit;
		letter-spacing: inherit;
		line-height: 1.2;
		text-transform: inherit;
		cursor: pointer;
	}
	.drill-nav__top-disclosure:focus-visible,
	.drill-nav__search-trigger:focus-visible,
	.drill-nav__parent:focus-visible,
	.drill-nav__up:focus-visible { outline: 2px solid currentColor; outline-offset: 2px; }

	.nav-enhanced .drill-nav {
		display: grid;
		grid-template-rows: 0fr;
		visibility: hidden;
		border-top: 0 solid var(--abp-color-rule);
		transition:
			grid-template-rows var(--abp-drill-drawer-duration) var(--abp-drill-easing),
			visibility 0s linear var(--abp-drill-drawer-duration),
			border-width 0s linear var(--abp-drill-drawer-duration);
	}
	.nav-enhanced .drill-nav.is-open {
		grid-template-rows: 1fr;
		visibility: visible;
		border-top-width: 1px;
		transition-delay: 0s;
	}
	.drill-nav__viewport { min-height: 0; overflow: hidden; background: var(--abp-color-reading-bg); }
	.drill-nav__stage {
		position: relative;
		min-height: 3.15rem;
		max-width: calc(var(--abp-site-max) + var(--abp-rail-width));
		margin: auto;
		overflow: hidden;
	}
	.drill-nav__level {
		display: flex;
		position: absolute;
		inset: 0;
		align-items: center;
		gap: .7rem;
		min-width: 100%;
		padding: .65rem var(--abp-shell-inset);
		overflow-x: auto;
		overflow-y: hidden;
		white-space: nowrap;
		scrollbar-width: thin;
	}
	.drill-nav__level.is-current { position: relative; }
	.drill-nav__up {
		display: inline-flex;
		flex: 0 0 2.75rem;
		align-items: center;
		justify-content: center;
		width: 2.75rem;
		height: 2.75rem;
		border: 0;
		padding: 0;
		background: transparent;
		color: var(--abp-color-muted);
		cursor: pointer;
	}
	.drill-nav__up svg { width: 1.2rem; height: 1.2rem; fill: none; stroke: currentColor; stroke-width: 1.35; stroke-linecap: square; stroke-linejoin: miter; }
	.drill-nav__ancestry,
	.drill-nav__generation { display: inline-flex; flex: 0 0 auto; align-items: center; }
	.drill-nav__ancestry { align-self: stretch; margin-block: -.65rem; padding: .65rem .75rem; gap: .3rem; background: #e5e3df; }
	.drill-nav__generation { gap: .6rem; }
	.drill-nav__ancestor,
	.drill-nav__item { display: inline-flex; align-items: center; flex: 0 0 auto; }
	.drill-nav__item a,
	.drill-nav__ancestor .drill-nav__parent,
	.drill-nav__item .drill-nav__parent {
		display: inline-flex;
		align-items: center;
		min-height: 2.75rem;
		padding: .45rem .2rem;
		color: var(--abp-color-text);
		font-size: .72rem;
		font-weight: 700;
		letter-spacing: .08em;
		line-height: 1.2;
		text-transform: uppercase;
	}
	.drill-nav__separator { align-self: center; flex: 0 0 1px; width: 1px; height: 1.35rem; background: var(--abp-color-rule); opacity: .8; }
	.drill-nav__path-separator { flex: 0 0 auto; color: var(--abp-color-muted); font-size: .8rem; opacity: .75; }
	.drill-nav__search-level .site-nav__search-form {
		display: flex;
		width: min(34rem, calc(100vw - (2 * var(--abp-shell-inset))));
		border: 0;
		border-radius: 0;
		background: transparent;
		transition: none;
	}
	.drill-nav__search-level .site-nav__search-input-wrap {
		display: flex;
		position: relative;
		flex: 1 1 auto;
		min-width: 0;
	}
	.drill-nav__search-level .site-nav__search-input-wrap::after {
		position: absolute;
		top: 50%;
		left: 5.1rem;
		width: .55em;
		height: .9em;
		background: currentColor;
		content: '';
		transform: translateY(-50%);
		animation: abp-search-cursor 800ms steps(1, end) infinite;
		pointer-events: none;
		opacity: .65;
	}
	.drill-nav__search-level .site-nav__search-input-wrap:has(.site-nav__search-field:not(:placeholder-shown))::after,
	.drill-nav__search-level .site-nav__search-input-wrap.has-value::after,
	.drill-nav__search-level .site-nav__search-input-wrap:focus-within::after { display: none; }
	.drill-nav__search-level .site-nav__search-field {
		width: 100%;
		padding: .35rem 0;
		border: 0;
		border-bottom: 1px solid transparent;
		border-radius: 0;
		background: transparent;
		font-family: monospace;
		opacity: 1;
	}
	.drill-nav__search-level .site-nav__search-field:focus { border-bottom-color: var(--abp-color-rule); outline: 0; }
	.drill-nav__search-level .site-nav__search-submit {
		display: inline-flex;
		flex: 0 0 auto;
		align-items: center;
		justify-content: center;
		width: auto;
		min-width: 3.5rem;
		height: 2.75rem;
		padding: .4rem .55rem;
		font-family: monospace;
		font-size: .75rem;
		font-weight: 700;
		letter-spacing: .08em;
	}
	.drill-nav__search-level .site-nav__search-submit svg { display: none; }
	.drill-nav__search-level .site-nav__search-submit::before { content: 'ENTER'; }
	.drill-nav__search-level .site-nav__search-submit:focus-visible { border-radius: 0; }

	.drill-nav__level--opening { animation: abp-drill-stream var(--abp-drill-stream-duration) var(--abp-drill-easing) both; }
	.drill-nav__level--enter-forward { animation: abp-drill-enter-forward var(--abp-drill-level-duration) var(--abp-drill-easing) both; }
	.drill-nav__level--exit-forward { animation: abp-drill-exit-forward var(--abp-drill-level-duration) var(--abp-drill-easing) both; }
	.drill-nav__level--enter-back { animation: abp-drill-enter-back var(--abp-drill-level-duration) var(--abp-drill-easing) both; }
	.drill-nav__level--exit-back { animation: abp-drill-exit-back var(--abp-drill-level-duration) var(--abp-drill-easing) both; }
	.drill-nav__level--enter-switch { animation: abp-drill-enter-switch var(--abp-drill-stream-duration) var(--abp-drill-easing) both; }
	.drill-nav__level--exit-switch { animation: abp-drill-exit-switch var(--abp-drill-stream-duration) var(--abp-drill-easing) both; }

	@keyframes abp-drill-stream { from { opacity: 0; transform: translateX(1rem); } }
	@keyframes abp-drill-enter-forward { from { opacity: 0; transform: translateX(2rem); } }
	@keyframes abp-drill-exit-forward { to { opacity: 0; transform: translateX(-2rem); } }
	@keyframes abp-drill-enter-back { from { opacity: 0; transform: translateX(-2rem); } }
	@keyframes abp-drill-exit-back { to { opacity: 0; transform: translateX(2rem); } }
	@keyframes abp-drill-enter-switch { from { opacity: 0; transform: translateX(.5rem); } }
	@keyframes abp-drill-exit-switch { to { opacity: 0; transform: translateX(-.5rem); } }
	@keyframes abp-search-cursor { 50% { opacity: 0; } }
}

@media (max-width: 900px) {
	.site-header.nav-enhanced .site-nav.is-open { display: flex; align-items: center; overflow-x: auto; }
	.site-header.nav-enhanced .site-nav__list,
	.site-header.nav-enhanced .site-nav__fallback > ul { display: flex; flex-wrap: nowrap; align-items: center; }
	.site-header.nav-enhanced .site-nav__menu > li + li,
	.site-header.nav-enhanced .site-nav__fallback > ul > li + li,
	.site-header.nav-enhanced .site-nav__tools { margin-top: 0; }
	.drill-nav__stage { min-height: 3rem; }
	.drill-nav__level { padding-block: .55rem; }
	.drill-nav__ancestry { margin-block: -.55rem; padding-block: .55rem; }
}

@media (prefers-reduced-motion: reduce) {
	.nav-enhanced .drill-nav { transition-duration: .01ms; }
	.drill-nav__level { animation-duration: .01ms !important; }
	.drill-nav__search-level .site-nav__search-input-wrap::after { animation: none; }
}
