[data-neobrutal-preview] {
	box-sizing: border-box;
	min-block-size: 100vh;
	background: var(--ds-background);
	color: var(--ds-foreground);
	font-family: var(--ds-font-body);
	line-height: 1.5;
	text-rendering: optimizeLegibility;
}

[data-neobrutal-preview] *,
[data-neobrutal-preview] *::before,
[data-neobrutal-preview] *::after {
	box-sizing: inherit;
}

[data-neobrutal-preview] :where(h1, h2, h3, p) {
	margin-block: 0;
}

[data-neobrutal-preview] :where(h1, h2, h3) {
	font-family: var(--ds-font-heading);
	font-weight: 900;
	letter-spacing: -0.03em;
}

[data-neobrutal-preview] :where(a) {
	color: inherit;
	text-decoration-thickness: 2px;
	text-underline-offset: 0.15em;
}

[data-neobrutal-preview] ::selection {
	background: var(--ds-accent);
	color: var(--ds-accent-foreground);
}

@media (prefers-reduced-motion: reduce) {
	[data-neobrutal-preview] *,
	[data-neobrutal-preview] *::before,
	[data-neobrutal-preview] *::after {
		animation-duration: 0.01ms !important;
		animation-iteration-count: 1 !important;
		scroll-behavior: auto !important;
		transition-duration: 0ms !important;
	}
}

@media (forced-colors: active) {
	[data-neobrutal-preview] {
		forced-color-adjust: none;
		background: Canvas;
		color: CanvasText;
	}

	[data-neobrutal-preview] :where(button, input, select, textarea, [role='tab']) {
		border-color: CanvasText;
		color: CanvasText;
		background: Canvas;
	}
}
