:root{--color-bg: #fafafa;--color-bg-elev: #ffffff;--color-text: #0a0a0a;--color-text-muted: #52525b;--color-border: #e4e4e7;--color-accent: #2563eb;--color-accent-soft: #eff4ff;--color-code-bg: #f4f6ee;--color-row-hover: #f4f4f5;--font-heading: "Space Grotesk", "Inter", -apple-system, "PingFang SC", sans-serif;--font-body: "Inter", -apple-system, "PingFang SC", "Microsoft YaHei", sans-serif;--font-mono: "JetBrains Mono", ui-monospace, monospace;--radius-sm: 6px;--radius-md: 8px;--radius-lg: 12px;--radius-pill: 999px;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .04);--shadow-md: 0 4px 12px rgba(0, 0, 0, .06);--motion-fast: .15s;--motion-base: .22s;--motion-slow: .32s;--motion-ease: cubic-bezier(.22, 1, .36, 1)}*,*:before,*:after{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--color-bg);color:var(--color-text);font-family:var(--font-body);font-size:16px;line-height:1.7;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}body{min-height:100vh}a{color:inherit;text-decoration:none}button{font-family:inherit}img,svg,video{display:block;max-width:100%}h1,h2,h3,h4{font-family:var(--font-heading);letter-spacing:-.02em;margin:0}p{margin:0}:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px;border-radius:4px}.container{max-width:1152px;margin:0 auto;padding:0 24px}.container-narrow{max-width:768px;margin:0 auto;padding:0 24px}.reveal{opacity:0;transform:translateY(12px);transition:opacity var(--motion-slow) var(--motion-ease),transform var(--motion-slow) var(--motion-ease)}.reveal.is-visible{opacity:1;transform:translateY(0)}@media (prefers-reduced-motion: reduce){*,*:before,*:after{transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}.reveal{opacity:1;transform:none}}@media (max-width: 640px){.container,.container-narrow{padding:0 16px}}.markdown-body{font-family:var(--font-body);color:var(--color-text);font-size:18px;line-height:1.75}.markdown-body>*+*{margin-top:1.25em}.markdown-body h1,.markdown-body h2,.markdown-body h3,.markdown-body h4{font-family:var(--font-heading);font-weight:600;line-height:1.3;margin-top:2em;margin-bottom:.6em}.markdown-body h2{font-size:1.6em}.markdown-body h3{font-size:1.25em}.markdown-body h4{font-size:1.1em}.markdown-body p{font-size:1em}.markdown-body a{color:var(--color-accent);text-decoration:underline;text-underline-offset:4px;transition:color var(--motion-fast) var(--motion-ease)}.markdown-body a:hover{color:#1d4ed8}.markdown-body ul,.markdown-body ol{padding-left:1.5em}.markdown-body li+li{margin-top:.4em}.markdown-body blockquote{margin:1.5em 0;padding:.25em 1em;border-left:3px solid var(--color-accent);color:var(--color-text-muted);background:var(--color-accent-soft);border-radius:0 var(--radius-md) var(--radius-md) 0}.markdown-body code{font-family:var(--font-mono);font-size:.85em;background:#f4f4f5;padding:.15em .4em;border-radius:4px}.markdown-body pre{background:var(--color-code-bg);border-radius:var(--radius-md);padding:16px 20px;overflow-x:auto;font-family:var(--font-mono);font-size:.9em;line-height:1.6}.markdown-body pre code{background:transparent;padding:0;font-size:inherit}.markdown-body img{width:100%;border-radius:var(--radius-md);margin:1.25em 0}.markdown-body table{width:100%;border-collapse:collapse}.markdown-body th,.markdown-body td{border:1px solid var(--color-border);padding:8px 12px;text-align:left}.markdown-body hr{border:none;border-top:1px solid var(--color-border);margin:2em 0}@media (max-width: 640px){.markdown-body{font-size:17px}}pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}/*!
  Theme: GitHub
  Description: Light theme as seen on github.com
  Author: github.com
  Maintainer: @Hirse
  Updated: 2021-05-15

  Outdated base version: https://github.com/primer/github-syntax-light
  Current colors taken from GitHub's CSS
*/.hljs{color:#24292e;background:#fff}.hljs-doctag,.hljs-keyword,.hljs-meta .hljs-keyword,.hljs-template-tag,.hljs-template-variable,.hljs-type,.hljs-variable.language_{color:#d73a49}.hljs-title,.hljs-title.class_,.hljs-title.class_.inherited__,.hljs-title.function_{color:#6f42c1}.hljs-attr,.hljs-attribute,.hljs-literal,.hljs-meta,.hljs-number,.hljs-operator,.hljs-variable,.hljs-selector-attr,.hljs-selector-class,.hljs-selector-id{color:#005cc5}.hljs-regexp,.hljs-string,.hljs-meta .hljs-string{color:#032f62}.hljs-built_in,.hljs-symbol{color:#e36209}.hljs-comment,.hljs-code,.hljs-formula{color:#6a737d}.hljs-name,.hljs-quote,.hljs-selector-tag,.hljs-selector-pseudo{color:#22863a}.hljs-subst{color:#24292e}.hljs-section{color:#005cc5;font-weight:700}.hljs-bullet{color:#735c0f}.hljs-emphasis{color:#24292e;font-style:italic}.hljs-strong{color:#24292e;font-weight:700}.hljs-addition{color:#22863a;background-color:#f0fff4}.hljs-deletion{color:#b31d28;background-color:#ffeef0}
