From c24b8ab2e153b0610180e7c44ea0a552fca1d7f3 Mon Sep 17 00:00:00 2001 From: James Panther <4462786+jpanther@users.noreply.github.com> Date: Sat, 14 Aug 2021 14:44:34 +1000 Subject: [PATCH] =?UTF-8?q?=E2=9C=A8=20Add=20article=20pagination=20links?= =?UTF-8?q?=20and=20display=20params?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- config/_default/params.toml | 14 +++++++ layouts/_default/single.html | 3 +- layouts/_default/taxonomy.html | 10 +++-- layouts/partials/article-link.html | 2 +- layouts/partials/article-meta.html | 18 ++++++++ layouts/partials/article-pagination.html | 45 ++++++++++++++++++++ layouts/partials/author.html | 52 ++++++++++++------------ layouts/partials/meta.html | 8 ---- static/css/main.css | 2 +- 9 files changed, 114 insertions(+), 40 deletions(-) create mode 100644 layouts/partials/article-meta.html create mode 100644 layouts/partials/article-pagination.html delete mode 100644 layouts/partials/meta.html diff --git a/config/_default/params.toml b/config/_default/params.toml index cfcc0593..7d4c6292 100644 --- a/config/_default/params.toml +++ b/config/_default/params.toml @@ -1,3 +1,17 @@ +# -- Theme Options -- +# These options control how the theme functions and allow you to +# customise the display of your website. + +[article] + showDate = true + dateFormat = "2 January 2006" + showReadingTime = true + showAuthor = true + showPagination = true + +[taxonomy] + showTermCount = true + # -- Site Verification -- # Provide the verification strings for the providers below and the # corresponding meta tags will be added to the site . diff --git a/layouts/_default/single.html b/layouts/_default/single.html index e83838fc..10d41ec5 100644 --- a/layouts/_default/single.html +++ b/layouts/_default/single.html @@ -3,7 +3,7 @@

{{ .Title }}

- {{ partial "meta.html" . }} + {{ partial "article-meta.html" . }}
@@ -11,6 +11,7 @@
{{/* Comments */}} {{ if templates.Exists "partials/comments.html" }} diff --git a/layouts/_default/taxonomy.html b/layouts/_default/taxonomy.html index ee55596d..ad46d4bf 100644 --- a/layouts/_default/taxonomy.html +++ b/layouts/_default/taxonomy.html @@ -7,10 +7,12 @@ {{ .Page.Title }} - - · - {{ .Count }} - + {{ if $.Site.Params.taxonomy.showTermCount | default true }} + + · + {{ .Count }} + + {{ end }} {{ end }} diff --git a/layouts/partials/article-link.html b/layouts/partials/article-link.html index ab1857ce..4a8492de 100644 --- a/layouts/partials/article-link.html +++ b/layouts/partials/article-link.html @@ -18,6 +18,6 @@ {{ end }}
- {{ partial "meta.html" . }} + {{ partial "article-meta.html" . }}
diff --git a/layouts/partials/article-meta.html b/layouts/partials/article-meta.html new file mode 100644 index 00000000..6e6f2e3e --- /dev/null +++ b/layouts/partials/article-meta.html @@ -0,0 +1,18 @@ +{{ if .Site.Params.article.showDate | default true }} + +{{ end }} +{{ if and + (.Site.Params.article.showDate | default true) + (.Site.Params.article.showReadingTime | default true) + (ne .ReadingTime 0) +}} + · +{{ end }} +{{ if and (.Site.Params.article.showReadingTime | default true) (ne .ReadingTime 0) }} + + {{ .ReadingTime }} + min{{ if gt .ReadingTime 1 }}s{{ end }} + +{{ end }} diff --git a/layouts/partials/article-pagination.html b/layouts/partials/article-pagination.html new file mode 100644 index 00000000..b09ae3d5 --- /dev/null +++ b/layouts/partials/article-pagination.html @@ -0,0 +1,45 @@ +{{ if .Site.Params.article.showPagination | default true }} + {{ if or .NextInSection .PrevInSection }} +
+
+
+ + {{ if .NextInSection }} + + + + {{ .NextInSection.Title }} + {{ if .Site.Params.article.showDate | default true }} + + {{ end }} + + + {{ end }} + + + {{ if .PrevInSection }} + + + {{ .PrevInSection.Title }} + {{ if .Site.Params.article.showDate | default true }} + + {{ end }} + + + + {{ end }} + +
+
+ {{ end }} +{{ end }} diff --git a/layouts/partials/author.html b/layouts/partials/author.html index cf46e9c7..4d907fc6 100644 --- a/layouts/partials/author.html +++ b/layouts/partials/author.html @@ -1,28 +1,30 @@ -
- {{ with .Site.Author.image }} - - {{ end }} -
- {{ with .Site.Author.name }} -
- {{ . }} -
+{{ if .Site.Params.article.showAuthor | default true }} +
+ {{ with .Site.Author.image }} + {{ end }} - {{ with .Site.Author.links }} -
- {{ range $links := . }} - {{ range $name, $url := $links }} - {{ partial "icon.html" $name }} +
+ {{ with .Site.Author.name }} +
+ {{ . }} +
+ {{ end }} + {{ with .Site.Author.links }} +
+ {{ range $links := . }} + {{ range $name, $url := $links }} + {{ partial "icon.html" $name }} + {{ end }} {{ end }} - {{ end }} -
- {{ end }} +
+ {{ end }} +
-
+{{ end }} diff --git a/layouts/partials/meta.html b/layouts/partials/meta.html deleted file mode 100644 index 3031fb15..00000000 --- a/layouts/partials/meta.html +++ /dev/null @@ -1,8 +0,0 @@ - -{{ if ne .ReadingTime 0 }} - · - - {{ .ReadingTime }} - min{{ if gt .ReadingTime 1 }}s{{ end }} - -{{ end }} diff --git a/static/css/main.css b/static/css/main.css index 974c6815..ca56a8bc 100644 --- a/static/css/main.css +++ b/static/css/main.css @@ -1 +1 @@ -/*! tailwindcss v2.2.7 | MIT License | https://tailwindcss.com*//*! modern-normalize v1.1.0 | MIT License | https://github.com/sindresorhus/modern-normalize */html{-moz-tab-size:4;-o-tab-size:4;tab-size:4;line-height:1.15;-webkit-text-size-adjust:100%}body{margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif,Apple Color Emoji,Segoe UI Emoji}hr{height:0;color:inherit}abbr[title]{-webkit-text-decoration:underline dotted;text-decoration:underline dotted}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:ui-monospace,SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:initial}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0}button,select{text-transform:none}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button}::-moz-focus-inner{border-style:none;padding:0}:-moz-focusring{outline:1px dotted ButtonText}:-moz-ui-invalid{box-shadow:none}legend{padding:0}progress{vertical-align:initial}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}button{background-color:initial;background-image:none}fieldset,ol,ul{margin:0;padding:0}ol,ul{list-style:none}html{font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;line-height:1.5}body{font-family:inherit;line-height:inherit}*,:after,:before{box-sizing:border-box;border:0 solid}hr{border-top-width:1px}img{border-style:solid}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#a1a1aa}input:-ms-input-placeholder,textarea:-ms-input-placeholder{opacity:1;color:#a1a1aa}input::placeholder,textarea::placeholder{opacity:1;color:#a1a1aa}[role=button],button{cursor:pointer}table{border-collapse:collapse}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}button,input,optgroup,select,textarea{padding:0;line-height:inherit;color:inherit}code,kbd,pre,samp{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]{display:none}.prose{color:#3f3f46;max-width:65ch}.prose [class~=lead]{color:#52525b;font-size:1.25em;line-height:1.6;margin-top:1.2em;margin-bottom:1.2em}.prose a{color:#6d28d9;text-decoration:underline;font-weight:500}.prose a:hover{background-color:#7c3aed;color:#fff;text-decoration:none}.prose strong{color:#18181b;font-weight:600}.prose ol[type=A]{--list-counter-style:upper-alpha}.prose ol[type=a]{--list-counter-style:lower-alpha}.prose ol[type=A s]{--list-counter-style:upper-alpha}.prose ol[type=a s]{--list-counter-style:lower-alpha}.prose ol[type=I]{--list-counter-style:upper-roman}.prose ol[type=i]{--list-counter-style:lower-roman}.prose ol[type=I s]{--list-counter-style:upper-roman}.prose ol[type=i s]{--list-counter-style:lower-roman}.prose ol[type="1"]{--list-counter-style:decimal}.prose ol>li{position:relative;padding-left:1.75em}.prose ol>li:before{content:counter(list-item,var(--list-counter-style,decimal)) ".";position:absolute;font-weight:400;color:#71717a;left:0}.prose ul>li{position:relative;padding-left:1.75em}.prose ul>li:before{content:"";position:absolute;background-color:#d4d4d8;border-radius:50%;width:.375em;height:.375em;top:.6875em;left:.25em}.prose hr{border-color:#e4e4e7;border-top-width:1px;margin-top:3em;margin-bottom:3em}.prose blockquote{font-weight:500;font-style:italic;color:#18181b;border-left-width:.25rem;border-left-color:#e4e4e7;quotes:"\201C""\201D""\2018""\2019";margin-top:1.6em;margin-bottom:1.6em;padding-left:1em}.prose blockquote p:first-of-type:before{content:open-quote}.prose blockquote p:last-of-type:after{content:close-quote}.prose h1{color:#18181b;font-weight:800;font-size:2.25em;margin-top:0;margin-bottom:.8888889em;line-height:1.1111111}.prose h2{color:#18181b;font-weight:700;font-size:1.5em;margin-top:2em;margin-bottom:1em;line-height:1.3333333;position:relative}.prose h3{font-size:1.25em;margin-top:1.6em;margin-bottom:.6em;line-height:1.6}.prose h3,.prose h4{color:#18181b;font-weight:600;position:relative}.prose h4{margin-top:1.5em;margin-bottom:.5em;line-height:1.5}.prose figure figcaption{color:#71717a;font-size:.875em;line-height:1.4285714;margin-top:.8571429em}.prose code{color:#a21caf;font-weight:600;font-size:.875em}.prose code:after,.prose code:before{content:"`"}.prose a code{color:#18181b}.prose pre{color:#e4e4e7;background-color:#fafafa;overflow-x:auto;font-size:.875em;line-height:1.7142857;margin-top:1.7142857em;margin-bottom:1.7142857em;border-radius:.375rem;padding:.8571429em 1.1428571em}.prose pre code{background-color:initial;border-width:0;border-radius:0;padding:0;font-weight:400;color:#3f3f46;font-size:inherit;font-family:inherit;line-height:inherit}.prose pre code:after,.prose pre code:before{content:none}.prose table{width:100%;table-layout:auto;text-align:left;margin-top:2em;margin-bottom:2em;font-size:.875em;line-height:1.7142857}.prose thead{color:#18181b;font-weight:600;border-bottom-width:1px;border-bottom-color:#d4d4d8}.prose thead th{vertical-align:bottom;padding-right:.5714286em;padding-bottom:.5714286em;padding-left:.5714286em}.prose tbody tr{border-bottom-width:1px;border-bottom-color:#e4e4e7}.prose tbody tr:last-child{border-bottom-width:0}.prose tbody td{vertical-align:top;padding:.5714286em}.prose{font-size:1rem;line-height:1.75}.prose p{margin-top:1.25em;margin-bottom:1.25em}.prose figure,.prose img,.prose video{margin-top:2em;margin-bottom:2em}.prose figure>*{margin-top:0;margin-bottom:0}.prose h2 code{font-size:.875em}.prose h3 code{font-size:.9em}.prose ol,.prose ul{margin-top:1.25em;margin-bottom:1.25em}.prose li{margin-top:.5em;margin-bottom:.5em}.prose>ul>li p{margin-top:.75em;margin-bottom:.75em}.prose>ul>li>:first-child{margin-top:1.25em}.prose>ul>li>:last-child{margin-bottom:1.25em}.prose>ol>li>:first-child{margin-top:1.25em}.prose>ol>li>:last-child{margin-bottom:1.25em}.prose ol ol,.prose ol ul,.prose ul ol,.prose ul ul{margin-top:.75em;margin-bottom:.75em}.prose h2+*,.prose h3+*,.prose h4+*,.prose hr+*{margin-top:0}.prose thead th:first-child{padding-left:0}.prose thead th:last-child{padding-right:0}.prose tbody td:first-child{padding-left:0}.prose tbody td:last-child{padding-right:0}.prose>:first-child{margin-top:0}.prose>:last-child{margin-bottom:0}.prose kbd{background-color:#e4e4e7;padding:.1rem .4rem;border-radius:.25rem;font-size:.9rem;font-weight:600}.icon svg{height:1em;width:1em}.prose .heading-anchor{position:absolute;top:0;text-decoration:none;opacity:0;width:1.1em;left:-1.1em}.prose .heading-anchor:hover{background-color:initial;--tw-text-opacity:1;color:rgba(124,58,237,var(--tw-text-opacity));text-decoration:underline}.prose .heading-anchor:focus,.prose .heading-anchor:hover,.prose h2:hover>.heading-anchor,.prose h3:hover>.heading-anchor,.prose h4:hover>.heading-anchor{opacity:1}.no-prose>p{margin-top:0}.no-prose>p:last-child{margin-bottom:0}.prose .chroma{border-radius:.375rem;--tw-bg-opacity:1;background-color:rgba(250,250,250,var(--tw-bg-opacity));--tw-text-opacity:1;color:rgba(63,63,70,var(--tw-text-opacity))}@media (prefers-color-scheme:dark){.prose .chroma{--tw-bg-opacity:1;background-color:rgba(63,63,70,var(--tw-bg-opacity));--tw-text-opacity:1;color:rgba(228,228,231,var(--tw-text-opacity))}}.chroma .lntd,.chroma .lntd pre{margin:0;border-style:none;padding:0;vertical-align:top}.chroma .lntable{display:block;width:auto;overflow:hidden;padding:.75rem 1rem;font-size:1rem;line-height:1.5rem;border-spacing:0}.chroma .hl{margin-left:-1rem;margin-right:-1rem;display:block;width:auto;--tw-bg-opacity:1;background-color:rgba(237,233,254,var(--tw-bg-opacity));padding-left:1rem;padding-right:1rem}@media (prefers-color-scheme:dark){.chroma .hl{--tw-bg-opacity:1;background-color:rgba(76,29,149,var(--tw-bg-opacity))}}.chroma .lntd .hl{margin:0;padding:0}.chroma .lnt{--tw-text-opacity:1;color:rgba(82,82,91,var(--tw-text-opacity))}@media (prefers-color-scheme:dark){.chroma .lnt{--tw-text-opacity:1;color:rgba(212,212,216,var(--tw-text-opacity))}}.chroma .lnt{margin-right:.4em;padding:0 .4em}.chroma .ln{--tw-text-opacity:1;color:rgba(82,82,91,var(--tw-text-opacity))}@media (prefers-color-scheme:dark){.chroma .ln{--tw-text-opacity:1;color:rgba(212,212,216,var(--tw-text-opacity))}}.chroma .ln{margin-right:.4em;padding:0 .4em}.chroma .k{--tw-text-opacity:1;color:rgba(124,58,237,var(--tw-text-opacity))}@media (prefers-color-scheme:dark){.chroma .k{--tw-text-opacity:1;color:rgba(196,181,253,var(--tw-text-opacity))}}.chroma .kc{font-weight:600;--tw-text-opacity:1;color:rgba(232,121,249,var(--tw-text-opacity))}@media (prefers-color-scheme:dark){.chroma .kc{--tw-text-opacity:1;color:rgba(217,70,239,var(--tw-text-opacity))}}.chroma .kd{--tw-text-opacity:1;color:rgba(124,58,237,var(--tw-text-opacity))}@media (prefers-color-scheme:dark){.chroma .kd{--tw-text-opacity:1;color:rgba(196,181,253,var(--tw-text-opacity))}}.chroma .kn{--tw-text-opacity:1;color:rgba(124,58,237,var(--tw-text-opacity))}@media (prefers-color-scheme:dark){.chroma .kn{--tw-text-opacity:1;color:rgba(196,181,253,var(--tw-text-opacity))}}.chroma .kp{--tw-text-opacity:1;color:rgba(124,58,237,var(--tw-text-opacity))}@media (prefers-color-scheme:dark){.chroma .kp{--tw-text-opacity:1;color:rgba(196,181,253,var(--tw-text-opacity))}}.chroma .kr{--tw-text-opacity:1;color:rgba(124,58,237,var(--tw-text-opacity))}@media (prefers-color-scheme:dark){.chroma .kr{--tw-text-opacity:1;color:rgba(196,181,253,var(--tw-text-opacity))}}.chroma .kt{--tw-text-opacity:1;color:rgba(232,121,249,var(--tw-text-opacity))}@media (prefers-color-scheme:dark){.chroma .kt{--tw-text-opacity:1;color:rgba(192,38,211,var(--tw-text-opacity))}}.chroma .n{--tw-text-opacity:1;color:rgba(112,26,117,var(--tw-text-opacity))}@media (prefers-color-scheme:dark){.chroma .n{--tw-text-opacity:1;color:rgba(245,208,254,var(--tw-text-opacity))}}.chroma .na{--tw-text-opacity:1;color:rgba(134,25,143,var(--tw-text-opacity))}@media (prefers-color-scheme:dark){.chroma .na{--tw-text-opacity:1;color:rgba(240,171,252,var(--tw-text-opacity))}}.chroma .nb{--tw-text-opacity:1;color:rgba(134,25,143,var(--tw-text-opacity))}@media (prefers-color-scheme:dark){.chroma .nb{--tw-text-opacity:1;color:rgba(240,171,252,var(--tw-text-opacity))}}.chroma .bp{--tw-text-opacity:1;color:rgba(134,25,143,var(--tw-text-opacity))}@media (prefers-color-scheme:dark){.chroma .bp{--tw-text-opacity:1;color:rgba(240,171,252,var(--tw-text-opacity))}}.chroma .nc{--tw-text-opacity:1;color:rgba(124,58,237,var(--tw-text-opacity))}@media (prefers-color-scheme:dark){.chroma .nc{--tw-text-opacity:1;color:rgba(196,181,253,var(--tw-text-opacity))}}.chroma .no{font-weight:600;--tw-text-opacity:1;color:rgba(232,121,249,var(--tw-text-opacity))}@media (prefers-color-scheme:dark){.chroma .no{--tw-text-opacity:1;color:rgba(217,70,239,var(--tw-text-opacity))}}.chroma .nd{--tw-text-opacity:1;color:rgba(112,26,117,var(--tw-text-opacity))}@media (prefers-color-scheme:dark){.chroma .nd{--tw-text-opacity:1;color:rgba(245,208,254,var(--tw-text-opacity))}}.chroma .ni{--tw-text-opacity:1;color:rgba(112,26,117,var(--tw-text-opacity))}@media (prefers-color-scheme:dark){.chroma .ni{--tw-text-opacity:1;color:rgba(245,208,254,var(--tw-text-opacity))}}.chroma .ne{font-weight:600;--tw-text-opacity:1;color:rgba(232,121,249,var(--tw-text-opacity))}@media (prefers-color-scheme:dark){.chroma .ne{--tw-text-opacity:1;color:rgba(217,70,239,var(--tw-text-opacity))}}.chroma .nf{--tw-text-opacity:1;color:rgba(192,38,211,var(--tw-text-opacity))}@media (prefers-color-scheme:dark){.chroma .nf{--tw-text-opacity:1;color:rgba(217,70,239,var(--tw-text-opacity))}}.chroma .fm{--tw-text-opacity:1;color:rgba(124,58,237,var(--tw-text-opacity))}@media (prefers-color-scheme:dark){.chroma .fm{--tw-text-opacity:1;color:rgba(196,181,253,var(--tw-text-opacity))}}.chroma .nl{--tw-text-opacity:1;color:rgba(112,26,117,var(--tw-text-opacity))}@media (prefers-color-scheme:dark){.chroma .nl{--tw-text-opacity:1;color:rgba(245,208,254,var(--tw-text-opacity))}}.chroma .nn{--tw-text-opacity:1;color:rgba(124,58,237,var(--tw-text-opacity))}@media (prefers-color-scheme:dark){.chroma .nn{--tw-text-opacity:1;color:rgba(196,181,253,var(--tw-text-opacity))}}.chroma .nx{--tw-text-opacity:1;color:rgba(134,25,143,var(--tw-text-opacity))}@media (prefers-color-scheme:dark){.chroma .nx{--tw-text-opacity:1;color:rgba(240,171,252,var(--tw-text-opacity))}}.chroma .py{color:#cebc3a}.chroma .nt{--tw-text-opacity:1;color:rgba(134,25,143,var(--tw-text-opacity))}@media (prefers-color-scheme:dark){.chroma .nt{--tw-text-opacity:1;color:rgba(240,171,252,var(--tw-text-opacity))}}.chroma .nv{--tw-text-opacity:1;color:rgba(232,121,249,var(--tw-text-opacity))}@media (prefers-color-scheme:dark){.chroma .nv{--tw-text-opacity:1;color:rgba(192,38,211,var(--tw-text-opacity))}}.chroma .vc{--tw-text-opacity:1;color:rgba(124,58,237,var(--tw-text-opacity))}@media (prefers-color-scheme:dark){.chroma .vc{--tw-text-opacity:1;color:rgba(196,181,253,var(--tw-text-opacity))}}.chroma .vg{font-weight:600;--tw-text-opacity:1;color:rgba(232,121,249,var(--tw-text-opacity))}@media (prefers-color-scheme:dark){.chroma .vg{--tw-text-opacity:1;color:rgba(217,70,239,var(--tw-text-opacity))}}.chroma .vi{--tw-text-opacity:1;color:rgba(232,121,249,var(--tw-text-opacity))}@media (prefers-color-scheme:dark){.chroma .vi{--tw-text-opacity:1;color:rgba(192,38,211,var(--tw-text-opacity))}}.chroma .vm{--tw-text-opacity:1;color:rgba(232,121,249,var(--tw-text-opacity))}@media (prefers-color-scheme:dark){.chroma .vm{--tw-text-opacity:1;color:rgba(192,38,211,var(--tw-text-opacity))}}.chroma .l{--tw-text-opacity:1;color:rgba(91,33,182,var(--tw-text-opacity))}@media (prefers-color-scheme:dark){.chroma .l{--tw-text-opacity:1;color:rgba(167,139,250,var(--tw-text-opacity))}}.chroma .ld{--tw-text-opacity:1;color:rgba(91,33,182,var(--tw-text-opacity))}@media (prefers-color-scheme:dark){.chroma .ld{--tw-text-opacity:1;color:rgba(167,139,250,var(--tw-text-opacity))}}.chroma .s{--tw-text-opacity:1;color:rgba(91,33,182,var(--tw-text-opacity))}@media (prefers-color-scheme:dark){.chroma .s{--tw-text-opacity:1;color:rgba(167,139,250,var(--tw-text-opacity))}}.chroma .sa{--tw-text-opacity:1;color:rgba(91,33,182,var(--tw-text-opacity))}@media (prefers-color-scheme:dark){.chroma .sa{--tw-text-opacity:1;color:rgba(167,139,250,var(--tw-text-opacity))}}.chroma .sb{--tw-text-opacity:1;color:rgba(91,33,182,var(--tw-text-opacity))}@media (prefers-color-scheme:dark){.chroma .sb{--tw-text-opacity:1;color:rgba(167,139,250,var(--tw-text-opacity))}}.chroma .sc{--tw-text-opacity:1;color:rgba(91,33,182,var(--tw-text-opacity))}@media (prefers-color-scheme:dark){.chroma .sc{--tw-text-opacity:1;color:rgba(167,139,250,var(--tw-text-opacity))}}.chroma .dl{--tw-text-opacity:1;color:rgba(91,33,182,var(--tw-text-opacity))}@media (prefers-color-scheme:dark){.chroma .dl{--tw-text-opacity:1;color:rgba(167,139,250,var(--tw-text-opacity))}}.chroma .sd{--tw-text-opacity:1;color:rgba(91,33,182,var(--tw-text-opacity))}@media (prefers-color-scheme:dark){.chroma .sd{--tw-text-opacity:1;color:rgba(167,139,250,var(--tw-text-opacity))}}.chroma .s2{--tw-text-opacity:1;color:rgba(91,33,182,var(--tw-text-opacity))}@media (prefers-color-scheme:dark){.chroma .s2{--tw-text-opacity:1;color:rgba(167,139,250,var(--tw-text-opacity))}}.chroma .se{font-weight:600;--tw-text-opacity:1;color:rgba(232,121,249,var(--tw-text-opacity))}@media (prefers-color-scheme:dark){.chroma .se{--tw-text-opacity:1;color:rgba(217,70,239,var(--tw-text-opacity))}}.chroma .sh{--tw-text-opacity:1;color:rgba(91,33,182,var(--tw-text-opacity))}@media (prefers-color-scheme:dark){.chroma .sh{--tw-text-opacity:1;color:rgba(167,139,250,var(--tw-text-opacity))}}.chroma .si{--tw-text-opacity:1;color:rgba(91,33,182,var(--tw-text-opacity))}@media (prefers-color-scheme:dark){.chroma .si{--tw-text-opacity:1;color:rgba(167,139,250,var(--tw-text-opacity))}}.chroma .sx{--tw-text-opacity:1;color:rgba(91,33,182,var(--tw-text-opacity))}@media (prefers-color-scheme:dark){.chroma .sx{--tw-text-opacity:1;color:rgba(167,139,250,var(--tw-text-opacity))}}.chroma .sr{font-weight:600;--tw-text-opacity:1;color:rgba(91,33,182,var(--tw-text-opacity))}@media (prefers-color-scheme:dark){.chroma .sr{--tw-text-opacity:1;color:rgba(167,139,250,var(--tw-text-opacity))}}.chroma .s1{--tw-text-opacity:1;color:rgba(91,33,182,var(--tw-text-opacity))}@media (prefers-color-scheme:dark){.chroma .s1{--tw-text-opacity:1;color:rgba(167,139,250,var(--tw-text-opacity))}}.chroma .ss{font-weight:600;--tw-text-opacity:1;color:rgba(91,33,182,var(--tw-text-opacity))}@media (prefers-color-scheme:dark){.chroma .ss{--tw-text-opacity:1;color:rgba(167,139,250,var(--tw-text-opacity))}}.chroma .m{--tw-text-opacity:1;color:rgba(232,121,249,var(--tw-text-opacity))}@media (prefers-color-scheme:dark){.chroma .m{--tw-text-opacity:1;color:rgba(192,38,211,var(--tw-text-opacity))}}.chroma .mb{--tw-text-opacity:1;color:rgba(232,121,249,var(--tw-text-opacity))}@media (prefers-color-scheme:dark){.chroma .mb{--tw-text-opacity:1;color:rgba(192,38,211,var(--tw-text-opacity))}}.chroma .mf{--tw-text-opacity:1;color:rgba(232,121,249,var(--tw-text-opacity))}@media (prefers-color-scheme:dark){.chroma .mf{--tw-text-opacity:1;color:rgba(192,38,211,var(--tw-text-opacity))}}.chroma .mh{--tw-text-opacity:1;color:rgba(232,121,249,var(--tw-text-opacity))}@media (prefers-color-scheme:dark){.chroma .mh{--tw-text-opacity:1;color:rgba(192,38,211,var(--tw-text-opacity))}}.chroma .mi{--tw-text-opacity:1;color:rgba(232,121,249,var(--tw-text-opacity))}@media (prefers-color-scheme:dark){.chroma .mi{--tw-text-opacity:1;color:rgba(192,38,211,var(--tw-text-opacity))}}.chroma .il{--tw-text-opacity:1;color:rgba(232,121,249,var(--tw-text-opacity))}@media (prefers-color-scheme:dark){.chroma .il{--tw-text-opacity:1;color:rgba(192,38,211,var(--tw-text-opacity))}}.chroma .mo{--tw-text-opacity:1;color:rgba(232,121,249,var(--tw-text-opacity))}@media (prefers-color-scheme:dark){.chroma .mo{--tw-text-opacity:1;color:rgba(192,38,211,var(--tw-text-opacity))}}.chroma .o{--tw-text-opacity:1;color:rgba(124,58,237,var(--tw-text-opacity))}.chroma .ow{font-weight:600;--tw-text-opacity:1;color:rgba(167,139,250,var(--tw-text-opacity))}@media (prefers-color-scheme:dark){.chroma .ow{--tw-text-opacity:1;color:rgba(124,58,237,var(--tw-text-opacity))}}.chroma .c{font-style:italic;--tw-text-opacity:1;color:rgba(161,161,170,var(--tw-text-opacity))}@media (prefers-color-scheme:dark){.chroma .c{--tw-text-opacity:1;color:rgba(113,113,122,var(--tw-text-opacity))}}.chroma .ch{font-weight:600;font-style:italic;--tw-text-opacity:1;color:rgba(161,161,170,var(--tw-text-opacity))}@media (prefers-color-scheme:dark){.chroma .ch{--tw-text-opacity:1;color:rgba(113,113,122,var(--tw-text-opacity))}}.chroma .cm{font-style:italic;--tw-text-opacity:1;color:rgba(161,161,170,var(--tw-text-opacity))}@media (prefers-color-scheme:dark){.chroma .cm{--tw-text-opacity:1;color:rgba(113,113,122,var(--tw-text-opacity))}}.chroma .c1{font-style:italic;--tw-text-opacity:1;color:rgba(161,161,170,var(--tw-text-opacity))}@media (prefers-color-scheme:dark){.chroma .c1{--tw-text-opacity:1;color:rgba(113,113,122,var(--tw-text-opacity))}}.chroma .cs{font-style:italic;--tw-text-opacity:1;color:rgba(161,161,170,var(--tw-text-opacity))}@media (prefers-color-scheme:dark){.chroma .cs{--tw-text-opacity:1;color:rgba(113,113,122,var(--tw-text-opacity))}}.chroma .cp{font-style:italic;--tw-text-opacity:1;color:rgba(161,161,170,var(--tw-text-opacity))}@media (prefers-color-scheme:dark){.chroma .cp{--tw-text-opacity:1;color:rgba(113,113,122,var(--tw-text-opacity))}}.chroma .cpf{font-style:italic;--tw-text-opacity:1;color:rgba(161,161,170,var(--tw-text-opacity))}@media (prefers-color-scheme:dark){.chroma .cpf{--tw-text-opacity:1;color:rgba(113,113,122,var(--tw-text-opacity))}}.chroma .ge{font-style:italic}.chroma .gh{font-weight:600;--tw-text-opacity:1;color:rgba(113,113,122,var(--tw-text-opacity))}.chroma .gi{--tw-text-opacity:1;color:rgba(91,33,182,var(--tw-text-opacity))}@media (prefers-color-scheme:dark){.chroma .gi{--tw-text-opacity:1;color:rgba(167,139,250,var(--tw-text-opacity))}}.chroma .go{--tw-text-opacity:1;color:rgba(91,33,182,var(--tw-text-opacity))}@media (prefers-color-scheme:dark){.chroma .go{--tw-text-opacity:1;color:rgba(167,139,250,var(--tw-text-opacity))}}.chroma .gp{--tw-text-opacity:1;color:rgba(91,33,182,var(--tw-text-opacity))}@media (prefers-color-scheme:dark){.chroma .gp{--tw-text-opacity:1;color:rgba(167,139,250,var(--tw-text-opacity))}}.chroma .gs{font-weight:600}.chroma .gt,.chroma .gu{--tw-text-opacity:1;color:rgba(113,113,122,var(--tw-text-opacity))}.chroma .gl{text-decoration:underline}.relative{position:relative}.m-auto{margin:auto}.-mx-2{margin-left:-.5rem;margin-right:-.5rem}.my-3{margin-top:.75rem}.mb-3,.my-3{margin-bottom:.75rem}.mt-8{margin-top:2rem}.mb-12{margin-bottom:3rem}.mt-12{margin-top:3rem}.mt-0{margin-top:0}.mt-6{margin-top:1.5rem}.\!mt-0{margin-top:0!important}.\!mb-0{margin-bottom:0!important}.mr-4{margin-right:1rem}.mr-2{margin-right:.5rem}.\!mb-9{margin-bottom:2.25rem!important}.block{display:block}.inline-block{display:inline-block}.flex{display:flex}.h-screen{height:100vh}.h-24{height:6rem}.w-36{width:9rem}.w-full{width:100%}.w-24{width:6rem}.max-w-full{max-width:100%}.max-w-7xl{max-width:80rem}.max-w-prose{max-width:65ch}.flex-grow{flex-grow:1}.cursor-default{cursor:default}.list-none{list-style-type:none}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.justify-between{justify-content:space-between}.overflow-hidden{overflow:hidden}.rounded-full{border-radius:9999px}.rounded-md{border-radius:.375rem}.border-dotted{border-style:dotted}.border-gray-400{--tw-border-opacity:1;border-color:rgba(161,161,170,var(--tw-border-opacity))}.bg-primary-100{--tw-bg-opacity:1;background-color:rgba(237,233,254,var(--tw-bg-opacity))}.px-6{padding-left:1.5rem;padding-right:1.5rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-1{padding-left:.25rem;padding-right:.25rem}.py-10{padding-top:2.5rem;padding-bottom:2.5rem}.px-4{padding-left:1rem;padding-right:1rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.pt-8{padding-top:2rem}.pr-3{padding-right:.75rem}.text-right{text-align:right}.align-text-bottom{vertical-align:text-bottom}.text-4xl{font-size:2.25rem;line-height:2.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-2xl{font-size:1.5rem;line-height:2rem}.text-base{font-size:1rem;line-height:1.5rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xs{font-size:.75rem;line-height:1rem}.font-extrabold{font-weight:800}.font-bold{font-weight:700}.font-medium{font-weight:500}.font-semibold{font-weight:600}.leading-7{line-height:1.75rem}.leading-6{line-height:1.5rem}.text-gray-400{--tw-text-opacity:1;color:rgba(161,161,170,var(--tw-text-opacity))}.text-gray-800{--tw-text-opacity:1;color:rgba(39,39,42,var(--tw-text-opacity))}.text-gray-300{--tw-text-opacity:1;color:rgba(212,212,216,var(--tw-text-opacity))}.text-primary-400{--tw-text-opacity:1;color:rgba(167,139,250,var(--tw-text-opacity))}.first\:mt-8:first-child{margin-top:2rem}.hover\:text-primary-700:hover{--tw-text-opacity:1;color:rgba(109,40,217,var(--tw-text-opacity))}.hover\:underline:hover{text-decoration:underline}@media (prefers-color-scheme:dark){.dark\:prose-light{color:#a1a1aa}.dark\:prose-light a{color:#a78bfa}.dark\:prose-light strong{color:#fff}.dark\:prose-light ol>li:before{color:#a1a1aa}.dark\:prose-light ul>li:before{background-color:#52525b}.dark\:prose-light hr{border-color:#e4e4e7}.dark\:prose-light blockquote{color:#e4e4e7;border-left-color:#52525b}.dark\:prose-light h1,.dark\:prose-light h2,.dark\:prose-light h3,.dark\:prose-light h4{color:#fff}.dark\:prose-light figure figcaption{color:#a1a1aa}.dark\:prose-light code{color:#e879f9}.dark\:prose-light a code{color:#fff}.dark\:prose-light pre{color:#e4e4e7;background-color:#3f3f46}.dark\:prose-light pre code{color:#e4e4e7}.dark\:prose-light thead{color:#fff;border-bottom-color:#a1a1aa}.dark\:prose-light tbody tr{border-bottom-color:#52525b}.dark\:prose-light kbd{background-color:#3f3f46;color:#d4d4d8}.dark\:bg-gray-800{--tw-bg-opacity:1;background-color:rgba(39,39,42,var(--tw-bg-opacity))}.dark\:bg-primary-900{--tw-bg-opacity:1;background-color:rgba(76,29,149,var(--tw-bg-opacity))}.dark\:text-gray-500{--tw-text-opacity:1;color:rgba(113,113,122,var(--tw-text-opacity))}.dark\:text-white{--tw-text-opacity:1;color:rgba(255,255,255,var(--tw-text-opacity))}.dark\:text-gray-300{--tw-text-opacity:1;color:rgba(212,212,216,var(--tw-text-opacity))}.dark\:text-gray-600{--tw-text-opacity:1;color:rgba(82,82,91,var(--tw-text-opacity))}.dark\:hover\:text-primary-400:hover{--tw-text-opacity:1;color:rgba(167,139,250,var(--tw-text-opacity))}}@media (min-width:640px){.sm\:mr-7{margin-right:1.75rem}.sm\:w-1\/2{width:50%}.sm\:flex-row{flex-direction:row}.sm\:px-14{padding-left:3.5rem;padding-right:3.5rem}.sm\:last\:mr-0:last-child{margin-right:0}}@media (min-width:768px){.md\:w-1\/3{width:33.333333%}.md\:px-24{padding-left:6rem;padding-right:6rem}}@media (min-width:1024px){.lg\:w-1\/4{width:25%}.lg\:px-32{padding-left:8rem;padding-right:8rem}}@media (min-width:1280px){.xl\:w-1\/5{width:20%}} \ No newline at end of file +/*! tailwindcss v2.2.7 | MIT License | https://tailwindcss.com*//*! modern-normalize v1.1.0 | MIT License | https://github.com/sindresorhus/modern-normalize */html{-moz-tab-size:4;-o-tab-size:4;tab-size:4;line-height:1.15;-webkit-text-size-adjust:100%}body{margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif,Apple Color Emoji,Segoe UI Emoji}hr{height:0;color:inherit}abbr[title]{-webkit-text-decoration:underline dotted;text-decoration:underline dotted}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:ui-monospace,SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:initial}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0}button,select{text-transform:none}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button}::-moz-focus-inner{border-style:none;padding:0}:-moz-focusring{outline:1px dotted ButtonText}:-moz-ui-invalid{box-shadow:none}legend{padding:0}progress{vertical-align:initial}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}button{background-color:initial;background-image:none}fieldset,ol,ul{margin:0;padding:0}ol,ul{list-style:none}html{font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;line-height:1.5}body{font-family:inherit;line-height:inherit}*,:after,:before{box-sizing:border-box;border:0 solid}hr{border-top-width:1px}img{border-style:solid}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#a1a1aa}input:-ms-input-placeholder,textarea:-ms-input-placeholder{opacity:1;color:#a1a1aa}input::placeholder,textarea::placeholder{opacity:1;color:#a1a1aa}[role=button],button{cursor:pointer}table{border-collapse:collapse}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}button,input,optgroup,select,textarea{padding:0;line-height:inherit;color:inherit}code,kbd,pre,samp{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]{display:none}.prose{color:#3f3f46;max-width:65ch}.prose [class~=lead]{color:#52525b;font-size:1.25em;line-height:1.6;margin-top:1.2em;margin-bottom:1.2em}.prose a{color:#6d28d9;text-decoration:underline;font-weight:500}.prose a:hover{background-color:#7c3aed;color:#fff;text-decoration:none}.prose strong{color:#18181b;font-weight:600}.prose ol[type=A]{--list-counter-style:upper-alpha}.prose ol[type=a]{--list-counter-style:lower-alpha}.prose ol[type=A s]{--list-counter-style:upper-alpha}.prose ol[type=a s]{--list-counter-style:lower-alpha}.prose ol[type=I]{--list-counter-style:upper-roman}.prose ol[type=i]{--list-counter-style:lower-roman}.prose ol[type=I s]{--list-counter-style:upper-roman}.prose ol[type=i s]{--list-counter-style:lower-roman}.prose ol[type="1"]{--list-counter-style:decimal}.prose ol>li{position:relative;padding-left:1.75em}.prose ol>li:before{content:counter(list-item,var(--list-counter-style,decimal)) ".";position:absolute;font-weight:400;color:#71717a;left:0}.prose ul>li{position:relative;padding-left:1.75em}.prose ul>li:before{content:"";position:absolute;background-color:#d4d4d8;border-radius:50%;width:.375em;height:.375em;top:.6875em;left:.25em}.prose hr{border-color:#e4e4e7;border-top-width:1px;margin-top:3em;margin-bottom:3em}.prose blockquote{font-weight:500;font-style:italic;color:#18181b;border-left-width:.25rem;border-left-color:#e4e4e7;quotes:"\201C""\201D""\2018""\2019";margin-top:1.6em;margin-bottom:1.6em;padding-left:1em}.prose blockquote p:first-of-type:before{content:open-quote}.prose blockquote p:last-of-type:after{content:close-quote}.prose h1{color:#18181b;font-weight:800;font-size:2.25em;margin-top:0;margin-bottom:.8888889em;line-height:1.1111111}.prose h2{color:#18181b;font-weight:700;font-size:1.5em;margin-top:2em;margin-bottom:1em;line-height:1.3333333;position:relative}.prose h3{font-size:1.25em;margin-top:1.6em;margin-bottom:.6em;line-height:1.6}.prose h3,.prose h4{color:#18181b;font-weight:600;position:relative}.prose h4{margin-top:1.5em;margin-bottom:.5em;line-height:1.5}.prose figure figcaption{color:#71717a;font-size:.875em;line-height:1.4285714;margin-top:.8571429em}.prose code{color:#a21caf;font-weight:600;font-size:.875em}.prose code:after,.prose code:before{content:"`"}.prose a code{color:#18181b}.prose pre{color:#e4e4e7;background-color:#fafafa;overflow-x:auto;font-size:.875em;line-height:1.7142857;margin-top:1.7142857em;margin-bottom:1.7142857em;border-radius:.375rem;padding:.8571429em 1.1428571em}.prose pre code{background-color:initial;border-width:0;border-radius:0;padding:0;font-weight:400;color:#3f3f46;font-size:inherit;font-family:inherit;line-height:inherit}.prose pre code:after,.prose pre code:before{content:none}.prose table{width:100%;table-layout:auto;text-align:left;margin-top:2em;margin-bottom:2em;font-size:.875em;line-height:1.7142857}.prose thead{color:#18181b;font-weight:600;border-bottom-width:1px;border-bottom-color:#d4d4d8}.prose thead th{vertical-align:bottom;padding-right:.5714286em;padding-bottom:.5714286em;padding-left:.5714286em}.prose tbody tr{border-bottom-width:1px;border-bottom-color:#e4e4e7}.prose tbody tr:last-child{border-bottom-width:0}.prose tbody td{vertical-align:top;padding:.5714286em}.prose{font-size:1rem;line-height:1.75}.prose p{margin-top:1.25em;margin-bottom:1.25em}.prose figure,.prose img,.prose video{margin-top:2em;margin-bottom:2em}.prose figure>*{margin-top:0;margin-bottom:0}.prose h2 code{font-size:.875em}.prose h3 code{font-size:.9em}.prose ol,.prose ul{margin-top:1.25em;margin-bottom:1.25em}.prose li{margin-top:.5em;margin-bottom:.5em}.prose>ul>li p{margin-top:.75em;margin-bottom:.75em}.prose>ul>li>:first-child{margin-top:1.25em}.prose>ul>li>:last-child{margin-bottom:1.25em}.prose>ol>li>:first-child{margin-top:1.25em}.prose>ol>li>:last-child{margin-bottom:1.25em}.prose ol ol,.prose ol ul,.prose ul ol,.prose ul ul{margin-top:.75em;margin-bottom:.75em}.prose h2+*,.prose h3+*,.prose h4+*,.prose hr+*{margin-top:0}.prose thead th:first-child{padding-left:0}.prose thead th:last-child{padding-right:0}.prose tbody td:first-child{padding-left:0}.prose tbody td:last-child{padding-right:0}.prose>:first-child{margin-top:0}.prose>:last-child{margin-bottom:0}.prose kbd{background-color:#e4e4e7;padding:.1rem .4rem;border-radius:.25rem;font-size:.9rem;font-weight:600}.icon svg{height:1em;width:1em}.prose .heading-anchor{position:absolute;top:0;text-decoration:none;opacity:0;width:1.1em;left:-1.1em}.prose .heading-anchor:hover{background-color:initial;--tw-text-opacity:1;color:rgba(124,58,237,var(--tw-text-opacity));text-decoration:underline}.prose .heading-anchor:focus,.prose .heading-anchor:hover,.prose h2:hover>.heading-anchor,.prose h3:hover>.heading-anchor,.prose h4:hover>.heading-anchor{opacity:1}.no-prose>p{margin-top:0}.no-prose>p:last-child{margin-bottom:0}.prose .chroma{border-radius:.375rem;--tw-bg-opacity:1;background-color:rgba(250,250,250,var(--tw-bg-opacity));--tw-text-opacity:1;color:rgba(63,63,70,var(--tw-text-opacity))}@media (prefers-color-scheme:dark){.prose .chroma{--tw-bg-opacity:1;background-color:rgba(63,63,70,var(--tw-bg-opacity));--tw-text-opacity:1;color:rgba(228,228,231,var(--tw-text-opacity))}}.chroma .lntd,.chroma .lntd pre{margin:0;border-style:none;padding:0;vertical-align:top}.chroma .lntable{display:block;width:auto;overflow:hidden;padding:.75rem 1rem;font-size:1rem;line-height:1.5rem;border-spacing:0}.chroma .hl{margin-left:-1rem;margin-right:-1rem;display:block;width:auto;--tw-bg-opacity:1;background-color:rgba(237,233,254,var(--tw-bg-opacity));padding-left:1rem;padding-right:1rem}@media (prefers-color-scheme:dark){.chroma .hl{--tw-bg-opacity:1;background-color:rgba(76,29,149,var(--tw-bg-opacity))}}.chroma .lntd .hl{margin:0;padding:0}.chroma .lnt{--tw-text-opacity:1;color:rgba(82,82,91,var(--tw-text-opacity))}@media (prefers-color-scheme:dark){.chroma .lnt{--tw-text-opacity:1;color:rgba(212,212,216,var(--tw-text-opacity))}}.chroma .lnt{margin-right:.4em;padding:0 .4em}.chroma .ln{--tw-text-opacity:1;color:rgba(82,82,91,var(--tw-text-opacity))}@media (prefers-color-scheme:dark){.chroma .ln{--tw-text-opacity:1;color:rgba(212,212,216,var(--tw-text-opacity))}}.chroma .ln{margin-right:.4em;padding:0 .4em}.chroma .k{--tw-text-opacity:1;color:rgba(124,58,237,var(--tw-text-opacity))}@media (prefers-color-scheme:dark){.chroma .k{--tw-text-opacity:1;color:rgba(196,181,253,var(--tw-text-opacity))}}.chroma .kc{font-weight:600;--tw-text-opacity:1;color:rgba(232,121,249,var(--tw-text-opacity))}@media (prefers-color-scheme:dark){.chroma .kc{--tw-text-opacity:1;color:rgba(217,70,239,var(--tw-text-opacity))}}.chroma .kd{--tw-text-opacity:1;color:rgba(124,58,237,var(--tw-text-opacity))}@media (prefers-color-scheme:dark){.chroma .kd{--tw-text-opacity:1;color:rgba(196,181,253,var(--tw-text-opacity))}}.chroma .kn{--tw-text-opacity:1;color:rgba(124,58,237,var(--tw-text-opacity))}@media (prefers-color-scheme:dark){.chroma .kn{--tw-text-opacity:1;color:rgba(196,181,253,var(--tw-text-opacity))}}.chroma .kp{--tw-text-opacity:1;color:rgba(124,58,237,var(--tw-text-opacity))}@media (prefers-color-scheme:dark){.chroma .kp{--tw-text-opacity:1;color:rgba(196,181,253,var(--tw-text-opacity))}}.chroma .kr{--tw-text-opacity:1;color:rgba(124,58,237,var(--tw-text-opacity))}@media (prefers-color-scheme:dark){.chroma .kr{--tw-text-opacity:1;color:rgba(196,181,253,var(--tw-text-opacity))}}.chroma .kt{--tw-text-opacity:1;color:rgba(232,121,249,var(--tw-text-opacity))}@media (prefers-color-scheme:dark){.chroma .kt{--tw-text-opacity:1;color:rgba(192,38,211,var(--tw-text-opacity))}}.chroma .n{--tw-text-opacity:1;color:rgba(112,26,117,var(--tw-text-opacity))}@media (prefers-color-scheme:dark){.chroma .n{--tw-text-opacity:1;color:rgba(245,208,254,var(--tw-text-opacity))}}.chroma .na{--tw-text-opacity:1;color:rgba(134,25,143,var(--tw-text-opacity))}@media (prefers-color-scheme:dark){.chroma .na{--tw-text-opacity:1;color:rgba(240,171,252,var(--tw-text-opacity))}}.chroma .nb{--tw-text-opacity:1;color:rgba(134,25,143,var(--tw-text-opacity))}@media (prefers-color-scheme:dark){.chroma .nb{--tw-text-opacity:1;color:rgba(240,171,252,var(--tw-text-opacity))}}.chroma .bp{--tw-text-opacity:1;color:rgba(134,25,143,var(--tw-text-opacity))}@media (prefers-color-scheme:dark){.chroma .bp{--tw-text-opacity:1;color:rgba(240,171,252,var(--tw-text-opacity))}}.chroma .nc{--tw-text-opacity:1;color:rgba(124,58,237,var(--tw-text-opacity))}@media (prefers-color-scheme:dark){.chroma .nc{--tw-text-opacity:1;color:rgba(196,181,253,var(--tw-text-opacity))}}.chroma .no{font-weight:600;--tw-text-opacity:1;color:rgba(232,121,249,var(--tw-text-opacity))}@media (prefers-color-scheme:dark){.chroma .no{--tw-text-opacity:1;color:rgba(217,70,239,var(--tw-text-opacity))}}.chroma .nd{--tw-text-opacity:1;color:rgba(112,26,117,var(--tw-text-opacity))}@media (prefers-color-scheme:dark){.chroma .nd{--tw-text-opacity:1;color:rgba(245,208,254,var(--tw-text-opacity))}}.chroma .ni{--tw-text-opacity:1;color:rgba(112,26,117,var(--tw-text-opacity))}@media (prefers-color-scheme:dark){.chroma .ni{--tw-text-opacity:1;color:rgba(245,208,254,var(--tw-text-opacity))}}.chroma .ne{font-weight:600;--tw-text-opacity:1;color:rgba(232,121,249,var(--tw-text-opacity))}@media (prefers-color-scheme:dark){.chroma .ne{--tw-text-opacity:1;color:rgba(217,70,239,var(--tw-text-opacity))}}.chroma .nf{--tw-text-opacity:1;color:rgba(192,38,211,var(--tw-text-opacity))}@media (prefers-color-scheme:dark){.chroma .nf{--tw-text-opacity:1;color:rgba(217,70,239,var(--tw-text-opacity))}}.chroma .fm{--tw-text-opacity:1;color:rgba(124,58,237,var(--tw-text-opacity))}@media (prefers-color-scheme:dark){.chroma .fm{--tw-text-opacity:1;color:rgba(196,181,253,var(--tw-text-opacity))}}.chroma .nl{--tw-text-opacity:1;color:rgba(112,26,117,var(--tw-text-opacity))}@media (prefers-color-scheme:dark){.chroma .nl{--tw-text-opacity:1;color:rgba(245,208,254,var(--tw-text-opacity))}}.chroma .nn{--tw-text-opacity:1;color:rgba(124,58,237,var(--tw-text-opacity))}@media (prefers-color-scheme:dark){.chroma .nn{--tw-text-opacity:1;color:rgba(196,181,253,var(--tw-text-opacity))}}.chroma .nx{--tw-text-opacity:1;color:rgba(134,25,143,var(--tw-text-opacity))}@media (prefers-color-scheme:dark){.chroma .nx{--tw-text-opacity:1;color:rgba(240,171,252,var(--tw-text-opacity))}}.chroma .py{color:#cebc3a}.chroma .nt{--tw-text-opacity:1;color:rgba(134,25,143,var(--tw-text-opacity))}@media (prefers-color-scheme:dark){.chroma .nt{--tw-text-opacity:1;color:rgba(240,171,252,var(--tw-text-opacity))}}.chroma .nv{--tw-text-opacity:1;color:rgba(232,121,249,var(--tw-text-opacity))}@media (prefers-color-scheme:dark){.chroma .nv{--tw-text-opacity:1;color:rgba(192,38,211,var(--tw-text-opacity))}}.chroma .vc{--tw-text-opacity:1;color:rgba(124,58,237,var(--tw-text-opacity))}@media (prefers-color-scheme:dark){.chroma .vc{--tw-text-opacity:1;color:rgba(196,181,253,var(--tw-text-opacity))}}.chroma .vg{font-weight:600;--tw-text-opacity:1;color:rgba(232,121,249,var(--tw-text-opacity))}@media (prefers-color-scheme:dark){.chroma .vg{--tw-text-opacity:1;color:rgba(217,70,239,var(--tw-text-opacity))}}.chroma .vi{--tw-text-opacity:1;color:rgba(232,121,249,var(--tw-text-opacity))}@media (prefers-color-scheme:dark){.chroma .vi{--tw-text-opacity:1;color:rgba(192,38,211,var(--tw-text-opacity))}}.chroma .vm{--tw-text-opacity:1;color:rgba(232,121,249,var(--tw-text-opacity))}@media (prefers-color-scheme:dark){.chroma .vm{--tw-text-opacity:1;color:rgba(192,38,211,var(--tw-text-opacity))}}.chroma .l{--tw-text-opacity:1;color:rgba(91,33,182,var(--tw-text-opacity))}@media (prefers-color-scheme:dark){.chroma .l{--tw-text-opacity:1;color:rgba(167,139,250,var(--tw-text-opacity))}}.chroma .ld{--tw-text-opacity:1;color:rgba(91,33,182,var(--tw-text-opacity))}@media (prefers-color-scheme:dark){.chroma .ld{--tw-text-opacity:1;color:rgba(167,139,250,var(--tw-text-opacity))}}.chroma .s{--tw-text-opacity:1;color:rgba(91,33,182,var(--tw-text-opacity))}@media (prefers-color-scheme:dark){.chroma .s{--tw-text-opacity:1;color:rgba(167,139,250,var(--tw-text-opacity))}}.chroma .sa{--tw-text-opacity:1;color:rgba(91,33,182,var(--tw-text-opacity))}@media (prefers-color-scheme:dark){.chroma .sa{--tw-text-opacity:1;color:rgba(167,139,250,var(--tw-text-opacity))}}.chroma .sb{--tw-text-opacity:1;color:rgba(91,33,182,var(--tw-text-opacity))}@media (prefers-color-scheme:dark){.chroma .sb{--tw-text-opacity:1;color:rgba(167,139,250,var(--tw-text-opacity))}}.chroma .sc{--tw-text-opacity:1;color:rgba(91,33,182,var(--tw-text-opacity))}@media (prefers-color-scheme:dark){.chroma .sc{--tw-text-opacity:1;color:rgba(167,139,250,var(--tw-text-opacity))}}.chroma .dl{--tw-text-opacity:1;color:rgba(91,33,182,var(--tw-text-opacity))}@media (prefers-color-scheme:dark){.chroma .dl{--tw-text-opacity:1;color:rgba(167,139,250,var(--tw-text-opacity))}}.chroma .sd{--tw-text-opacity:1;color:rgba(91,33,182,var(--tw-text-opacity))}@media (prefers-color-scheme:dark){.chroma .sd{--tw-text-opacity:1;color:rgba(167,139,250,var(--tw-text-opacity))}}.chroma .s2{--tw-text-opacity:1;color:rgba(91,33,182,var(--tw-text-opacity))}@media (prefers-color-scheme:dark){.chroma .s2{--tw-text-opacity:1;color:rgba(167,139,250,var(--tw-text-opacity))}}.chroma .se{font-weight:600;--tw-text-opacity:1;color:rgba(232,121,249,var(--tw-text-opacity))}@media (prefers-color-scheme:dark){.chroma .se{--tw-text-opacity:1;color:rgba(217,70,239,var(--tw-text-opacity))}}.chroma .sh{--tw-text-opacity:1;color:rgba(91,33,182,var(--tw-text-opacity))}@media (prefers-color-scheme:dark){.chroma .sh{--tw-text-opacity:1;color:rgba(167,139,250,var(--tw-text-opacity))}}.chroma .si{--tw-text-opacity:1;color:rgba(91,33,182,var(--tw-text-opacity))}@media (prefers-color-scheme:dark){.chroma .si{--tw-text-opacity:1;color:rgba(167,139,250,var(--tw-text-opacity))}}.chroma .sx{--tw-text-opacity:1;color:rgba(91,33,182,var(--tw-text-opacity))}@media (prefers-color-scheme:dark){.chroma .sx{--tw-text-opacity:1;color:rgba(167,139,250,var(--tw-text-opacity))}}.chroma .sr{font-weight:600;--tw-text-opacity:1;color:rgba(91,33,182,var(--tw-text-opacity))}@media (prefers-color-scheme:dark){.chroma .sr{--tw-text-opacity:1;color:rgba(167,139,250,var(--tw-text-opacity))}}.chroma .s1{--tw-text-opacity:1;color:rgba(91,33,182,var(--tw-text-opacity))}@media (prefers-color-scheme:dark){.chroma .s1{--tw-text-opacity:1;color:rgba(167,139,250,var(--tw-text-opacity))}}.chroma .ss{font-weight:600;--tw-text-opacity:1;color:rgba(91,33,182,var(--tw-text-opacity))}@media (prefers-color-scheme:dark){.chroma .ss{--tw-text-opacity:1;color:rgba(167,139,250,var(--tw-text-opacity))}}.chroma .m{--tw-text-opacity:1;color:rgba(232,121,249,var(--tw-text-opacity))}@media (prefers-color-scheme:dark){.chroma .m{--tw-text-opacity:1;color:rgba(192,38,211,var(--tw-text-opacity))}}.chroma .mb{--tw-text-opacity:1;color:rgba(232,121,249,var(--tw-text-opacity))}@media (prefers-color-scheme:dark){.chroma .mb{--tw-text-opacity:1;color:rgba(192,38,211,var(--tw-text-opacity))}}.chroma .mf{--tw-text-opacity:1;color:rgba(232,121,249,var(--tw-text-opacity))}@media (prefers-color-scheme:dark){.chroma .mf{--tw-text-opacity:1;color:rgba(192,38,211,var(--tw-text-opacity))}}.chroma .mh{--tw-text-opacity:1;color:rgba(232,121,249,var(--tw-text-opacity))}@media (prefers-color-scheme:dark){.chroma .mh{--tw-text-opacity:1;color:rgba(192,38,211,var(--tw-text-opacity))}}.chroma .mi{--tw-text-opacity:1;color:rgba(232,121,249,var(--tw-text-opacity))}@media (prefers-color-scheme:dark){.chroma .mi{--tw-text-opacity:1;color:rgba(192,38,211,var(--tw-text-opacity))}}.chroma .il{--tw-text-opacity:1;color:rgba(232,121,249,var(--tw-text-opacity))}@media (prefers-color-scheme:dark){.chroma .il{--tw-text-opacity:1;color:rgba(192,38,211,var(--tw-text-opacity))}}.chroma .mo{--tw-text-opacity:1;color:rgba(232,121,249,var(--tw-text-opacity))}@media (prefers-color-scheme:dark){.chroma .mo{--tw-text-opacity:1;color:rgba(192,38,211,var(--tw-text-opacity))}}.chroma .o{--tw-text-opacity:1;color:rgba(124,58,237,var(--tw-text-opacity))}.chroma .ow{font-weight:600;--tw-text-opacity:1;color:rgba(167,139,250,var(--tw-text-opacity))}@media (prefers-color-scheme:dark){.chroma .ow{--tw-text-opacity:1;color:rgba(124,58,237,var(--tw-text-opacity))}}.chroma .c{font-style:italic;--tw-text-opacity:1;color:rgba(161,161,170,var(--tw-text-opacity))}@media (prefers-color-scheme:dark){.chroma .c{--tw-text-opacity:1;color:rgba(113,113,122,var(--tw-text-opacity))}}.chroma .ch{font-weight:600;font-style:italic;--tw-text-opacity:1;color:rgba(161,161,170,var(--tw-text-opacity))}@media (prefers-color-scheme:dark){.chroma .ch{--tw-text-opacity:1;color:rgba(113,113,122,var(--tw-text-opacity))}}.chroma .cm{font-style:italic;--tw-text-opacity:1;color:rgba(161,161,170,var(--tw-text-opacity))}@media (prefers-color-scheme:dark){.chroma .cm{--tw-text-opacity:1;color:rgba(113,113,122,var(--tw-text-opacity))}}.chroma .c1{font-style:italic;--tw-text-opacity:1;color:rgba(161,161,170,var(--tw-text-opacity))}@media (prefers-color-scheme:dark){.chroma .c1{--tw-text-opacity:1;color:rgba(113,113,122,var(--tw-text-opacity))}}.chroma .cs{font-style:italic;--tw-text-opacity:1;color:rgba(161,161,170,var(--tw-text-opacity))}@media (prefers-color-scheme:dark){.chroma .cs{--tw-text-opacity:1;color:rgba(113,113,122,var(--tw-text-opacity))}}.chroma .cp{font-style:italic;--tw-text-opacity:1;color:rgba(161,161,170,var(--tw-text-opacity))}@media (prefers-color-scheme:dark){.chroma .cp{--tw-text-opacity:1;color:rgba(113,113,122,var(--tw-text-opacity))}}.chroma .cpf{font-style:italic;--tw-text-opacity:1;color:rgba(161,161,170,var(--tw-text-opacity))}@media (prefers-color-scheme:dark){.chroma .cpf{--tw-text-opacity:1;color:rgba(113,113,122,var(--tw-text-opacity))}}.chroma .ge{font-style:italic}.chroma .gh{font-weight:600;--tw-text-opacity:1;color:rgba(113,113,122,var(--tw-text-opacity))}.chroma .gi{--tw-text-opacity:1;color:rgba(91,33,182,var(--tw-text-opacity))}@media (prefers-color-scheme:dark){.chroma .gi{--tw-text-opacity:1;color:rgba(167,139,250,var(--tw-text-opacity))}}.chroma .go{--tw-text-opacity:1;color:rgba(91,33,182,var(--tw-text-opacity))}@media (prefers-color-scheme:dark){.chroma .go{--tw-text-opacity:1;color:rgba(167,139,250,var(--tw-text-opacity))}}.chroma .gp{--tw-text-opacity:1;color:rgba(91,33,182,var(--tw-text-opacity))}@media (prefers-color-scheme:dark){.chroma .gp{--tw-text-opacity:1;color:rgba(167,139,250,var(--tw-text-opacity))}}.chroma .gs{font-weight:600}.chroma .gt,.chroma .gu{--tw-text-opacity:1;color:rgba(113,113,122,var(--tw-text-opacity))}.chroma .gl{text-decoration:underline}.relative{position:relative}.m-auto{margin:auto}.-mx-2{margin-left:-.5rem;margin-right:-.5rem}.my-3{margin-top:.75rem}.mb-3,.my-3{margin-bottom:.75rem}.mt-8{margin-top:2rem}.mb-12{margin-bottom:3rem}.mt-12{margin-top:3rem}.mt-0{margin-top:0}.mt-6{margin-top:1.5rem}.mr-3{margin-right:.75rem}.-mt-1{margin-top:-.25rem}.ml-3{margin-left:.75rem}.\!mt-0{margin-top:0!important}.\!mb-0{margin-bottom:0!important}.mr-4{margin-right:1rem}.mr-2{margin-right:.5rem}.\!mb-9{margin-bottom:2.25rem!important}.block{display:block}.inline-block{display:inline-block}.flex{display:flex}.h-screen{height:100vh}.h-24{height:6rem}.w-36{width:9rem}.w-full{width:100%}.w-24{width:6rem}.max-w-full{max-width:100%}.max-w-7xl{max-width:80rem}.max-w-prose{max-width:65ch}.flex-grow{flex-grow:1}.cursor-default{cursor:default}.list-none{list-style-type:none}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.justify-between{justify-content:space-between}.overflow-hidden{overflow:hidden}.rounded-full{border-radius:9999px}.rounded-md{border-radius:.375rem}.border-dotted{border-style:dotted}.border-gray-400{--tw-border-opacity:1;border-color:rgba(161,161,170,var(--tw-border-opacity))}.border-gray-300{--tw-border-opacity:1;border-color:rgba(212,212,216,var(--tw-border-opacity))}.bg-primary-100{--tw-bg-opacity:1;background-color:rgba(237,233,254,var(--tw-bg-opacity))}.px-6{padding-left:1.5rem;padding-right:1.5rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-1{padding-left:.25rem;padding-right:.25rem}.py-10{padding-top:2.5rem;padding-bottom:2.5rem}.px-4{padding-left:1rem;padding-right:1rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.pt-8{padding-top:2rem}.pt-3{padding-top:.75rem}.pr-3{padding-right:.75rem}.text-right{text-align:right}.align-text-bottom{vertical-align:text-bottom}.text-4xl{font-size:2.25rem;line-height:2.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-2xl{font-size:1.5rem;line-height:2rem}.text-base{font-size:1rem;line-height:1.5rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xs{font-size:.75rem;line-height:1rem}.font-extrabold{font-weight:800}.font-bold{font-weight:700}.font-medium{font-weight:500}.font-semibold{font-weight:600}.leading-7{line-height:1.75rem}.leading-6{line-height:1.5rem}.text-gray-400{--tw-text-opacity:1;color:rgba(161,161,170,var(--tw-text-opacity))}.text-gray-800{--tw-text-opacity:1;color:rgba(39,39,42,var(--tw-text-opacity))}.text-gray-300{--tw-text-opacity:1;color:rgba(212,212,216,var(--tw-text-opacity))}.text-primary-400{--tw-text-opacity:1;color:rgba(167,139,250,var(--tw-text-opacity))}.first\:mt-8:first-child{margin-top:2rem}.hover\:text-primary-700:hover{--tw-text-opacity:1;color:rgba(109,40,217,var(--tw-text-opacity))}.hover\:underline:hover{text-decoration:underline}@media (prefers-color-scheme:dark){.dark\:prose-light{color:#a1a1aa}.dark\:prose-light a{color:#a78bfa}.dark\:prose-light strong{color:#fff}.dark\:prose-light ol>li:before{color:#a1a1aa}.dark\:prose-light ul>li:before{background-color:#52525b}.dark\:prose-light hr{border-color:#e4e4e7}.dark\:prose-light blockquote{color:#e4e4e7;border-left-color:#52525b}.dark\:prose-light h1,.dark\:prose-light h2,.dark\:prose-light h3,.dark\:prose-light h4{color:#fff}.dark\:prose-light figure figcaption{color:#a1a1aa}.dark\:prose-light code{color:#e879f9}.dark\:prose-light a code{color:#fff}.dark\:prose-light pre{color:#e4e4e7;background-color:#3f3f46}.dark\:prose-light pre code{color:#e4e4e7}.dark\:prose-light thead{color:#fff;border-bottom-color:#a1a1aa}.dark\:prose-light tbody tr{border-bottom-color:#52525b}.dark\:prose-light kbd{background-color:#3f3f46;color:#d4d4d8}.dark\:border-gray-600{--tw-border-opacity:1;border-color:rgba(82,82,91,var(--tw-border-opacity))}.dark\:bg-gray-800{--tw-bg-opacity:1;background-color:rgba(39,39,42,var(--tw-bg-opacity))}.dark\:bg-primary-900{--tw-bg-opacity:1;background-color:rgba(76,29,149,var(--tw-bg-opacity))}.dark\:text-gray-500{--tw-text-opacity:1;color:rgba(113,113,122,var(--tw-text-opacity))}.dark\:text-white{--tw-text-opacity:1;color:rgba(255,255,255,var(--tw-text-opacity))}.dark\:text-gray-300{--tw-text-opacity:1;color:rgba(212,212,216,var(--tw-text-opacity))}.dark\:text-gray-600{--tw-text-opacity:1;color:rgba(82,82,91,var(--tw-text-opacity))}.dark\:hover\:text-primary-400:hover{--tw-text-opacity:1;color:rgba(167,139,250,var(--tw-text-opacity))}}@media (min-width:640px){.sm\:mr-7{margin-right:1.75rem}.sm\:w-1\/2{width:50%}.sm\:flex-row{flex-direction:row}.sm\:px-14{padding-left:3.5rem;padding-right:3.5rem}.sm\:last\:mr-0:last-child{margin-right:0}}@media (min-width:768px){.md\:w-1\/3{width:33.333333%}.md\:px-24{padding-left:6rem;padding-right:6rem}}@media (min-width:1024px){.lg\:w-1\/4{width:25%}.lg\:px-32{padding-left:8rem;padding-right:8rem}}@media (min-width:1280px){.xl\:w-1\/5{width:20%}} \ No newline at end of file