/*
 * On This Day in Space History — public styles.
 * Scoped to .nse-sh; inherits theme typography and colours. Override with CSS custom properties:
 * --nse-sh-accent, --nse-sh-bg, --nse-sh-text, --nse-sh-border, --nse-sh-gap.
 */
.nse-sh {
	--nse-sh-accent: currentColor;
	--nse-sh-text: inherit;
	--nse-sh-bg: transparent;
	--nse-sh-muted: color-mix(in srgb, currentColor 72%, transparent);
	--nse-sh-border: color-mix(in srgb, currentColor 18%, transparent);
	--nse-sh-gap: 1rem;
	--nse-sh-radius: 6px;
	--nse-sh-duration: 500ms;
	color: var(--nse-sh-text);
	background: var(--nse-sh-bg);
	max-width: 100%;
	overflow-wrap: anywhere;
	box-sizing: border-box;
}
.nse-sh *, .nse-sh *::before, .nse-sh *::after { box-sizing: border-box; }
.nse-sh--spacing-compact { --nse-sh-gap: .5rem; }
.nse-sh--spacing-roomy { --nse-sh-gap: 1.6rem; }
.nse-sh--border-none { --nse-sh-border: transparent; }
.nse-sh--border-strong { --nse-sh-border: color-mix(in srgb, currentColor 45%, transparent); }
.nse-sh .screen-reader-text {
	border: 0; clip: rect(1px,1px,1px,1px); clip-path: inset(50%); height: 1px; margin: -1px;
	overflow: hidden; padding: 0; position: absolute !important; width: 1px; word-wrap: normal !important;
}
.nse-sh a:focus-visible, .nse-sh button:focus-visible, .nse-sh input:focus-visible, .nse-sh select:focus-visible, .nse-sh [tabindex]:focus-visible {
	outline: 3px solid var(--nse-sh-accent);
	outline-offset: 2px;
}
.nse-sh__heading { margin: 0 0 var(--nse-sh-gap); }
.nse-sh__count, .nse-sh__meta, .nse-sh__sources, .nse-sh__credit { color: var(--nse-sh-muted); font-size: .9em; }
.nse-sh__meta { margin: 0 0 .25em; display: flex; flex-wrap: wrap; gap: .25em .6em; align-items: baseline; }
.nse-sh__year { font-weight: 700; color: var(--nse-sh-text); font-variant-numeric: tabular-nums; }
.nse-sh__cat { border: 1px solid var(--nse-sh-border); border-radius: 999px; padding: 0 .55em; }
.nse-sh__observance, .nse-sh__nearby-label { display: inline-block; font-size: .85em; border-left: 3px solid var(--nse-sh-accent); padding-left: .4em; }
.nse-sh__title { margin: 0 0 .3em; font-size: 1.05em; line-height: 1.3; }
.nse-sh__title-link { color: inherit; }
.nse-sh__summary { margin: 0 0 .4em; }
.nse-sh__sources { margin: .3em 0 0; padding-left: 1.1em; }
.nse-sh__empty { font-style: italic; }
.nse-sh__error { border-left: 4px solid #b32d2e; padding: .3em .6em; }
.nse-sh__items { list-style: none; margin: 0; padding: 0; display: grid; gap: var(--nse-sh-gap); }
.nse-sh__items--list > .nse-sh__item, .nse-sh__items--upcoming > .nse-sh__item { border-bottom: 1px solid var(--nse-sh-border); padding-bottom: var(--nse-sh-gap); }
.nse-sh__items--list .nse-sh__entry { display: flex; gap: var(--nse-sh-gap); justify-content: space-between; align-items: flex-start; }
.nse-sh__items--list .nse-sh__figure { flex: 0 0 96px; margin: 0; }
.nse-sh__items--compact { gap: .35em; }
.nse-sh__items--compact .nse-sh__item { display: flex; gap: .6em; align-items: baseline; }
.nse-sh__items--cards, .nse-sh__items--grid { grid-template-columns: repeat(auto-fill, minmax(min(100%, 14rem), 1fr)); }
@supports (width: max(1px, 2px)) {
	.nse-sh__items--cards, .nse-sh__items--grid { grid-template-columns: repeat(auto-fill, minmax(max(14rem, calc((100% - (var(--nse-sh-cols, 3) - 1) * var(--nse-sh-gap)) / var(--nse-sh-cols, 3))), 1fr)); }
}
.nse-sh__card { border: 1px solid var(--nse-sh-border); border-radius: var(--nse-sh-radius); overflow: hidden; height: 100%; display: flex; flex-direction: column; background: var(--nse-sh-bg); }
.nse-sh__card .nse-sh__body { padding: var(--nse-sh-gap); }
.nse-sh__figure { margin: 0; }
.nse-sh__img { display: block; width: 100%; height: auto; }
.nse-sh__card .nse-sh__img { aspect-ratio: 16 / 9; object-fit: cover; }
.nse-sh__credit { padding: .3em var(--nse-sh-gap) 0; }
.nse-sh--featured .nse-sh__title { font-size: 1.35em; }
.nse-sh__outcome { margin: .2em 0; font-size: .95em; }
.nse-sh__date-nav, .nse-sh__browse { display: flex; flex-wrap: wrap; justify-content: space-between; gap: .5em; margin: 0 0 var(--nse-sh-gap); }
.nse-sh__date-nav a, .nse-sh__pagination a, .nse-sh__pagination span { display: inline-flex; align-items: center; min-height: 44px; padding: 0 .4em; }
.nse-sh__pagination ul { list-style: none; display: flex; flex-wrap: wrap; gap: .25em; padding: 0; margin: var(--nse-sh-gap) 0 0; }
.nse-sh__nearby { border: 1px dashed var(--nse-sh-border); border-radius: var(--nse-sh-radius); padding: var(--nse-sh-gap); }

/* Timeline */
.nse-sh-timeline { list-style: none; margin: 0; padding: 0 0 0 1.4rem; border-left: 2px solid var(--nse-sh-border); }
.nse-sh-timeline__item { position: relative; padding: 0 0 var(--nse-sh-gap) .6rem; }
.nse-sh-timeline__marker { position: absolute; left: calc(-1.4rem - 7px); top: .35em; width: 12px; height: 12px; border-radius: 50%; background: var(--nse-sh-accent); border: 2px solid currentColor; }
.nse-sh-timeline .nse-sh__figure { max-width: 240px; margin-top: .4em; }

/* Table */
.nse-sh-table__wrap { overflow-x: auto; max-width: 100%; }
.nse-sh-table { width: 100%; min-width: 34rem; border-collapse: collapse; }
.nse-sh-table td:first-child { white-space: nowrap; font-variant-numeric: tabular-nums; }
.nse-sh-table td:nth-child(3), .nse-sh-table td:nth-child(4) { min-width: 6rem; }
.nse-sh-table .nse-sh__sources { font-size: .85em; min-width: 12rem; }
.nse-sh-table caption { text-align: left; font-weight: 700; padding-bottom: .5em; }
.nse-sh-table th, .nse-sh-table td { border-bottom: 1px solid var(--nse-sh-border); padding: .5em; text-align: left; vertical-align: top; }
.nse-sh-table__sort { all: unset; cursor: pointer; font-weight: 700; min-height: 44px; display: inline-flex; align-items: center; }
.nse-sh-table__sort:focus-visible { outline: 3px solid var(--nse-sh-accent); outline-offset: 2px; }
.nse-sh-table th[aria-sort="ascending"] .nse-sh-table__sort::after { content: " ▲"; }
.nse-sh-table th[aria-sort="descending"] .nse-sh-table__sort::after { content: " ▼"; }
.nse-sh-table__summary .nse-sh__summary { font-size: .9em; margin: .25em 0 0; }
.nse-sh-table__search { margin-bottom: .6em; }
.nse-sh-table__search input { min-height: 44px; max-width: 100%; }

/* Calendar */
.nse-sh-cal__nav { display: flex; justify-content: space-between; align-items: center; margin-bottom: .4em; }
.nse-sh-cal__nav a { min-width: 44px; min-height: 44px; display: inline-flex; align-items: center; justify-content: center; }
.nse-sh-cal__title { font-weight: 700; }
.nse-sh-cal__grid { width: 100%; table-layout: fixed; border-collapse: collapse; }
.nse-sh-cal__grid th { font-size: .85em; padding: .25em 0; text-align: center; }
.nse-sh-cal__grid td { border: 1px solid var(--nse-sh-border); padding: 0; text-align: center; height: 3em; }
.nse-sh-cal__grid td a, .nse-sh-cal__grid td > span { display: flex; flex-direction: column; align-items: center; justify-content: center; min-height: 44px; height: 100%; text-decoration: none; color: inherit; }
.nse-sh-cal__grid td.has-events a { font-weight: 700; }
.nse-sh-cal__grid td.is-today { outline: 2px solid var(--nse-sh-accent); outline-offset: -2px; }
.nse-sh-cal__count { font-size: .75em; border-radius: 999px; padding: 0 .4em; background: color-mix(in srgb, currentColor 12%, transparent); }

/* Controls (tickers and rotator) */
.nse-sh-controls { display: flex; align-items: center; gap: .35rem; flex-wrap: wrap; margin-top: .4rem; }
.nse-sh-controls__btn { min-width: 44px; min-height: 44px; border: 1px solid var(--nse-sh-border); border-radius: var(--nse-sh-radius); background: transparent; color: inherit; font: inherit; cursor: pointer; line-height: 1; }
.nse-sh-controls__btn:hover { border-color: currentColor; }
.nse-sh-controls__btn .nse-sh-controls__play { display: none; }
.nse-sh-controls__btn.is-paused .nse-sh-controls__play { display: inline; }
.nse-sh-controls__btn.is-paused .nse-sh-controls__pause { display: none; }
.nse-sh-controls__progress { flex: 1 1 4rem; height: 4px; background: var(--nse-sh-border); border-radius: 2px; overflow: hidden; }
.nse-sh-controls__progress span { display: block; height: 100%; width: 0; background: var(--nse-sh-accent); }

/* Ticker: without JavaScript (or before enhancement) it is a readable static list. */
.nse-sh-ticker { display: flex; flex-wrap: wrap; align-items: center; gap: .5rem; border: 1px solid var(--nse-sh-border); border-radius: var(--nse-sh-radius); padding: .5rem .75rem; }
.nse-sh-ticker__label { font-weight: 700; text-transform: uppercase; letter-spacing: .04em; font-size: .85em; padding: .2em .6em; border-radius: var(--nse-sh-radius); background: var(--nse-sh-accent); color: var(--nse-sh-bg, #fff); }
.nse-sh-ticker--headline .nse-sh-ticker__label { color: #fff; background: #1d2327; }
.nse-sh-ticker__viewport { flex: 1 1 16rem; min-width: 0; overflow: hidden; position: relative; }
.nse-sh-ticker__track { list-style: none; margin: 0; padding: 0; }
.nse-sh-ticker__item { padding: .2em 0; line-height: 1.4; }
.nse-sh-ticker__year { font-weight: 700; font-variant-numeric: tabular-nums; }
.nse-sh-ticker__meta { display: block; font-size: .85em; color: var(--nse-sh-muted); }
.nse-sh-ticker__img img { width: 48px; height: 48px; object-fit: cover; border-radius: 4px; float: left; margin-right: .5em; }
.nse-sh-ticker .nse-sh-controls { margin-top: 0; }

/* Enhanced: continuous scroll */
.nse-sh-ticker.is-enhanced.is-continuous .nse-sh-ticker__track { display: flex; width: max-content; will-change: transform; }
.nse-sh-ticker.is-enhanced.is-continuous .nse-sh-ticker__item { white-space: nowrap; padding: .2em 2.5em .2em 0; }
.nse-sh-ticker.is-enhanced.is-continuous.nse-sh-ticker--vertical_scroll .nse-sh-ticker__track { display: block; width: auto; }
.nse-sh-ticker.is-enhanced.is-continuous.nse-sh-ticker--vertical_scroll .nse-sh-ticker__item { white-space: normal; padding: .35em 0; }
/* Enhanced: stepped (slide, carousel, multirow) */
.is-enhanced.is-stepped:not(.is-fade) .nse-sh-ticker__track { display: flex; transition: transform var(--nse-sh-duration) ease; }
.nse-sh-ticker.is-enhanced.is-stepped:not(.is-fade) .nse-sh-ticker__item { flex: 0 0 100%; }
.nse-sh-ticker--vertical_slide.is-enhanced.is-stepped .nse-sh-ticker__track, .nse-sh-ticker--multirow.is-enhanced.is-stepped .nse-sh-ticker__track { flex-direction: column; }
.nse-sh-ticker--carousel.is-enhanced.is-stepped .nse-sh-ticker__item { flex-basis: 50% !important; padding-right: 1rem; }
@media (min-width: 900px) { .nse-sh-ticker--carousel.is-enhanced.is-stepped .nse-sh-ticker__item { flex-basis: 33.333% !important; } }
/* Enhanced: fade / static / headline / manual / rotator */
.is-enhanced.is-fade .nse-sh-ticker__track, .is-enhanced.is-fade .nse-sh-rotator__slides { position: relative; height: 100%; }
.is-enhanced.is-fade .nse-sh-ticker__item, .is-enhanced.is-fade .nse-sh-rotator__slide { position: absolute; inset: 0 auto auto 0; width: 100%; opacity: 0; visibility: hidden; transition: opacity var(--nse-sh-duration) ease, visibility 0s linear var(--nse-sh-duration); }
.is-enhanced.is-fade .is-active { opacity: 1; visibility: visible; position: relative; transition: opacity var(--nse-sh-duration) ease; }

/* Rotator */
.nse-sh-rotator__slides { list-style: none; margin: 0; padding: 0; display: grid; gap: var(--nse-sh-gap); }
.nse-sh-rotator.is-enhanced .nse-sh-rotator__slides { display: block; overflow: hidden; position: relative; }

/* Explorer and date selector */
.nse-sh-explorer, .nse-sh-dateselect { display: flex; flex-wrap: wrap; gap: .6rem; align-items: flex-end; margin: 0 0 var(--nse-sh-gap); }
.nse-sh-explorer__field { display: flex; flex-direction: column; gap: .2em; min-width: 8rem; }
.nse-sh-explorer select, .nse-sh-explorer input, .nse-sh-explorer button, .nse-sh-dateselect input, .nse-sh-dateselect button { min-height: 44px; font: inherit; max-width: 100%; }
.nse-sh-dateselect label { flex-basis: 100%; }

/* Event page */
.nse-sh-event__title { margin: .2em 0 .3em; }
.nse-sh-event__qualifiers { color: var(--nse-sh-muted); font-size: .9em; }
.nse-sh-event__preview { border: 2px dashed #b32d2e; padding: .5em .8em; }
.nse-sh-event__details { display: grid; grid-template-columns: minmax(7rem, max-content) 1fr; gap: .3em 1em; margin: var(--nse-sh-gap) 0; }
.nse-sh-event__details dt { font-weight: 700; }
.nse-sh-event__details dd { margin: 0; }
.nse-sh-event__figure { margin: var(--nse-sh-gap) 0; }
.nse-sh-event__section { margin-top: calc(var(--nse-sh-gap) * 1.5); }
.nse-sh-event__nav { margin-top: calc(var(--nse-sh-gap) * 1.5); }

/* Themes (Space History → Appearance). Colours arrive as inline custom properties; anything a theme
   leaves blank falls back to the site's own colours. */
.nse-sh--has-bg { padding: var(--nse-sh-pad, 1.25rem); border-radius: var(--nse-sh-radius); }
.nse-sh--has-heading :is(.nse-sh__heading, .nse-sh__title, .nse-sh-event__title, .nse-sh-event__section h2, .nse-sh-table th, .nse-sh-fullwidth__title) { color: var(--nse-sh-heading); }
.nse-sh--has-link a { color: var(--nse-sh-link); }
.nse-sh--has-link .nse-sh__title-link { color: inherit; }
.nse-sh--has-surface .nse-sh__card { background: var(--nse-sh-surface); }
.nse-sh--items-cards .nse-sh__items--list > .nse-sh__item, .nse-sh--items-cards .nse-sh__items--upcoming > .nse-sh__item {
	background: var(--nse-sh-surface, transparent); border: 1px solid var(--nse-sh-border); border-radius: var(--nse-sh-radius); padding: var(--nse-sh-gap);
}
.nse-sh--items-boxed .nse-sh__items--list > .nse-sh__item, .nse-sh--items-boxed .nse-sh__items--upcoming > .nse-sh__item {
	background: var(--nse-sh-surface, transparent); border-bottom: 0; border-left: 4px solid var(--nse-sh-accent);
	border-radius: 0 var(--nse-sh-radius) var(--nse-sh-radius) 0; padding: calc(var(--nse-sh-gap) * .75) var(--nse-sh-gap);
}
.nse-sh--items-plain .nse-sh__items--list > .nse-sh__item, .nse-sh--items-plain .nse-sh__items--upcoming > .nse-sh__item { border-bottom: 0; padding-bottom: 0; }
.nse-sh--year-badge .nse-sh__year { display: inline-block; padding: .05em .5em; border-radius: var(--nse-sh-radius); background: var(--nse-sh-accent); color: var(--nse-sh-badge-text, #fff); }
.nse-sh--font-system, .nse-sh--hfont-system :is(.nse-sh__heading, .nse-sh__title, .nse-sh-fullwidth__title) { font-family: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif; }
.nse-sh--font-humanist, .nse-sh--hfont-humanist :is(.nse-sh__heading, .nse-sh__title, .nse-sh-fullwidth__title) { font-family: Seravek, "Gill Sans Nova", Ubuntu, Calibri, "DejaVu Sans", source-sans-pro, sans-serif; }
.nse-sh--font-geometric, .nse-sh--hfont-geometric :is(.nse-sh__heading, .nse-sh__title, .nse-sh-fullwidth__title) { font-family: Avenir, Montserrat, Corbel, "URW Gothic", source-sans-pro, sans-serif; }
.nse-sh--font-rounded, .nse-sh--hfont-rounded :is(.nse-sh__heading, .nse-sh__title, .nse-sh-fullwidth__title) { font-family: ui-rounded, "Hiragino Maru Gothic ProN", Quicksand, Comfortaa, Manjari, "Arial Rounded MT", "Arial Rounded MT Bold", Calibri, source-sans-pro, sans-serif; }
.nse-sh--font-serif, .nse-sh--hfont-serif :is(.nse-sh__heading, .nse-sh__title, .nse-sh-fullwidth__title) { font-family: Charter, "Bitstream Charter", "Sitka Text", Cambria, Georgia, serif; }
.nse-sh--font-slab, .nse-sh--hfont-slab :is(.nse-sh__heading, .nse-sh__title, .nse-sh-fullwidth__title) { font-family: Rockwell, "Rockwell Nova", "Roboto Slab", "DejaVu Serif", "Sitka Small", serif; }
.nse-sh--font-mono, .nse-sh--hfont-mono :is(.nse-sh__heading, .nse-sh__title, .nse-sh-fullwidth__title) { font-family: ui-monospace, "Cascadia Code", "Source Code Pro", Menlo, Consolas, "DejaVu Sans Mono", monospace; }

/* Full-width pages (the full-width shortcode). Padding comes from --nse-sh-fw-* (Appearance settings or
   the shortcode's padding_top / padding_bottom / padding_sides / max_width attributes). */
.nse-sh-fullwidth, #main.nse-sh-fullwidth {
	display: block; float: none; box-sizing: border-box; width: 100%; max-width: none; margin: 0;
	padding: var(--nse-sh-fw-top, clamp(32px, 5vw, 64px)) var(--nse-sh-fw-sides, clamp(16px, 4vw, 48px)) var(--nse-sh-fw-bottom, clamp(32px, 5vw, 64px));
	background: var(--nse-sh-bg, transparent); color: var(--nse-sh-text, inherit);
}
.nse-sh-fullwidth *, .nse-sh-fullwidth *::before, .nse-sh-fullwidth *::after { box-sizing: border-box; }
.nse-sh-fullwidth__inner { max-width: var(--nse-sh-fw-max, none); margin: 0 auto; }
.nse-sh-fullwidth__title { margin: 0 0 1rem; }
.nse-sh-fullwidth .nse-sh--fullwidth-content { background: transparent; padding: 0; border-radius: 0; }
/* Stretch to the window even when the theme wraps the page in a centred, padded container. */
.nse-sh-fullbleed, #main.nse-sh-fullbleed {
	width: calc(100vw - var(--nse-sh-scrollbar, 0px)); max-width: none;
	margin-left: calc(50% - (100vw - var(--nse-sh-scrollbar, 0px)) / 2); margin-right: 0;
}

/* Previews (shortcode builder, block editor) stay inside their box. */
.nse-sh-builder__preview .nse-sh-fullbleed, .block-editor-block-list__block .nse-sh-fullbleed, .nse-sh-fullwidth--preview { width: auto; max-width: 100%; margin-left: 0; margin-right: 0; }

/* Taxonomy on cards and list rows: category › type, mission/programme, up to three subjects. */
.nse-sh__taxonomy, .nse-sh__context { margin: 0 0 .3em; font-size: .9em; }
.nse-sh__tax--category { font-weight: 600; }
.nse-sh__tax-sep { color: var(--nse-sh-muted); }
.nse-sh__context { color: var(--nse-sh-muted); }
.nse-sh__subjects { list-style: none; margin: .2em 0 .4em; padding: 0; display: flex; flex-wrap: wrap; gap: .3em; }
.nse-sh__subjects a, .nse-sh__subjects span { display: inline-block; font-size: .8em; line-height: 1.6; padding: 0 .6em; border: 1px solid var(--nse-sh-border); border-radius: 999px; text-decoration: none; color: inherit; }
.nse-sh__subjects a:hover { border-color: currentColor; }
.nse-sh__more-subjects summary { cursor: pointer; font-size: .85em; color: var(--nse-sh-muted); min-height: 24px; }
.nse-sh-event__claims ul { margin: 0; padding-left: 1.2em; }
.nse-sh__meta-inline { color: var(--nse-sh-muted); font-size: .9em; }

/* Search and filters */
.nse-sh-search { display: grid; gap: var(--nse-sh-gap); margin: 0 0 var(--nse-sh-gap); }
.nse-sh-search__row { display: flex; flex-wrap: wrap; gap: .6rem; align-items: flex-end; }
.nse-sh-search__row input { min-height: 44px; font: inherit; max-width: 100%; }
.nse-sh-search__hint { margin: 0; font-size: .85em; color: var(--nse-sh-muted); }
.nse-sh-search__facets { display: grid; gap: var(--nse-sh-gap); grid-template-columns: repeat(auto-fit, minmax(min(100%, 15rem), 1fr)); }
.nse-sh-search__facet { border: 1px solid var(--nse-sh-border); border-radius: var(--nse-sh-radius); padding: .5rem .75rem; margin: 0; max-height: 22rem; overflow: auto; }
.nse-sh-search__facet legend { font-weight: 700; padding: 0 .3em; }
.nse-sh-search__option { display: flex; gap: .4em; align-items: center; min-height: 32px; }
.nse-sh-search__option input { width: 20px; height: 20px; flex: 0 0 auto; }
.nse-sh-search__option[hidden] { display: none; }
.nse-sh-search__n { color: var(--nse-sh-muted); font-size: .85em; }
.nse-sh-search__advanced summary { cursor: pointer; font-weight: 600; min-height: 44px; display: flex; align-items: center; }
.nse-sh-search__actions { display: flex; flex-wrap: wrap; gap: 1rem; align-items: center; }
.nse-sh-search__actions button { min-height: 44px; padding: 0 1.2em; font: inherit; cursor: pointer; }
.nse-sh-search__active { display: flex; flex-wrap: wrap; gap: .5rem; align-items: center; margin: 0 0 var(--nse-sh-gap); }
.nse-sh-chips { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: .4rem; }
.nse-sh-chip { display: inline-flex; align-items: center; gap: .3em; min-height: 36px; padding: 0 .8em; border: 1px solid var(--nse-sh-border); border-radius: 999px; text-decoration: none; color: inherit; }
.nse-sh-chip:hover { border-color: currentColor; }
.nse-sh__notice { border-left: 4px solid var(--nse-sh-accent); padding: .3em .6em; }
.nse-sh-search__typehint { margin: 0; font-size: .85em; color: var(--nse-sh-muted); }

/* Narrow containers (sidebars, phones): stack media, keep text size. */
@container (max-width: 380px) {
	.nse-sh__items--list .nse-sh__entry { flex-direction: column; }
}
@media (max-width: 480px) {
	.nse-sh__items--list .nse-sh__entry { flex-direction: column; }
	.nse-sh__items--list .nse-sh__figure { flex-basis: auto; max-width: 160px; }
	.nse-sh-event__details { grid-template-columns: 1fr; }
	.nse-sh-ticker__viewport { flex-basis: 100%; }
}
.nse-sh-sidebar .nse-sh__items--list .nse-sh__entry { flex-direction: column; }
.nse-sh-sidebar--thumbnail_list .nse-sh__items--list .nse-sh__entry { flex-direction: row-reverse; justify-content: flex-end; }
.nse-sh-sidebar--thumbnail_list .nse-sh__figure { flex: 0 0 64px; }
.nse-sh-sidebar .nse-sh__heading { font-size: 1.1em; }

@media (prefers-reduced-motion: reduce) {
	.nse-sh, .nse-sh * { transition-duration: 0ms !important; animation-duration: 0ms !important; scroll-behavior: auto !important; }
}
@media (forced-colors: active) {
	.nse-sh-controls__progress span, .nse-sh-timeline__marker { background: CanvasText; }
}

/* Event details opened on the same page (assets/js/public.js). */
.nse-sh-panel-item { list-style: none; grid-column: 1 / -1; margin: 0; padding: 0; border: 0; background: none; }
.nse-sh-panel-row > td { padding: 0; }
.nse-sh-panel {
	margin: .5em 0 1em; padding: 1em 1.25em 1.25em; border: 1px solid var(--nse-sh-border);
	border-left: 4px solid var(--nse-sh-accent); border-radius: var(--nse-sh-radius);
	background: var(--nse-sh-surface, var(--nse-sh-bg, transparent)); color: var(--nse-sh-text);
	box-sizing: border-box; max-width: 100%; overflow-wrap: anywhere;
}
.nse-sh-panel:focus { outline: 3px solid var(--nse-sh-accent); outline-offset: 2px; }
.nse-sh-panel__bar { display: flex; flex-wrap: wrap; justify-content: flex-end; align-items: center; gap: .5em; margin-bottom: .5em; font-size: .9em; }
.nse-sh-panel__close {
	display: inline-flex; align-items: center; gap: .35em; min-height: 44px; padding: .3em .9em; cursor: pointer;
	font: inherit; color: inherit; background: transparent; border: 1px solid var(--nse-sh-border); border-radius: 999px;
}
.nse-sh-panel__close:hover, .nse-sh-panel__close:focus-visible { border-color: var(--nse-sh-accent); }
.nse-sh-panel__close span[aria-hidden] { font-size: 1.3em; line-height: 1; }
.nse-sh-panel[aria-busy="true"] .nse-sh-panel__status { opacity: .75; }
.nse-sh-panel .nse-sh-event { margin: 0; }
.nse-sh-panel .nse-sh-event__title { margin-top: .2em; }
.nse-sh-panel img { max-width: 100%; height: auto; }

.nse-sh-panel__back { margin-right: auto; min-height: 44px; padding: .3em .9em; font: inherit; color: inherit; background: transparent; border: 1px solid var(--nse-sh-border); border-radius: 999px; cursor: pointer; }
.nse-sh-panel__back[hidden] { display: none; }
.nse-sh-browse__title { margin: .1em 0 .2em; }
.nse-sh-browse__items { margin: .5em 0; padding-left: 1.1em; }
.nse-sh-browse__items li { margin: .35em 0; }
.nse-sh-browse__pages { display: flex; gap: 1em; align-items: center; flex-wrap: wrap; font-size: .9em; }
