/* shy.css */@import url(https://fonts.googleapis.com/css2?family=JetBrains+Mono&display=swap);.btn,.sidebar a{text-decoration:none}body,ol,ul{margin:0}.col,.sidebar a,body{word-wrap:break-word}.btn,.hljs{background:var(--color-code-bg)}:root{--font-family:'JetBrains Mono',monospace;--color-bg:#ffffff;--color-text:#1a1a1a;--color-code-bg:#f5f5f5;--color-border:#e0e0e0;--hl-comment:#697070;--hl-punctuation:#6a737d;--hl-tag:#d73a49;--hl-keyword:#d73a49;--hl-string:#50a14f;--hl-number:#b76b3e;--hl-meta:#1f7199;--hl-meta-string:#0033aa}@media (prefers-color-scheme:dark){:root{--color-bg:#1a1a1a;--color-text:#f5f5f5;--color-code-bg:#2d2d2d;--color-border:#444;--hl-comment:#999;--hl-punctuation:#ccc;--hl-tag:#ff6b6b;--hl-keyword:#ffa07a;--hl-string:#9fdf9f;--hl-number:#d49c6b;--hl-meta:#57a;--hl-meta-string:#6af}}.btn,.hljs,.sidebar a,body,code.hljs,pre code.hljs{color:var(--color-text)}a[target="_blank"]::after{content:none!important}.btn{border:1px solid var(--color-border);font-size:.8rem;padding:.25rem .5rem;border-radius:999px;transition:background .2s}.btn:hover{background:var(--color-border)}html{box-sizing:border-box;font-size:100%;scroll-behavior:smooth}*,::after,::before{box-sizing:inherit;max-width:100%}body{font-family:var(--font-family);background-color:var(--color-bg);padding:1rem;line-height:1.6}code,code.hljs,pre,pre code.hljs{font-family:var(--font-family);background-color:var(--color-code-bg)}[id]{scroll-margin-top:1rem}.container{width:100%;padding-left:1rem;padding-right:1rem;margin-left:auto;margin-right:auto}@media (min-width:576px){.container{max-width:540px}}@media (min-width:768px){.container{max-width:720px}}@media (min-width:992px){.container{max-width:960px}.sidebar{position:sticky;top:1rem;align-self:flex-start;max-height:calc(100vh);overflow-y:auto}}@media (max-width:991px){.grid .sidebar{flex-basis:100%!important;max-width:100%!important;width:100%!important}}@media (min-width:1200px){.container{max-width:1140px}}h1,h2{font-weight:700;margin:1rem 0 .5rem}h1{font-size:2rem}h2{font-size:1.5rem}p{margin:.5rem 0;font-size:1rem}.text-center{text-align:center}.sidebar{top:1rem;align-self:flex-start;max-height:calc(100vh);overflow-y:auto}.sidebar a{font-family:var(--font-family);display:block;padding:.3rem 0}.sidebar a:hover{text-decoration:underline}code,pre{padding:.5rem;border-radius:4px;font-size:.95rem;line-height:1.4;white-space:pre-wrap;font-variant-ligatures:none;-webkit-font-feature-settings:"liga" 0,"calt" 0;-moz-font-feature-settings:"liga=0","calt=0";font-feature-settings:"liga" 0,"calt" 0}pre{border:1px solid var(--color-border);overflow-x:auto;margin:1rem 0}code{padding:.2rem .4rem}pre code{padding:.2rem 0}.grid{display:flex;flex-wrap:wrap;gap:1rem;margin-top:1rem}.col{min-width:0;box-sizing:border-box;flex-grow:1;flex-basis:0;max-width:100%}.gap-1{gap:.25rem}.gap-2{gap:.5rem}.gap-3{gap:1rem}.gap-4{gap:1.5rem}.gap-5{gap:2rem}.col-1{flex:0 0 8.3333%;max-width:8.3333%}.col-2{flex:0 0 16.6667%;max-width:16.6667%}.col-3{flex:0 0 25%;max-width:25%}.col-4{flex:0 0 33.3333%;max-width:33.3333%}.col-5{flex:0 0 41.6667%;max-width:41.6667%}.col-6{flex:0 0 50%;max-width:50%}.col-7{flex:0 0 58.3333%;max-width:58.3333%}.col-8{flex:0 0 66.6667%;max-width:66.6667%}.col-9{flex:0 0 75%;max-width:75%}.col-10{flex:0 0 83.3333%;max-width:83.3333%}.col-11{flex:0 0 91.6667%;max-width:91.6667%}.col-12{flex:0 0 100%;max-width:100%}@media (max-width:600px){h1{font-size:1.5rem}h2{font-size:1.2rem}.grid{flex-direction:column}.col,.col-1,.col-10,.col-11,.col-12,.col-2,.col-3,.col-4,.col-5,.col-6,.col-7,.col-8,.col-9{flex-basis:100%!important;max-width:100%!important;width:100%!important}code,p,pre{font-size:.95rem}}.hljs-comment{color:var(--hl-comment)}.hljs-punctuation,.hljs-tag{color:var(--hl-punctuation)}.hljs-tag .hljs-attr,.hljs-tag .hljs-name{color:var(--hl-tag)}.hljs-attribute,.hljs-keyword,.hljs-name,.hljs-section,.hljs-selector-tag,.hljs-variable.language_{color:var(--hl-keyword)}.hljs-addition,.hljs-built_in,.hljs-literal,.hljs-string,.hljs-template-variable,.hljs-title,.hljs-type{color:var(--hl-string)}.hljs-deletion,.hljs-number,.hljs-quote,.hljs-regexp,.hljs-selector-class,.hljs-symbol{color:var(--hl-number)}.hljs-meta,.hljs-meta .hljs-keyword{color:var(--hl-meta)}.hljs-meta .hljs-string{color:var(--hl-meta-string)}