pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}/*!
  Theme: GitHub Dark
  Description: Dark theme as seen on github.com
  Author: github.com
  Maintainer: @Hirse
  Updated: 2021-05-15

  Outdated base version: https://github.com/primer/github-syntax-dark
  Current colors taken from GitHub's CSS
*/.hljs{color:#c9d1d9;background:#0d1117}.hljs-doctag,.hljs-keyword,.hljs-meta .hljs-keyword,.hljs-template-tag,.hljs-template-variable,.hljs-type,.hljs-variable.language_{color:#ff7b72}.hljs-title,.hljs-title.class_,.hljs-title.class_.inherited__,.hljs-title.function_{color:#d2a8ff}.hljs-attr,.hljs-attribute,.hljs-literal,.hljs-meta,.hljs-number,.hljs-operator,.hljs-variable,.hljs-selector-attr,.hljs-selector-class,.hljs-selector-id{color:#79c0ff}.hljs-regexp,.hljs-string,.hljs-meta .hljs-string{color:#a5d6ff}.hljs-built_in,.hljs-symbol{color:#ffa657}.hljs-comment,.hljs-code,.hljs-formula{color:#8b949e}.hljs-name,.hljs-quote,.hljs-selector-tag,.hljs-selector-pseudo{color:#7ee787}.hljs-subst{color:#c9d1d9}.hljs-section{color:#1f6feb;font-weight:700}.hljs-bullet{color:#f2cc60}.hljs-emphasis{color:#c9d1d9;font-style:italic}.hljs-strong{color:#c9d1d9;font-weight:700}.hljs-addition{color:#aff5b4;background-color:#033a16}.hljs-deletion{color:#ffdcd7;background-color:#67060c}:root{--bg-void: #0a0b0e;--bg-surface: #0f1117;--bg-raised: #161920;--bg-overlay: #1c2028;--bg-hover: #222731;--border: #2a2f3a;--border-bright: #3a4050;--text-primary: #e8eaf0;--text-secondary: #8b90a0;--text-muted: #555b6e;--accent-cf: #ff6b35;--accent-cf-dim: rgba(255, 107, 53, .15);--accent-lucee: #00c9a7;--accent-boxlang: #4f9cf9;--accent-green: #06d6a0;--accent-red: #ef476f;--accent-yellow: #ffd166;--scrollbar-track: #0f1522;--scrollbar-thumb: #2f3f62;--scrollbar-thumb-hover: #3f5685;--sidebar-width: 260px;--toc-width: 200px;--header-height: 56px;--content-max-width: 760px}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}*{scrollbar-width:thin;scrollbar-color:var(--scrollbar-thumb) var(--scrollbar-track)}*::-webkit-scrollbar{width:8px;height:8px}*::-webkit-scrollbar-track{background:var(--scrollbar-track)}*::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);border-radius:999px}*::-webkit-scrollbar-thumb:hover{background:var(--scrollbar-thumb-hover)}html,body,#root{height:100%;overflow:hidden}body{font-family:JetBrains Mono,monospace;font-size:14px;line-height:1.65;color:var(--text-primary);background:var(--bg-void);-webkit-font-smoothing:antialiased}a{color:var(--accent-cf);text-decoration:none}a:hover{text-decoration:underline}.layout{display:grid;grid-template-rows:var(--header-height) 1fr;grid-template-columns:var(--sidebar-width) 1fr;height:100%}.header{grid-column:1 / -1;display:flex;align-items:center;gap:1rem;padding:0 1.25rem;background:var(--bg-surface);border-bottom:1px solid var(--border);z-index:100}.header-logo{display:flex;align-items:center;gap:.6rem;text-decoration:none;flex-shrink:0}.header-logo img{width:28px;height:28px}.header-logo span{font-family:Syne,sans-serif;font-weight:700;font-size:1rem;color:var(--text-primary);white-space:nowrap}.header-logo .help-badge{font-size:.65rem;font-weight:600;color:var(--accent-cf);background:var(--accent-cf-dim);padding:1px 6px;border-radius:4px;margin-left:2px}.header-search-trigger{flex:1;max-width:400px;display:flex;align-items:center;gap:.5rem;padding:.35rem .75rem;border:1px solid var(--border);border-radius:6px;background:var(--bg-raised);color:var(--text-muted);font-size:.8rem;cursor:pointer;transition:border-color .15s}.header-search-trigger:hover{border-color:var(--border-bright)}.header-search-trigger kbd{margin-left:auto;font-size:.68rem;padding:1px 5px;border:1px solid var(--border);border-radius:3px;background:var(--bg-overlay);color:var(--text-muted);font-family:inherit}.header-hamburger{display:none;background:none;border:none;color:var(--text-secondary);font-size:1.4rem;cursor:pointer;padding:4px}.sidebar{background:var(--bg-surface);border-right:1px solid var(--border);overflow-y:auto;padding:1rem 0}.sidebar-category{margin-bottom:.25rem}.sidebar-category-title{display:flex;align-items:center;gap:.5rem;padding:.4rem 1.25rem;font-size:.78rem;font-weight:600;color:var(--text-secondary);cursor:pointer;-webkit-user-select:none;user-select:none;transition:color .15s}.sidebar-category-title:hover{color:var(--text-primary)}.sidebar-category-title .chevron{font-size:.6rem;transition:transform .15s;color:var(--text-muted)}.sidebar-category-title .chevron.open{transform:rotate(90deg)}.sidebar-articles{overflow:hidden}.sidebar-article-link{display:block;padding:.3rem 1.25rem .3rem 2.5rem;font-size:.78rem;color:var(--text-muted);text-decoration:none;transition:color .15s,background .15s;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-article-link:hover{color:var(--text-primary);background:var(--bg-hover);text-decoration:none}.sidebar-article-link.active{color:var(--accent-cf);background:var(--accent-cf-dim)}.content-area{overflow-y:auto;display:flex;justify-content:center;padding:2rem 2.5rem}.content-wrapper{width:100%;max-width:var(--content-max-width);display:flex;gap:2.5rem}.content-main{flex:1;min-width:0}.breadcrumb{display:flex;align-items:center;gap:.4rem;font-size:.75rem;color:var(--text-muted);margin-bottom:1.5rem}.breadcrumb a{color:var(--text-muted);transition:color .15s}.breadcrumb a:hover{color:var(--accent-cf);text-decoration:none}.breadcrumb .separator{opacity:.5}.breadcrumb .current{color:var(--text-secondary)}.article h1{font-family:Syne,sans-serif;font-size:1.75rem;font-weight:700;color:var(--text-primary);margin-bottom:1.5rem;line-height:1.3}.article h2{font-family:Syne,sans-serif;font-size:1.25rem;font-weight:600;color:var(--text-primary);margin:2.25rem 0 .75rem;padding-bottom:.4rem;border-bottom:1px solid var(--border)}.article h3{font-size:1rem;font-weight:600;color:var(--text-primary);margin:1.75rem 0 .5rem}.article p{margin-bottom:1rem;color:var(--text-secondary)}.article ul,.article ol{margin-bottom:1rem;padding-left:1.5rem;color:var(--text-secondary)}.article li{margin-bottom:.35rem}.article li>ul,.article li>ol{margin-top:.35rem;margin-bottom:0}.article code{font-family:JetBrains Mono,monospace;font-size:.85em;background:var(--bg-raised);padding:.15em .4em;border-radius:4px;border:1px solid var(--border);color:var(--accent-cf)}.article pre{margin-bottom:1.25rem;border-radius:8px;overflow-x:auto;border:1px solid var(--border)}.article pre code{display:block;padding:1rem 1.25rem;background:var(--bg-raised);border:none;color:var(--text-primary);font-size:.82rem;line-height:1.6}.article blockquote{margin:1rem 0;padding:.75rem 1rem;border-left:3px solid var(--accent-cf);background:var(--accent-cf-dim);border-radius:0 6px 6px 0;color:var(--text-secondary)}.article blockquote p:last-child{margin-bottom:0}.article table{width:100%;border-collapse:collapse;margin-bottom:1.25rem;font-size:.85rem}.article th,.article td{padding:.5rem .75rem;border:1px solid var(--border);text-align:left}.article th{background:var(--bg-raised);font-weight:600;color:var(--text-primary)}.article td{color:var(--text-secondary)}.article strong{color:var(--text-primary);font-weight:600}.article hr{border:none;border-top:1px solid var(--border);margin:2rem 0}.article img{max-width:100%;border-radius:8px;border:1px solid var(--border)}.article-nav{display:flex;gap:1rem;margin-top:3rem;padding-top:1.5rem;border-top:1px solid var(--border)}.article-nav a{flex:1;display:flex;flex-direction:column;gap:.2rem;padding:.75rem 1rem;border:1px solid var(--border);border-radius:8px;text-decoration:none;transition:border-color .15s,background .15s}.article-nav a:hover{border-color:var(--accent-cf);background:var(--accent-cf-dim);text-decoration:none}.article-nav-label{font-size:.7rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em}.article-nav-title{font-size:.85rem;color:var(--accent-cf);font-weight:500}.article-nav .next{text-align:right;margin-left:auto}.category-index h1{font-family:Syne,sans-serif;font-size:1.75rem;font-weight:700;color:var(--text-primary);margin-bottom:1.5rem}.category-cards{display:flex;flex-direction:column;gap:.5rem}.category-card{display:block;padding:1rem 1.25rem;border:1px solid var(--border);border-radius:8px;text-decoration:none;transition:border-color .15s,background .15s}.category-card:hover{border-color:var(--accent-cf);background:var(--accent-cf-dim);text-decoration:none}.category-card-title{font-size:.95rem;font-weight:600;color:var(--text-primary);margin-bottom:.25rem}.category-card-summary{font-size:.8rem;color:var(--text-muted)}.toc{position:sticky;top:0;width:var(--toc-width);flex-shrink:0;padding-top:.5rem;max-height:calc(100vh - var(--header-height) - 4rem);overflow-y:auto}.toc-title{font-size:.7rem;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em;margin-bottom:.5rem}.toc-link{display:block;padding:.2rem 0 .2rem .75rem;font-size:.72rem;color:var(--text-muted);text-decoration:none;border-left:2px solid transparent;transition:color .15s,border-color .15s}.toc-link:hover{color:var(--text-primary);text-decoration:none}.toc-link.active{color:var(--accent-cf);border-left-color:var(--accent-cf)}.toc-link.depth-3{padding-left:1.5rem;font-size:.7rem}.search-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#03060cb3;z-index:1000;display:flex;justify-content:center;padding-top:15vh}.search-dialog{width:560px;max-height:480px;background:var(--bg-surface);border:1px solid var(--border-bright);border-radius:12px;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 24px 64px #00000080}.search-input-wrapper{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;border-bottom:1px solid var(--border)}.search-input-wrapper .icon{color:var(--text-muted);font-size:1rem}.search-input{flex:1;background:none;border:none;outline:none;font-family:JetBrains Mono,monospace;font-size:.9rem;color:var(--text-primary)}.search-input::placeholder{color:var(--text-muted)}.search-results{flex:1;overflow-y:auto;padding:.5rem}.search-empty{padding:2rem;text-align:center;color:var(--text-muted);font-size:.8rem}.search-result-item{display:block;padding:.6rem .75rem;border-radius:6px;text-decoration:none;cursor:pointer;transition:background .1s}.search-result-item:hover,.search-result-item.focused{background:var(--bg-hover);text-decoration:none}.search-result-category{font-size:.65rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em}.search-result-title{font-size:.85rem;color:var(--text-primary);font-weight:500}.search-result-summary{font-size:.75rem;color:var(--text-muted);margin-top:.1rem}.mobile-nav-backdrop{display:none;position:fixed;top:0;right:0;bottom:0;left:0;top:var(--header-height);background:#03060c99;z-index:90}.mobile-nav-backdrop.open{display:block}.mobile-sidebar{position:fixed;top:var(--header-height);left:0;bottom:0;width:280px;background:var(--bg-surface);border-right:1px solid var(--border);overflow-y:auto;z-index:91;transform:translate(-100%);transition:transform .2s ease;padding:1rem 0}.mobile-sidebar.open{transform:translate(0)}@media (max-width: 1199px){.toc{display:none}}@media (max-width: 767px){.layout{grid-template-columns:1fr}.sidebar{display:none}.header-hamburger{display:block}.content-area{padding:1.5rem 1rem}.article-nav{flex-direction:column}.search-dialog{width:calc(100% - 2rem);margin:0 1rem}}@media (min-width: 1200px){.content-wrapper{max-width:calc(var(--content-max-width) + var(--toc-width) + 2.5rem)}}.hljs{background:var(--bg-raised)!important;color:var(--text-primary)!important}
