/**
 * Events archive view switch: Tiles (default, the existing grid) or List
 * (one row per event, artwork as a small icon on the left). Loaded only on
 * archive-event.php. Every rule is scoped to the archive listing and keyed
 * on data-lvg-events-view, so nothing changes until the visitor picks List.
 */
.lvg-events-view { display: flex; align-items: center; justify-content: flex-end; gap: 6px; margin: 0 0 14px; }
.lvg-events-view__label { font-size: 0.72rem; letter-spacing: 0.1em; text-transform: uppercase; font-weight: 800; color: var(--lvg-muted, #cbbfe0); margin-right: 6px; }
.lvg-events-view__btn { appearance: none; display: inline-flex; align-items: center; gap: 6px; min-height: 38px; padding: 0 14px; border-radius: 999px; border: 1px solid var(--lvg-line, rgba(255,255,255,0.14)); background: rgba(255,255,255,0.06); color: var(--lvg-text, #f7f4fb); font: inherit; font-size: 0.86rem; font-weight: 750; cursor: pointer; transition: border-color 0.15s ease, background-color 0.15s ease; }
.lvg-events-view__btn:hover { border-color: var(--lvg-yellow, #FFD700); }
.lvg-events-view__btn[aria-pressed="true"] { background: var(--lvg-yellow, #FFD700); border-color: var(--lvg-yellow, #FFD700); color: #1a1206; }
.lvg-events-view__btn:focus-visible { outline: 3px solid var(--lvg-yellow, #FFD700); outline-offset: 3px; }
.lvg-events-view__glyph { width: 14px; height: 14px; display: inline-block; }

/* List mode ------------------------------------------------------------- */
.post-type-archive-event .lvg-event-listing[data-lvg-events-view="list"] { display: grid; grid-template-columns: minmax(0, 1fr); gap: 10px; }
.post-type-archive-event .lvg-event-listing[data-lvg-events-view="list"] .lvg-event-rollup__grid { display: grid; grid-template-columns: minmax(0, 1fr); gap: 10px; }
.post-type-archive-event .lvg-event-listing[data-lvg-events-view="list"] .lvg-event-card { flex-direction: row; align-items: center; gap: 14px; padding: 10px 14px 10px 10px; border-radius: 16px; }
.post-type-archive-event .lvg-event-listing[data-lvg-events-view="list"] .lvg-event-card__media { width: 72px; height: 72px; flex: 0 0 72px; aspect-ratio: 1 / 1; border-radius: 12px; --lvg-event-placeholder-grid-size: 0.9rem; --lvg-event-placeholder-glow-size: 3rem; --lvg-event-placeholder-glow-offset: -1rem; --lvg-event-placeholder-padding: 0.3rem; --lvg-event-placeholder-wordmark-width: min(2.4rem, 70%); --lvg-event-placeholder-wordmark-max-height: 0.8rem; --lvg-event-placeholder-title-size: 0.5rem; }
.post-type-archive-event .lvg-event-listing[data-lvg-events-view="list"] .lvg-event-date-pill { display: none; }
.post-type-archive-event .lvg-event-listing[data-lvg-events-view="list"] .lvg-event-card__body { padding: 0; gap: 0.2rem; min-width: 0; }
.post-type-archive-event .lvg-event-listing[data-lvg-events-view="list"] .lvg-event-card__title { font-size: 1rem; line-height: 1.25; margin: 0; }
.post-type-archive-event .lvg-event-listing[data-lvg-events-view="list"] .lvg-event-card__meta { font-size: 0.82rem; }
.post-type-archive-event .lvg-event-listing[data-lvg-events-view="list"] .lvg-stack-inline { display: none; }
.post-type-archive-event .lvg-event-listing[data-lvg-events-view="list"] .lvg-event-card__official { margin: 2px 0 0; font-size: 0.8rem; }
@media (max-width: 640px) {
	.lvg-events-view { justify-content: flex-start; }
	.post-type-archive-event .lvg-event-listing[data-lvg-events-view="list"] .lvg-event-card { gap: 10px; padding: 8px 10px 8px 8px; }
	.post-type-archive-event .lvg-event-listing[data-lvg-events-view="list"] .lvg-event-card__media { width: 56px; height: 56px; flex-basis: 56px; border-radius: 10px; }
	.post-type-archive-event .lvg-event-listing[data-lvg-events-view="list"] .lvg-event-card__title { font-size: 0.95rem; }
}

/* Homepage "Coming up" feed: same switch. Tile mode = the curated nine; List mode = every upcoming
   event in date order, spotlight included, capped at 13. Two rails are rendered; CSS shows one. */
.home .lvg-home-feed .lvg-highlight-rail--list { display: none; }
.home .lvg-home-feed[data-lvg-events-view="list"] .lvg-highlight-rail--tile { display: none; }
.home .lvg-home-feed[data-lvg-events-view="list"] .lvg-highlight-rail--list { display: grid; grid-template-columns: minmax(0, 1fr); gap: 10px; }
.home .lvg-home-feed[data-lvg-events-view="list"] .lvg-event-card { display: grid; grid-template-columns: 72px minmax(0, 1fr); flex-direction: row; align-items: center; gap: 14px; padding: 10px 14px 10px 10px; border-radius: 16px; }
.home .lvg-home-feed[data-lvg-events-view="list"] .lvg-event-card__media { width: 72px; height: 72px; flex: 0 0 72px; aspect-ratio: 1 / 1; border-radius: 12px; }
.home .lvg-home-feed[data-lvg-events-view="list"] .lvg-event-date-pill,
.home .lvg-home-feed[data-lvg-events-view="list"] .lvg-event-card__excerpt,
.home .lvg-home-feed[data-lvg-events-view="list"] .lvg-event-card__highlights,
.home .lvg-home-feed[data-lvg-events-view="list"] .lvg-stack-inline { display: none; }
.home .lvg-home-feed[data-lvg-events-view="list"] .lvg-event-card__body { padding: 0; gap: 0.2rem; min-width: 0; }
.home .lvg-home-feed[data-lvg-events-view="list"] .lvg-event-card__title { font-size: 1rem; line-height: 1.25; margin: 0; }
.home .lvg-home-feed[data-lvg-events-view="list"] .lvg-event-card__meta { font-size: 0.82rem; }
.home .lvg-home-feed[data-lvg-events-view="list"] .lvg-event-card__official { margin: 2px 0 0; font-size: 0.8rem; }
@media (max-width: 640px) {
	.home .lvg-home-feed[data-lvg-events-view="list"] .lvg-event-card { gap: 10px; padding: 8px 10px 8px 8px; grid-template-columns: 56px minmax(0, 1fr); }
	.home .lvg-home-feed[data-lvg-events-view="list"] .lvg-event-card__media { width: 56px; height: 56px; flex-basis: 56px; border-radius: 10px; }
}

/* No-art placeholder, made for the screen it is on -------------------------
   Icon size (list mode): the brand tile alone; words would be unreadable.
   Phone tiles: a shorter 16:9 band with words sized to the tile, instead of a
   tall dark square with small text. Desktop tiles keep the existing look. */
.post-type-archive-event .lvg-event-listing[data-lvg-events-view="list"] .lvg-event-placeholder__title,
.home .lvg-home-feed[data-lvg-events-view="list"] .lvg-event-placeholder__title { display: none; }
@media (max-width: 640px) {
	.post-type-archive-event .lvg-event-listing[data-lvg-events-view="tile"] .lvg-event-card__media--placeholder,
	.home .lvg-home-feed[data-lvg-events-view="tile"] .lvg-event-card__media--placeholder { aspect-ratio: 16 / 9; }
	.post-type-archive-event .lvg-event-listing[data-lvg-events-view="tile"] .lvg-event-placeholder,
	.home .lvg-home-feed[data-lvg-events-view="tile"] .lvg-event-placeholder { --lvg-event-placeholder-title-size: clamp(1.15rem, 6vw, 1.6rem); --lvg-event-placeholder-title-max-width: 16ch; --lvg-event-placeholder-padding: 1rem 1.25rem; min-height: 0; }
	.post-type-archive-event .lvg-event-listing[data-lvg-events-view="tile"] .lvg-event-placeholder__title,
	.home .lvg-home-feed[data-lvg-events-view="tile"] .lvg-event-placeholder__title { max-width: min(92%, var(--lvg-event-placeholder-title-max-width)); line-height: 1.15; letter-spacing: 0.02em; }
}
