:root {
	--primary: #ff5555;
	--primary-soft: #ff8080;
	--primary-pale: #fff1f2;
	--primary-border: #ff9e9e;
	--primary-surface: #fff3f3;
	--primary-hero: #ffe8e9;
	--text-secondary: #555;
	--text-tertiary: #777;
	--text-disabled: #999;
	--line-strong: #d9d9d9;
	--ink: #111;
	--muted: #6d6d6d;
	--line: #ececec;
	--footer-muted: #9a9a9a;
	--desktop-content: 1400px;
	--footer-content: 1384px;
	--page-gutter: 40px;
	--mobile-canvas-gutter: #f7f7f8;
	--font-body: "Pretendard Variable","Pretendard",-apple-system,BlinkMacSystemFont,"Apple SD Gothic Neo","Noto Sans KR","Malgun Gothic",sans-serif;
	--font-display: "ROKAF Sans","Pretendard Variable","Pretendard",-apple-system,BlinkMacSystemFont,"Apple SD Gothic Neo","Noto Sans KR","Malgun Gothic",sans-serif;
	--font-inter: "Inter","Pretendard Variable","Pretendard",-apple-system,BlinkMacSystemFont,"Apple SD Gothic Neo","Noto Sans KR","Malgun Gothic",sans-serif;
	--ease-out: cubic-bezier(.2,.75,.2,1);
	--ease-more: cubic-bezier(.22,.61,.36,1);
}

html {
	font-size: 16px;
	/* Prevent accidental double-tap zoom while preserving normal pan and pinch zoom. */
	touch-action: manipulation;
	/* Keep responsive typography at the authored size without disabling user pinch zoom. */
	-webkit-text-size-adjust: 100%;
	text-size-adjust: 100%;
}

body {
	min-width: 320px;
	color: var(--ink);
	font-family: var(--font-body);
	background: #fff;
	word-break: keep-all;
	overflow-wrap: break-word;
	-webkit-font-smoothing: antialiased;
	text-rendering: optimizeLegibility;
}

body.is-scroll-locked {
	overflow: hidden;
}

.sr-only {
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0,0,0,0);
	white-space: nowrap;
	border: 0;
}

.skip-link {
	position: fixed;
	z-index: 10000;
	left: 12px;
	top: -60px;
	padding: 10px 16px;
	border-radius: 8px;
	background: #111;
	color: #fff;
}

.skip-link:focus {
	top: 12px;
}
