text-throbber,
is-land--text-throbber {
	display: block;
	line-height: 1.2;
	font-family: Roboto Mono, Consolas, Monaco, Andale Mono, Ubuntu Mono, monospace;
	-ms-word-break: break-all;
	word-break: break-word;
	-webkit-hyphens: manual;
	-moz-hyphens: manual;
	hyphens: manual;
}

.w1r_zx7ls{display:block}.w1r_zx7ls table{width:100%;margin-bottom:0}.w1r_zx7ls th{text-transform:none}.w1r_zx7ls td{border-color:transparent}.w1r_zx7ls tr:first-child td{border-top:none}.w1r_zx7ls tr:last-child td{border-bottom:none}.w1r_zx7ls td:last-child{width:100%}
.w1r_zx7ls[variant="home"]{margin-left:-1rem;margin-right:-1rem;padding:1rem;background-color:#272822;color:#fff;border-radius:.3em;padding-top:.5em;padding-bottom:.5em}.w1r_zx7ls[variant="home"] thead th{color:#ccc}.w1r_zx7ls[variant="home"] thead th{border-color:#555}@media (prefers-color-scheme:dark){.w1r_zx7ls[variant="home"]{background-color:#000}}
/* Featured sites */
.facepile {
	margin-top: 2em;
	margin-bottom: 3em;
	line-height: 2;
	padding: 0 0 0 25px;
}
.facepile > a {
	display: inline-block;
	margin-left: -25px;
	transition: opacity .3s;
	opacity: .9;
}
.facepile > a:focus,
.facepile > a:hover {
	opacity: 1;
	position: relative;
	z-index: 1;
}
.facepile .avatar {
	width: 30px;
	height: 30px;
	width: calc(30px + 5vw);
	height: calc(30px + 5vw);
	max-width: 60px;
	max-height: 60px;
	margin-bottom: 6px;
	color: #fff;
	border: 2px solid;
	transition: border .3s;
	object-fit: cover;
}
@media (prefers-color-scheme: dark) {
	.facepile .avatar {
		color: #222;
	}
}
.elv-docs .facepile-supporters .avatar {
	width: calc(30px + 2vw);
	height: calc(30px + 2vw);
}
.facepile > a:after {
	content: "";
	position: absolute;
	border-radius: 50%;
	z-index: -1;
	pointer-events: none;
	opacity: 0;
}
.facepile > a:focus:after,
.facepile > a:hover:after {
	left: -24px; /* Right - 4px */
	right: -20px;
	top: -24px; /* Right - 4px */
	bottom: -20px;
	opacity: .6;
	background-color: currentColor;
	background-image: linear-gradient(238deg, #ff0000, #ff8000, #ffff00, #80ff00, #00ff00, #00ff80, #00ffff, #0080ff, #0000ff, #8000ff, #ff0080);
	background-size: 1200% 1200%;
	background-position: 0 80%;
}
.facepile > a:nth-child(11n+1):focus:after,
.facepile > a:nth-child(11n+1):hover:after {
	background-position: 0% 80%;
}
.facepile > a:nth-child(11n+2):focus:after,
.facepile > a:nth-child(11n+2):hover:after {
	background-position: 9% 80%;
}
.facepile > a:nth-child(11n+3):focus:after,
.facepile > a:nth-child(11n+3):hover:after {
	background-position: 18% 80%;
}
.facepile > a:nth-child(11n+4):focus:after,
.facepile > a:nth-child(11n+4):hover:after {
	background-position: 27% 80%;
}
.facepile > a:nth-child(11n+5):focus:after,
.facepile > a:nth-child(11n+5):hover:after {
	background-position: 36% 80%;
}
.facepile > a:nth-child(11n+6):focus:after,
.facepile > a:nth-child(11n+6):hover:after {
	background-position: 45% 80%;
}
.facepile > a:nth-child(11n+7):focus:after,
.facepile > a:nth-child(11n+7):hover:after {
	background-position: 54% 80%;
}
.facepile > a:nth-child(11n+8):focus:after,
.facepile > a:nth-child(11n+8):hover:after {
	background-position: 63% 80%;
}
.facepile > a:nth-child(11n+9):focus:after,
.facepile > a:nth-child(11n+9):hover:after {
	background-position: 72% 80%;
}
.facepile > a:nth-child(11n+10):focus:after,
.facepile > a:nth-child(11n+10):hover:after {
	background-position: 81% 80%;
}
.facepile > a:nth-child(11n+11):focus:after,
.facepile > a:nth-child(11n+11):hover:after {
	background-position: 90% 80%;
}

.elv-default .sites-vert + .fullwidth-module .avatar {
	width: calc(20px + 2vw);
	height: calc(20px + 2vw);
}

.facepile-fake .avatar {
	background-color: #eee;
}
/* WebC Issue #128 workaround */
code {
	font-family: Roboto Mono, Consolas, Monaco, Andale Mono, Ubuntu Mono, monospace;
	-ms-word-break: break-all;
	word-break: break-word;
	-webkit-hyphens: manual;
	-moz-hyphens: manual;
	hyphens: manual;
	background-color: #efefef;
	padding-left: 4px;
	padding-right: 4px;
	border-radius: .15em;
}
pre[class*="language-"] code {
	background-color: inherit;
}
table code {
	-ms-word-break: normal;
	word-break: normal;
}
em code {
	font-style: normal;
}
@media (prefers-color-scheme: dark) {
	code {
		background-color: #000;
		color: #fff;
	}
}
/**
 * a11y-dark theme for JavaScript, CSS, and HTML
 * Based on the okaidia theme: https://github.com/PrismJS/prism/blob/gh-pages/themes/prism-okaidia.css
 * @author ericwbailey
 */

/* Inline code */
:not(pre) > code[class*="language-"] {
	padding: 0.1em;
	border-radius: 0.3em;
	white-space: normal;
}

.token.comment,
.token.prolog,
.token.doctype,
.token.cdata {
	color: #d4d0ab;
}

.token.punctuation {
	color: #ccc;
}

.token.liquid,
.token.property,
.token.tag,
.token.constant,
.token.symbol,
.token.deleted {
	color: #ffa07a;
}

.token.boolean,
.token.number {
	color: #00e0e0;
}

.token.selector,
.token.attr-name,
.token.string,
.token.char,
.token.builtin,
.token.inserted {
	color: #abe338;
}

.token.operator,
.token.entity,
.token.url,
.language-css .token.string,
.style .token.string,
.token.variable {
	color: #00e0e0;
}

.token.atrule,
.token.attr-value,
.token.function {
	color: #ffd700;
}

.token.keyword {
	color: #00e0e0;
}

.token.regex,
.token.important {
	color: #ffd700;
}

.token.important,
.token.bold {
	font-weight: bold;
}
.token.italic {
	font-style: italic;
}

.token.entity {
	cursor: help;
}

@media screen and (-ms-high-contrast: active) {
	code[class*="language-"],
	pre[class*="language-"] {
		color: windowText;
		background: window;
	}

	:not(pre) > code[class*="language-"],
	pre[class*="language-"] {
		background: window;
	}

	.token.important {
		background: highlight;
		color: window;
		font-weight: normal;
	}

	.token.atrule,
	.token.attr-value,
	.token.function,
	.token.keyword,
	.token.operator,
	.token.selector {
		font-weight: bold;
	}

	.token.attr-value,
	.token.comment,
	.token.doctype,
	.token.function,
	.token.keyword,
	.token.operator,
	.token.property,
	.token.string {
		color: highlight;
	}

	.token.attr-value,
	.token.url {
		font-weight: normal;
	}
}
/* Syntax highlighting and Code blocks */
pre {
	display: block;
	padding: .75rem 1rem;
	margin: 1em -1rem 2em -1rem;
	line-height: 1.5;

	overflow-x: auto;
	font-size: 0.875em; /* 14px /16 */
	font-family: Roboto Mono, Consolas, Monaco, Andale Mono, Ubuntu Mono, monospace;

	-moz-tab-size: 2;
	-o-tab-size: 2;
	tab-size: 2;

	text-align: left;
	white-space: pre;
	word-spacing: normal;
	word-break: normal;
	word-wrap: normal;

	background-color: #272822;
	color: #fff;
}

.fl > * > pre {
	margin-top: 0;
}
pre code {
	border-radius: 0;
}
pre > code {
	background-color: inherit;
	padding: 0;
	font-family: inherit;
}
pre + pre[class*="language-"] {
	margin-top: 1em;
}
pre + .note {
	font-size: 0.6666666666667em; /* 16px /24 */
	margin-top: -2.875em; /* 46px /16 */
	margin-bottom: 2.5em; /* 40px /16 */
	text-align: right;
}
@media (prefers-color-scheme: dark) {
	pre {
		background-color: #000;
		color: #fff;
	}
	pre code {
		color: unset;
	}
}
@media (min-width: 37.5em) { /* 600px */
	pre {
		font-size: 1em; /* 16px /16 */
	}
}
@media (min-width: 64em) { /* 1024px */
	pre {
		border-radius: 0.3em;
	}
}


.highlight-line {
	display: inline-block;

	/* del, ins, mark default styles */
	text-decoration: none;
	color: inherit;
}

/* allow highlighting empty lines */
.highlight-line:empty:before {
	content: " ";
}

.highlight-line {
	min-width: 100%;
}
.highlight-line .highlight-line {
	min-width: 0;
}

.highlight-line-isdir {
	color: #b0b0b0;
	background-color: #222;
}
.highlight-line-active {
	background-color: #444;
	background-color: hsla(0, 0%, 27%, .8);
}
.highlight-line-add {
	background-color: #45844b;
}
.highlight-line-remove {
	background-color: #902f2f;
}


[data-preprefix-cmdhomedir] .highlight-line:first-child:before {
	color: #aaa;
	content: "~ $ ";
}
[data-preprefix-eleventysample] .highlight-line:first-child:before {
	color: #aaa;
	content: "~/eleventy-sample $ ";
}

pre[class*="language-diff-"] {
	padding-left: 0;
	padding-right: 0;
}
.token.deleted {
	background-color: hsl(350deg 100% 88% / 20%);
}
.token.inserted {
	background-color: hsl(120deg 73% 75% / 20%);
}
.token.inserted:not(.prefix),
.token.deleted:not(.prefix) {
	display: block;
}
.token.prefix.unchanged,
.token.prefix.inserted,
.token.prefix.deleted {
	-webkit-user-select: none;
	user-select: none;
	margin-right: .5em;
	padding: 0 .2em;
}
syntax-highlight > pre {
	margin-bottom: 0;
}
.waawov2f- .highlight-line:last-child,.waawov2f- .highlight-line:last-child *{color:#0dbc79!important}
.logos-list {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    list-style: none;
    margin: .5em 0 1em;
  }

  /* Home page */
  .elv-default .logos-list {
    justify-content: center;
    gap: .75em 1em;
    font-size: 0.875em; /* 14px /16 */
    padding: 1em;
    color: #666;
  }
  @media (prefers-color-scheme: dark) {
    .elv-default .logos-list {
      color: #adadad;
    }
  }

  /* Docs page */
  .elv-docs .logos-list {
    padding: .75em;
    border: 1px solid #ddd;
    border-radius: .5em;
    gap: 1em;
  }

  /* List items */
  .logos-list li {
    padding: 0;
    white-space: nowrap;
  }
  .logos-list-more {
    font-style: italic;
  }
  @media (max-width: 62.4375em) { /* 999px */
    .logos-list li:nth-child(n+18):not(.logos-list-more) {
      display: none;
    }
  }

  /* Header */
  .logos-list-hed {
    text-align: center;
    flex-basis: 100%;
    margin-bottom: 1em;
  }
  .elv-docs .logos-list-hed {
    display: none;
  }

  .logos-list .avatar {
    width: 1.6em;
    height: 1.6em;
    margin-right: .5em;
    opacity: .9;
    object-fit: contain;
  }
  .logos-list .avatar-tall {
    aspect-ratio: 8 / 10;
    width: auto;
  }
.why-are-you-doing-this a.btn-primary{margin-top:1.5em;border-width:.3em}@media (prefers-color-scheme:dark){.why-are-you-doing-this a.btn-primary,.why-are-you-doing-this a.btn-primary[href],.why-are-you-doing-this a.btn-primary:visited{background-color:#fff;color:#222;border-color:#ccc}}.why-are-you-doing-this a.btn-primary:hover{transition:all .3s;transform:scale(1.05)}@media (prefers-reduced-motion:reduce){.why-are-you-doing-this a.btn-primary:hover{transition:none;transform:none}}@media (min-width:46.875em){.why-are-you-doing-this a.btn-primary{margin-left:calc((90vw - 42rem)/-2);width:calc(90vw - 2rem)}}@media (min-height:50em){html:not(:has(:focus-visible)) .why-are-you-doing-this{position:sticky;top:10px;z-index:10;background-color:#fff}}
.wo2ref_5f{display:none;max-width:none}@media (min-width:50em){.wo2ref_5f{display:block;text-align:center;margin-top:.25em;font-size:.75em}}
.elv-possum-pic + .supporters-avatar {
	display: none;
	position: absolute;
	width: 5vw;
	height: auto;
	margin: 0;
}
@media (min-width: 41.875em) { /* 670px */
	.elv-possum-pic + .supporters-avatar {
		display: block;
		top: 0.8625rem;
		right: 1.8875rem;
		width: 2.9rem;
		object-fit: cover;
		height: 3.8em;
		transform: rotate(5.2deg);
		border: 2px solid #352a24;
	}
}
.elv-header-default .elv-possum-pic + .supporters-avatar {
	display: none;
}

/* Inline list of support avatars */
.is-eleventy-supporter .facepile-supporters img {
	filter: grayscale(1);
}
.is-eleventy-supporter .facepile-supporters .supporters-active {
	opacity: 1;
	position: relative;
	z-index: 2;
}
.is-eleventy-supporter .facepile-supporters .supporters-active img {
	filter: grayscale(0);
}
/* Supporters Header */
.supporters-hed {
	border: none;
	border-top: 1px solid #ddd;
	text-align: center;
	flex-basis: 100%;
	margin-top: 6.666666666667em; /* 100px /15 */
	padding-top: 2em;
	margin-bottom: 1em;
}
/* Gold supporters */
.supporters-gold {
	--fl-gap-h: 2em;
	--fl-stackpoint: 34.375em;
	margin-top: 1rem;
	margin-bottom: 1rem;
}
.supporters-gold .lo-grid > * {
	display: flex;
	align-items: stretch;
	justify-content: center;
	flex-direction: column;
}
.supporters-gold a[href] {
	display: flex;
	justify-content: center;
}
.supporters-gold-sanity {
	flex-grow: 1.5;
}
.supporters-gold-nordhealth {
	flex-grow: 1.8;
}
.supporters-gold-cloudcannon {
	flex-grow: 1.7;
	margin: 0 auto;
	max-width: 28em;
}
.supporters-gold-cloudcannon svg {
	background-color: #034AD8;
	color: #fff;
	padding: 1.25em;
	border-radius: .5em;
}

.supporters-gold-transloadit svg {
	color: #0D1419;
}
@media (prefers-color-scheme: dark) {
	.supporters-gold-transloadit svg {
		color: #fff;
	}
}
@media (min-width: 64em) { /* 1024px */
	.elv-docs .supporters-gold-sanity {
		flex-grow: 1;
	}
	.elv-docs .supporters-gold-nordhealth {
		flex-grow: 1.3;
	}
}

.supporters-gold .lo-grid {
	--lo-c-minwidth: 8em;
	--fl-gap-v: 2em;
	--fl-gap-h: 3em;
	max-width: 40em;
	margin: 0 auto;
}
.supporters-gold .logo,
.supporters-gold svg {
	width: 100%;
	margin: 0;
}
.supporters-gold .avatar {
	max-width: 75px;
	max-height: 75px;
}
.supporters-gold .subhed {
	text-align: center;
	margin-top: 2em;
	margin-bottom: 1em;
}
.supporters-gold + .facepile-supporters {
	margin-top: 0;
}

.supporters-netlify {
	min-width: 10em;
	width: 100%;
	height: auto;
	display: block;
	margin: 0 auto;
}
.cls-1{fill:#3559c7;}.cls-2{fill:currentColor;}
.sites--reverse a {
  display: flex;
  flex-direction: column-reverse;
}

.sites-lo-footer {
  margin-bottom: 2em;
}
.sites-perf-si {
  display: none;
}
.sites-lo > .site-top .sites-perf-si {
  display: block;
}
.sites-screenshot {
  display: block;
  border: 1px solid #ccc;
  border-radius: .4em;
  margin: .5em 0;
  width: 100%;
  height: auto;
}
.sites-icon-auto.sites-icon-auto.sites-icon-auto {
  width: 23.4375em; /* 375px /16 */
  height: auto;
  padding: 2.5em;
}
.sites-site-official .sites-screenshot {
  border-color: #666;
}
@media (min-width: 30em) { /* 480px */
  .site-top {
    display: flex;
  }
  .site-top > .sites-data-container {
    flex-basis: 70%;
  }
  .site-top > .sites-screenshot-container {
    flex-basis: 30%;
    min-width: 9em;
    margin-top: 0;
    margin-left: 1em;
  }
}

.sites-perf-rank-same,
.sites-perf-rank-new,
.sites-perf-rank-pos,
.sites-perf-rank-neg {
  margin-left: .5em;
  font-style: normal;
}
.sites-perf-rank-same {
  color: #d23ed2;
  font-weight: 900;
}
.sites-perf-rank-same:before {
  content: "↔";
  line-height: 1;
}
.sites-perf-rank-new {
  font-style: italic;
  color: #e60074;
}
.sites-perf-rank-pos {
  color: green;
}
.sites-perf-rank-pos:before {
  content: "⬆";
  line-height: 1;
}
.sites-perf-rank-neg {
  color: darkred;
}
.sites-perf-rank-neg:before {
  content: "⬇";
  line-height: 1;
}


.sites-vert {
  margin-top: 2em;
  margin-bottom: 2em;
}
.elv-callout .sites-vert {
  margin-top: 1em;
  margin-bottom: 0;
}
.sites-vert .sites-screenshot {
  margin-top: 4px;
  margin-bottom: 4px;
}
.sites-vert .avatar {
  margin-right: 3px;
  margin-left: 0;
  width: 1em;
  height: 1em;
  object-fit: contain;
}
.sites-vert > .lo-grid {
  --fl-gap-h: 1rem;
  --fl-gap-v: 1rem;
  --lo-c-minwidth: 10em;
  --lo-grid-repeat: auto-fill;
}
.sites-vert--md > .lo-grid,
.sites-vert--lg > .lo-grid {
  --lo-c-minwidth: 7em;
}

@media (min-width: 28.125em) { /* 450px /16 */
	.sites-vert--md > .lo-grid {
		--lo-c-minwidth: 8.5em; /* 136px /16 */
	}
  .sites-vert--lg > .lo-grid {
    --lo-c-minwidth: 10em; /* 160px /16 */
  }
}

.sites-site-name {
  display: block;
  text-align: center;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  font-size: 0.8888888888889em; /* 16px /18 */
}
.sites-site-name--nowrap {
  display: block;
  font-size: 0.7777777777778em; /* 14px /18 */
}
.sites-site-description {
  display: none;
  margin: 0.6428571428571em 0; /* 9px /14 */
  font-size: 0.7777777777778em; /* 14px /18 */
}
.sites-vert--md .sites-site-description,
.sites-vert--lg .sites-site-description {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 4;
  overflow: hidden;
  width: 100%;
}
.sites-site-vert a:focus .sites-screenshot,
.sites-site-vert a:hover .sites-screenshot {
  --shadow-color: rgba(234, 0, 255, 0.747);
  box-shadow: 0 0 0 4px var(--shadow-color);
}
@media (min-width: 62.5em) { /* 1000px */
  .elv-default .sites-vert {
    width: 144%;
    margin-left: -22%;
  }
}
@media (min-width: 84em) { /* 1344px */
  .elv-default .sites-vert {
    width: 170%;
    margin-left: -35%;
  }
}

.sites-site-vert > a {
  text-decoration: none;
}
.sites-site-vert speedlify-score {
  justify-content: center;
}

.sites-site-vert {
  position: relative;
}
.sites-site-vert .sites-site-lighthouse {
  font-size: 0.6666666666667em; /* 12px /18 */
  transform: translateY(-100%);
  position: absolute;
  right: 1px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  border-radius: 1.4em 0 .4em 0;
  background: rgba(0,0,0,.04);
  font-weight: 600;
  padding: 4px;
}

.sites-site-vert .sites-site-lighthouse .speedlify-score {
  background-color: #fff;
}

@supports (aspect-ratio: 1 / 1) {
  .img-gallery {
    --shadow-color: rgba(234, 0, 255, 0.747);
    display: flex;
    flex-direction: column;
    justify-content: center;
    aspect-ratio: 1 / 2;
    border-radius: .4em;
    border: 2px solid #ccc;
    margin-bottom: .3em;
    padding: .5em;
  }
  .img-gallery .sites-screenshot {
    border: none;
  }
  .sites-site-vert a:hover .img-gallery {
    box-shadow: 0 0 0 4px var(--shadow-color);
  }
  .sites-site-vert a:hover .img-gallery .sites-screenshot {
    box-shadow: none;
  }
}

/* Centered */
.sites--center {
	text-align: center;
}

/* Tags */
.sites-tag {
  --tag-text: #000;
  --tag-bg: #dff7ff;
  font-size: 0.6666666666667em; /* 12px /18 */
  line-height: 1.5;
  display: inline-block;
  padding: 0 .75em;
  border-radius: .75em;
  background: var(--tag-bg);
  color: var(--tag-text);
}
@media (prefers-color-scheme: dark) {
  .sites-tag {
    --tag-text: #dff7ff;
    --tag-bg: #000;
  }
}

/* Featured partner */
.sites-featured {
  grid-column: 1/3;
}
.sites-featured .sites-screenshot {
  aspect-ratio: 10/4.81;
  object-fit: cover;
  object-position: top;
}
.sites-featured .sites-site-name {
  font-weight: 700;
}
.sites-vert:not(:has(.sites-featured)) .sites-site-name {
	font-weight: 700;
}
.sites-vert:has(.sites-featured) .sites-site-vert:not(.sites-featured) .avatar-indieweb {
	display: none;
}
.emoji {
	line-height: 1;
}
/* Testimonials */
.testimonials-layout.fl {
	--fl-gap-h: 2em;
	--fl-gap-v: 2em;
}
.testimonials-layout.fl > * {
	flex-basis: 25em; /* 400px /16 */
}
.testimonials blockquote,
.testimonials blockquote > p:first-child:last-child {
	margin: 0;
}

@media (min-width: 64em) { /* 1024px */
	.elv-default .testimonials {
		margin-left: -10em;
		margin-right: -10em;
	}
}