:root { --color-canvas: #f5f0e5; --color-surface: #fffdf7; --color-surface-strong: #ebe6da; --color-ink: #192c23; --color-ink-muted: #647069; --color-ink-faint: #929a95; --color-line: rgb(27 48 38 / 13%); --color-line-strong: rgb(27 48 38 / 25%); --color-accent: #e36f4f; --color-accent-strong: #bd4e35; --color-accent-light: #9ee0b9; --color-accent-soft: #f7e4d9; --color-danger: #aa3d32; --color-danger-soft: #fae2de; --font-body: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif; --font-display: Georgia, 'Times New Roman', serif; --font-mono: 'SFMono-Regular', Consolas, 'Liberation Mono', monospace; --shadow-card: 0 12px 35px rgb(30 45 38 / 7%); --shadow-card-hover: 0 20px 48px rgb(30 45 38 / 12%); color: var(--color-ink); background: var(--color-canvas); font-family: var(--font-body); font-synthesis: none; text-rendering: optimizeLegibility; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; } * { box-sizing: border-box; } html { scroll-behavior: smooth; } body { min-width: 320px; min-height: 100svh; margin: 0; background: radial-gradient(circle at 10% 10%, rgb(227 111 79 / 9%), transparent 24rem), radial-gradient(circle at 90% 35%, rgb(78 148 107 / 8%), transparent 28rem), var(--color-canvas); } button, input, select, textarea { font: inherit; } button, a { -webkit-tap-highlight-color: transparent; } img { display: block; max-width: 100%; } ::selection { color: #fffaf0; background: var(--color-accent-strong); } @media (prefers-reduced-motion: reduce) { *, *::before, *::after { scroll-behavior: auto !important; animation-duration: 0.01ms !important; animation-iteration-count: 1 !important; transition-duration: 0.01ms !important; } }