/*
-----------------------------------------------
	vars – css custom-properties

	NOTE
	- some vars change inside media-queries!
	- under normal conditions, there's no need to touch these
-----------------------------------------------
*/
:root {
	--nav-h:       6rem;
	--top-offset:  6rem;
	--sidebar-w:  30rem;
	--sidebar-mid-w: 36rem;
	--sidebar-large-w: 48rem;
	--main-width: 80rem;
	--side-nav:  3.2rem;
	--side-page:   var(--side-nav);

	/* easings */
	--out-back:    cubic-bezier(0.175, 0.885, 0.32, 1.275);
}

@media screen and (min-width: 768px) {
	:root {
		--side-page:  14vw;
		--top-offset: 10rem;
		--side-nav: 4.8rem;
	}
}

/*	theme vars */
.theme-default {
	--back:       	#ffffff;
	--back-light: 	#f6fafd;
	--back-api: 		#eff8ff;
	--prime:      	#ff3e00;
	--second:     	#676778;
	--flash:      	#40b3ff;
	--heading:	var(--second);
	--text:      		#444;
	--sidebar-text: rgba(255, 255, 255, .75);
	--border-w:  		.3rem; /* border-width  */
	--border-r:  		.4rem; /* border-radius */
}

/*	typo vars */
.typo-default {
	--code-fs: 1.3rem;
	--h6:      1.4rem;
	--h5:      1.6rem;
	--h4:      1.8rem; /* default font-size */
	--h3:      2.6rem;
	--h2:        3rem;
	--h1:      3.2rem;
	--linemax:   42em; /* max line-length */
	--lh:  		 	  1.5; /* base line-height */
}

body {
	--font: 'Overpass', sans-serif;
	--font-mono: 'Fira Mono', monospace;
}


/*	fonts ---------------------------------- */
/* overpass-300normal - latin */
@font-face {
	font-family: 'Overpass';
	font-style: normal;
	font-weight: 300;
	src:
		local('Overpass Light '),
		local('Overpass-Light'),
		url('/fonts/overpass/overpass-latin-300.woff2') format('woff2');
}

/* overpass-600normal - latin */
@font-face {
	font-family: 'Overpass';
	font-style: normal;
	font-weight: 600;
	src:
		local('Overpass Bold '),
		local('Overpass-Bold'),
		url('/fonts/overpass/overpass-latin-600.woff2') format('woff2');
}

/* fira-mono-400normal - latin */
@font-face {
	font-family: 'Fira Mono';
	font-style: normal;
	font-weight: 400;
	src:
		local('Fira Mono Regular '),
		local('Fira Mono-Regular'),
		url('/fonts/fira-mono/fira-mono-latin-400.woff2') format('woff2');
}

/*	base reset ----------------------------- */
html {
	font-size: 62.5%;
	-webkit-text-size-adjust: 100%;
	-ms-overflow-style: -ms-autohiding-scrollbar;
	box-sizing: border-box;
	border-collapse: collapse;
}

html,
body,
#sapper {
	width: 100%;
	height: 100%;
}

* {
	box-sizing: inherit;
	margin: 0;
	padding: 0;
}

/*	link reset ----------------------------- */
a {
	text-decoration: none;
	cursor: pointer;
	color: inherit;
}

a:hover, a:active { color: var(--flash) }

/*
-----------------------------------------------
	global styles
-----------------------------------------------
*/

/*	typography ----------------------------- */
body {
	font: 300 var(--h4)/var(--lh) var(--font);
	background-color: var(--back);
	color: var(--text);

	/* default spacing of Overpass is a bit too airy */
	/* letter-spacing: -.013em; */
}

h1, h2, h3, h4, h5, h6, blockquote {
	position: relative;
	margin: 0;
	color: var(--heading);
}

/* h1, h2, h3, h4, h5, h6 { font-weight: 600 } */
h6 { font-size: var(--h6) }
h5 { font-size: var(--h5) }
h4 { font-size: var(--h4) }
h3 { font-size: var(--h3) }
h2 { font-size: var(--h2) }
h1 { font-size: var(--h1) }

h1, h2 {
	font-family: var(--font);
	line-height: 1.25;
}

h3 { font-weight: 300 }

p, ol, ul {
	margin: 0 0 1em 0;
}

.b, b, strong { font-weight: 600 }

tt, code, kbd, samp {
	font: 400 var(--code-fs)/1.7 var(--font-mono);
}

code {
	position: relative;
	border-radius: .3em;
	white-space: nowrap;
	color: #444;
	-webkit-font-smoothing: initial;
}

pre code {
	top: 0;
	white-space: inherit;
	background-color: none;
}

/* sync CodeMirror with prism  */
.CodeMirror {
	font-size: var(--code-fs) !important;
}

::selection {
	background: var(--flash);
	color: white;
}

/*	opinionated styles --------------------- */

li:not(.white) > h2 {
	color: var(--second)
}

blockquote {
	position: relative;
	margin: 1.6rem 0 2.4rem;
	padding: 2rem 2.4rem 1.8rem 2.4rem;
	border-radius: var(--border-r);
	font-family: var(--font);
	max-width: var(--linemax);
}

blockquote p {
	font-size: var(--h5);
}

blockquote :last-child {
	margin: 0;
}

/*  buttons -------------------------------- */
button {
	font-family: inherit;
	font-size: inherit;
	background-color: transparent;
	border: none;
	color: currentColor;
	cursor: pointer;
}

button[disabled],
.btn[disabled],
.btn:hover[disabled] {
	opacity: .55;
	pointer-events: none;
}

button > svg,
.btn > svg {
	position: relative;
	top: -.1rem;
	width: 2rem !important;
	height: 2rem !important;
	stroke: currentColor !important;
}

/*  reset ------- */
.btn {
	--btn-h: 4rem;
	--btn-outline: .2rem;
	--btn-font: var(--font);
	--btn-calc-h: calc(var(--btn-h) - var(--btn-outline) * 2);
	--btn-hover: linear-gradient(to top, rgba(0,0,0,.07), rgba(0,0,0,.07));

	position: relative;
	margin: 0 .8rem .8rem 0;
	vertical-align: middle;
	white-space: nowrap;
	display: inline-block;
	zoom: 1;
	border: none transparent;
	font: var(--h4) var(--btn-font);
	border-radius: var(--border-r);
	color: currentColor;
	cursor: pointer;
}

/*  default */
.btn {
	line-height: var(--btn-h);
	height: var(--btn-h);
	padding: 0 1.6rem;
	transition: all .1s;
}

.btn:hover  {
	transform: scale(.98);
	mix-blend-mode: multiply;
	background-image: var(--btn-hover);
}

/*  optional */
.btn[outline] {
	line-height: var(--btn-calc-h);
	height: var(--btn-calc-h);
	border: var(--btn-outline) solid currentColor;
	background-color: white;
	color: currentColor;
}

/*  links ------------------------------------- */
a {
	position: relative;
	padding: 0 0 1px 0;
	border-bottom: 1px solid currentColor;
	user-select: none;
	color: var(--prime);
	transition: color .2s, border .2s, padding .2s;
}

a:hover  {
	color: var(--flash);
}

a:hover {
	padding: 0;
	border-bottom: 2px solid currentColor;
}

a.no-underline {
	border-bottom: none;
	padding: 0;
}

/* a:hover:not(.disabled) > .icon { stroke: var(--flash) } */

/*  lists ---------------------------------- */
.listify ol,
.listify ul {
	--list-padding: 2.9rem;

	list-style: none;
	color: currentColor;
	margin-left: var(--list-padding);
}

.listify ol > li,
.listify ul > li {
	max-width: calc(var(--linemax) - var(--list-padding));
	line-height: 1.5;
	margin: 0 0 0.4rem 0;
}

.listify ul > li:before {
	content: '';
	position: absolute;
	margin-top: 1.1rem;
	margin-left: -1.8rem;
	background-color: var(--second);
	width: .6rem;
	height: .6rem;
	border-radius: 2px;
	opacity: 0.7;
}

.listify ol { list-style: decimal }

/*  tables --------------------------------- */
table {
	width: 100%;
	font-size: var(--h5);
}

td, th {
	text-align: left;
	border-bottom: 1px solid #eee;
	padding: 0.4rem 0.8rem 0.4rem 0;
}

table code, table span {
	white-space: pre;
}

/*	grid ----------------------------------- */
.grid, .grid.half {
	display: grid;
	grid-gap: 2.4rem;
	grid-template-columns: 1fr;
	align-items: center;
}

.grid.stretch { align-items: stretch }

.grid > .cols-2,
.grid > .cols-3 { grid-column: span 1 }

@media screen and (min-width: 840px) {
	.grid.half,
	.grid { grid-template-columns: repeat(2, 1fr) }
	.grid > .cols-2,
	.grid > .cols-3 { grid-column: span 2 }
}

@media screen and (min-width: 1100px) {
	.grid { grid-template-columns: repeat(3, 1fr) }
	.grid > .cols-2 { grid-column: span 2 }
	.grid > .cols-3 { grid-column: span 3 }
}

/*	helper styles -------------------------- */
.flex-auto { flex: 1 0 auto }

.py0 {
	padding-top: 0 !important;
	padding-bottom: 0 !important;
}

.legend, figcaption, .post aside {
	max-width: none;
	margin: 0 auto;
	padding: 1.6rem 0 0 .8rem;
	font: 1.2rem/1.6 var(--font-mono);
}

.filename {
	display: inline-block;
	padding: 1.6rem 0 0 1rem;
	font: var(--h6) var(--font-mono);
}

.box {
	padding: 2.4rem 3.2rem;
	border-radius: var(--border-r);
}

/*	theme colors --------------------------- */
.prime      { color: var(--prime) !important }
.second     { color: var(--second) !important }
.flash      { color: var(--flash) !important }
.black      { color: black !important }
.white      { color: white !important }

.back       { background-color: var(--back) !important }
.back-light { background-color: var(--back-light) !important }
.bg-prime   { background-color: var(--prime) !important }
.bg-second  { background-color: var(--second) !important }
.bg-flash   { background-color: var(--flash) !important }

/*	inputs --------------------------------- */
input[type="checkbox"] {
	/* display: block; */
	position: relative;
	height: 1em;
	width: calc(100% - 0.6em);
	max-width: 2em;
	top: -2px;
	border-radius: 0.5em;
	-webkit-appearance: none;
	appearance: none;
	outline: none;
	border: transparent;
	margin: 0 0.6em 0 0;
}

input[type="checkbox"]::before {
	content: "";
	position: absolute;
	display: block;
	height: 100%;
	width: 100%;
	padding: 2px;
	border-radius: 1em;
	top: 0;
	left: 0;
	background: var(--second);
	/* box-sizing: border-box; */
	box-sizing: content-box;
}

input[type="checkbox"]:checked::before {
	background: var(--prime);
}

input[type="checkbox"]::after {
	content: "";
	position: absolute;
	display: block;
	height: 1em;
	width: 1em;
	top: 2px;
	left: 2px;
	border-radius: 1em;
	background: white;
	box-shadow: 0 0px 1px rgba(0,0,0,.4), 0 4px 2px rgba(0,0,0,.1);
	-webkit-transition: background .2s ease-out, left .2s ease-out;
}

input[type="checkbox"]:checked::after {
	left: calc(100% - 1em + 2px);
}
main.svelte-1ohgwbo{position:relative;margin:0 auto;padding:var(--nav-h) 0 0 0;overflow-x:hidden}
.container.svelte-u533s9{padding:var(--top-offset) var(--side-nav) 6rem var(--side-nav)}h1.svelte-u533s9,p.svelte-u533s9{margin:0 auto }h1.svelte-u533s9{font-size:2.8em;font-weight:300;margin:0 0 0.5em 0}p.svelte-u533s9{margin:1em auto }.error.svelte-u533s9{background-color:#da106e;color:white;padding:12px 16px;font:600 16px/1.7 var(--font);border-radius:2px}
.back-light{--text:hsl(36, 3%, 44%)}.examples.svelte-4powvv{background:var(--second);color:white;overflow:hidden}
.examples-container.svelte-1eucojc{position:relative;height:calc(100vh - var(--nav-h));overflow:hidden;padding:0 0 42px 0;box-sizing:border-box}.viewport.svelte-1eucojc{display:grid;width:300%;height:100%;grid-template-columns:33.333% 66.666%;transition:transform .3s;grid-auto-rows:100%}.repl-container.loading.svelte-1eucojc{opacity:0.6}.repl-container.svelte-1eucojc .tab-content,.repl-container.svelte-1eucojc .tab-content.visible{pointer-events:all;opacity:1}.repl-container.svelte-1eucojc .tab-content{visibility:hidden}.repl-container.svelte-1eucojc .tab-content.visible{visibility:visible}.offset-1.svelte-1eucojc{transform:translate(-33.333%, 0)}.offset-2.svelte-1eucojc{transform:translate(-66.666%, 0)}@media(min-width: 768px){.examples-container.svelte-1eucojc{padding:0 }.viewport.svelte-1eucojc{width:100%;height:100%;display:grid;grid-template-columns:var(--sidebar-mid-w) auto;grid-auto-rows:100%;transition:none}.offset-1.svelte-1eucojc,.offset-2.svelte-1eucojc{transform:none}}
.apps.svelte-1a795bd{padding:var(--top-offset) var(--side-nav) 6rem var(--side-nav);max-width:var(--main-width);margin:0 auto}header.svelte-1a795bd{margin:0 0 1em 0}h1.svelte-1a795bd{font-size:4rem;font-weight:400}.user.svelte-1a795bd{display:flex;padding:0 0 0 3.2rem;position:relative;margin:1rem 0 5rem 0;color:var(--text)}.avatar.svelte-1a795bd{position:absolute;left:0;top:0.1rem;width:2.4rem;height:2.4rem;border:1px solid rgba(0,0,0,0.3);border-radius:0.2rem}ul.svelte-1a795bd{list-style:none}li.svelte-1a795bd{margin:0 0 1em 0}h2.svelte-1a795bd{color:var(--text);font-size:var(--h3);font-weight:400}li.svelte-1a795bd a.svelte-1a795bd{border:none}li.svelte-1a795bd a:hover h2.svelte-1a795bd{color:var(--flash)}li.svelte-1a795bd span.svelte-1a795bd{font-size:14px;color:#999}
.posts.svelte-1v4cdw2{grid-template-columns:1fr 1fr;grid-gap:1em;min-height:calc(100vh - var(--nav-h));padding:var(--top-offset) var(--side-nav) 6rem var(--side-nav);max-width:var(--main-width);margin:0 auto}h2.svelte-1v4cdw2{display:inline-block;margin:3.2rem 0 0.4rem 0;color:var(--text);max-width:18em;font-size:var(--h3);font-weight:400}.post.svelte-1v4cdw2:first-child{margin:0 0 2rem 0;padding:0 0 4rem 0;border-bottom:var(--border-w) solid #6767785b}.post.svelte-1v4cdw2:first-child h2.svelte-1v4cdw2{font-size:4rem;font-weight:400;color:var(--second)}.post.svelte-1v4cdw2:first-child::before,.post.svelte-1v4cdw2:nth-child(2)::before{content:'Latest post • ' attr(data-pubdate);color:var(--flash);font-size:var(--h6);font-weight:400;letter-spacing:.05em;text-transform:uppercase}.post.svelte-1v4cdw2:nth-child(2)::before{content:'Older posts'}.post.svelte-1v4cdw2 p.svelte-1v4cdw2{font-size:var(--h5);max-width:30em;color:var(--second)}.post.svelte-1v4cdw2>a.svelte-1v4cdw2{display:block }.posts.svelte-1v4cdw2 a.svelte-1v4cdw2:hover,.posts.svelte-1v4cdw2 a:hover>h2.svelte-1v4cdw2{color:var(--flash)
	}
.post.svelte-193hhtk{padding:var(--top-offset) var(--side-nav) 6rem var(--side-nav);max-width:var(--main-width);margin:0 auto}h1.svelte-193hhtk{font-size:4rem;font-weight:400}.standfirst.svelte-193hhtk{font-size:var(--h4);color:var(--second);margin:0 0 1em 0}.byline.svelte-193hhtk{margin:0 0 6rem 0;padding:1.6rem 0 0 0;border-top:var(--border-w) solid #6767785b;font-size:var(--h6);text-transform:uppercase}.post.svelte-193hhtk h1.svelte-193hhtk{color:var(--second);max-width:20em;margin:0 0 .8rem 0}.post.svelte-193hhtk h2{margin:2em 0 0.5em 0;color:var(--text);font-size:var(--h3);font-weight:300}.post.svelte-193hhtk figure{margin:1.6rem 0 3.2rem 0}.post.svelte-193hhtk figure img{max-width:100%}.post.svelte-193hhtk figcaption{color:var(--second);text-align:left}.post.svelte-193hhtk video{width:100%}.post.svelte-193hhtk blockquote{max-width:none;border-left:4px solid #eee;background:#f9f9f9;border-radius:0 var(--border-r) var(--border-r) 0}.post.svelte-193hhtk code{padding:.3rem .8rem .3rem;margin:0 0.2rem;top:-.1rem;background:var(--back-api)}.post.svelte-193hhtk pre code{padding:0;margin:0;top:0;background:transparent}.post.svelte-193hhtk aside{float:right;margin:0 0 1em 1em;width:16rem;color:var(--second);z-index:2}.post.svelte-193hhtk .max{width:100%}.post.svelte-193hhtk iframe{width:100%;height:420px;margin:2em 0;border-radius:var(--border-r);border:0.8rem solid var(--second)}.post.svelte-193hhtk .anchor{top:calc((var(--h3) - 24px) / 2)}.post.svelte-193hhtk a{padding:0;transition:none}.post.svelte-193hhtk a:not(:hover){border:none}@media(max-width: 768px){.post.svelte-193hhtk .anchor{transform:scale(0.6);opacity:1;left:-1.0em}}@media(min-width: 910px){.post.svelte-193hhtk .max{width:calc(100vw - 2 * var(--side-nav));margin:0 calc(var(--main-width) / 2 - 50vw);text-align:center}.post.svelte-193hhtk .max>*{width:100%;max-width:1200px}.post.svelte-193hhtk iframe{width:100%;max-width:1100px;margin:2em auto}}
.repl-outer.svelte-icca0y{position:fixed;top:0;left:0;width:100%;height:100%;background-color:var(--back);overflow:hidden;box-sizing:border-box;--pane-controls-h:4.2rem;display:flex;flex-direction:column}
.faqs.svelte-1ty6sog{grid-template-columns:1fr 1fr;grid-gap:1em;min-height:calc(100vh - var(--nav-h));padding:var(--top-offset) var(--side-nav) 6rem var(--side-nav);max-width:var(--main-width);margin:0 auto}h2.svelte-1ty6sog{display:inline-block;margin:3.2rem 0 1rem 0;color:var(--text);max-width:18em;font-size:var(--h3);font-weight:400}.faq.svelte-1ty6sog:first-child{margin:0 0 2rem 0;padding:0 0 4rem 0;border-bottom:var(--border-w) solid #6767785b}.faq.svelte-1ty6sog:first-child h2.svelte-1ty6sog{font-size:4rem;font-weight:400;color:var(--second)}.faq.svelte-1ty6sog p.svelte-1ty6sog{font-size:var(--h5);max-width:30em;color:var(--second)}.faqs .faq ul{margin-left:3.2rem}.faqs.svelte-1ty6sog .anchor{top:calc((var(--h3) - 24px) / 2)}@media(max-width: 768px){.faqs.svelte-1ty6sog .anchor{transform:scale(0.6);opacity:1;left:-1.0em}}
.tutorial-outer.svelte-163pr1f{position:relative;height:calc(100vh - var(--nav-h));overflow:hidden;padding:0 0 42px 0;box-sizing:border-box}.viewport.svelte-163pr1f{display:grid;width:300%;height:100%;grid-template-columns:33.333% 66.666%;transition:transform .3s;grid-auto-rows:100%}.offset-1.svelte-163pr1f{transform:translate(-33.333%, 0)}.offset-2.svelte-163pr1f{transform:translate(-66.666%, 0)}@media(min-width: 768px){.tutorial-outer.svelte-163pr1f{padding:0 }.viewport.svelte-163pr1f{width:100%;height:100%;display:grid;grid-template-columns:minmax(33.333%, var(--sidebar-large-w)) auto;grid-auto-rows:100%;transition:none}.offset-1.svelte-163pr1f,.offset-2.svelte-163pr1f{transform:none}}.tutorial-text.svelte-163pr1f{display:flex;flex-direction:column;height:100%;border-right:1px solid var(--second);background-color:var(--second);color:var(--sidebar-text)}.chapter-markup.svelte-163pr1f{padding:3.2rem 4rem;overflow:auto;flex:1;height:0}.chapter-markup.svelte-163pr1f h2{margin:4rem 0 1.6rem 0;font-size:var(--h3);line-height:1;font-weight:400;color:white}.chapter-markup.svelte-163pr1f h2:first-child{margin-top:.4rem}.chapter-markup.svelte-163pr1f a{color:var(--sidebar-text)}.chapter-markup.svelte-163pr1f a:hover{color:white}.chapter-markup.svelte-163pr1f ul{padding:0 0 0 2em}.chapter-markup.svelte-163pr1f blockquote{background-color:rgba(0,0,0,.17);color:var(--sidebar-text)}.chapter-markup.svelte-163pr1f::-webkit-scrollbar{background-color:var(--second);width:8px}.chapter-markup.svelte-163pr1f::-webkit-scrollbar-thumb{background-color:rgba(255,255,255,.7);border-radius:1em;outline:1px solid green}.chapter-markup.svelte-163pr1f p>code,.chapter-markup.svelte-163pr1f ul code{color:var(--sidebar-text);background:rgba(0,0,0,.12);padding:.2em .4em .3em;white-space:nowrap;position:relative;top:-0.1em}.controls.svelte-163pr1f{border-top:1px solid rgba(255,255,255,.15);padding:1em 0 0 0;display:flex}.show.svelte-163pr1f{background:var(--prime);padding:.3em .7em;border-radius:var(--border-r);top:.1em;position:relative;font-size:var(--h5);font-weight:300;color:rgba(255,255,255,0.7)}.show.svelte-163pr1f:hover{color:white}a.next.svelte-163pr1f{padding-right:1.2em;background:no-repeat 100% 50% url(/icons/arrow-right.svg);background-size:1em 1em;margin-left:auto}.improve-chapter.svelte-163pr1f{padding:1em 0 .5em 0}.improve-chapter.svelte-163pr1f a.svelte-163pr1f{padding:0 .1em;font-size:14px;text-decoration:none;opacity:.3;padding-left:1.2em;background:no-repeat 0 50% url(/icons/edit.svg);background-size:1em 1em}.improve-chapter.svelte-163pr1f a.svelte-163pr1f:hover{opacity:1}
.repl-outer.svelte-13ln553{position:relative;height:calc(100vh - var(--nav-h));--app-controls-h:5.6rem;--pane-controls-h:4.2rem;overflow:hidden;background-color:var(--back);padding:var(--app-controls-h) 0 0 0;box-sizing:border-box;display:flex;flex-direction:column}.viewport.svelte-13ln553{width:100%;height:100%}.mobile.svelte-13ln553 .viewport.svelte-13ln553{width:200%;height:calc(100% - 42px);transition:transform 0.3s;flex:1}.mobile.svelte-13ln553 .offset.svelte-13ln553{transform:translate(-50%, 0)}.viewport.svelte-13ln553 .tab-content,.viewport.svelte-13ln553 .tab-content.visible{pointer-events:all;opacity:1}.viewport.svelte-13ln553 .tab-content{visibility:hidden}.viewport.svelte-13ln553 .tab-content.visible{visibility:visible}.zen-mode.svelte-13ln553{position:fixed;width:100%;height:100%;top:0;z-index:111}.pane.svelte-13ln553{width:100%;height:100% }.loading.svelte-13ln553{text-align:center;color:var(--second);font-weight:400;margin:2em 0 0 0;opacity:0;animation:svelte-13ln553-fade-in .4s;animation-delay:.2s;animation-fill-mode:both}@keyframes svelte-13ln553-fade-in{0%{opacity:0 }100%{opacity:1 }}.input.svelte-13ln553{padding:2.4em 0 0 0}
.container.svelte-177xqak{position:relative;width:100%;height:100%}.container.svelte-177xqak section{position:relative;padding:42px 0 0 0;height:100%;box-sizing:border-box}.container.svelte-177xqak section>*:first-child{position:absolute;top:0;left:0;width:100%;height:42px;box-sizing:border-box}.container.svelte-177xqak section>*:last-child{width:100%;height:100%}
.progress-container.svelte-2v07tr{position:absolute;top:0;left:0;width:100%;height:4px;z-index:999}.progress.svelte-2v07tr{position:absolute;left:0;top:0;height:100%;background-color:var(--prime);transition:width 0.4s}.fade.svelte-2v07tr{position:fixed;width:100%;height:100%;background-color:rgba(255,255,255,0.3);pointer-events:none;z-index:998;animation:svelte-2v07tr-fade 0.4s}@keyframes svelte-2v07tr-fade{from{opacity:0 }to{opacity:1 }}
.logos.svelte-b0oypy{margin:1em 0 0 0;display:flex;flex-wrap:wrap}a.svelte-b0oypy{height:40px;margin:0 0.5em 0.5em 0;display:flex;align-items:center;border:2px solid var(--second);padding:5px 10px;border-radius:20px;color:var(--text)}.add-yourself.svelte-b0oypy{color:var(--prime)}picture.svelte-b0oypy,img.svelte-b0oypy{height:100%}@media(min-width: 540px){a.svelte-b0oypy{height:60px;padding:10px 20px;border-radius:30px}}
.contributor.svelte-1a6945s{width:2.4em;height:2.4em;border-radius:50%;text-indent:-9999px;display:inline-block;background:no-repeat url(/contributors.jpg);background-size:auto 102%;margin:0 0.5em 0.5em 0;border:2px solid var(--second)}
.example.svelte-1t516hp{width:100%}.example.svelte-1t516hp a{color:inherit}.example.svelte-1t516hp>p{margin:4.4rem 2.4rem 2.4rem 0}.repl-container.svelte-1t516hp{width:100%;height:420px;border-radius:var(--border-r);overflow:hidden}@media(min-width: 920px){.example.svelte-1t516hp{display:grid;grid-template-columns:1fr 3fr;grid-gap:0.5em;align-items:start}}
.toggle.svelte-wzy9oi{position:fixed;bottom:0;width:100%;height:4.6rem;display:flex;justify-content:center;align-items:center;border-top:1px solid var(--second);background-color:white}button.svelte-wzy9oi{margin:0 .15em;width:4em;height:1em;padding:.2em .4em .3em;border-radius:var(--border-r);line-height:1;box-sizing:content-box;color:#888;border:1px solid var(--back-light)}.selected.svelte-wzy9oi{background-color:var(--prime);color:white}
.examples-toc.svelte-agypo9{overflow-y:auto;height:100%;border-right:1px solid var(--second);background-color:var(--second);color:white;padding:3rem 3rem 0 3rem}.examples-toc.svelte-agypo9 li.svelte-agypo9{display:block;line-height:1.2;margin:0 0 4.8rem 0}.section-title.svelte-agypo9{display:block;padding:0 0 0.8rem 0;font:400 var(--h6) var(--font);text-transform:uppercase;letter-spacing:0.12em;font-weight:700}div.svelte-agypo9{display:flex;flex-direction:row;padding:0.2rem 3rem;margin:0 -3rem}div.active.svelte-agypo9{background:rgba(0, 0, 0, 0.15) calc(100% - 3rem) 47% no-repeat
			url(/icons/arrow-right.svg);background-size:1em 1em;color:white}div.active.loading.svelte-agypo9{background:rgba(0, 0, 0, 0.1) calc(100% - 3rem) 47% no-repeat
			url(/icons/loading.svg);background-size:1em 1em;color:white}a.svelte-agypo9{display:flex;flex:1 1 auto;position:relative;color:var(--sidebar-text);border-bottom:none;font-size:1.6rem;align-items:center;justify-content:start;padding:0}a.svelte-agypo9:hover{color:white}.repl-link.svelte-agypo9{flex:0 1 auto;font-size:1.2rem;font-weight:700;margin-right:2.5rem}.thumbnail.svelte-agypo9{background-color:white;object-fit:contain;width:5rem;height:5rem;border-radius:2px;box-shadow:1px 1px 3px rgba(0, 0, 0, 0.13);margin:0.2em 0.5em 0.2em 0}
.repl-outer.svelte-247fff{position:relative;top:0;left:0;width:100%;height:100%;display:flex;flex-direction:column;background-color:var(--back);overflow:hidden;box-sizing:border-box;--pane-controls-h:4.2rem}.viewport.svelte-247fff{width:100%;height:100%;flex:1}.mobile.svelte-247fff .viewport.svelte-247fff{width:200%;height:calc(100% - 42px);transition:transform 0.3s}.mobile.svelte-247fff .offset.svelte-247fff{transform:translate(-50%, 0)}
.input-output-toggle.svelte-14svxs3{display:grid;user-select:none;flex:0;grid-template-columns:1fr 40px 1fr;grid-gap:0.5em;align-items:center;width:100%;height:42px;border-top:1px solid var(--second)}input.svelte-14svxs3{display:block }span.svelte-14svxs3{color:#ccc }.active.svelte-14svxs3{color:#555 }
nav.svelte-faku86{display:grid;grid-template-columns:2.5em 1fr 2.5em;border-bottom:1px solid rgba(255,255,255,0.1)}div.svelte-faku86{position:relative;padding:1em 0.5em;font-weight:300;font-size:var(--h6);color:white}a.svelte-faku86{display:block;padding:0.7em 0;text-align:center;opacity:0.75;color:white}a.svelte-faku86:hover{opacity:1}a.disabled.svelte-faku86,a.disabled.svelte-faku86:hover,a.disabled.svelte-faku86:active{color:white;opacity:0.3}span.svelte-faku86{white-space:nowrap;position:relative;top:0.3em}strong.svelte-faku86{opacity:0.7 }select.svelte-faku86{position:absolute;left:0;top:0;width:100%;height:100%;opacity:0.0001;cursor:pointer;-webkit-appearance:none}
.container.svelte-1k0d9r4{position:relative;width:100%;height:100%}.pane.svelte-1k0d9r4{position:relative;float:left;width:100%;height:100%;overflow:auto}.mousecatcher.svelte-1k0d9r4{position:absolute;left:0;top:0;width:100%;height:100%;background:rgba(255,255,255,.01)}.divider.svelte-1k0d9r4{position:absolute;z-index:10;display:none}.divider.svelte-1k0d9r4::after{content:'';position:absolute;background-color:var(--second)}.horizontal.svelte-1k0d9r4{padding:0 8px;width:0;height:100%;cursor:ew-resize}.horizontal.svelte-1k0d9r4::after{left:8px;top:0;width:1px;height:100%}.vertical.svelte-1k0d9r4{padding:8px 0;width:100%;height:0;cursor:ns-resize}.vertical.svelte-1k0d9r4::after{top:8px;left:0;width:100%;height:1px}.left.svelte-1k0d9r4,.right.svelte-1k0d9r4,.divider.svelte-1k0d9r4{display:block}.left.svelte-1k0d9r4,.right.svelte-1k0d9r4{height:100%;float:left}.top.svelte-1k0d9r4,.bottom.svelte-1k0d9r4{position:absolute;width:100%}.top.svelte-1k0d9r4{top:0}.bottom.svelte-1k0d9r4{bottom:0}
.editor-wrapper.svelte-m7nlxn{z-index:5;background:var(--back-light);display:flex;flex-direction:column}.editor.svelte-m7nlxn{height:0;flex:1 1 auto}.info.svelte-m7nlxn{background-color:var(--second);max-height:50%;overflow:auto}.columns .editor-wrapper.svelte-m7nlxn{padding-right:8px;height:auto}
.app-controls.svelte-1xhvee5{position:absolute;top:0;left:0;width:100%;height:var(--app-controls-h);display:flex;align-items:center;justify-content:space-between;padding:.6rem var(--side-nav);background-color:var(--second);color:white;white-space:nowrap;flex:0}.icon.svelte-1xhvee5{position:relative;top:-0.1rem;display:inline-block;padding:0.2em;opacity:.7;transition:opacity .3s;font-family:var(--font);font-size:1.6rem;color:white;line-height:1;margin:0 0 0 0.2em}.icon.svelte-1xhvee5:hover{opacity:1 }.icon.svelte-1xhvee5:disabled{opacity:.3 }.icon[title^='fullscreen'].svelte-1xhvee5{display:none }input.svelte-1xhvee5{background:transparent;border:none;color:currentColor;font-family:var(--font);font-size:1.6rem;opacity:0.7;outline:none;flex:1}input.svelte-1xhvee5:focus{opacity:1}button.svelte-1xhvee5 span.svelte-1xhvee5{display:none}@media(min-width: 600px){.icon[title^='fullscreen'].svelte-1xhvee5{display:inline }button.svelte-1xhvee5 span.svelte-1xhvee5{display:inline-block}}
.component-selector.svelte-cghqrp{position:relative;border-bottom:1px solid #eee;overflow:hidden}.file-tabs.svelte-cghqrp{border:none;margin:0;white-space:nowrap;overflow-x:auto;overflow-y:hidden;height:10em}.file-tabs.svelte-cghqrp .button.svelte-cghqrp,.file-tabs.svelte-cghqrp button.svelte-cghqrp{position:relative;display:inline-block;font:400 12px/1.5 var(--font);background:white;border:none;border-bottom:3px solid transparent;padding:12px 14px 8px 16px;margin:0;color:#999;border-radius:0;cursor:pointer}.file-tabs.svelte-cghqrp .button.active.svelte-cghqrp{color:#333;border-bottom:3px solid var(--prime)}.editable.svelte-cghqrp,.uneditable.svelte-cghqrp,.input-sizer.svelte-cghqrp,input.svelte-cghqrp{display:inline-block;position:relative;line-height:1}.input-sizer.svelte-cghqrp{color:#ccc}input.svelte-cghqrp{position:absolute;width:100%;left:16px;top:12px;font:400 12px/1.5 var(--font);border:none;color:var(--flash);outline:none;background-color:transparent}.duplicate.svelte-cghqrp{color:var(--prime)}.remove.svelte-cghqrp{position:absolute;display:none;right:1px;top:4px;width:16px;text-align:right;padding:12px 0 12px 5px;font-size:8px;cursor:pointer}.remove.svelte-cghqrp:hover{color:var(--flash)}.file-tabs.svelte-cghqrp .button.active .editable.svelte-cghqrp{cursor:text}.file-tabs.svelte-cghqrp .button.active .remove.svelte-cghqrp{display:block}.file-tabs.svelte-cghqrp .button.drag-over.svelte-cghqrp{background:#67677814}.file-tabs.svelte-cghqrp .button.drag-over.svelte-cghqrp{cursor:move}.add-new.svelte-cghqrp{position:absolute;left:0;top:0;padding:12px 10px 8px 0 !important;height:40px;text-align:center;background-color:white}.add-new.svelte-cghqrp:hover{color:var(--flash) !important}.drag-handle.svelte-cghqrp{cursor:move;width:5px;height:25px;position:absolute;left:5px;top:9px;--drag-handle-color:#dedede;background:linear-gradient(to right,
			var(--drag-handle-color) 1px, white 1px,
			white 2px, var(--drag-handle-color) 2px,
			var(--drag-handle-color) 3px, white 3px,
			white 4px, var(--drag-handle-color) 4px
		)}svg.svelte-cghqrp{position:relative;overflow:hidden;vertical-align:middle;-o-object-fit:contain;object-fit:contain;-webkit-transform-origin:center center;transform-origin:center center;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;fill:none}
.view-toggle.svelte-4izmoy{height:var(--pane-controls-h);border-bottom:1px solid #eee;white-space:nowrap;box-sizing:border-box}button.svelte-4izmoy{background:white;text-align:left;position:relative;font:400 12px/1.5 var(--font);border:none;border-bottom:3px solid transparent;padding:12px 12px 8px 12px;color:#999;border-radius:0}button.active.svelte-4izmoy{border-bottom:3px solid var(--prime);color:#333}div[slot].svelte-4izmoy{height:100%}.tab-content.svelte-4izmoy{position:absolute;width:100%;height:calc(100% - 42px) !important;opacity:0;pointer-events:none}.tab-content.visible.svelte-4izmoy{opacity:1;pointer-events:all}iframe.svelte-4izmoy{width:100%;height:100%;border:none;display:block}
div.svelte-1c44y5p{width:100%;height:100%}
.blurb.svelte-1377vhn{display:grid;grid-row-gap:1em;grid-template-areas:"one"
			"two"
			"three"
			"what"
			"how"}.box.svelte-1377vhn{padding:1em;display:flex;flex-direction:column;border-bottom:none}.box.svelte-1377vhn a{color:white;padding:0;border:none}.box.svelte-1377vhn h2{padding:0;margin:0 0 0.5em 0;font-size:var(--h2);color:white;text-align:left}.blurb.svelte-1377vhn p{font-size:var(--h5)}.box.svelte-1377vhn .learn-more{display:block;position:relative;text-align:right;margin-top:auto;padding:0 1.2em 0 0}.box.svelte-1377vhn:hover .learn-more{color:white;text-decoration:underline}.box.svelte-1377vhn .learn-more::after,.box.svelte-1377vhn .cta a::after{content:'';position:absolute;display:block;right:0;top:0.3em;width:1em;height:1em;background:url(/icons/arrow-right.svg);background-size:100% 100%}.how.svelte-1377vhn{min-width:0}.how.svelte-1377vhn .cta a{display:inline-block;text-align:right;background-color:var(--prime);padding:0.5em 1.8em 0.5em 1em;border-radius:var(--border-r);border:none;color:white;position:relative}.how.svelte-1377vhn .cta a::after{right:0.5em;top:0.75em}.what.svelte-1377vhn{margin:2em 0 0 0}.how.svelte-1377vhn .cta{margin:0}@media(min-width: 900px){.blurb.svelte-1377vhn{grid-column-gap:1em;grid-row-gap:1em;grid-template-columns:repeat(2, 1fr);grid-template-areas:"one two"
				"three how"
				"what what"}.box.svelte-1377vhn{padding:2em}.box.svelte-1377vhn .cta{text-align:right}}@media(min-width: 1200px){.blurb.svelte-1377vhn{grid-column-gap:1em;grid-row-gap:5em;grid-template-columns:repeat(6, 1fr);grid-template-areas:"one one two two three three"
				"what what what how how how"}.what.svelte-1377vhn{margin:0}.box.svelte-1377vhn .cta{text-align:left}}
.hero.svelte-1u1foo2{position:relative;margin:10rem auto;padding:0 var(--side-nav);max-width:120rem}h3.svelte-1u1foo2{color:var(--text) }.hero.svelte-1u1foo2{margin:10rem auto}.hero.svelte-1u1foo2 h3.svelte-1u1foo2,.logotype.svelte-1u1foo2{position:relative;left:1.6rem}.hero.svelte-1u1foo2 h3.svelte-1u1foo2{font-size:2rem}.logotype.svelte-1u1foo2{height:4rem}@media(min-width: 640px){.logotype.svelte-1u1foo2{height:6rem}.hero.svelte-1u1foo2 h3.svelte-1u1foo2{font-size:var(--h3)}}@media(min-width: 800px){.hero.svelte-1u1foo2{margin:15rem auto}.hero.svelte-1u1foo2 h3.svelte-1u1foo2,.logotype.svelte-1u1foo2{left:3rem}}
aside.svelte-1itkhys{position:fixed;background-color:white;left:0.8rem;bottom:0.8rem;width:2em;height:2em;overflow:hidden;border:1px solid #eee;box-shadow:1px 1px 6px rgba(0,0,0,0.1);transition:width 0.2s, height 0.2s}aside.svelte-1itkhys button.svelte-1itkhys{position:absolute;bottom:0;left:0;width:3.4rem;height:3.4rem}aside.open.svelte-1itkhys{width:calc(100vw - 3rem);height:calc(100vh - var(--nav-h))}aside.open.svelte-1itkhys::before{content:'';position:absolute;top:0;left:0;width:calc(100% - 2rem);height:2em;background:linear-gradient(to top, rgba(255,255,255,0) 0%, rgba(255,255,255,0.7) 50%, rgba(255,255,255,1) 100%);pointer-events:none;z-index:2}aside.svelte-1itkhys::after{content:'';position:absolute;left:0;bottom:1.9em;width:calc(100% - 2rem);height:2em;background:linear-gradient(to bottom, rgba(255,255,255,0) 0%, rgba(255,255,255,0.7) 50%, rgba(255,255,255,1) 100%);pointer-events:none}.sidebar.svelte-1itkhys{position:absolute;font-family:var(--font);overflow-y:auto;width:100%;height:100%;padding:4em 1.6rem 2em 3.2rem;bottom:2em}.content.svelte-1itkhys{width:100%;margin:0;padding:var(--top-offset) var(--side-nav);tab-size:2;-moz-tab-size:2}@media(min-width: 832px){aside.svelte-1itkhys{display:block;width:var(--sidebar-w);height:100vh;top:0;left:0;overflow:hidden;box-shadow:none;border:none;overflow:hidden;background-color:var(--second);color:white}aside.open.svelte-1itkhys::before{display:none}aside.svelte-1itkhys::after{content:'';bottom:0;height:var(--top-offset);background:linear-gradient(to bottom, rgba(103,103,120,0) 0%, rgba(103,103,120,0.7) 50%, rgba(103,103,120,1) 100%)}aside.svelte-1itkhys button.svelte-1itkhys{display:none}.sidebar.svelte-1itkhys{padding:var(--top-offset) 0 6.4rem 3.2rem;font-family:var(--font);overflow-y:auto;height:100%;bottom:auto;width:100%}.content.svelte-1itkhys{padding-left:calc(var(--sidebar-w) + var(--side-nav))}.content.svelte-1itkhys .side-by-side{display:grid;grid-template-columns:calc(50% - 0.5em) calc(50% - 0.5em);grid-gap:1em}.content.svelte-1itkhys .side-by-side .code{padding:1em 0}}.content.svelte-1itkhys h2.svelte-1itkhys{margin-top:8rem;padding:2rem 1.6rem 4rem 0.2rem;border-top:var(--border-w) solid #6767785b;color:var(--text);line-height:1;font-size:var(--h3);letter-spacing:.05em;text-transform:uppercase}.content.svelte-1itkhys section:first-of-type>h2.svelte-1itkhys{margin-top:0}.content.svelte-1itkhys h4{margin:2em 0 1em 0}.content.svelte-1itkhys .offset-anchor{position:relative;display:block;top:calc(-1 * (var(--nav-h) + var(--top-offset) - 1rem));width:0;height:0}.content.svelte-1itkhys .anchor{position:absolute;display:block;background:url(/icons/link.svg) 0 50% no-repeat;background-size:1em 1em;width:1.4em;height:1em;left:-1.3em;opacity:0;transition:opacity 0.2s;border:none !important}.content.svelte-1itkhys h2 > .anchor,.content.svelte-1itkhys h3 > .anchor{top:0.75em}@media(min-width: 768px){.content.svelte-1itkhys h2:hover .anchor,.content.svelte-1itkhys h3:hover .anchor,.content.svelte-1itkhys h4:hover .anchor,.content.svelte-1itkhys h5:hover .anchor,.content.svelte-1itkhys h6:hover .anchor{opacity:1}.content.svelte-1itkhys h5 .anchor,.content.svelte-1itkhys h6 .anchor{top:0.25em}}.content.svelte-1itkhys h3,.content.svelte-1itkhys h3 > code{margin:6.4rem 0 0 0;padding:2rem 1.6rem 5.6rem .2rem;color:var(--text);border-top:var(--border-w) solid #6767781f;background:transparent;line-height:1}.content.svelte-1itkhys h3:first-of-type{border:none;margin:0}.content.svelte-1itkhys h3 > code{border-radius:0 0 0 0;border:none;font-size:inherit}.content.svelte-1itkhys h4,.content.svelte-1itkhys h4 > code{font-family:inherit;font-weight:600;font-size:2.4rem;color:var(--second);margin:6.4rem 0 1.6rem 0;padding-left:0;background:transparent;line-height:1;padding:0;top:0}.content.svelte-1itkhys h4 > em{opacity:0.7}.content.svelte-1itkhys h4 > .anchor{top:0.05em}.content.svelte-1itkhys h5{font-size:2.4rem;margin:2em 0 0.5em 0}.content.svelte-1itkhys code{padding:.3rem .8rem .3rem;margin:0 0.2rem;top:-.1rem;background:var(--back-api)}.content.svelte-1itkhys pre code{padding:0;margin:0;top:0;background:transparent}.content.svelte-1itkhys pre{margin:0 0 2em 0;width:100%;max-width:100%}.content.svelte-1itkhys .icon{width:2rem;height:2rem;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;fill:none}.content.svelte-1itkhys table{margin:0 0 2em 0}section.svelte-1itkhys>.code-block>pre{display:inline-block;color:white;padding:.3rem .8rem;margin:0;max-width:100%}section.svelte-1itkhys>.code-block>pre.language-markup{padding:.3rem .8rem .2rem;background:var(--back-api)}section.svelte-1itkhys>p{max-width:var(--linemax)
	}section.svelte-1itkhys p{margin:1em 0}small.svelte-1itkhys{font-size:var(--h5);float:right;pointer-events:all;color:var(--prime);cursor:pointer}small.svelte-1itkhys a.svelte-1itkhys{all:unset }small.svelte-1itkhys a.svelte-1itkhys:before{all:unset }section.svelte-1itkhys blockquote{color:hsl(204, 100%, 50%);border:2px solid var(--flash)}section.svelte-1itkhys blockquote code{background:hsl(204, 100%, 95%) !important;color:hsl(204, 100%, 50%)}
.icon.svelte-5yec89{position:relative;overflow:hidden;vertical-align:middle;-o-object-fit:contain;object-fit:contain;-webkit-transform-origin:center center;transform-origin:center center;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;fill:none}
header.svelte-1txnqye{position:fixed;display:flex;align-items:center;justify-content:space-between;width:100vw;height:var(--nav-h);padding:0 var(--side-nav);margin:0 auto;background-color:white;box-shadow:0 -0.4rem 0.9rem 0.2rem rgba(0,0,0,.5);font-family:var(--font);z-index:100;user-select:none;transform:translate(0,calc(-100% - 1rem));transition:transform 0.2s}header.visible.svelte-1txnqye{transform:none}nav.svelte-1txnqye{position:fixed;top:0;left:0;width:100vw;height:var(--nav-h);padding:0 var(--side-nav) 0 var(--side-nav);display:flex;align-items:center;justify-content:space-between;background-color:transparent;transform:none;transition:none;box-shadow:none}.primary.svelte-1txnqye{list-style:none;font-family:var(--font);margin:0;line-height:1}ul.svelte-1txnqye li{display:block;display:none}ul.svelte-1txnqye li.active{display:block}ul.svelte-1txnqye{position:relative;padding:0 3rem 0 0;background:url(/icons/chevron.svg) calc(100% - 1em) 0.05em no-repeat;background-size:1em 1em}ul.svelte-1txnqye::after{position:absolute;content:'';width:100%;height:100%;left:0;top:0}ul.open.svelte-1txnqye{padding:0 0 1em 0;background:white;border-left:1px solid #eee;border-right:1px solid #eee;border-bottom:1px solid #eee;border-radius:0 0 var(--border-r) var(--border-r);align-self:start}ul.open.svelte-1txnqye li{display:block;text-align:right
	}ul.open.svelte-1txnqye::after{display:none}ul.svelte-1txnqye li a{font-size:var(--h5);padding:0 .8rem;border:none;color:inherit}ul.open.svelte-1txnqye li a{padding:1.5rem 3.7rem 1.5rem 4rem;display:block}ul.open.svelte-1txnqye li:first-child a{padding-top:2.3rem}.primary.svelte-1txnqye svg{width:2rem;height:2rem}.home.svelte-1txnqye{position:relative;top:-.1rem;width:18rem;height:4.2rem;-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none;background:0 50% no-repeat;background-size:auto 100%;text-indent:-9999px}ul.svelte-1txnqye li.active a{color:var(--prime)
	}.modal-background.svelte-1txnqye{position:fixed;width:100%;height:100%;left:0;top:0;background-color:rgba(255, 255, 255, 0.9)}a.svelte-1txnqye{color:inherit;border-bottom:none;transition:none}ul.svelte-1txnqye li:not(.active) a:hover{color:var(--flash)}@media(min-width: 840px){ul.svelte-1txnqye{padding:0;background:none}ul.open.svelte-1txnqye{padding:0;background:white;border:none;align-self:initial}ul.open.svelte-1txnqye li{display:inline;text-align:left}ul.open.svelte-1txnqye li a{font-size:var(--h5);padding:0 .8rem;display:inline}ul.svelte-1txnqye::after{display:none}ul.svelte-1txnqye li{display:inline !important}.hide-if-desktop.svelte-1txnqye{display:none !important}}
section.svelte-1ojx4sy{position:relative;margin:10rem auto;padding:0 var(--side-nav);max-width:120rem}section.svelte-1ojx4sy h3{color:var(--text)}
.message.svelte-9488n4{position:relative;color:white;padding:12px 16px 12px 44px;font:400 12px/1.7 var(--font);margin:0;border-top:1px solid white}.navigable.svelte-9488n4{cursor:pointer}.message.svelte-9488n4::before{content:'!';position:absolute;left:12px;top:10px;text-align:center;line-height:1;padding:4px;border-radius:50%;color:white;border:2px solid white;box-sizing:content-box;width:10px;height:10px;font-size:11px;font-weight:700}.truncate.svelte-9488n4{white-space:pre;overflow-x:hidden;text-overflow:ellipsis}p.svelte-9488n4{margin:0}.error.svelte-9488n4{background-color:#da106e}.warning.svelte-9488n4{background-color:#e47e0a}.info.svelte-9488n4{background-color:var(--second)}
.codemirror-container.svelte-s9cc8a{position:relative;width:100%;height:100%;border:none;line-height:1.5;overflow:hidden}.codemirror-container.svelte-s9cc8a .CodeMirror{height:100%;background:transparent;font:400 14px/1.7 var(--font-mono);color:var(--base)}.codemirror-container.flex.svelte-s9cc8a .CodeMirror{height:auto}.codemirror-container.flex.svelte-s9cc8a .CodeMirror-lines{padding:0}.codemirror-container.svelte-s9cc8a .CodeMirror-gutters{padding:0 16px 0 8px;border:none}.codemirror-container.svelte-s9cc8a .error-loc{position:relative;border-bottom:2px solid #da106e}.codemirror-container.svelte-s9cc8a .error-line{background-color:rgba(200, 0, 0, .05)}textarea.svelte-s9cc8a{visibility:hidden}pre.svelte-s9cc8a{position:absolute;width:100%;height:100%;top:0;left:0;border:none;padding:4px 4px 4px 60px;resize:none;font-family:var(--font-mono);font-size:13px;line-height:1.7;user-select:none;pointer-events:none;color:#ccc;tab-size:2;-moz-tab-size:2}.flex.svelte-s9cc8a pre.svelte-s9cc8a{padding:0 0 0 4px;height:auto}
.iframe-container.svelte-ivx2cg{position:absolute;background-color:white;border:none;width:100%;height:100%}iframe.svelte-ivx2cg{width:100%;height:100%;border:none;display:block}.greyed-out.svelte-ivx2cg{filter:grayscale(50%) blur(1px);opacity:.25}button.svelte-ivx2cg{color:#999;font-size:12px;text-transform:uppercase;display:block}button.svelte-ivx2cg:hover{color:#333}.overlay.svelte-ivx2cg{position:absolute;bottom:0;width:100%}
.panel-header.svelte-160vuma{height:42px;display:flex;justify-content:space-between;align-items:center;padding:0 0.5em;cursor:pointer}.panel-body.svelte-160vuma{overflow:auto}h3.svelte-160vuma{font:700 12px/1.5 var(--font);color:#333}section.svelte-160vuma{overflow:hidden}
.options.svelte-159cly1{padding:0 10px;font-family:var(--font-mono);font-size:13px;color:#999;line-height:1.8}.option.svelte-159cly1{display:block;padding:0 0 0 1.25em;white-space:nowrap;color:#333;user-select:none}.key.svelte-159cly1{display:inline-block;width:9em}.string.svelte-159cly1{color:hsl(41, 37%, 45%)}.boolean.svelte-159cly1{color:hsl(45, 7%, 45%)}label.svelte-159cly1{display:inline-block}label[for].svelte-159cly1{color:var(--string)}input[type=checkbox].svelte-159cly1{top:-1px}input[type=radio].svelte-159cly1{position:absolute;top:auto;overflow:hidden;clip:rect(1px, 1px, 1px, 1px);width:1px;height:1px;white-space:nowrap}input[type=radio]+label.svelte-159cly1{padding:0 0 0 1.6em;margin:0 0.6em 0 0;opacity:0.7}input[type=radio]:checked+label.svelte-159cly1{opacity:1}input[type=radio]+label.svelte-159cly1:before{content:'';background:#eee;display:block;box-sizing:border-box;float:left;width:15px;height:15px;margin-left:-21px;margin-top:4px;vertical-align:top;cursor:pointer;text-align:center;transition:box-shadow 0.1s ease-out}input[type=radio]+label.svelte-159cly1:before{background-color:var(--second);border-radius:100%;box-shadow:inset 0 0 0 0.5em rgba(255, 255, 255, .95);border:1px solid var(--second)}input[type=radio]:checked+label.svelte-159cly1:before{background-color:var(--prime);box-shadow:inset 0 0 0 .15em rgba(255, 255, 255, .95);border:1px solid var(--second);transition:box-shadow 0.2s ease-out}
.user.svelte-1jk26jo{position:relative;display:inline-block;padding:0em 1.2rem 0 1.6rem;height:0.8em;line-height:1;z-index:99}.user.svelte-1jk26jo::after{position:absolute;content:'';width:100%;height:3.2rem;left:0;top:0}span.svelte-1jk26jo{line-height:1;display:none;font-family:var(--font);font-size:1.6rem;opacity:0.7}.user.svelte-1jk26jo:hover span.svelte-1jk26jo{opacity:1}img.svelte-1jk26jo{position:absolute;top:-0.05em;right:0;width:2.1rem;height:2.1rem;border:1px solid rgba(255,255,255,0.3);border-radius:0.2rem}.menu.svelte-1jk26jo{position:absolute;width:calc(100% + 1.6rem);min-width:10em;top:3rem;right:-1.6rem;background-color:var(--second);padding:0.8rem 1.6rem;z-index:99;text-align:left;border-radius:0.4rem;display:flex;flex-direction:column}.menu.svelte-1jk26jo button.svelte-1jk26jo,.menu.svelte-1jk26jo a.svelte-1jk26jo{background-color:transparent;font-family:var(--font);font-size:1.6rem;opacity:0.7;padding:0.4rem 0;text-decoration:none;text-align:left;border:none;color:inherit}.menu.svelte-1jk26jo button.svelte-1jk26jo:hover,.menu.svelte-1jk26jo a.svelte-1jk26jo:hover{opacity:1;color:inherit}@media(min-width: 600px){.user.svelte-1jk26jo{padding:0em 3.2rem 0 1.6rem}img.svelte-1jk26jo{width:2.4rem;height:2.4rem}span.svelte-1jk26jo{display:inline-block}}
.parallax.svelte-1inoott{position:absolute;top:-4rem;right:0rem;width:50rem;will-change:transform;display:none}@media(min-width: 800px){.parallax.svelte-1inoott{display:block}}@media(min-width: 1200px){.parallax.svelte-1inoott{right:calc(50vw - 60rem)}}
.reference-toc.svelte-mm3tjv li.svelte-mm3tjv{display:block;line-height:1.2;margin:0 0 4rem 0}a.svelte-mm3tjv{position:relative;transition:color 0.2s;border-bottom:none;padding:0;color:var(--second)}.section.svelte-mm3tjv{display:block;padding:0 0 .8rem 0;font-size:var(--h6);text-transform:uppercase;letter-spacing:0.1em;font-weight:600}.subsection.svelte-mm3tjv{display:block;font-size:1.6rem;font-family:var(--font);padding:0 0 0.6em 0}.section.svelte-mm3tjv:hover,.subsection.svelte-mm3tjv:hover,.active.svelte-mm3tjv{color:var(--flash)}.subsection[data-level="4"].svelte-mm3tjv{padding-left:1.2rem}.icon-container.svelte-mm3tjv{position:absolute;top:-.2rem;right:2.4rem}@media(min-width: 832px){a.svelte-mm3tjv{color:var(--sidebar-text)}a.svelte-mm3tjv:hover,.section.svelte-mm3tjv:hover,.subsection.svelte-mm3tjv:hover,.active.svelte-mm3tjv{color:white
		}}
ul.svelte-fisoh6{--string-color:#cb3f41;--symbol-color:#cb3f41;--boolean-color:#112aa7;--function-color:#112aa7;--number-color:#3029cf;--label-color:#871d8f;--arrow-color:#727272;--null-color:#8d8d8d;--undefined-color:#8d8d8d;--date-color:#8d8d8d;--li-identation:1em;--li-colon-space:0.3em;font-size:var(--json-tree-font-size, 12px);font-family:'Courier New', Courier, monospace}ul.svelte-fisoh6 li{line-height:var(--li-line-height, 1.3);display:var(--li-display, list-item);list-style:none}ul.svelte-fisoh6,ul.svelte-fisoh6 ul{padding:0;margin:0}
/* BASICS */

.CodeMirror {
	/* copied colors over from prism */
	--background: var(--back-light);
	--base:       hsl(45, 7%, 45%);
	--comment:    hsl(210, 25%, 60%);
	--keyword:    hsl(204, 58%, 45%);
	--function:   hsl(19, 67%, 45%);
	--string:     hsl(41, 37%, 45%);
	--number:     hsl(102, 27%, 50%);
	--tags:       var(--function);
	--important:  var(--string);

  /* Set height, width, borders, and global font properties here */
  /* see prism.css */
  height: 300px;
  direction: ltr;
}

/* PADDING */

.CodeMirror-lines {
  padding: 4px 0; /* Vertical padding around content */
}
.CodeMirror pre {
  padding: 0 4px; /* Horizontal padding of content */
}

.CodeMirror-scrollbar-filler, .CodeMirror-gutter-filler {
  background-color: white; /* The little square between H and V scrollbars */
}

/* GUTTER */

.CodeMirror-gutters {
  border-right: 1px solid #ddd;
  background-color: var(--back-light);
  white-space: nowrap;
}
.CodeMirror-linenumber {
  padding: 0 3px 0 5px;
  min-width: 20px;
  text-align: right;
  color: var(--comment);
  white-space: nowrap;
  opacity: .6;
}

.CodeMirror-guttermarker { color: black; }
.CodeMirror-guttermarker-subtle { color: #999; }

/* FOLD GUTTER */

.CodeMirror-foldmarker {
  color: #414141;
  text-shadow: #ff9966 1px 1px 2px, #ff9966 -1px -1px 2px, #ff9966 1px -1px 2px,
    #ff9966 -1px 1px 2px;
  font-family: arial;
  line-height: 0.3;
  cursor: pointer;
}
.CodeMirror-foldgutter {
  width: 0.7em;
}
.CodeMirror-foldgutter-open,
.CodeMirror-foldgutter-folded {
  cursor: pointer;
}
.CodeMirror-foldgutter-open:after, .CodeMirror-foldgutter-folded:after {
  content: ">";
  font-size: 0.8em;
  opacity: 0.8;
  transition: transform 0.2s;
  display: inline-block;
  top: -0.1em;
  position: relative;
  transform: rotate(90deg);
}
.CodeMirror-foldgutter-folded:after {
  transform: none;
}

/* CURSOR */

.CodeMirror-cursor {
  border-left: 1px solid black;
  border-right: none;
  width: 0;
}
/* Shown when moving in bi-directional text */
.CodeMirror div.CodeMirror-secondarycursor {
  border-left: 1px solid silver;
}
.cm-fat-cursor .CodeMirror-cursor {
  width: auto;
  border: 0 !important;
  background: #7e7;
}
.cm-fat-cursor div.CodeMirror-cursors {
  z-index: 1;
}
.cm-fat-cursor-mark {
  background-color: rgba(20, 255, 20, .5);
  -webkit-animation: blink 1.06s steps(1) infinite;
  -moz-animation: blink 1.06s steps(1) infinite;
  animation: blink 1.06s steps(1) infinite;
}
.cm-animate-fat-cursor {
  width: auto;
  border: 0;
  -webkit-animation: blink 1.06s steps(1) infinite;
  -moz-animation: blink 1.06s steps(1) infinite;
  animation: blink 1.06s steps(1) infinite;
  background-color: #7e7;
}
@-moz-keyframes blink {
  0% {}
  50% { background-color: transparent; }
  100% {}
}
@-webkit-keyframes blink {
  0% {}
  50% { background-color: transparent; }
  100% {}
}
@keyframes blink {
  0% {}
  50% { background-color: transparent; }
  100% {}
}

.cm-tab { display: inline-block; text-decoration: inherit; }

.CodeMirror-rulers {
  position: absolute;
  left: 0; right: 0; top: -50px; bottom: -20px;
  overflow: hidden;
}
.CodeMirror-ruler {
  border-left: 1px solid #ccc;
  top: 0; bottom: 0;
  position: absolute;
}

/* DEFAULT THEME */
.cm-s-default .cm-header {color: blue}
.cm-s-default .cm-quote {color: #090}
.cm-negative {color: #d44}
.cm-positive {color: #292}
.cm-header, .cm-strong {font-weight: bold}
.cm-em {font-style: italic}
.cm-link {text-decoration: underline}
.cm-strikethrough {text-decoration: line-through}

.cm-s-default .cm-atom,
.cm-s-default .cm-def,
.cm-s-default .cm-property,
.cm-s-default .cm-variable-2,
.cm-s-default .cm-variable-3,
.cm-s-default .cm-punctuation {color: var(--base)}
.cm-s-default .cm-hr,
.cm-s-default .cm-comment {color: var(--comment)}
.cm-s-default .cm-attribute,
.cm-s-default .cm-keyword {color: var(--keyword)}
.cm-s-default .cm-variable,
.cm-s-default .cm-bracket,
.cm-s-default .cm-tag {color: var(--tags)}
.cm-s-default .cm-number {color: var(--number)}
.cm-s-default .cm-string {color: var(--string)}

.cm-s-default .cm-string-2 {color: #f50}
.cm-s-default .cm-type {color: #085}
.cm-s-default .cm-meta {color: #555}
.cm-s-default .cm-qualifier {color: #555}
.cm-s-default .cm-builtin {color: #30a}
.cm-s-default .cm-link {color: var(--flash)}
.cm-s-default .cm-error {color: #ff008c}
.cm-invalidchar {color: #ff008c}

.CodeMirror-composing { border-bottom: 2px solid; }

/* Default styles for common addons */

div.CodeMirror span.CodeMirror-matchingbracket {color: #0b0;}
div.CodeMirror span.CodeMirror-nonmatchingbracket {color: #a22;}
.CodeMirror-matchingtag { background: rgba(255, 150, 0, .3); }
.CodeMirror-activeline-background {background: #e8f2ff;}

/* STOP */

/* The rest of this file contains styles related to the mechanics of
   the editor. You probably shouldn't touch them. */

.CodeMirror {
  position: relative;
  overflow: hidden;
  background: white;
}

.CodeMirror-scroll {
  overflow: scroll !important; /* Things will break if this is overridden */
  /* 30px is the magic margin used to hide the element's real scrollbars */
  /* See overflow: hidden in .CodeMirror */
  margin-bottom: -30px; margin-right: -30px;
  padding-bottom: 30px;
  height: 100%;
  outline: none; /* Prevent dragging from highlighting the element */
  position: relative;
}
.CodeMirror-sizer {
  position: relative;
  border-right: 30px solid transparent;
}

/* The fake, visible scrollbars. Used to force redraw during scrolling
   before actual scrolling happens, thus preventing shaking and
   flickering artifacts. */
.CodeMirror-vscrollbar, .CodeMirror-hscrollbar, .CodeMirror-scrollbar-filler, .CodeMirror-gutter-filler {
  position: absolute;
  z-index: 6;
  display: none;
}
.CodeMirror-vscrollbar {
  right: 0; top: 0;
  overflow-x: hidden;
  overflow-y: scroll;
}
.CodeMirror-hscrollbar {
  bottom: 0; left: 0;
  overflow-y: hidden;
  overflow-x: scroll;
}
.CodeMirror-scrollbar-filler {
  right: 0; bottom: 0;
}
.CodeMirror-gutter-filler {
  left: 0; bottom: 0;
}

.CodeMirror-gutters {
  position: absolute; left: 0; top: 0;
  min-height: 100%;
  z-index: 3;
}
.CodeMirror-gutter {
  white-space: normal;
  height: 100%;
  display: inline-block;
  vertical-align: top;
  margin-bottom: -30px;
}
.CodeMirror-gutter-wrapper {
  position: absolute;
  z-index: 4;
  background: none !important;
  border: none !important;
}
.CodeMirror-gutter-background {
  position: absolute;
  top: 0; bottom: 0;
  z-index: 4;
}
.CodeMirror-gutter-elt {
  position: absolute;
  cursor: default;
  z-index: 4;
}
.CodeMirror-gutter-wrapper ::selection { background-color: transparent }
.CodeMirror-gutter-wrapper ::-moz-selection { background-color: transparent }

.CodeMirror-lines {
  cursor: text;
  min-height: 1px; /* prevents collapsing before first draw */
}
.CodeMirror pre {
  /* Reset some styles that the rest of the page might have set */
  -moz-border-radius: 0; -webkit-border-radius: 0; border-radius: 0;
  border-width: 0;
  background: transparent;
  font-family: inherit;
  font-size: inherit;
  margin: 0;
  white-space: pre;
  word-wrap: normal;
  line-height: inherit;
  color: inherit;
  z-index: 2;
  position: relative;
  overflow: visible;
  -webkit-tap-highlight-color: transparent;
  -webkit-font-variant-ligatures: contextual;
  font-variant-ligatures: contextual;
}
.CodeMirror-wrap pre {
  word-wrap: break-word;
  white-space: pre-wrap;
  word-break: normal;
}

.CodeMirror-linebackground {
  position: absolute;
  left: 0; right: 0; top: 0; bottom: 0;
  z-index: 0;
}

.CodeMirror-linewidget {
  position: relative;
  z-index: 2;
  padding: .1px; /* Force widget margins to stay inside of the container */
}

.CodeMirror-rtl pre { direction: rtl; }

.CodeMirror-code {
  outline: none;
}

/* Force content-box sizing for the elements where we expect it */
.CodeMirror-scroll,
.CodeMirror-sizer,
.CodeMirror-gutter,
.CodeMirror-gutters,
.CodeMirror-linenumber {
  -moz-box-sizing: content-box;
  box-sizing: content-box;
}

.CodeMirror-measure {
  position: absolute;
  width: 100%;
  height: 0;
  overflow: hidden;
  visibility: hidden;
}

.CodeMirror-cursor {
  position: absolute;
  pointer-events: none;
}
.CodeMirror-measure pre { position: static; }

div.CodeMirror-cursors {
  visibility: hidden;
  position: relative;
  z-index: 3;
}
div.CodeMirror-dragcursors {
  visibility: visible;
}

.CodeMirror-focused div.CodeMirror-cursors {
  visibility: visible;
}

.CodeMirror-selected { background: #d9d9d9; }
.CodeMirror-focused .CodeMirror-selected { background: #d7d4f0; }
.CodeMirror-crosshair { cursor: crosshair; }
.CodeMirror-line::selection, .CodeMirror-line > span::selection, .CodeMirror-line > span > span::selection { background: #d7d4f0; }
.CodeMirror-line::-moz-selection, .CodeMirror-line > span::-moz-selection, .CodeMirror-line > span > span::-moz-selection { background: #d7d4f0; }

.cm-searching {
  background-color: #ffa;
  background-color: rgba(255, 255, 0, .4);
}

/* Used to force a border model for a node */
.cm-force-border { padding-right: .1px; }

@media print {
  /* Hide the cursor when printing */
  .CodeMirror div.CodeMirror-cursors {
    visibility: hidden;
  }
}

/* See issue #2901 */
.cm-tab-wrap-hack:after { content: ''; }

/* Help users use markselection to safely style text background */
span.CodeMirror-selectedtext { background: none; }
.log.svelte-wz5xz8{border-bottom:1px solid #eee;padding:5px 10px 0px;display:flex;position:relative;font-size:12px;font-family:var(--font-mono)}.log.svelte-wz5xz8>*{margin-right:10px;font-family:var(--font-mono)}.console-warn.svelte-wz5xz8,.console-system-warn.svelte-wz5xz8{background:#fffbe6;border-color:#fff4c4}.console-error.svelte-wz5xz8,.console-assert.svelte-wz5xz8{background:#fff0f0;border-color:#fed6d7}.console-group.svelte-wz5xz8,.arrow.svelte-wz5xz8{cursor:pointer;user-select:none}.console-trace.svelte-wz5xz8,.console-assert.svelte-wz5xz8{border-bottom:none}.console-assert+.trace.svelte-wz5xz8{background:#fff0f0;border-color:#fed6d7}.trace.svelte-wz5xz8{border-bottom:1px solid #eee;font-size:12px;font-family:var(--font-mono);padding:4px 0 2px}.trace.svelte-wz5xz8>div{margin-left:15px}.count.svelte-wz5xz8{color:#999;font-size:12px;line-height:1.2}.info.svelte-wz5xz8{color:#666;font-family:var(--font) !important;font-size:12px}.error.svelte-wz5xz8{color:#da106e}.outline.svelte-wz5xz8{border-left:1px solid #9c9cab;position:absolute;top:0;bottom:-1px}.arrow.svelte-wz5xz8{position:absolute;font-size:0.6em;transition:150ms;transform-origin:50% 50%;transform:translateY(1px) translateX(-50%)}.arrow.expand.svelte-wz5xz8{transform:translateY(1px) translateX(-50%) rotateZ(90deg)}.title.svelte-wz5xz8{font-family:var(--font-mono);font-size:13px;font-weight:bold;padding-left:11px;height:19px}.assert.svelte-wz5xz8{padding-left:11px;font-weight:bold;color:#da106e}
.table.svelte-12l2iaz{margin:8px;overflow:auto;max-height:200px}table.svelte-12l2iaz{font-size:12px;font-family:var(--font-mono);border-collapse:collapse;line-height:1;border:1px solid #aaa}th.svelte-12l2iaz{background:#f3f3f3;padding:4px 8px;border:1px solid #aaa;position:sticky;top:0}td.svelte-12l2iaz{padding:2px 8px}tr.svelte-12l2iaz:nth-child(2n){background:#f2f7fd}th.svelte-12l2iaz,td.svelte-12l2iaz{border-right:1px solid #aaa}
li.svelte-1m3zj06{user-select:text;word-wrap:break-word;word-break:break-all}.indent.svelte-1m3zj06{margin-left:var(--li-identation)}.String.svelte-1m3zj06{color:var(--string-color)}.Date.svelte-1m3zj06{color:var(--date-color)}.Number.svelte-1m3zj06{color:var(--number-color)}.Boolean.svelte-1m3zj06{color:var(--boolean-color)}.Null.svelte-1m3zj06{color:var(--null-color)}.Undefined.svelte-1m3zj06{color:var(--undefined-color)}.Function.svelte-1m3zj06{color:var(--function-color);font-style:italic}.Symbol.svelte-1m3zj06{color:var(--symbol-color)}
li.svelte-zydcof{user-select:text;word-wrap:break-word;word-break:break-all}.indent.svelte-zydcof{margin-left:var(--li-identation)}.collapse.svelte-zydcof{--li-display:inline;display:inline;font-style:italic}
label.svelte-15h461i{display:inline-block;color:var(--label-color);margin:0}.spaced.svelte-15h461i{margin-right:var(--li-colon-space)}
.container.svelte-kniv4z{display:inline-block;width:var(--li-identation);cursor:pointer;margin-left:calc(-7px - var(--li-identation));text-align:right}.arrow.svelte-kniv4z{transform-origin:67% 50%;position:relative;line-height:1.1em;font-size:0.75em;margin-left:0;transition:150ms;color:var(--arrow-sign)}.expanded.svelte-kniv4z{transform:rotateZ(90deg) translateX(-3px)}
.indent.svelte-2jkrkt{margin-left:var(--li-identation)}.collapse.svelte-2jkrkt{--li-display:inline;display:inline;font-style:italic}.comma.svelte-2jkrkt{margin-left:-0.5em;margin-right:0.5em}