@font-face {
	font-family: 'Playwrite HR';
	src: url('/fonts/PlaywriteHR-Regular.woff2') format('woff2');
	font-weight: 400;
	font-style: normal;
	font-display: swap;
}

:root {
	--color-bg: #fdf6e3;
	--color-bg-card: #fff8ee;
	--color-text: #2c1810;
	--color-text-light: #5a4a3a;
	--color-primary: #e8a87c;
	--color-primary-dark: #d4845a;
	--color-accent-1: #a8d8ea;
	--color-accent-2: #c3e6cb;
	--color-accent-3: #f5c6aa;
	--color-accent-4: #d4a5e5;
	--color-accent-5: #f9e79f;
	--color-border: #e0d5c5;
	--color-dot: #d0c4b4;
	--color-dot-active: #d4845a;
	--font-print: 'Segoe UI', system-ui, -apple-system, sans-serif;
	--font-cursive: 'Playwrite HR', cursive;
	--font-size-base: 28px;
	--radius: 16px;
	--radius-sm: 10px;
	--touch-min: 60px;
}

*,
*::before,
*::after {
	box-sizing: border-box;
}

html {
	-webkit-text-size-adjust: 100%;
}

body {
	margin: 0;
	padding: 0;
	font-family: var(--font-print);
	background: var(--color-bg);
	color: var(--color-text);
	line-height: 1.6;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

button {
	cursor: pointer;
	border: none;
	background: none;
	font-family: inherit;
	touch-action: manipulation;
}

a {
	text-decoration: none;
	color: inherit;
}

.font-print {
	font-family: var(--font-print);
	letter-spacing: 0.02em;
}

.font-cursive {
	font-family: var(--font-cursive);
	letter-spacing: 0.01em;
}

.mode-print-upper {
	font-family: var(--font-print);
	text-transform: uppercase;
}

.mode-print-lower {
	font-family: var(--font-print);
	text-transform: none;
}

.mode-cursive-upper {
	font-family: var(--font-cursive);
	text-transform: uppercase;
}

.mode-cursive-lower {
	font-family: var(--font-cursive);
	text-transform: none;
}
