@font-face{font-family:SarasaMonoSC;src:url(../fonts/SarasaMonoSC.subset.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:LXGWWenKaiMono;src:url(../fonts/LXGWWenKaiMono.subset.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}:root{--code-font: "SarasaMonoSC", ui-monospace, "JetBrains Mono", "IBM Plex Mono", monospace}.rnav{position:sticky;top:0;z-index:60;height:60px;background:#e7e9eecc;-webkit-backdrop-filter:blur(16px) saturate(140%);backdrop-filter:blur(16px) saturate(140%);border-bottom:1px solid var(--faint)}.rnav-inner{display:flex;align-items:center;gap:18px;height:60px;padding:0 24px}.rnav .brand{display:flex;align-items:baseline;gap:1px;font-family:var(--font-mono);font-weight:600;font-size:16px;color:var(--ink)}.rnav .brand .rev{color:var(--vermilion)}.rnav-mid{display:flex;gap:6px}.rnav-mid a{font-family:var(--font-mono);font-size:13px;font-weight:500;color:var(--graphite);padding:6px 12px;border-radius:7px}.rnav-mid a:hover{color:var(--ink);background:#ffffff8c}.rnav-mid a.active{color:var(--ink);background:#fff;box-shadow:0 1px 2px #14181f14,inset 0 0 0 1px var(--faint)}.rnav-right{margin-left:auto;display:flex;align-items:center;gap:10px}.theme-btn{display:inline-flex;align-items:center;gap:7px;font-family:var(--font-mono);font-size:12.5px;color:var(--graphite);background:#ffffffb3;border:1px solid var(--faint);border-radius:8px;padding:7px 11px;cursor:pointer}.theme-btn:hover{color:var(--ink);border-color:var(--faint-2)}.theme-btn .sw{width:13px;height:13px;border-radius:4px;background:linear-gradient(135deg,var(--vermilion) 50%,var(--slate) 50%);box-shadow:inset 0 0 0 1px #0000001a}:root[data-md=vue] .theme-btn .sw{background:linear-gradient(135deg,#42b983 50%,#e96900 50%)}.filter{width:200px;max-width:40vw;font-family:var(--font-mono);font-size:13px;color:var(--ink);background:#ffffffb3;border:1px solid var(--faint);border-radius:8px;padding:7px 13px}.filter::placeholder{color:var(--mute)}.filter:focus{outline:none;border-color:var(--slate);background:#fff}.menu-btn{display:none;font-size:18px;color:var(--ink);background:#ffffffb3;border:1px solid var(--faint);border-radius:9px;width:40px;height:38px;cursor:pointer}.reader{display:grid;grid-template-columns:288px minmax(0,1fr) 7px var(--toc-w, 260px);height:calc(100vh - 60px)}.sidebar{height:100%;overflow-y:auto;padding:18px 14px;border-right:1px solid var(--faint)}.side-group{font-family:var(--font-mono);font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--vermilion);padding:16px 12px 5px}.side-group:first-child{padding-top:4px}.side-link{display:block;font-family:var(--side-font, var(--font-sans));font-size:var(--side-size, 14.5px);color:var(--graphite);padding:7px 12px;border-radius:8px;line-height:1.4;transition:background .15s,color .15s}.side-link:hover{background:#fff9;color:var(--ink)}.side-link.active{background:#fff;color:var(--ink);font-weight:500;box-shadow:inset 0 0 0 1px var(--faint)}.side-empty{color:var(--mute);font-size:14px;padding:14px}.side-cross{display:none}.content{height:100%;overflow-y:auto;padding:52px 7% 96px}.doc-foot{max-width:820px;margin:64px auto 0;color:var(--mute);font-family:var(--font-mono);font-size:12px;border-top:1px solid var(--faint);padding-top:20px}.scrim{display:none}.toc-resizer{position:relative;cursor:col-resize}.toc-resizer:before{content:"";position:absolute;top:0;bottom:0;right:0;width:1px;background:var(--faint);transition:background .15s,width .15s}.toc-resizer:hover:before,body.toc-resizing .toc-resizer:before{background:var(--slate);width:2px}body.toc-resizing{cursor:col-resize;-webkit-user-select:none;user-select:none}.toc-col{height:100%;overflow-y:auto;padding:20px 16px 40px 20px}.toc.empty{display:none}.toc-t{font-family:var(--font-mono);font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--mute);padding:0 10px 8px}.toc-link{display:block;font-family:var(--toc-font, var(--font-sans));font-size:var(--toc-size, 14px);line-height:1.55;color:var(--ink);padding:6px 10px;border-left:2px solid transparent;transition:color .15s,border-color .15s}.toc-link.lvl3{padding-left:22px;font-size:var(--toc-size, 14px);color:var(--ink)}.toc-link:hover{color:var(--ink)}.toc-link.active{color:var(--vermilion);border-left-color:var(--vermilion)}:root[data-md=vue] .toc-link.active{color:#42b983;border-left-color:#42b983}@media(max-width:1180px){.reader{grid-template-columns:288px minmax(0,1fr)}.toc-col,.toc-resizer{display:none}}@media(max-width:880px){.menu-btn{display:inline-block}.filter{width:130px}.reader{grid-template-columns:1fr}.sidebar{position:fixed;top:60px;left:0;z-index:55;width:288px;height:calc(100vh - 60px);background:var(--paper-2);transform:translate(-102%);transition:transform .28s cubic-bezier(.2,.8,.2,1)}body.menu-open .sidebar{transform:none}body.menu-open .scrim{display:block;position:fixed;top:60px;right:0;bottom:0;left:0;z-index:54;background:#14181f47}.content{padding:30px 22px 70px}}@media(max-width:620px){.rnav-inner{gap:10px;padding:0 14px}.rnav-mid,.theme-btn{display:none}.filter{width:120px;max-width:42vw}.sidebar{display:flex;flex-direction:column;padding:0}.side-cross{display:flex;gap:6px;padding:12px;border-bottom:1px solid var(--faint);flex:0 0 auto}.side-cross a{flex:1;text-align:center;font-family:var(--font-mono);font-size:12.5px;font-weight:500;color:var(--graphite);padding:8px 4px;border-radius:7px;background:#ffffff80;border:1px solid var(--faint)}.side-cross a.active{color:var(--ink);background:#fff;box-shadow:inset 0 0 0 1px var(--faint)}.sidelist{flex:1 1 auto;overflow-y:auto;padding:12px 12px 24px}}@media(prefers-reduced-motion:reduce){.sidebar{transition:none}}.md-body{max-width:820px;margin-inline:auto;font-family:var(--body-font, var(--font-sans));font-size:var(--body-size, 16px);line-height:1.72;color:var(--ink-soft)}.md-body>*:first-child{margin-top:0}.md-body h1{font-family:var(--font-serif);font-weight:500;font-size:clamp(32px,4.6vw,44px);line-height:1.15;color:var(--ink);margin:0 0 12px;letter-spacing:-.01em;scroll-margin-top:80px}.md-body h2{font-family:var(--font-mono);font-weight:600;font-size:clamp(22px,2.8vw,28px);color:var(--ink);margin:40px 0 14px;padding-top:16px;border-top:1px solid var(--faint);letter-spacing:-.01em;scroll-margin-top:80px}.md-body h3{font-family:var(--font-mono);font-weight:600;font-size:19px;color:var(--ink);margin:28px 0 10px;scroll-margin-top:80px}.md-body h4{font-family:var(--font-sans);font-weight:600;font-size:16.5px;color:var(--ink-soft);margin:22px 0 8px;scroll-margin-top:80px}.md-body hr+h1,.md-body hr+h2,.md-body hr+h3{border-top:none;padding-top:0;margin-top:16px}.md-body h1+p,.md-body h1+blockquote{color:var(--graphite)}.md-body p{margin:13px 0}.md-body strong{color:var(--ink);font-weight:600}.md-body em{color:var(--ink);font-family:var(--font-serif);font-style:italic}.md-body a{color:var(--slate);border-bottom:1px solid transparent}.md-body a:hover{color:var(--vermilion);border-bottom-color:currentColor}.md-body .header-anchor{color:inherit;border:none;opacity:1;font-weight:inherit}.md-body .header-anchor:hover{color:inherit;border:none}.md-body ul,.md-body ol{margin:12px 0;padding-left:26px}.md-body li{margin:4px 0}.md-body ul li::marker{color:var(--vermilion)}.md-body ol li::marker{color:var(--graphite);font-family:var(--font-mono)}.md-body :not(pre)>code{font-family:var(--font-mono);font-size:.86em;color:var(--vermilion-ink);background:var(--vermilion-wash);border:1px solid rgba(216,58,43,.16);padding:1.5px 6px;border-radius:5px;word-break:break-word}.md-body pre.code{margin:18px 0;padding:16px 18px;border-radius:12px;overflow-x:auto;background:#fbfbfc;border:1px solid var(--faint)}.md-body pre.code code{font-family:var(--code-font);font-size:14px;line-height:1.7;background:none;border:none;padding:0;color:#24292f}:root[data-codestyle=github] .md-body pre.code.plain code{color:inherit}.md-body blockquote{margin:16px 0;padding:12px 20px;border-radius:0 10px 10px 0;border-left:3px solid var(--slate);background:#3a5a860f;color:var(--ink-soft)}.md-body blockquote p{margin:6px 0}.md-body blockquote strong{color:var(--ink)}.table-scroll{overflow-x:auto;margin:18px 0;border:1px solid var(--faint);border-radius:12px;background:#fff}.md-body table{border-collapse:collapse;width:100%;font-size:14px;line-height:1.55}.md-body thead th{background:#f2f3f6;color:var(--ink);font-family:var(--font-mono);font-weight:600;font-size:13px;text-align:left}.md-body th,.md-body td{padding:8px 13px;border-bottom:1px solid var(--faint);border-right:1px solid var(--faint);vertical-align:top}.md-body th:last-child,.md-body td:last-child{border-right:none}.md-body tbody tr:last-child td{border-bottom:none}.md-body td code{white-space:nowrap}.md-body hr{border:none;border-top:1px solid var(--faint);margin:30px 0}.md-body img{max-width:100%;border-radius:10px;border:1px solid var(--faint)}.md-body pre.mermaid{margin:22px 0;padding:20px;border-radius:14px;overflow-x:auto;text-align:center;background:#fff;border:1px solid var(--faint)}.md-body pre.mermaid svg{max-width:100%;height:auto}:root[data-md=vue] .content{background:#fff}:root[data-md=vue] .toc-col,:root[data-md=vue] .sidebar{background:#fff}:root[data-md=vue] .md-body{max-width:860px;font-family:"Source Sans 3",-apple-system,Segoe UI,PingFang SC,Microsoft YaHei,sans-serif;color:#34495e;font-size:16px;line-height:1.7}:root[data-md=vue] .md-body h1,:root[data-md=vue] .md-body h2,:root[data-md=vue] .md-body h3,:root[data-md=vue] .md-body h4,:root[data-md=vue] .md-body h5,:root[data-md=vue] .md-body h6{font-family:inherit;font-weight:700;color:#2c3e50;line-height:1.4;letter-spacing:0;border:none;padding:0}:root[data-md=vue] .md-body h1{font-size:2.2rem;line-height:1.3;padding-bottom:.4rem;margin:0 0 1rem}:root[data-md=vue] .md-body h2{font-size:1.75rem;line-height:1.225;margin:35px 0 15px;padding-bottom:.5rem;border-bottom:1px solid #ddd}:root[data-md=vue] .md-body h3{font-size:1.4rem;margin:24px 0 8px}:root[data-md=vue] .md-body h4{font-size:1.2rem;margin:18px 0 6px}:root[data-md=vue] .md-body h6{color:#777}:root[data-md=vue] .md-body hr+h1,:root[data-md=vue] .md-body hr+h2,:root[data-md=vue] .md-body hr+h3{border-top:none}:root[data-md=vue] .md-body p,:root[data-md=vue] .md-body ul,:root[data-md=vue] .md-body ol,:root[data-md=vue] .md-body table,:root[data-md=vue] .md-body blockquote{margin:.85em 0}:root[data-md=vue] .md-body a,:root[data-md=vue] .md-body .header-anchor{color:#42b983;font-weight:600;border:none}:root[data-md=vue] .md-body h1 .header-anchor,:root[data-md=vue] .md-body h2 .header-anchor,:root[data-md=vue] .md-body h3 .header-anchor,:root[data-md=vue] .md-body h4 .header-anchor,:root[data-md=vue] .md-body h5 .header-anchor,:root[data-md=vue] .md-body h6 .header-anchor{color:inherit;font-weight:700}:root[data-md=vue] .md-body a:hover{color:#369b6f}:root[data-md=vue] .md-body strong{color:#2c3e50}:root[data-md=vue] .md-body em{font-family:inherit;font-style:italic;color:inherit}:root[data-md=vue] .md-body ul,:root[data-md=vue] .md-body ol{padding-left:30px}:root[data-md=vue] .md-body ul li::marker{color:#42b983}:root[data-md=vue] .md-body ol li::marker{color:#34495e;font-family:inherit}:root[data-md=vue] .md-body :not(pre)>code{font-family:"Fira Code",var(--font-mono);font-size:.92em;color:#e96900;background:#f8f8f8;border:none;padding:2px 4px;border-radius:2px}:root[data-md=vue] .md-body pre.code{background:#f8f8f8;border:none;border-radius:4px}:root[data-md=vue] .md-body pre.code code{font-family:var(--code-font);color:#525252}:root[data-md=vue][data-codestyle=github] .md-body pre.code.plain code{color:inherit}:root[data-md=vue] .md-body blockquote{border-left:4px solid #42b983;background:#42b9831a;color:#777;border-radius:0;padding:10px 15px}:root[data-md=vue] .md-body blockquote strong{color:#42b983}:root[data-md=vue] .table-scroll{border-color:#dfe2e5;border-radius:3px}:root[data-md=vue] .md-body table{font-size:15px}:root[data-md=vue] .md-body thead th{background:#f2f2f2;color:#2c3e50;font-family:inherit;font-weight:700}:root[data-md=vue] .md-body th,:root[data-md=vue] .md-body td{border:1px solid #dfe2e5;padding:6px 13px}:root[data-md=vue] .md-body tbody tr:nth-child(2n){background:#fafafa}:root[data-md=vue] .md-body td code{white-space:normal}:root[data-md=vue] .md-body hr{height:2px;background:#e7e7e7;border:0;margin:16px 0}.pref-btn{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;color:var(--graphite);background:#ffffffb3;border:1px solid var(--faint);border-radius:9px;cursor:pointer}.pref-btn:hover{color:var(--ink);border-color:var(--faint-2)}.pref-btn svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.pref-panel{position:absolute;top:56px;right:14px;z-index:70;width:330px;max-width:calc(100vw - 20px);background:var(--paper-2, #fff);border:1px solid var(--faint);border-radius:14px;box-shadow:0 14px 44px #14181f2e;padding:16px 16px 13px;font-family:var(--font-sans)}.pref-panel[hidden]{display:none}.pref-title{font-family:var(--font-mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--vermilion);margin-bottom:12px}.pref-grp{margin-bottom:15px}.pref-grp>.lbl{font-size:13px;font-weight:600;color:var(--ink);margin-bottom:8px}.pref-row{display:flex;align-items:center;gap:10px;margin-bottom:8px}.pref-row select{flex:1;min-width:0;font-family:var(--font-sans);font-size:13px;color:var(--ink);background:#fff;border:1px solid var(--faint);border-radius:8px;padding:7px 9px;cursor:pointer}.pref-row input[type=range]{flex:1;accent-color:var(--slate);cursor:pointer}.pref-row .sz{font-family:var(--font-mono);font-size:12px;color:var(--graphite);width:46px;text-align:right;font-variant-numeric:tabular-nums}.pref-foot{display:flex;justify-content:space-between;align-items:center;margin-top:2px}.pref-hint{font-size:11px;color:var(--mute)}.pref-reset{font-family:var(--font-mono);font-size:12px;color:var(--graphite);background:none;border:none;cursor:pointer;text-decoration:underline;padding:4px 0}.pref-reset:hover{color:var(--ink)}:root[data-md=vue] .pref-panel{background:#fff}@media(max-width:620px){.pref-panel{right:8px;width:calc(100vw - 16px)}}.collapse-btn{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;margin-right:2px;color:var(--graphite);background:transparent;border:1px solid transparent;border-radius:8px;cursor:pointer}.collapse-btn:hover{color:var(--ink);background:#ffffff8c;border-color:var(--faint)}.collapse-btn svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linejoin:round;stroke-linecap:round}.collapse-btn[aria-pressed=true]{color:var(--vermilion)}@media(min-width:881px){.reader.sidebar-collapsed{grid-template-columns:minmax(0,1fr) 7px var(--toc-w, 260px)}.reader.sidebar-collapsed .sidebar{display:none}}@media(min-width:881px)and (max-width:1180px){.reader.sidebar-collapsed{grid-template-columns:minmax(0,1fr)}}@media(max-width:880px){.collapse-btn{display:none}}:root[data-codestyle=onedark] .md-body pre.code{background:#282c34;border-color:#ffffff12;box-shadow:0 12px 34px #0000004d}:root[data-codestyle=onedark] .md-body pre.code code{color:#abb2bf}:root[data-codestyle=onedark] .md-body pre.code .hljs-comment,:root[data-codestyle=onedark] .md-body pre.code .hljs-quote{color:#5c6370;font-style:italic}:root[data-codestyle=onedark] .md-body pre.code .hljs-keyword,:root[data-codestyle=onedark] .md-body pre.code .hljs-selector-tag,:root[data-codestyle=onedark] .md-body pre.code .hljs-literal,:root[data-codestyle=onedark] .md-body pre.code .hljs-subst,:root[data-codestyle=onedark] .md-body pre.code .hljs-doctag{color:#c678dd}:root[data-codestyle=onedark] .md-body pre.code .hljs-string,:root[data-codestyle=onedark] .md-body pre.code .hljs-regexp,:root[data-codestyle=onedark] .md-body pre.code .hljs-addition{color:#98c379}:root[data-codestyle=onedark] .md-body pre.code .hljs-number,:root[data-codestyle=onedark] .md-body pre.code .hljs-symbol,:root[data-codestyle=onedark] .md-body pre.code .hljs-bullet{color:#d19a66}:root[data-codestyle=onedark] .md-body pre.code .hljs-title,:root[data-codestyle=onedark] .md-body pre.code .hljs-section,:root[data-codestyle=onedark] .md-body pre.code .hljs-name,:root[data-codestyle=onedark] .md-body pre.code .hljs-built_in,:root[data-codestyle=onedark] .md-body pre.code .hljs-function{color:#61afef}:root[data-codestyle=onedark] .md-body pre.code .hljs-attr,:root[data-codestyle=onedark] .md-body pre.code .hljs-attribute,:root[data-codestyle=onedark] .md-body pre.code .hljs-variable,:root[data-codestyle=onedark] .md-body pre.code .hljs-template-variable,:root[data-codestyle=onedark] .md-body pre.code .hljs-type{color:#e5c07b}:root[data-codestyle=onedark] .md-body pre.code .hljs-meta,:root[data-codestyle=onedark] .md-body pre.code .hljs-tag{color:#56b6c2}:root[data-codestyle=dracula] .md-body pre.code{background:#282a36;border-color:#ffffff12;box-shadow:0 12px 34px #0000004d}:root[data-codestyle=dracula] .md-body pre.code code{color:#f8f8f2}:root[data-codestyle=dracula] .md-body pre.code .hljs-comment,:root[data-codestyle=dracula] .md-body pre.code .hljs-quote{color:#6272a4;font-style:italic}:root[data-codestyle=dracula] .md-body pre.code .hljs-keyword,:root[data-codestyle=dracula] .md-body pre.code .hljs-selector-tag,:root[data-codestyle=dracula] .md-body pre.code .hljs-literal,:root[data-codestyle=dracula] .md-body pre.code .hljs-subst,:root[data-codestyle=dracula] .md-body pre.code .hljs-doctag{color:#ff79c6}:root[data-codestyle=dracula] .md-body pre.code .hljs-string,:root[data-codestyle=dracula] .md-body pre.code .hljs-regexp,:root[data-codestyle=dracula] .md-body pre.code .hljs-addition{color:#f1fa8c}:root[data-codestyle=dracula] .md-body pre.code .hljs-number,:root[data-codestyle=dracula] .md-body pre.code .hljs-symbol,:root[data-codestyle=dracula] .md-body pre.code .hljs-bullet{color:#bd93f9}:root[data-codestyle=dracula] .md-body pre.code .hljs-title,:root[data-codestyle=dracula] .md-body pre.code .hljs-section,:root[data-codestyle=dracula] .md-body pre.code .hljs-name,:root[data-codestyle=dracula] .md-body pre.code .hljs-built_in,:root[data-codestyle=dracula] .md-body pre.code .hljs-function{color:#50fa7b}:root[data-codestyle=dracula] .md-body pre.code .hljs-attr,:root[data-codestyle=dracula] .md-body pre.code .hljs-attribute,:root[data-codestyle=dracula] .md-body pre.code .hljs-variable,:root[data-codestyle=dracula] .md-body pre.code .hljs-template-variable,:root[data-codestyle=dracula] .md-body pre.code .hljs-type{color:#8be9fd}:root[data-codestyle=dracula] .md-body pre.code .hljs-meta,:root[data-codestyle=dracula] .md-body pre.code .hljs-tag{color:#ffb86c}:root[data-codestyle=catppuccin] .md-body pre.code{background:#1e1e2e;border-color:#ffffff12;box-shadow:0 12px 34px #0000004d}:root[data-codestyle=catppuccin] .md-body pre.code code{color:#cdd6f4}:root[data-codestyle=catppuccin] .md-body pre.code .hljs-comment,:root[data-codestyle=catppuccin] .md-body pre.code .hljs-quote{color:#9399b2;font-style:italic}:root[data-codestyle=catppuccin] .md-body pre.code .hljs-keyword,:root[data-codestyle=catppuccin] .md-body pre.code .hljs-selector-tag,:root[data-codestyle=catppuccin] .md-body pre.code .hljs-literal,:root[data-codestyle=catppuccin] .md-body pre.code .hljs-subst,:root[data-codestyle=catppuccin] .md-body pre.code .hljs-doctag{color:#cba6f7}:root[data-codestyle=catppuccin] .md-body pre.code .hljs-string,:root[data-codestyle=catppuccin] .md-body pre.code .hljs-regexp,:root[data-codestyle=catppuccin] .md-body pre.code .hljs-addition{color:#a6e3a1}:root[data-codestyle=catppuccin] .md-body pre.code .hljs-number,:root[data-codestyle=catppuccin] .md-body pre.code .hljs-symbol,:root[data-codestyle=catppuccin] .md-body pre.code .hljs-bullet{color:#fab387}:root[data-codestyle=catppuccin] .md-body pre.code .hljs-title,:root[data-codestyle=catppuccin] .md-body pre.code .hljs-section,:root[data-codestyle=catppuccin] .md-body pre.code .hljs-name,:root[data-codestyle=catppuccin] .md-body pre.code .hljs-built_in,:root[data-codestyle=catppuccin] .md-body pre.code .hljs-function{color:#89b4fa}:root[data-codestyle=catppuccin] .md-body pre.code .hljs-attr,:root[data-codestyle=catppuccin] .md-body pre.code .hljs-attribute,:root[data-codestyle=catppuccin] .md-body pre.code .hljs-variable,:root[data-codestyle=catppuccin] .md-body pre.code .hljs-template-variable,:root[data-codestyle=catppuccin] .md-body pre.code .hljs-type{color:#f9e2af}:root[data-codestyle=catppuccin] .md-body pre.code .hljs-meta,:root[data-codestyle=catppuccin] .md-body pre.code .hljs-tag{color:#94e2d5}:root[data-codestyle=tokyonight] .md-body pre.code{background:#1a1b26;border-color:#ffffff12;box-shadow:0 12px 34px #0000004d}:root[data-codestyle=tokyonight] .md-body pre.code code{color:#c0caf5}:root[data-codestyle=tokyonight] .md-body pre.code .hljs-comment,:root[data-codestyle=tokyonight] .md-body pre.code .hljs-quote{color:#565f89;font-style:italic}:root[data-codestyle=tokyonight] .md-body pre.code .hljs-keyword,:root[data-codestyle=tokyonight] .md-body pre.code .hljs-selector-tag,:root[data-codestyle=tokyonight] .md-body pre.code .hljs-literal,:root[data-codestyle=tokyonight] .md-body pre.code .hljs-subst,:root[data-codestyle=tokyonight] .md-body pre.code .hljs-doctag{color:#bb9af7}:root[data-codestyle=tokyonight] .md-body pre.code .hljs-string,:root[data-codestyle=tokyonight] .md-body pre.code .hljs-regexp,:root[data-codestyle=tokyonight] .md-body pre.code .hljs-addition{color:#9ece6a}:root[data-codestyle=tokyonight] .md-body pre.code .hljs-number,:root[data-codestyle=tokyonight] .md-body pre.code .hljs-symbol,:root[data-codestyle=tokyonight] .md-body pre.code .hljs-bullet{color:#ff9e64}:root[data-codestyle=tokyonight] .md-body pre.code .hljs-title,:root[data-codestyle=tokyonight] .md-body pre.code .hljs-section,:root[data-codestyle=tokyonight] .md-body pre.code .hljs-name,:root[data-codestyle=tokyonight] .md-body pre.code .hljs-built_in,:root[data-codestyle=tokyonight] .md-body pre.code .hljs-function{color:#7aa2f7}:root[data-codestyle=tokyonight] .md-body pre.code .hljs-attr,:root[data-codestyle=tokyonight] .md-body pre.code .hljs-attribute,:root[data-codestyle=tokyonight] .md-body pre.code .hljs-variable,:root[data-codestyle=tokyonight] .md-body pre.code .hljs-template-variable,:root[data-codestyle=tokyonight] .md-body pre.code .hljs-type{color:#2ac3de}:root[data-codestyle=tokyonight] .md-body pre.code .hljs-meta,:root[data-codestyle=tokyonight] .md-body pre.code .hljs-tag{color:#73daca}:root[data-codestyle=nord] .md-body pre.code{background:#2e3440;border-color:#ffffff12;box-shadow:0 12px 34px #0000004d}:root[data-codestyle=nord] .md-body pre.code code{color:#d8dee9}:root[data-codestyle=nord] .md-body pre.code .hljs-comment,:root[data-codestyle=nord] .md-body pre.code .hljs-quote{color:#616e88;font-style:italic}:root[data-codestyle=nord] .md-body pre.code .hljs-keyword,:root[data-codestyle=nord] .md-body pre.code .hljs-selector-tag,:root[data-codestyle=nord] .md-body pre.code .hljs-literal,:root[data-codestyle=nord] .md-body pre.code .hljs-subst,:root[data-codestyle=nord] .md-body pre.code .hljs-doctag{color:#81a1c1}:root[data-codestyle=nord] .md-body pre.code .hljs-string,:root[data-codestyle=nord] .md-body pre.code .hljs-regexp,:root[data-codestyle=nord] .md-body pre.code .hljs-addition{color:#a3be8c}:root[data-codestyle=nord] .md-body pre.code .hljs-number,:root[data-codestyle=nord] .md-body pre.code .hljs-symbol,:root[data-codestyle=nord] .md-body pre.code .hljs-bullet{color:#b48ead}:root[data-codestyle=nord] .md-body pre.code .hljs-title,:root[data-codestyle=nord] .md-body pre.code .hljs-section,:root[data-codestyle=nord] .md-body pre.code .hljs-name,:root[data-codestyle=nord] .md-body pre.code .hljs-built_in,:root[data-codestyle=nord] .md-body pre.code .hljs-function{color:#88c0d0}:root[data-codestyle=nord] .md-body pre.code .hljs-attr,:root[data-codestyle=nord] .md-body pre.code .hljs-attribute,:root[data-codestyle=nord] .md-body pre.code .hljs-variable,:root[data-codestyle=nord] .md-body pre.code .hljs-template-variable,:root[data-codestyle=nord] .md-body pre.code .hljs-type{color:#8fbcbb}:root[data-codestyle=nord] .md-body pre.code .hljs-meta,:root[data-codestyle=nord] .md-body pre.code .hljs-tag{color:#5e81ac}:root[data-codestyle=monokai] .md-body pre.code{background:#272822;border-color:#ffffff12;box-shadow:0 12px 34px #0000004d}:root[data-codestyle=monokai] .md-body pre.code code{color:#f8f8f2}:root[data-codestyle=monokai] .md-body pre.code .hljs-comment,:root[data-codestyle=monokai] .md-body pre.code .hljs-quote{color:#75715e;font-style:italic}:root[data-codestyle=monokai] .md-body pre.code .hljs-keyword,:root[data-codestyle=monokai] .md-body pre.code .hljs-selector-tag,:root[data-codestyle=monokai] .md-body pre.code .hljs-literal,:root[data-codestyle=monokai] .md-body pre.code .hljs-subst,:root[data-codestyle=monokai] .md-body pre.code .hljs-doctag{color:#f92672}:root[data-codestyle=monokai] .md-body pre.code .hljs-string,:root[data-codestyle=monokai] .md-body pre.code .hljs-regexp,:root[data-codestyle=monokai] .md-body pre.code .hljs-addition{color:#e6db74}:root[data-codestyle=monokai] .md-body pre.code .hljs-number,:root[data-codestyle=monokai] .md-body pre.code .hljs-symbol,:root[data-codestyle=monokai] .md-body pre.code .hljs-bullet{color:#ae81ff}:root[data-codestyle=monokai] .md-body pre.code .hljs-title,:root[data-codestyle=monokai] .md-body pre.code .hljs-section,:root[data-codestyle=monokai] .md-body pre.code .hljs-name,:root[data-codestyle=monokai] .md-body pre.code .hljs-built_in,:root[data-codestyle=monokai] .md-body pre.code .hljs-function{color:#a6e22e}:root[data-codestyle=monokai] .md-body pre.code .hljs-attr,:root[data-codestyle=monokai] .md-body pre.code .hljs-attribute,:root[data-codestyle=monokai] .md-body pre.code .hljs-variable,:root[data-codestyle=monokai] .md-body pre.code .hljs-template-variable,:root[data-codestyle=monokai] .md-body pre.code .hljs-type{color:#66d9ef}:root[data-codestyle=monokai] .md-body pre.code .hljs-meta,:root[data-codestyle=monokai] .md-body pre.code .hljs-tag{color:#e6db74}:root[data-codestyle=macos] .md-body pre.code{background:#1e2127;border-color:#ffffff12;box-shadow:0 12px 34px #0000004d}:root[data-codestyle=macos] .md-body pre.code code{color:#abb2bf}:root[data-codestyle=macos] .md-body pre.code .hljs-comment,:root[data-codestyle=macos] .md-body pre.code .hljs-quote{color:#5c6370;font-style:italic}:root[data-codestyle=macos] .md-body pre.code .hljs-keyword,:root[data-codestyle=macos] .md-body pre.code .hljs-selector-tag,:root[data-codestyle=macos] .md-body pre.code .hljs-literal,:root[data-codestyle=macos] .md-body pre.code .hljs-subst,:root[data-codestyle=macos] .md-body pre.code .hljs-doctag{color:#c678dd}:root[data-codestyle=macos] .md-body pre.code .hljs-string,:root[data-codestyle=macos] .md-body pre.code .hljs-regexp,:root[data-codestyle=macos] .md-body pre.code .hljs-addition{color:#98c379}:root[data-codestyle=macos] .md-body pre.code .hljs-number,:root[data-codestyle=macos] .md-body pre.code .hljs-symbol,:root[data-codestyle=macos] .md-body pre.code .hljs-bullet{color:#d19a66}:root[data-codestyle=macos] .md-body pre.code .hljs-title,:root[data-codestyle=macos] .md-body pre.code .hljs-section,:root[data-codestyle=macos] .md-body pre.code .hljs-name,:root[data-codestyle=macos] .md-body pre.code .hljs-built_in,:root[data-codestyle=macos] .md-body pre.code .hljs-function{color:#61afef}:root[data-codestyle=macos] .md-body pre.code .hljs-attr,:root[data-codestyle=macos] .md-body pre.code .hljs-attribute,:root[data-codestyle=macos] .md-body pre.code .hljs-variable,:root[data-codestyle=macos] .md-body pre.code .hljs-template-variable,:root[data-codestyle=macos] .md-body pre.code .hljs-type{color:#e5c07b}:root[data-codestyle=macos] .md-body pre.code .hljs-meta,:root[data-codestyle=macos] .md-body pre.code .hljs-tag{color:#56b6c2}:root[data-codestyle=synthwave] .md-body pre.code{background:linear-gradient(160deg,#2a2139,#34294f);border-color:#ffffff12;box-shadow:0 12px 34px #0000004d}:root[data-codestyle=synthwave] .md-body pre.code code{color:#fff}:root[data-codestyle=synthwave] .md-body pre.code .hljs-comment,:root[data-codestyle=synthwave] .md-body pre.code .hljs-quote{color:#848bbd;font-style:italic}:root[data-codestyle=synthwave] .md-body pre.code .hljs-keyword,:root[data-codestyle=synthwave] .md-body pre.code .hljs-selector-tag,:root[data-codestyle=synthwave] .md-body pre.code .hljs-literal,:root[data-codestyle=synthwave] .md-body pre.code .hljs-subst,:root[data-codestyle=synthwave] .md-body pre.code .hljs-doctag{color:#fede5d}:root[data-codestyle=synthwave] .md-body pre.code .hljs-string,:root[data-codestyle=synthwave] .md-body pre.code .hljs-regexp,:root[data-codestyle=synthwave] .md-body pre.code .hljs-addition{color:#ff8b39}:root[data-codestyle=synthwave] .md-body pre.code .hljs-number,:root[data-codestyle=synthwave] .md-body pre.code .hljs-symbol,:root[data-codestyle=synthwave] .md-body pre.code .hljs-bullet{color:#f97e72}:root[data-codestyle=synthwave] .md-body pre.code .hljs-title,:root[data-codestyle=synthwave] .md-body pre.code .hljs-section,:root[data-codestyle=synthwave] .md-body pre.code .hljs-name,:root[data-codestyle=synthwave] .md-body pre.code .hljs-built_in,:root[data-codestyle=synthwave] .md-body pre.code .hljs-function{color:#36f9f6}:root[data-codestyle=synthwave] .md-body pre.code .hljs-attr,:root[data-codestyle=synthwave] .md-body pre.code .hljs-attribute,:root[data-codestyle=synthwave] .md-body pre.code .hljs-variable,:root[data-codestyle=synthwave] .md-body pre.code .hljs-template-variable,:root[data-codestyle=synthwave] .md-body pre.code .hljs-type{color:#ff7edb}:root[data-codestyle=synthwave] .md-body pre.code .hljs-meta,:root[data-codestyle=synthwave] .md-body pre.code .hljs-tag{color:#fe4450}:root[data-codestyle=macos] .md-body pre.code{padding-top:42px;position:relative;border-radius:12px}:root[data-codestyle=macos] .md-body pre.code:before{content:"";position:absolute;top:16px;left:18px;width:12px;height:12px;border-radius:50%;background:#ff5f56;box-shadow:20px 0 #ffbd2e,40px 0 #27c93f}:root[data-codestyle=glass] .md-body pre.code{background:linear-gradient(135deg,#ffbceb66,#c4a8ff5c 55%,#96b7ff57);-webkit-backdrop-filter:blur(28px) saturate(185%);backdrop-filter:blur(28px) saturate(185%);border:1px solid rgba(255,255,255,.55);box-shadow:0 22px 56px #785ac83d,inset 0 1px #ffffffb3;border-radius:18px;position:relative}:root[data-codestyle=glass] .md-body pre.code:before{content:"";position:absolute;top:17px;left:18px;width:12px;height:12px;border-radius:50%;background:#ff5f56eb;box-shadow:20px 0 #ffbd2eeb,40px 0 #27c93feb}:root[data-codestyle=glass] .md-body pre.code code{color:#3b3050}:root[data-codestyle=synthwave] .md-body pre.code{border:1px solid rgba(255,126,219,.35);box-shadow:0 0 26px #ff7edb38,inset 0 0 30px #673ab71f;border-radius:12px}:root[data-codestyle=synthwave] .md-body pre.code .hljs-keyword,:root[data-codestyle=synthwave] .md-body pre.code .hljs-title,:root[data-codestyle=synthwave] .md-body pre.code .hljs-built_in,:root[data-codestyle=synthwave] .md-body pre.code .hljs-name{text-shadow:0 0 7px currentColor}.md-body .code-wrap{position:relative;margin:18px 0}.md-body .code-wrap>pre.code{margin:0}.code-tools{position:absolute;top:9px;right:11px;z-index:4;display:flex;align-items:center;gap:2px;opacity:0;transition:opacity .15s}.md-body .code-wrap:hover .code-tools,.code-tools:focus-within{opacity:1}@media(hover:none){.code-tools{opacity:.75}}.code-icon{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;color:var(--graphite);background:transparent;border:none;border-radius:7px;cursor:pointer;transition:color .15s,background .15s}.code-icon:hover{color:var(--ink);background:#14181f0f}.code-icon svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.code-icon.done{color:#1a7f37}.code-lang{position:absolute;top:12px;left:50%;transform:translate(-50%);z-index:3;font-family:var(--font-mono);font-size:12px;letter-spacing:.04em;color:var(--mute);pointer-events:none;display:none}:root:not([data-codestyle=github]):not([data-codestyle=glass]):not([data-codestyle=glasslite]) .code-icon{color:#ffffffb8}:root:not([data-codestyle=github]):not([data-codestyle=glass]):not([data-codestyle=glasslite]) .code-icon:hover{color:#fff;background:#ffffff24}:root:not([data-codestyle=github]):not([data-codestyle=glass]):not([data-codestyle=glasslite]) .code-icon.done{color:#3fb950}:root:not([data-codestyle=github]):not([data-codestyle=glass]):not([data-codestyle=glasslite]) .code-lang{color:#ffffff8c}:root[data-codestyle=macos] .md-body pre.code,:root[data-codestyle=glass] .md-body pre.code,:root[data-codestyle=glasslite] .md-body pre.code{padding-top:46px}:root[data-codestyle=macos] .code-lang,:root[data-codestyle=glass] .code-lang,:root[data-codestyle=glasslite] .code-lang{display:block}:root[data-codestyle=macos] .code-tools,:root[data-codestyle=glass] .code-tools,:root[data-codestyle=glasslite] .code-tools{opacity:1;top:11px}:root[data-codestyle=glass] .code-lang{color:#3b3050bf}:root[data-codestyle=glasslite] .code-lang{color:var(--graphite)}:root[data-codestyle=glasslite] .md-body pre.code{background:#f9fafc94;-webkit-backdrop-filter:blur(28px) saturate(140%);backdrop-filter:blur(28px) saturate(140%);border:1px solid rgba(255,255,255,.62);box-shadow:0 18px 48px #14181f24,inset 0 1px #ffffffb8;border-radius:18px;position:relative}:root[data-codestyle=glasslite] .md-body pre.code:before{content:"";position:absolute;top:17px;left:18px;width:12px;height:12px;border-radius:50%;background:#ff5f56e6;box-shadow:20px 0 #ffbd2ee6,40px 0 #27c93fe6}:root[data-codestyle=glasslite] .md-body pre.code code{color:#2f333a}:root[data-codestyle=glasslite] .md-body pre.code.plain code{color:inherit}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}
