/* Hallmark · tokens · theme: custom "観測ステーション" · paper light · display Noto Sans JP Bold · numerals Inter SemiBold · accent warm (signal orange, hue 42) */
:root {
	/* paper & ink — tinted, never pure */
	--color-paper: oklch(97.6% 0.006 85);
	--color-paper-2: oklch(95.2% 0.009 85);
	--color-paper-3: oklch(92.5% 0.012 85);
	--color-card: oklch(99.2% 0.003 85);
	--color-ink: oklch(22% 0.03 262);
	--color-ink-2: oklch(44% 0.022 262);
	--color-ink-3: oklch(60% 0.016 262);
	--color-rule: oklch(86% 0.012 85);
	--color-rule-strong: oklch(22% 0.03 262);

	/* masthead band (deep ink) */
	--color-deep: oklch(19% 0.035 262);
	--color-deep-2: oklch(26% 0.035 262);
	--color-deep-text: oklch(95% 0.006 85);
	--color-deep-muted: oklch(72% 0.014 262);

	/* single accent: signal orange — live markers, CTA, focus */
	--color-accent: oklch(64% 0.19 42);
	--color-accent-ink: oklch(46% 0.165 42);
	--color-accent-wash: oklch(95.5% 0.028 62);
	--color-focus: oklch(64% 0.19 42);
	--color-danger: oklch(50% 0.19 27);

	/* type */
	--font-display: "Noto Sans JP", "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
	--font-body: "Noto Sans JP", "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
	--font-mono: "Inter", "Noto Sans JP", "Helvetica Neue", Arial, sans-serif; /* 英数字用（Inter SemiBold） */
	--weight-numeric: 600;

	--text-xs: 0.75rem;
	--text-sm: 0.8125rem;
	--text-base: 1rem;
	--text-md: 1.0625rem;
	--text-lg: 1.25rem;
	--text-xl: 1.5rem;
	--text-2xl: clamp(1.75rem, 1.2rem + 1.8vw, 2.25rem);
	--text-display: clamp(1.9rem, 1.1rem + 2.6vw, 3rem);

	--leading-tight: 1.3;
	--leading-snug: 1.5;
	--leading-body: 1.9;
	--measure: 38em;

	/* 4-pt spacing */
	--space-2xs: 4px;
	--space-xs: 8px;
	--space-sm: 12px;
	--space-md: 16px;
	--space-lg: 24px;
	--space-xl: 40px;
	--space-2xl: 64px;
	--space-3xl: 96px;

	/* layout */
	--wide: 1200px;
	--content: 760px;
	--gutter: clamp(16px, 4vw, 40px);

	/* rules, radii, motion */
	--rule-hair: 1px;
	--rule-bold: 3px;
	--radius-sm: 2px;
	--radius-md: 4px;
	--ease-out: cubic-bezier(0.2, 0.7, 0.2, 1);
	--ease-in: cubic-bezier(0.5, 0, 0.9, 0.4);
	--ease-in-out: cubic-bezier(0.6, 0, 0.3, 1);
	--dur-fast: 120ms;
	--dur-base: 200ms;
}
