/**
 * Interne design showcase — alleen voor page-styleguide
 */

.page-styleguide .site-main.styleguide {
	padding-bottom: var(--section-space-lg);
}

.styleguide__intro .text-muted {
	max-width: 40rem;
	margin-top: var(--space-3);
}

.styleguide__section-head {
	max-width: 42rem;
	margin-bottom: var(--space-8);
}

.styleguide__section-title {
	margin-bottom: var(--space-3);
}

.styleguide__section-lead {
	font-size: var(--text-base);
	color: var(--color-text-light);
	line-height: var(--leading-body);
}

.styleguide__preview {
	margin-top: var(--space-6);
	padding: var(--space-6);
	background: var(--color-background);
	border: 1px solid var(--color-border);
	border-radius: var(--radius-md);
	box-shadow: var(--shadow-soft);
}

.styleguide__preview + .styleguide__preview {
	margin-top: var(--space-6);
}

.styleguide__preview-label {
	font-size: var(--text-xs);
	font-weight: 600;
	letter-spacing: 0.04em;
	color: var(--color-text-light);
	margin-bottom: var(--space-4);
}

.styleguide__spacing-slab {
	min-height: 3rem;
	border-radius: var(--radius-sm);
	background: rgba(22, 59, 109, 0.06);
	border: 1px dashed rgba(22, 59, 109, 0.15);
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: var(--text-xs);
	font-weight: 600;
	color: var(--color-brand);
}

.styleguide__swatches {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));
	gap: var(--space-4);
}

.styleguide__swatch {
	min-height: 5rem;
	border-radius: var(--radius-md);
	display: flex;
	align-items: flex-end;
	padding: var(--space-3);
	font-size: var(--text-small);
	font-weight: 600;
	border: 1px solid var(--color-border);
}

.styleguide__swatch--brand {
	background: var(--color-brand);
	color: var(--color-text-on-dark);
	border-color: var(--color-brand);
}

.styleguide__swatch--accent {
	background: var(--color-accent);
	color: var(--color-text-on-dark);
	border-color: var(--color-accent);
}

.styleguide__swatch--surface {
	background: var(--color-surface);
	color: var(--color-text);
}

.styleguide__swatch--soft {
	background: var(--color-surface-soft);
	color: var(--color-text);
}

.styleguide__cta-gap {
	margin-top: var(--space-6);
}

/* Geïsoleerde header-demo’s (niet sticky) */
.sg-header-strip.site-header {
	position: relative;
	top: auto;
	box-shadow: var(--shadow-header);
}

body.admin-bar .sg-header-strip.site-header {
	top: auto;
}

/* Dropdown altijd zichtbaar in demo */
.sg-dropdown-demo {
	padding: var(--space-4);
	background: var(--color-background-alt);
	border-radius: var(--radius-sm);
}

.sg-dropdown-demo .primary-nav {
	display: flex;
	justify-content: flex-start;
}

.sg-dropdown-demo .primary-nav__list {
	gap: var(--space-6);
}

.sg-dropdown-demo .primary-nav .sub-menu {
	opacity: 1;
	visibility: visible;
	transform: none;
	pointer-events: auto;
	position: absolute;
	top: calc(100% + 0.35rem);
	left: 0;
}

.sg-dropdown-demo .primary-nav__list > li {
	min-height: 3rem;
	display: flex;
	align-items: center;
}

/* Mobiel menu-demo in kader */
.sg-mobile-demo .sg-mobile-panel-demo {
	position: relative;
	max-width: 22.5rem;
	border: 1px solid var(--color-border);
	border-radius: var(--radius-md);
	overflow: hidden;
	background: var(--color-surface);
	box-shadow: var(--shadow-soft);
	display: flex;
	flex-direction: column;
	max-height: 20rem;
}

.sg-mobile-demo .mobile-nav__scroll {
	flex: 1;
	min-height: 0;
	max-height: 12rem;
}

.sg-button-row {
	display: flex;
	flex-wrap: wrap;
	gap: var(--space-4);
	align-items: center;
}

.sg-button-row--stacked {
	flex-direction: column;
	align-items: flex-start;
}

.styleguide__hint {
	margin-top: var(--space-6);
	font-size: var(--text-sm);
	color: var(--color-text-light);
	line-height: var(--leading-body);
	max-width: 40rem;
}

/* Geen inline styles in template — showcases gebruiken onderstaande helpers */
.styleguide__p-lead {
	margin-top: var(--space-6);
	margin-bottom: var(--space-4);
}

.styleguide__prose-push {
	margin-top: var(--space-6);
}

.styleguide__label-spaced {
	margin-top: var(--space-8);
}

.styleguide__label-flush {
	margin-top: 0;
}

.styleguide__hero-sample {
	margin-bottom: var(--space-8);
	border-radius: var(--radius-md);
	overflow: hidden;
}

.styleguide__hero-sample--last {
	margin-bottom: 0;
}

.styleguide__form-title {
	margin-bottom: var(--space-4);
}

.styleguide__section-slot {
	border-radius: var(--radius-sm);
}

.styleguide__section-slot--gap {
	margin-bottom: var(--space-4);
}

.styleguide__container-slot {
	border-radius: var(--radius-sm);
	margin-bottom: var(--space-3);
	padding-block: var(--space-4);
}

.styleguide__container-slot--full {
	margin-bottom: 0;
}

.styleguide__grid-demo {
	margin-bottom: var(--space-4);
}

.styleguide__token-row {
	display: flex;
	flex-wrap: wrap;
	gap: var(--space-4);
	align-items: stretch;
}

.styleguide__radius {
	padding: var(--space-4) var(--space-5);
	background: var(--color-surface);
	border: 1px solid var(--color-border);
	font-size: var(--text-xs);
	font-weight: 600;
	color: var(--color-brand);
}

.styleguide__radius--sm {
	border-radius: var(--radius-sm);
}

.styleguide__radius--md {
	border-radius: var(--radius-md);
}

.styleguide__shadow {
	padding: var(--space-4) var(--space-5);
	background: var(--color-surface);
	border-radius: var(--radius-md);
	font-size: var(--text-xs);
	font-weight: 600;
	color: var(--color-brand);
}

.styleguide__shadow--card {
	box-shadow: var(--shadow-card);
}

.styleguide__hero-cta {
	margin-top: var(--space-6);
}
