/* PollyVox v0.14 — clean header variants, mobile flyout, discovery and admin-safe refinements. */

/* Article meta is intentionally borderless unless the explicit outline toggle is enabled. */
.pv-byline--article:not(.pv-byline--outlined) { border: 0; box-shadow: none; }
body:not(.pv-meta-spectrum) .pv-byline--article::after { display: none !important; }

/* Author archive cards never inherit the global spectrum treatment unless enabled. */
.pv-author-grid-no-spectrum .pv-authorpage + * .pv-spectrum-card::after,
.pv-author-grid-no-spectrum .pv-authorpage ~ .pv-section .pv-spectrum-card::after { display: none !important; }
.pv-author-grid-no-spectrum .pv-authorpage ~ .pv-section .pv-spectrum-card:hover,
.pv-author-grid-no-spectrum .pv-authorpage ~ .pv-section .pv-spectrum-card:focus-within { transform: none; }
.pv-author-grid-no-spectrum .pv-authorpage ~ .pv-section .pv-spectrum-title,
.pv-author-grid-no-spectrum .pv-authorpage ~ .pv-section .pv-spectrum-title a { background: none !important; color: inherit !important; -webkit-text-fill-color: currentColor !important; }

/* Header shell shape is independent from pill-shaped menu items. */
.pv-header-shape-flat .pv-masthead__frame { padding-block: 0; }
.pv-header-shape-flat .pv-masthead__container { width: 100%; max-width: none; padding-inline: 0; }
.pv-header-shape-flat .pv-masthead__shell {
	min-height: var(--pv-header-height);
	padding-inline: max(16px, var(--pv-header-inner-padding));
	border-inline: 0;
	border-radius: 0;
	box-shadow: none;
}
.pv-header-shape-pill .pv-masthead__shell { border-radius: var(--pv-header-shell-radius); }

/* Mobile-only half-screen flyout with sharp panel edges and pill links. */
.pv-nav-scrim { display: none; }
@media (max-width: 782px) {
	.pv-nav {
		position: fixed;
		top: 0;
		bottom: 0;
		left: auto;
		right: 0;
		z-index: 1002;
		display: block;
		width: clamp(220px, var(--pv-mobile-menu-width), 520px);
		max-height: none;
		margin: 0;
		padding: calc(78px + env(safe-area-inset-top)) 18px 26px;
		overflow-y: auto;
		border: 0;
		border-radius: 0;
		background: var(--pv-mobile-menu-bg);
		box-shadow: -20px 0 50px color-mix(in srgb, #000 24%, transparent);
		transform: translateX(105%);
		visibility: hidden;
		transition: transform .24s ease, visibility .24s ease;
	}
	.pv-mobile-menu-left .pv-nav { left: 0; right: auto; transform: translateX(-105%); box-shadow: 20px 0 50px color-mix(in srgb, #000 24%, transparent); }
	.pv-nav.is-open { transform: translateX(0); visibility: visible; }
	.pv-nav-scrim {
		position: fixed;
		inset: 0;
		z-index: 1001;
		display: block;
		border: 0;
		background: rgba(0, 0, 0, var(--pv-mobile-menu-overlay));
		opacity: 0;
		visibility: hidden;
		transition: opacity .2s ease, visibility .2s ease;
	}
	.pv-nav-open .pv-nav-scrim { opacity: 1; visibility: visible; }
	.pv-nav-open { overflow: hidden; }
	.pv-nav__list { align-items: stretch; gap: 8px; }
	.pv-header-pill .pv-nav__list > li > a,
	.pv-nav__list > li > a {
		min-height: 46px;
		padding: 11px 16px;
		border: 1px solid color-mix(in srgb, var(--pv-header-ink) 20%, transparent);
		border-radius: var(--pv-mobile-menu-link-radius);
		background: color-mix(in srgb, var(--pv-mobile-menu-bg) 92%, var(--pv-header-ink) 8%);
	}
	.pv-nav__list .sub-menu { margin-left: 10px; }
	.pv-header-shape-flat .pv-masthead__shell { padding-inline: 12px; }
}

[data-pv-theme="dark"] { --pv-mobile-menu-bg: var(--pv-panel, #171a21); }

/* Live grouped search. */
.pv-searchbar__shell { display: grid; gap: 14px; }
.pv-live-search { display: none; max-height: min(66vh, 660px); overflow: auto; }
.pv-live-search.has-results,
.pv-live-search.is-loading,
.pv-live-search.is-empty { display: block; }
.pv-live-search__status { padding: 13px 16px; color: var(--pv-muted); }
.pv-live-search__group { padding: 12px 0; border-top: 1px solid var(--pv-card-border); }
.pv-live-search__group h2 { margin: 0 0 9px; font-size: .78rem; letter-spacing: .08em; text-transform: uppercase; color: var(--pv-muted); }
.pv-live-search__items { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
.pv-live-search__item { display: grid; grid-template-columns: 92px minmax(0, 1fr); gap: 11px; align-items: center; padding: 8px; border-radius: 10px; color: var(--pv-ink); text-decoration: none; }
.pv-live-search__item:hover,
.pv-live-search__item:focus-visible { background: var(--pv-panel-soft); }
.pv-live-search__item img { width: 92px; aspect-ratio: 16 / 9; object-fit: cover; border-radius: 10px; }
.pv-live-search__item strong,
.pv-live-search__item small { display: block; }
.pv-live-search__item strong { line-height: 1.25; }
.pv-live-search__item small { margin-top: 4px; color: var(--pv-muted); font-size: .75rem; }
.pv-live-search__all { display: flex; justify-content: center; padding: 13px; border-top: 1px solid var(--pv-card-border); font-weight: 750; text-decoration: none; }

/* Search result page. */
.pv-search-page { padding-block: clamp(28px, 5vw, 70px); }
.pv-search-page__head { max-width: 850px; margin-bottom: 28px; }
.pv-search-page__head h1 { margin: 0 0 9px; font-size: clamp(2rem, 4vw, 3.7rem); }
.pv-search-groups { display: grid; gap: 36px; }
.pv-search-group__head { display: flex; align-items: center; gap: 14px; margin-bottom: 14px; }
.pv-search-group__head::after { content: ""; height: 1px; flex: 1; background: var(--pv-card-border); }
.pv-search-group__head h2 { margin: 0; }

/* Faceted archive controls. */
.pv-discovery-filters { display: flex; flex-wrap: wrap; gap: 9px; align-items: center; margin: 14px 0 22px; }
.pv-discovery-filters select,
.pv-discovery-filters button,
.pv-discovery-filters a { min-height: 42px; padding: 8px 12px; border: 1px solid var(--pv-card-border); border-radius: 999px; background: var(--pv-panel); color: var(--pv-ink); }
.pv-discovery-filters button { background: var(--pv-accent); border-color: var(--pv-accent); color: #fff; font-weight: 750; cursor: pointer; }
.pv-discovery-filters a { display: inline-flex; align-items: center; text-decoration: none; }

@media (max-width: 680px) {
	.pv-live-search__items { grid-template-columns: minmax(0, 1fr); }
	.pv-live-search__item { grid-template-columns: 82px minmax(0, 1fr); }
	.pv-live-search__item img { width: 82px; }
	.pv-discovery-filters { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.pv-discovery-filters label,
	.pv-discovery-filters select { width: 100%; }
}

@media (prefers-reduced-motion: reduce) {
	.pv-nav,
	.pv-nav-scrim { transition: none; }
}

/* Flyout-only heading and close control. */
.pv-nav__mobile-head { display: none; }
@media (max-width: 782px) {
	.pv-nav__mobile-head {
		display: flex;
		align-items: center;
		justify-content: space-between;
		gap: 14px;
		margin: -56px 0 22px;
		padding-bottom: 14px;
		border-bottom: 1px solid color-mix(in srgb, var(--pv-header-ink) 16%, transparent);
		font-weight: 800;
	}
	.pv-nav__close {
		display: grid;
		place-items: center;
		width: 40px;
		height: 40px;
		padding: 0;
		border: 1px solid color-mix(in srgb, var(--pv-header-ink) 20%, transparent);
		border-radius: 999px;
		background: transparent;
		color: inherit;
		cursor: pointer;
	}
	.pv-nav__close svg { width: 20px; height: 20px; }
}
