/*
 * Accessibility-first pastel tokens and global readability defaults.
 * Loaded late (after wp-custom-css) to keep visual consistency and contrast.
 */
:root {
	--mb-bg: #f6f8f9;
	--mb-bg-alt: #eef3f5;
	--mb-surface: #ffffff;
	--mb-text: #17232f;
	--mb-text-muted: #42576a;
	--mb-border: #c8d6df;
	--mb-primary: #0b6f86;
	--mb-primary-hover: #095a6d;
	--mb-focus: #0b6f86;
	--mb-focus-ring: rgba(11, 111, 134, 0.28);
	--mb-chip-bg: #d8edf2;
	--mb-chip-text: #0f4f61;
	--mb-chip-border: #9cc6d1;
	--mb-shadow-soft: 0 4px 12px rgba(15, 37, 53, 0.08);
}

body {
	background: var(--mb-bg);
	color: var(--mb-text);
	line-height: 1.72;
	letter-spacing: 0.01em;
}

p,
li,
td,
th,
.entry-content {
	color: var(--mb-text);
}

a {
	color: var(--mb-primary);
}

a:hover,
a:focus {
	color: var(--mb-primary-hover);
}

/* Strong visible focus for keyboard users */
:focus-visible {
	outline: 3px solid var(--mb-focus);
	outline-offset: 2px;
	box-shadow: 0 0 0 4px var(--mb-focus-ring);
}

/* Reduce cognitive load from excessive animations */
@media (prefers-reduced-motion: reduce) {
	*,
	*::before,
	*::after {
		animation-duration: 0.01ms !important;
		animation-iteration-count: 1 !important;
		transition-duration: 0.01ms !important;
		scroll-behavior: auto !important;
	}
}
