@charset "UTF-8";:root{--content-max: 1180px;--header-h: 64px;--rail-w: 280px;--font-sans: "Inter", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-mono: "JetBrains Mono", ui-monospace, "SFMono-Regular", Menlo, monospace;--accent: #6c5ce7;--accent-2: #00d4ff;--measure: 72ch;--dur-fast: .12s;--dur: .2s;--dur-slow: .3s;--ease: cubic-bezier(.4, 0, .2, 1);--focus-ring: 2px solid var(--accent-2);--focus-offset: 2px;--tap: 44px}html[data-theme=dark]{--bg: #0b0d12;--surface: #12151d;--surface-2: #1b202b;--surface-glass: rgba(18, 21, 29, .72);--border: #262b38;--text: #eef1f7;--text-dim: #9aa3b2;--shadow: 0 24px 60px -24px rgba(0, 0, 0, .7);--code-bg: #1a1b26;--code-border: #262b38;--ok: #22c55e;--err: #ef4444;color-scheme:dark}html[data-theme=light]{--bg: #f7f8fc;--surface: #ffffff;--surface-2: #eef1f7;--surface-glass: rgba(255, 255, 255, .75);--border: #e2e6ef;--text: #1b1f2a;--text-dim: #5b6472;--shadow: 0 24px 60px -28px rgba(20, 30, 60, .25);--code-bg: #f6f8fa;--code-border: #d8dee9;--ok: #15803d;--err: #b91c1c;color-scheme:light}*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--bg);color:var(--text);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;scroll-behavior:smooth}body{min-height:100vh}html,body{overflow-x:clip}.app-main{min-height:calc(100vh - var(--header-h));overflow-x:clip}a{color:var(--accent)}:where(a,button,input,select,textarea,summary,[tabindex]):focus-visible{outline:var(--focus-ring);outline-offset:var(--focus-offset);border-radius:6px}:where(a,button,input,select,textarea):focus:not(:focus-visible){outline:none}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}html{scroll-behavior:auto}}::selection{background:color-mix(in srgb,var(--accent) 35%,transparent)}*{scrollbar-width:thin;scrollbar-color:var(--border) transparent}*::-webkit-scrollbar{width:10px;height:10px}*::-webkit-scrollbar-thumb{background:var(--border);border-radius:99px}.skip-link{position:absolute;left:-9999px;top:0;padding:.6rem 1rem;background:var(--accent);color:#fff;z-index:100;border-radius:0 0 8px}.skip-link:focus{left:0}.prose{display:block;font-size:1rem;line-height:1.75;color:var(--text)}.prose>:where(p,ul,ol,blockquote,h2,h3,h4){max-width:var(--measure)}.prose h2{margin:2.4rem 0 1rem;font-size:1.5rem;letter-spacing:-.02em;padding-bottom:.4rem;border-bottom:1px solid var(--border)}.prose h3{margin:1.8rem 0 .7rem;font-size:1.2rem}.prose p{margin:0 0 1rem}.prose ul,.prose ol{margin:0 0 1rem;padding-inline-start:1.4rem}.prose li{margin:.3rem 0}.prose a{text-decoration:underline;text-underline-offset:3px}.prose code{font-family:var(--font-mono);font-size:.88em;background:var(--surface-2);padding:.15em .4em;border-radius:6px}.prose pre{margin:1.2rem 0;padding:1.1rem 1.25rem;border-radius:14px;border:1px solid var(--border);background:var(--code-bg);overflow-x:auto;font-size:.9rem;line-height:1.6}.prose pre code{background:transparent;padding:0;font-size:inherit}.prose blockquote{margin:1.2rem 0;padding:.8rem 1.1rem;border-inline-start:3px solid var(--accent);background:color-mix(in srgb,var(--accent) 8%,transparent);border-radius:0 10px 10px 0;color:var(--text-dim)}.prose blockquote p{margin:0}.prose table{width:100%;border-collapse:collapse;margin:1.2rem 0;font-size:.92rem}.prose th,.prose td{border:1px solid var(--border);padding:.55rem .8rem;text-align:start}.prose th{background:var(--surface-2)}.prose img{border-radius:12px}.prose hr{border:0;border-top:1px solid var(--border);margin:2rem 0}html[data-theme=light] code[class*=language-],html[data-theme=light] pre[class*=language-]{color:#24292f;background:none;text-shadow:none}html[data-theme=light] pre[class*=language-]{background:var(--code-bg)}html[data-theme=light] .token.comment,html[data-theme=light] .token.prolog,html[data-theme=light] .token.doctype,html[data-theme=light] .token.cdata{color:#6e7781}html[data-theme=light] .token.punctuation{color:#24292f}html[data-theme=light] .token.property,html[data-theme=light] .token.tag,html[data-theme=light] .token.constant,html[data-theme=light] .token.symbol,html[data-theme=light] .token.deleted{color:#cf222e}html[data-theme=light] .token.boolean,html[data-theme=light] .token.number{color:#0550ae}html[data-theme=light] .token.selector,html[data-theme=light] .token.attr-name,html[data-theme=light] .token.string,html[data-theme=light] .token.char,html[data-theme=light] .token.builtin,html[data-theme=light] .token.inserted{color:#0a3069}html[data-theme=light] .token.operator,html[data-theme=light] .token.entity,html[data-theme=light] .token.url,html[data-theme=light] .language-css .token.string,html[data-theme=light] .style .token.string{color:#0550ae;background:none}html[data-theme=light] .token.atrule,html[data-theme=light] .token.attr-value,html[data-theme=light] .token.keyword{color:#cf222e}html[data-theme=light] .token.function,html[data-theme=light] .token.class-name{color:#8250df}html[data-theme=light] .token.regex,html[data-theme=light] .token.important,html[data-theme=light] .token.variable{color:#953800}.code-wrap{position:relative;margin:1.2rem 0}.code-wrap pre{margin:0}.code-bar{position:absolute;top:.5rem;inset-inline-end:.5rem;display:flex;align-items:center;gap:.5rem;z-index:2}.code-lang{font-family:var(--font-mono);font-size:.68rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--text-dim);pointer-events:none}.code-copy{display:inline-flex;align-items:center;gap:.35rem;min-height:28px;padding:.25rem .55rem;border-radius:8px;border:1px solid var(--code-border);background:var(--surface);color:var(--text-dim);font:inherit;font-size:.72rem;font-weight:600;cursor:pointer;opacity:0;transition:opacity var(--dur) var(--ease),color var(--dur-fast) var(--ease),border-color var(--dur-fast) var(--ease)}.code-copy:hover{color:var(--text);border-color:var(--accent)}.code-copy.copied{color:var(--ok);border-color:var(--ok)}.code-copy .gwg-icon{width:13px;height:13px}.code-wrap:hover .code-copy,.code-wrap:focus-within .code-copy{opacity:1}@media (hover: none){.code-copy{opacity:1}}code[class*=language-],pre[class*=language-]{color:#ccc;background:none;font-family:Consolas,Monaco,Andale Mono,Ubuntu Mono,monospace;font-size:1em;text-align:left;white-space:pre;word-spacing:normal;word-break:normal;word-wrap:normal;line-height:1.5;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-hyphens:none;-moz-hyphens:none;-ms-hyphens:none;hyphens:none}pre[class*=language-]{padding:1em;margin:.5em 0;overflow:auto}:not(pre)>code[class*=language-],pre[class*=language-]{background:#2d2d2d}:not(pre)>code[class*=language-]{padding:.1em;border-radius:.3em;white-space:normal}.token.comment,.token.block-comment,.token.prolog,.token.doctype,.token.cdata{color:#999}.token.punctuation{color:#ccc}.token.tag,.token.attr-name,.token.namespace,.token.deleted{color:#e2777a}.token.function-name{color:#6196cc}.token.boolean,.token.number,.token.function{color:#f08d49}.token.property,.token.class-name,.token.constant,.token.symbol{color:#f8c555}.token.selector,.token.important,.token.atrule,.token.keyword,.token.builtin{color:#cc99cd}.token.string,.token.char,.token.attr-value,.token.regex,.token.variable{color:#7ec699}.token.operator,.token.entity,.token.url{color:#67cdcc}.token.important,.token.bold{font-weight:700}.token.italic{font-style:italic}.token.entity{cursor:help}.token.inserted{color:green}
