:root { --bg: #fbfcfe; --fg: #1d2430; --muted: #5b6676; --line: #e3e8ef; --accent: #2f86d6; color-scheme: light; }
@media (prefers-color-scheme: dark) { :root { --bg: #11161d; --fg: #e8edf3; --muted: #9aa6b5; --line: #263040; --accent: #6db8f2; color-scheme: dark; } }
* { box-sizing: border-box; }
body { margin: 0; background: var(--bg); color: var(--fg); font: 17px/1.6 -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif; }
main { max-width: 680px; margin: 0 auto; padding: 48px max(20px, env(safe-area-inset-left)) 64px; }
header { display: flex; align-items: center; gap: 14px; margin-bottom: 32px; }
.mark { width: 44px; height: 44px; border-radius: 11px; background: linear-gradient(135deg, #47A6EE, #F7B0A6); flex: none; }
header a { color: var(--fg); text-decoration: none; font-weight: 650; font-size: 20px; }
nav { margin-left: auto; display: flex; gap: 16px; font-size: 15px; }
nav a { color: var(--muted); font-weight: 500; }
h1 { font-size: 32px; line-height: 1.2; margin: 0 0 8px; text-wrap: balance; }
h2 { font-size: 20px; margin: 36px 0 8px; }
.date { color: var(--muted); margin: 0 0 24px; }
a { color: var(--accent); }
ul { padding-left: 22px; }
hr { border: 0; border-top: 1px solid var(--line); margin: 48px 0; }
footer { color: var(--muted); font-size: 14px; margin-top: 48px; }
