@layer kelp, palette, main, timeline, theme;@layer kelp;
@layer kelp.base,
	kelp.theme,
	kelp.core,
	kelp.extend,
	kelp.utilities,
	kelp.helpers,
	kelp.tokens,
	kelp.state,
	kelp.effects;
@layer palette{
	:where(:root){
	--color-gray-base:gray;
	--color-gray-hue:0;
	--color-gray-chroma:0;
	--color-gray-20:oklch(32.5% calc(.135 * var(--color-gray-chroma)) var(--color-gray-hue));
	--color-gray-70:oklch(75% calc(.13 * var(--color-gray-chroma)) var(--color-gray-hue));
	--color-gray-90:oklch(92% calc(.04 * var(--color-gray-chroma)) var(--color-gray-hue));
	--color-gray-95:oklch(96% calc(.02 * var(--color-gray-chroma)) var(--color-gray-hue));
	--color-indigo-base:#5936c2;
	--color-indigo-hue:287;
	--color-indigo-chroma:1;

	--color-indigo-05:oklch(18.5% calc(.08 * var(--color-indigo-chroma)) var(--color-indigo-hue));
	--color-indigo-10:oklch(24% calc(.1 * var(--color-indigo-chroma)) var(--color-indigo-hue));
	--color-indigo-20:oklch(32.5% calc(.135 * var(--color-indigo-chroma)) var(--color-indigo-hue));
	--color-indigo-30:oklch(40% calc(.16 * var(--color-indigo-chroma)) var(--color-indigo-hue));
	--color-indigo-40:oklch(47% calc(.185 * var(--color-indigo-chroma)) var(--color-indigo-hue));
	--color-indigo-50:oklch(57% calc(.2 * var(--color-indigo-chroma)) var(--color-indigo-hue));
	--color-indigo-60:oklch(67% calc(.175 * var(--color-indigo-chroma)) var(--color-indigo-hue));
	--color-indigo-70:oklch(75% calc(.13 * var(--color-indigo-chroma)) var(--color-indigo-hue));
	--color-indigo-80:oklch(83.5% calc(.085 * var(--color-indigo-chroma)) var(--color-indigo-hue));
	--color-indigo-90:oklch(92% calc(.04 * var(--color-indigo-chroma)) var(--color-indigo-hue));
	--color-indigo-95:oklch(96% calc(.02 * var(--color-indigo-chroma)) var(--color-indigo-hue));
	--color-gray-50:oklch(98.5% 0.002 247.839);
	--color-gray-100:oklch(96.7% 0.003 264.542);
	--color-gray-200:oklch(92.8% 0.006 264.531);
	--color-gray-300:oklch(87.2% 0.01 258.338);
	--color-gray-400:oklch(70.7% 0.022 261.325);
	--color-gray-500:oklch(55.1% 0.027 264.364);
	--color-gray-600:oklch(44.6% 0.03 256.802);
	--color-gray-700:oklch(37.3% 0.034 259.733);
	--color-gray-800:oklch(27.8% 0.033 256.848);
	--color-gray-900:oklch(21% 0.034 264.665);
	--color-gray-950:oklch(13% 0.028 261.692);

	--color-slate-50:oklch(98.4% 0.003 247.858);
	--color-slate-100:oklch(96.8% 0.007 247.896);
	--color-slate-200:oklch(92.9% 0.013 255.508);
	--color-slate-300:oklch(86.9% 0.022 252.894);
	--color-slate-400:oklch(70.4% 0.04 256.788);
	--color-slate-500:oklch(55.4% 0.046 257.417);
	--color-slate-600:oklch(44.6% 0.043 257.281);
	--color-slate-700:oklch(37.2% 0.044 257.287);
	--color-slate-800:oklch(27.9% 0.041 260.031);
	--color-slate-900:oklch(20.8% 0.042 265.755);
	--color-slate-950:oklch(12.9% 0.042 264.695);
	--color-sky-600:oklch(58.8% 0.158 241.966);
	--color-violet-50:oklch(0.969 0.016 293.756);
	--color-violet-100:oklch(0.943 0.029 294.588);
	--color-violet-200:oklch(0.894 0.057 293.283);
	--color-violet-300:oklch(0.811 0.111 293.571);
	--color-violet-400:oklch(0.702 0.183 293.541);
	--color-violet-500:oklch(0.606 0.25 292.717);
	--color-violet-600:oklch(0.541 0.281 293.009);
	--color-violet-700:oklch(0.491 0.27 292.581);
	--color-violet-800:oklch(0.432 0.232 292.759);
	--color-violet-900:oklch(0.38 0.189 293.745);
	--color-violet-950:oklch(0.283 0.141 291.089);

	--color-base-100:oklch(25.33% .016 252.42);
	--color-base-200:oklch(23.26% .014 253.1);
	--color-base-300:oklch(21.15% .012 254.09);
}}

@layer kelp.core{

	.avatar{
		--border-radius:var(--border-radius-circle);
		display:inline-block;
		border-radius:var(--border-radius);
		aspect-ratio:1 / 1;
		object-fit:cover;
	}

	.badge{
		--background-color:var(--color-fill-vivid);
		--color:var(--color-on-vivid);
		--border-color:transparent;
		--gap:var(--size-4xs);
		--decoration:none;
		--decoration-hover:none;
		border-radius:var(--border-radius-s);
		display:inline-flex;
		gap:var(--gap);
		align-items:center;
		font:inherit;
		font-size:var(--size-2xs);
		font-weight:500;
		line-height:var(--line-height-xs);
		padding-block:var(--size-5xs);
		padding-inline:var(--size-3xs);
	}

	.badge,.callout{

		background-color:var(--background-color);
		border:1px solid var(--border-color);
		color:var(--color);
	}

	.callout{
		--background-color:var(--color-fill-muted);
		--color:var(--color-on-muted);
		--border-color:var(--color-border-muted);
		border-radius:var(--border-radius-m);
		margin-block-end:var(--size-5xs);
		padding:var(--size-xs);
	}

	.callout:not(.outline,.vivid){
		color:var(--color-text-normal);
	}

	.callout>:first-child{
		margin-block-start:0;
	}

	.callout>:last-child{
		margin-block-end:0;
	}

	.action-header{
		--gap:var(--size-m);
		--main-size:initial;
		--secondary-size:initial;
		display:flex;
		align-items:baseline;
		gap:var(--gap);
	}

	.action-header>:last-child{
		flex-basis:var(--secondary-size, auto);
		flex-grow:1;
	}

	.action-header>:first-child{
		flex-basis:0;
		flex-grow:999;
		min-inline-size:var(--main-size, 50%);
	}
	.action-header>:last-child button{
		--padding-block:var(--size-4xs);
		--padding-inline:var(--size-4xs);
	}

	.action-header>:last-child button:last-child{
		margin-block-start:calc(-1 * var(--padding-block));
		margin-inline-end:calc(-1 * var(--padding-inline));
	}

}

@layer kelp.utilities{

	.action-header>*{
		margin:0;
	}

}

@layer kelp.core{

	.cluster{
		--gap:var(--size-m);
		display:flex;
		flex-wrap:wrap;
		gap:var(--gap);
	}

}

@layer kelp.utilities{

	.cluster>*{
		margin:0;
	}

}

@layer kelp.core{

	[class*=container]{
		--width:var(--breakpoint-m);
		margin-inline:auto;
		max-width:var(--width);
		width:86vw;
	}

	.container-xs{
		--width:var(--breakpoint-xs);
	}

	.container-s{
		--width:var(--breakpoint-s);
	}

	.container-l{
		--width:var(--breakpoint-l);
	}

	.container-xl{
		--width:var(--breakpoint-xl);
	}

	.container-2xl{
		--width:var(--breakpoint-2xl);
	}

	.breakout{
		--width:100vw;
		margin-inline-start:calc(50% - 50vw);
		min-width:var(--width);
		max-width:var(--width);
		width:var(--width);
	}

	[class*=grid]{
		--gap:var(--size-m);
		grid-template-columns:repeat(12, 1fr);
		grid-template-rows:1fr;
		gap:var(--gap);

		display:flex;
		flex-direction:column;
	}

	.grid,.grid-auto{
		display:grid;
	}

	.grid-auto{
		--width:15ch;
		grid-template-columns:repeat(auto-fit, minmax(min(var(--width), 100%), 1fr));
		grid-template-rows:auto;
	}

}

@layer kelp.core{

	@media (min-width:28em){
		.grid-s{
			display:grid;
		}
	}

	@media (min-width:38em){
		.grid-m{
			display:grid;
		}
	}

	@media (min-width:52em){
		.grid-l{
			display:grid;
		}
	}

	@media (min-width:60em){
		.grid-xl{
			display:grid;
		}
	}

	[class*=item-]{
		--span:1;
		grid-column:auto / span var(--span);
	}

	.item-fourth{
		--span:3;
	}

	.item-third{
		--span:4;
	}

	.item-half{
		--span:6;
	}

	.item-two-thirds{
		--span:8;
	}

	.item-three-fourths{
		--span:9;
	}

	[class*=start-]{
		--start:1;
		grid-row-start:1;
		grid-column-start:var(--start);
	}

	.start-fourth{
		--start:4;
	}

	.start-third{
		--start:5;
	}

	.start-half{
		--start:7;
	}

	.start-two-thirds{
		--start:9;
	}

	.start-three-fourths{
		--start:10;
	}

	[class*=sidecar]{
		--gap:var(--size-m);
		--main-size:initial;
		--secondary-size:initial;
		display:flex;
		flex-wrap:wrap;
		gap:var(--gap);
	}

}

@layer kelp.core{

	.sidecar-end>:last-child,:is(.sidecar,.sidecar-start)>:first-child{
		flex-basis:var(--secondary-size, auto);
		flex-grow:1;
	}

	.sidecar-end>:first-child,:is(.sidecar,.sidecar-start)>:last-child{
		flex-basis:0;
		flex-grow:999;
		min-inline-size:var(--main-size, 50%);
	}

}

@layer kelp.utilities{

	[class*=sidecar]>*{
		margin:0;
	}

}

@layer kelp.core{

	.split{
		--gap:var(--size-m);
		display:flex;
		gap:var(--gap);
		justify-content:space-between;
		flex-wrap:wrap;
	}

}

@layer kelp.utilities{

	.split>*{
		margin:0;
	}

}

@layer kelp.core{

	.stack{
		--gap:var(--size-m);
		display:flex;
		flex-direction:column;
		gap:var(--gap);
	}

}

@layer kelp.utilities{

	.stack>*{
		margin:0;
	}

}

@layer kelp.core{

	hr{
		--border-color:var(--color-border-accent);
		border:0;
		border-block-start:1px solid var(--border-color);
		margin-block:var(--size-5xl);
		margin-inline:auto;
	}

	mark{
		background:var(--color-fill-highlight);
		color:var(--color-on-highlight);
	}

	@media (forced-colors:active){
		mark{
			background:revert;
			color:revert;
		}
	}

	del{
		color:color-mix(in oklab, var(--color), var(--color-mix-deleted));
	}
	*,:after,:before{
		box-sizing:border-box;
	}
	html{
		font-size:var(--font-size-base);
		scroll-behavior:smooth;
		scrollbar-gutter:stable;
		-moz-text-size-adjust:none;
		-webkit-text-size-adjust:none;
		text-size-adjust:none;
	}
	body{
		font-family:var(--font-primary);
		line-height:var(--line-height-m);
		margin:0;
		min-height:100vh;
		overflow-x:clip;
	}

}

@layer kelp.core{

	:where(p,ol,ul,dl,dd,form,fieldset,audio,video,iframe,blockquote,details,table,pre,figure,address){
		margin:0;
		margin-block-end:var(--space);
	}

	:where(p,ol,ul,dl,dd,form,fieldset,audio,video,iframe,blockquote,details,table,pre,figure,address):last-child{
		margin-block-end:0;
	}

	:where(h1,h2,h3,h4,h5,h6){
		margin-block:0 var(--size-m);
	}

	:where(h1){
		margin-block-start:var(--size-4xs);
	}

	:where(h2){
		margin-block-start:var(--size-5xl);
	}

}

@layer kelp.state{
	:is(button,[href],input,select,textarea,summary,[tabindex]):focus-visible{
		outline-color:var(--focus-ring-color);
		outline-style:var(--focus-ring-style);
		outline-width:var(--focus-ring-width);
		outline-offset:var(--focus-ring-offset);
	}
	:not([is-ready]):has(>[show-until-ready])>:not([show-until-ready]),[hidden],[hide-until-ready]:not([is-ready]),[is-ready] [show-until-ready]{
		display:none;
	}
	@media (prefers-reduced-motion:reduce){
		*,:after,:before{
			animation-duration:.01ms !important;
			animation-iteration-count:1 !important;
			transition-duration:.01ms !important;
			scroll-behavior:auto !important;
		}
	}

}

@layer kelp.core{

	blockquote{
		--border-color:var(--color-border-accent);
		--padding-block:var(--size-4xs);
		--padding-inline:var(--size-m);
		border-inline-start:var(--size-5xs) solid var(--border-color);
		padding-block:var(--padding-block);
		padding-inline:var(--padding-inline);
	}

	blockquote pre{
		font-style:normal;
	}

	cite{
		color:var(--color-text-muted);
		display:block;
		font-size:var(--size-s);
		padding-block-start:var(--size-m);
	}

}

@layer kelp.core{

	.btn,button,input:is([type=button],[type=reset],[type=submit]){
		--background-color:var(--color-fill-vivid);
		--background-color-hover:color-mix(in oklab, var(--color-fill-vivid), var(--color-mix-hover));
		--background-color-active:color-mix(in oklab, var(--color-fill-vivid), var(--color-mix-active));

		--color:var(--color-on-vivid);
		--color-hover:var(--color-on-vivid);
		--color-active:var(--color-on-vivid);

		--border-color:transparent;
		--border-color-hover:transparent;
		--border-color-active:transparent;

		--gap:var(--size-4xs);
		--padding-block:var(--size-4xs);
		--padding-inline:var(--size-m);

		--decoration:none;
		--decoration-hover:none;

		background-color:var(--background-color);
		border:1px solid var(--border-color);
		border-radius:var(--border-radius-s);
		color:var(--color);
		cursor:pointer;
		display:inline-flex;
		gap:var(--gap);
		align-items:center;
		font:inherit;
		font-size:var(--size-s);
		font-weight:400;
		line-height:var(--line-height-xs);
		padding-block:var(--padding-block);
		padding-inline:var(--padding-inline);
		text-align:center;
		vertical-align:middle;
	}
	.btn-link,.link{
		--background-color:transparent;
		--background-color-hover:transparent;
		--background-color-active:transparent;

		--color:var(--color-text-link);
		--color-hover:var(--color-text-link-hover);
		--color-active:var(--color-text-link-hover);

		--font-weight:unset;
		--decoration:var(--decoration-text-link);
		--decoration-hover:var(--decoration-text-link-hover);

		text-decoration:var(--decoration);
		-webkit-text-decoration:var(--decoration);
	}
	[type=submit],button{
	    appearance:none;
	}

}

@layer kelp.state{

	:where(button,.btn,input:is([type=button],[type=reset],[type=submit])):hover{
		--background-color:var(--background-color-hover);
		--border-color:var(--border-color-hover);
		--color:var(--color-hover);
	}

	:where(button,.btn,input:is([type=button],[type=reset],[type=submit])):is(:active,[data-active]){
		--background-color:var(--background-color-active);
		--border-color:var(--border-color-active);
		--color:var(--color-active);
	}

	[data-submitting] button,button[data-disabled],button[disabled]{
		--opacity:0.7;
		box-shadow:none;
		cursor:not-allowed;
		opacity:var(--opacity);
		pointer-events:none;
	}
	.btn-link:hover,.link:hover{
		--decoration:var(--decoration-text-link-hover);
	}

}

@layer kelp.core{

	code,kbd,pre,samp{
		font-family:var(--font-monospace);
		font-size:1em;
	}

	code{
		color:var(--color-text-code);
		word-wrap:break-word;
	}

	pre{
		background-color:var(--color-code-fill);
		border:1px solid var(--color-code-border);
		border-radius:var(--border-radius-m);
		color:var(--color-code-on);
		display:block;
		font-size:var(--font-size-code);
		line-height:var(--line-height-m);
		overflow:auto;
		padding:var(--size-xs);
		tab-size:2;
		white-space:pre-wrap;
		word-break:break-all;
	}

	@media (min-width:38rem){
		pre{
			tab-size:4;
		}
	}

	pre code{
		color:inherit;
	}

	summary{
		--margin:var(--size-3xs);
		cursor:pointer;
	}

	[open]>summary{
		margin-block-end:var(--margin);
	}

}

@layer kelp.core{
	html:has([open]:modal){
		overflow:hidden;
	}
	dialog{
		--background-color:var(--color-background);
		--border-color:var(--color-border-muted);
		--color:var(--color-text-normal);
		--gap:var(--size-2xl);
		--width:32em;

		background-color:var(--background-color);
		border:1px solid var(--border-color);
		color:var(--color);
		border-radius:var(--border-radius-m);
		max-height:calc(100% - var(--size-5xl));
		max-width:calc(100% - var(--size-5xl));
		padding:var(--gap);
		width:var(--width);
	}

	@media (forced-colors:active){
		dialog{
			border-width:var(--size-5xs);
		}
	}

	dialog:modal::backdrop{
		background-color:rgba(0,0,0,.5);
	}
	dialog:has(.action-body) .action-header{
		position:sticky;
		top:0;
	}

	dialog:has(.action-body) .action-footer{
		position:sticky;
		bottom:0;
	}

	dialog[open]:has(.action-body){
		display:flex;
		flex-direction:column;
		gap:var(--gap);
		overflow:hidden;
	}

	dialog .action-body{
		overflow:auto;
		margin-inline-end:calc(-1 * var(--gap));
		padding-inline-end:var(--gap);
	}
	[class*=drawer]{
		border-radius:0;
		max-height:100%;
		max-width:100%;
		margin:0;
	}

	.drawer,.drawer-end,.drawer-start{
		height:100%;
	}

	.drawer,.drawer-end{
		inset-inline-end:0;
		inset-inline-start:auto;
	}

	.drawer-start{
		inset-inline-start:0;
		inset-inline-end:auto;
	}

	.drawer-bottom,.drawer-top{
		--width:100%;
		inset-inline-end:0;
		inset-inline-start:0;
	}

	.drawer-top{
		inset-block-start:0;
	}

	.drawer-bottom{
		inset-block-end:0;
		inset-block-start:auto;
	}

	.dialog-xs{
		--width:22em;
	}

	.dialog-s{
		--width:26em;
	}

	.dialog-l{
		--width:40em;
	}

	.dialog-xl{
		--width:52em;
	}

	.dialog-full{
		--width:100%;
		height:100%;
	}

	fieldset{
		border:0;
		padding:0;
	}

	label,legend{
		--gap:var(--size-5xs);
		margin:0;
		margin-block-end:var(--gap);
		padding:0;
	}

	legend{
		display:block;
	}

	label{
		--gap:var(--size-5xs);
		display:flex;
		align-items:center;
		column-gap:var(--gap);
		width:100%;
	}

}

@layer kelp.core{
	label:has(:is(input,select,textarea):not([type=radio],[type=checkbox])){
	    display:block;
	    margin-block-end:0;
	}

	label:has(input,select,textarea) :is(input,select,textarea):not([type=radio],[type=checkbox]){
	    margin-block-start:var(--gap);
	}
	input,optgroup,select,textarea{
		color:var(--color-text-normal);
		font:inherit;
		margin:0;
		padding-block:var(--size-5xs);
		padding-inline:var(--size-4xs);
	}

	::placeholder{
		color:var(--color-text-muted);
	}

	.dark ::-webkit-calendar-picker-indicator{
		filter:invert(1);
	}

	@media (forced-colors:active){
		.dark ::-webkit-calendar-picker-indicator{
			filter:invert(1);
		}
	}

	input,select,textarea{
		--border-size:1px;
		--border-color:var(--color-border-vivid);
		--border-style:solid;
		--border-radius:var(--border-radius-s);
		background-color:var(--color-background);
		border:var(--border-size) var(--border-style) var(--border-color);
		border-radius:var(--border-radius);
		color:var(--color-text-input);
		line-height:var(--line-height-m);
		max-width:100%;
		width:100vw;
	}
	::-webkit-datetime-edit,::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-fields-wrapper,::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-meridiem-field,::-webkit-datetime-edit-minute-field,::-webkit-datetime-edit-month-field,::-webkit-datetime-edit-text,::-webkit-datetime-edit-year-field{
		padding:0;
	}

	input::-webkit-inner-spin-button{
		height:auto;
	}

	:where(input,textarea,select):not(:last-child){
		margin-block-end:var(--size-xl);
	}

	textarea{
		--height:8em;
		min-height:var(--height);
		overflow:auto;
		resize:vertical;
	}

	[type=checkbox],[type=image],[type=radio]{
		cursor:pointer;
		display:inline-block;
		height:auto;
		width:auto;
		padding:0;
	}

	[type=checkbox],[type=radio]{
		appearance:none;
		height:var(--size-m);
		width:var(--size-m);

		display:inline-flex;
		flex:0 0 auto;
		align-items:center;
		justify-content:center;
	}

	[type=checkbox]{
		font-weight:700;
	}

	[type=radio]{
		border-radius:50%;
	}

	[type=color]{
		height:3em;
		width:3em;
	}

}

@layer kelp.state{

	:is([type=checkbox],[type=radio],[type=range]):focus-visible,:is(input,textarea,select):not([type=checkbox],[type=radio],[type=range]):focus{
		outline-color:var(--focus-ring-color);
		outline-style:var(--focus-ring-style);
		outline-width:var(--focus-ring-width);
		outline-offset:var(--focus-ring-offset);
	}

	[type=radio]:checked{
		background-color:transparent;
		border-color:var(--color-checked);
	}

	[type=radio]:checked:after{
		background-color:var(--color-checked);
		border-radius:50%;
		content:"";
		width:.667em;
		aspect-ratio:1;
	}

	@media (forced-colors:active){
		[type=radio]:checked:after{
			content:"\002713";
		}
	}

	[type=checkbox]:checked{
		background-color:var(--color-checked);
		border-color:var(--color-checked);
		color:var(--color-checked-icon);
	}

	[type=checkbox]:checked:after{
		content:"\002713";
		font-size:var(--size-xs);
	}

	:is(input,textarea,select):is([readonly],[disabled]){
		--background-color:var(--color-fill-muted);
		--color:var(--color-on-muted);
		background-color:var(--background-color);
		color:var(--color);
	}

	[disabled]:checked{
		--color-checked:var(--color-fill-muted);
		--color-checked-icon:var(--color-on-muted);
		border-color:var(--border-color);
	}

}

@layer kelp.core{

	h1,h2,h3,h4,h5,h6{
		font-family:var(--font-secondary);
		line-height:var(--line-height-s);
		text-wrap:pretty;
		word-wrap:break-word;
	}

	.h1,h1{
		font-size:var(--size-3xl);
	}

	@media (min-width:38em){
		.h1,h1{
			font-size:var(--size-4xl);
		}
	}

	.h2,h2{
		font-size:var(--size-2xl);
	}

	.h3,h3{
		font-size:var(--size-l);
	}

	.h4,.h5,.h6,h4,h5,h6{
		font-size:var(--size-m);
	}
	a{
		--color:var(--color-text-link);
		--color-hover:var(--color-text-link-hover);
		--decoration:var(--decoration-text-link);
		--decoration-hover:var(--decoration-text-link-hover);
		color:var(--color);
		text-decoration:var(--decoration);
		-webkit-text-decoration:var(--decoration);
		word-wrap:break-word;
	}

}

@layer kelp.state{

	a:hover{
		color:var(--color-hover);
		text-decoration:var(--decoration-hover);
		-webkit-text-decoration:var(--decoration-hover);
	}
	.comment-header .datetime a:not(:hover),.comment-header .user a:not(:hover),.link-subtle:not(:hover){
		text-decoration:none;
	}

}

@layer kelp.core{

	ol,ul{
		padding-inline:var(--size-5xl) 0;
	}

	dt{
		font-weight:700;
	}
	.list-inline,.list-unstyled{
		list-style-type:"";
		padding-inline:0;
	}

	.list-inline{
		--gap:var(--size-m);
		display:flex;
		column-gap:var(--gap);
		row-gap:calc(.5 * var(--gap));
		flex-wrap:wrap;
		align-items:center;
	}
	embed,iframe,img,object,picture,svg,video{
		max-width:100%;
	}

	img,picture,video{
	    height:auto;
	}
	audio,iframe,video{
		width:100%;
	}

	figcaption{
		font-size:var(--size-s);
		font-style:italic;
		color:var(--color-text-muted);
		padding-block-start:var(--size-4xs);
		text-align:center;
	}

	table{
		--border-color:var(--color-border-muted);
		--background-color:var(--color-fill-muted);
		--color:var(--color-text-normal);
		border-collapse:collapse;
		border-spacing:0;
		max-width:100%;
		width:100%;
	}

	td,th{
		text-align:left;
		padding:var(--size-4xs);
	}

	th{
		border-block-end:var(--size-6xs) solid var(--border-color);
		font-weight:700;
		vertical-align:bottom;
	}

	td{
		border-block-start:1px solid var(--border-color);
		vertical-align:top;
	}
	.table-striped tbody tr:nth-child(odd of :not([hidden])){
		background-color:var(--background-color);
	}

	.table-striped.vivid tbody tr:nth-child(odd of :not([hidden])){
		color:var(--color);
	}

	.navbar{
		--justify:center;
		--gap:var(--size-m);
		display:flex;
		column-gap:var(--gap);
		row-gap:calc(.5 * var(--gap));
		align-items:center;
		justify-content:space-between;
		padding-block:var(--size-m);
		text-align:var(--justify);
	}

	.logo{
		--color:var(--color, var(--color-text-normal));
		--color-hover:var(--color-text-link);
		--decoration:none;
		--decoration-hover:none;
		font-weight:700;
	}

	.menu{
		--gap:var(--size-m);
		display:flex;
		column-gap:var(--gap);
		row-gap:calc(.5 * var(--gap));
	}

}

@layer kelp.core{

	:is(.navbar,.menu)>ul{
		--gap:var(--size-m);
		display:flex;
		align-items:center;
		justify-content:var(--justify);
		column-gap:var(--gap);
		list-style-type:"";
		padding:0;
		margin:0;
	}

	.navbar,:not(.no-wrap) :is(.menu,.navbar>ul,.menu>ul){
		flex-wrap:wrap;
	}

	.nav-collapse a,.navbar a{
		--decoration:none;
	}

	:is(.navbar,.menu) li:last-child .plain{
		margin-inline-end:calc(-1 * var(--padding-inline));
	}

	@media (max-width:52em){
		.navbar:not(.no-wrap)>*{
			flex-basis:100%;
		}

		:not(.no-wrap) .menu{
			justify-content:var(--justify);
		}
	}

}

@layer kelp.base{
	.light,:where(:root){
		--color-background:#fff;
		--color-text-normal:var(--color-gray-10);
		--color-text-muted:var(--color-gray-50);
		--color-text-input:var(--color-gray-30);
		--color-text-code:var(--color-pink-50);
		--color-highlight:#fbf9c9;
		--color-fill-highlight:var(--color-highlight);
		--color-on-highlight:inherit;
		--color-text-link:var(--color-blue-50);
		--color-text-link-hover:var(--color-blue-40);
		--decoration-text-link:underline dotted;
		--decoration-text-link-hover:underline;
		--color-checked:var(--color-blue-50);
		--color-checked-icon:#fff;
		--color-mix-hover:#000 10%;
		--color-mix-active:#000 20%;
		--color-mix-transparent:transparent 20%;
		--color-mix-deleted:transparent 40%;
		--focus-ring-color:var(--color-blue-50);
		--focus-ring-style:solid;
		--focus-ring-width:var(--size-6xs);
		--focus-ring-offset:var(--size-6xs);
		--color-neutral-fill-muted:var(--color-gray-95);
		--color-neutral-fill-accent:var(--color-gray-90);
		--color-neutral-fill-vivid:var(--color-gray-30);
		--color-neutral-border-muted:var(--color-gray-90);
		--color-neutral-border-accent:var(--color-gray-80);
		--color-neutral-border-vivid:var(--color-gray-40);
		--color-neutral-on-muted:var(--color-gray-10);
		--color-neutral-on-accent:var(--color-gray-10);
		--color-neutral-on-vivid:#fff;
		--color-neutral-outline:var(--color-gray-10);

		--color-primary-fill-muted:var(--color-blue-95);
		--color-primary-fill-accent:var(--color-blue-90);
		--color-primary-fill-vivid:var(--color-blue-50);
		--color-primary-border-muted:var(--color-blue-90);
		--color-primary-border-accent:var(--color-blue-80);
		--color-primary-border-vivid:var(--color-blue-60);
		--color-primary-on-muted:var(--color-blue-30);
		--color-primary-on-accent:var(--color-blue-20);
		--color-primary-on-vivid:#fff;
		--color-primary-outline:var(--color-blue-50);

		--color-secondary-fill-muted:var(--color-indigo-95);
		--color-secondary-fill-accent:var(--color-indigo-90);
		--color-secondary-fill-vivid:var(--color-indigo-50);
		--color-secondary-border-muted:var(--color-indigo-90);
		--color-secondary-border-accent:var(--color-indigo-80);
		--color-secondary-border-vivid:var(--color-indigo-60);
		--color-secondary-on-muted:var(--color-indigo-30);
		--color-secondary-on-accent:var(--color-indigo-20);
		--color-secondary-on-vivid:#fff;
		--color-secondary-outline:var(--color-indigo-50);

		--color-success-fill-muted:var(--color-green-95);
		--color-success-fill-accent:var(--color-green-90);
		--color-success-fill-vivid:var(--color-green-50);
		--color-success-border-muted:var(--color-green-90);
		--color-success-border-accent:var(--color-green-80);
		--color-success-border-vivid:var(--color-green-60);
		--color-success-on-muted:var(--color-green-30);
		--color-success-on-accent:var(--color-green-20);
		--color-success-on-vivid:#fff;
		--color-success-outline:var(--color-green-50);

		--color-warning-fill-muted:var(--color-yellow-95);
		--color-warning-fill-accent:var(--color-yellow-90);
		--color-warning-fill-vivid:var(--color-yellow-50);
		--color-warning-border-muted:var(--color-yellow-90);
		--color-warning-border-accent:var(--color-yellow-80);
		--color-warning-border-vivid:var(--color-yellow-60);
		--color-warning-on-muted:var(--color-yellow-30);
		--color-warning-on-accent:var(--color-yellow-20);
		--color-warning-on-vivid:#fff;
		--color-warning-outline:var(--color-yellow-50);

		--color-danger-fill-muted:var(--color-red-95);
		--color-danger-fill-accent:var(--color-red-90);
		--color-danger-fill-vivid:var(--color-red-50);
		--color-danger-border-muted:var(--color-red-90);
		--color-danger-border-accent:var(--color-red-80);
		--color-danger-border-vivid:var(--color-red-60);
		--color-danger-on-muted:var(--color-red-30);
		--color-danger-on-accent:var(--color-red-20);
		--color-danger-on-vivid:#fff;
		--color-danger-outline:var(--color-red-50);
		--color-code-fill:var(--color-gray-10);
		--color-code-border:var(--color-gray-20);
		--color-code-on:#fff;

	}
	.dark{
		--color-background:var(--color-gray-10);
		--color-text-normal:#fff;
		--color-text-muted:var(--color-gray-80);
		--color-text-input:var(--color-gray-80);
		--color-text-code:var(--color-pink-80);
		--color-fill-highlight:color-mix(in oklab, var(--color-highlight), transparent 85%);
		--color-text-link:var(--color-blue-70);
		--color-text-link-hover:var(--color-blue-80);
		--color-checked:var(--color-blue-60);
		--focus-ring-color:var(--color-blue-60);
		--color-neutral-fill-muted:var(--color-gray-20);
		--color-neutral-fill-accent:var(--color-gray-30);
		--color-neutral-fill-vivid:var(--color-gray-80);
		--color-neutral-border-muted:var(--color-gray-30);
		--color-neutral-border-accent:var(--color-gray-40);
		--color-neutral-border-vivid:var(--color-gray-70);
		--color-neutral-on-muted:var(--color-gray-95);
		--color-neutral-on-accent:var(--color-gray-95);
		--color-neutral-on-vivid:var(--color-gray-05);
		--color-neutral-outline:var(--color-gray-80);

		--color-primary-fill-muted:var(--color-blue-20);
		--color-primary-fill-accent:var(--color-blue-30);
		--color-primary-border-muted:var(--color-blue-30);
		--color-primary-border-accent:var(--color-blue-40);
		--color-primary-on-muted:var(--color-blue-95);
		--color-primary-on-accent:var(--color-blue-95);
		--color-primary-outline:var(--color-blue-70);

		--color-secondary-fill-muted:var(--color-indigo-20);
		--color-secondary-fill-accent:var(--color-indigo-30);
		--color-secondary-border-muted:var(--color-indigo-30);
		--color-secondary-border-accent:var(--color-indigo-40);
		--color-secondary-on-muted:var(--color-indigo-95);
		--color-secondary-on-accent:var(--color-indigo-95);
		--color-secondary-outline:var(--color-indigo-70);

		--color-success-fill-muted:var(--color-green-20);
		--color-success-fill-accent:var(--color-green-30);
		--color-success-border-muted:var(--color-green-30);
		--color-success-border-accent:var(--color-green-40);
		--color-success-on-muted:var(--color-green-95);
		--color-success-on-accent:var(--color-green-95);
		--color-success-outline:var(--color-green-70);

		--color-warning-fill-muted:var(--color-yellow-20);
		--color-warning-fill-accent:var(--color-yellow-30);
		--color-warning-border-muted:var(--color-yellow-30);
		--color-warning-border-accent:var(--color-yellow-40);
		--color-warning-on-muted:var(--color-yellow-95);
		--color-warning-on-accent:var(--color-yellow-95);
		--color-warning-outline:var(--color-yellow-70);

		--color-danger-fill-muted:var(--color-red-20);
		--color-danger-fill-accent:var(--color-red-30);
		--color-danger-border-muted:var(--color-red-30);
		--color-danger-border-accent:var(--color-red-40);
		--color-danger-on-muted:var(--color-red-95);
		--color-danger-on-accent:var(--color-red-95);
		--color-danger-outline:var(--color-red-70);
		--color-code-fill:var(--color-gray-05);

	}

}

@layer kelp.base{

	:where(:root){
		--font-primary:ui-sans-serif, system-ui, sans-serif;
		--font-secondary:Charter, "Bitstream Charter", "Sitka Text", Cambria, serif;
		--font-monospace:ui-monospace, "Cascadia Code", "Source Code Pro", Menlo, Consolas, "DejaVu Sans Mono", monospace;
	}

}

@layer kelp.base{

	:where(:root){

		--color-red-base:#e50000;
		--color-red-hue:29.23;
		--color-red-chroma:1;

		--color-orange-base:#ff8d00;
		--color-orange-hue:58.75;
		--color-orange-chroma:1;

		--color-yellow-base:#ffc107;
		--color-yellow-hue:84.9338;
		--color-yellow-chroma:1;

		--color-green-base:#028121;
		--color-green-hue:145.01;
		--color-green-chroma:1;

		--color-cyan-base:#73d7ee;
		--color-cyan-hue:214.56;
		--color-cyan-chroma:1;

		--color-blue-base:#004cff;
		--color-blue-hue:263.27;
		--color-blue-chroma:1;

		--color-indigo-base:#5936c2;
		--color-indigo-hue:287;
		--color-indigo-chroma:1;

		--color-purple-base:#760088;
		--color-purple-hue:321.05;
		--color-purple-chroma:1;

		--color-pink-base:#ffafc7;
		--color-pink-hue:359.86;
		--color-pink-chroma:1;

		--color-gray-base:gray;
		--color-gray-hue:0;
		--color-gray-chroma:0;

	}

}

@layer kelp.tokens{

	:where(:root){

		--color-red-05:oklch(18.5% calc(.08 * var(--color-red-chroma)) var(--color-red-hue));
		--color-red-10:oklch(24% calc(.1 * var(--color-red-chroma)) var(--color-red-hue));
		--color-red-20:oklch(32.5% calc(.135 * var(--color-red-chroma)) var(--color-red-hue));
		--color-red-30:oklch(40% calc(.16 * var(--color-red-chroma)) var(--color-red-hue));
		--color-red-40:oklch(47% calc(.185 * var(--color-red-chroma)) var(--color-red-hue));
		--color-red-50:oklch(57% calc(.2 * var(--color-red-chroma)) var(--color-red-hue));
		--color-red-60:oklch(67% calc(.175 * var(--color-red-chroma)) var(--color-red-hue));
		--color-red-70:oklch(75% calc(.13 * var(--color-red-chroma)) var(--color-red-hue));
		--color-red-80:oklch(83.5% calc(.085 * var(--color-red-chroma)) var(--color-red-hue));
		--color-red-90:oklch(92% calc(.04 * var(--color-red-chroma)) var(--color-red-hue));
		--color-red-95:oklch(96% calc(.02 * var(--color-red-chroma)) var(--color-red-hue));

		--color-orange-05:oklch(18.5% calc(.08 * var(--color-orange-chroma)) var(--color-orange-hue));
		--color-orange-10:oklch(24% calc(.1 * var(--color-orange-chroma)) var(--color-orange-hue));
		--color-orange-20:oklch(32.5% calc(.135 * var(--color-orange-chroma)) var(--color-orange-hue));
		--color-orange-30:oklch(40% calc(.16 * var(--color-orange-chroma)) var(--color-orange-hue));
		--color-orange-40:oklch(47% calc(.185 * var(--color-orange-chroma)) var(--color-orange-hue));
		--color-orange-50:oklch(57% calc(.2 * var(--color-orange-chroma)) var(--color-orange-hue));
		--color-orange-60:oklch(67% calc(.175 * var(--color-orange-chroma)) var(--color-orange-hue));
		--color-orange-70:oklch(75% calc(.13 * var(--color-orange-chroma)) var(--color-orange-hue));
		--color-orange-80:oklch(83.5% calc(.085 * var(--color-orange-chroma)) var(--color-orange-hue));
		--color-orange-90:oklch(92% calc(.04 * var(--color-orange-chroma)) var(--color-orange-hue));
		--color-orange-95:oklch(96% calc(.02 * var(--color-orange-chroma)) var(--color-orange-hue));

		--color-yellow-05:oklch(18.5% calc(.08 * var(--color-yellow-chroma)) var(--color-yellow-hue));
		--color-yellow-10:oklch(24% calc(.1 * var(--color-yellow-chroma)) var(--color-yellow-hue));
		--color-yellow-20:oklch(32.5% calc(.135 * var(--color-yellow-chroma)) var(--color-yellow-hue));
		--color-yellow-30:oklch(40% calc(.16 * var(--color-yellow-chroma)) var(--color-yellow-hue));
		--color-yellow-40:oklch(47% calc(.185 * var(--color-yellow-chroma)) var(--color-yellow-hue));
		--color-yellow-50:oklch(57% calc(.2 * var(--color-yellow-chroma)) var(--color-yellow-hue));
		--color-yellow-60:oklch(67% calc(.175 * var(--color-yellow-chroma)) var(--color-yellow-hue));
		--color-yellow-70:oklch(75% calc(.13 * var(--color-yellow-chroma)) var(--color-yellow-hue));
		--color-yellow-80:oklch(83.5% calc(.085 * var(--color-yellow-chroma)) var(--color-yellow-hue));
		--color-yellow-90:oklch(92% calc(.04 * var(--color-yellow-chroma)) var(--color-yellow-hue));
		--color-yellow-95:oklch(96% calc(.02 * var(--color-yellow-chroma)) var(--color-yellow-hue));

		--color-green-05:oklch(18.5% calc(.08 * var(--color-green-chroma)) var(--color-green-hue));
		--color-green-10:oklch(24% calc(.1 * var(--color-green-chroma)) var(--color-green-hue));
		--color-green-20:oklch(32.5% calc(.135 * var(--color-green-chroma)) var(--color-green-hue));
		--color-green-30:oklch(40% calc(.16 * var(--color-green-chroma)) var(--color-green-hue));
		--color-green-40:oklch(47% calc(.185 * var(--color-green-chroma)) var(--color-green-hue));
		--color-green-50:oklch(57% calc(.2 * var(--color-green-chroma)) var(--color-green-hue));
		--color-green-60:oklch(67% calc(.175 * var(--color-green-chroma)) var(--color-green-hue));
		--color-green-70:oklch(75% calc(.13 * var(--color-green-chroma)) var(--color-green-hue));
		--color-green-80:oklch(83.5% calc(.085 * var(--color-green-chroma)) var(--color-green-hue));
		--color-green-90:oklch(92% calc(.04 * var(--color-green-chroma)) var(--color-green-hue));
		--color-green-95:oklch(96% calc(.02 * var(--color-green-chroma)) var(--color-green-hue));

		--color-cyan-05:oklch(18.5% calc(.08 * var(--color-cyan-chroma)) var(--color-cyan-hue));
		--color-cyan-10:oklch(24% calc(.1 * var(--color-cyan-chroma)) var(--color-cyan-hue));
		--color-cyan-20:oklch(32.5% calc(.135 * var(--color-cyan-chroma)) var(--color-cyan-hue));
		--color-cyan-30:oklch(40% calc(.16 * var(--color-cyan-chroma)) var(--color-cyan-hue));
		--color-cyan-40:oklch(47% calc(.185 * var(--color-cyan-chroma)) var(--color-cyan-hue));
		--color-cyan-50:oklch(57% calc(.2 * var(--color-cyan-chroma)) var(--color-cyan-hue));
		--color-cyan-60:oklch(67% calc(.175 * var(--color-cyan-chroma)) var(--color-cyan-hue));
		--color-cyan-70:oklch(75% calc(.13 * var(--color-cyan-chroma)) var(--color-cyan-hue));
		--color-cyan-80:oklch(83.5% calc(.085 * var(--color-cyan-chroma)) var(--color-cyan-hue));
		--color-cyan-90:oklch(92% calc(.04 * var(--color-cyan-chroma)) var(--color-cyan-hue));
		--color-cyan-95:oklch(96% calc(.02 * var(--color-cyan-chroma)) var(--color-cyan-hue));

		--color-blue-05:oklch(18.5% calc(.08 * var(--color-blue-chroma)) var(--color-blue-hue));
		--color-blue-10:oklch(24% calc(.1 * var(--color-blue-chroma)) var(--color-blue-hue));
		--color-blue-20:oklch(32.5% calc(.135 * var(--color-blue-chroma)) var(--color-blue-hue));
		--color-blue-30:oklch(40% calc(.16 * var(--color-blue-chroma)) var(--color-blue-hue));
		--color-blue-40:oklch(47% calc(.185 * var(--color-blue-chroma)) var(--color-blue-hue));
		--color-blue-50:oklch(57% calc(.2 * var(--color-blue-chroma)) var(--color-blue-hue));
		--color-blue-60:oklch(67% calc(.175 * var(--color-blue-chroma)) var(--color-blue-hue));
		--color-blue-70:oklch(75% calc(.13 * var(--color-blue-chroma)) var(--color-blue-hue));
		--color-blue-80:oklch(83.5% calc(.085 * var(--color-blue-chroma)) var(--color-blue-hue));
		--color-blue-90:oklch(92% calc(.04 * var(--color-blue-chroma)) var(--color-blue-hue));
		--color-blue-95:oklch(96% calc(.02 * var(--color-blue-chroma)) var(--color-blue-hue));

		--color-indigo-05:oklch(18.5% calc(.08 * var(--color-indigo-chroma)) var(--color-indigo-hue));
		--color-indigo-10:oklch(24% calc(.1 * var(--color-indigo-chroma)) var(--color-indigo-hue));
		--color-indigo-20:oklch(32.5% calc(.135 * var(--color-indigo-chroma)) var(--color-indigo-hue));
		--color-indigo-30:oklch(40% calc(.16 * var(--color-indigo-chroma)) var(--color-indigo-hue));
		--color-indigo-40:oklch(47% calc(.185 * var(--color-indigo-chroma)) var(--color-indigo-hue));
		--color-indigo-50:oklch(57% calc(.2 * var(--color-indigo-chroma)) var(--color-indigo-hue));
		--color-indigo-60:oklch(67% calc(.175 * var(--color-indigo-chroma)) var(--color-indigo-hue));
		--color-indigo-70:oklch(75% calc(.13 * var(--color-indigo-chroma)) var(--color-indigo-hue));
		--color-indigo-80:oklch(83.5% calc(.085 * var(--color-indigo-chroma)) var(--color-indigo-hue));
		--color-indigo-90:oklch(92% calc(.04 * var(--color-indigo-chroma)) var(--color-indigo-hue));
		--color-indigo-95:oklch(96% calc(.02 * var(--color-indigo-chroma)) var(--color-indigo-hue));

		--color-purple-05:oklch(18.5% calc(.08 * var(--color-purple-chroma)) var(--color-purple-hue));
		--color-purple-10:oklch(24% calc(.1 * var(--color-purple-chroma)) var(--color-purple-hue));
		--color-purple-20:oklch(32.5% calc(.135 * var(--color-purple-chroma)) var(--color-purple-hue));
		--color-purple-30:oklch(40% calc(.16 * var(--color-purple-chroma)) var(--color-purple-hue));
		--color-purple-40:oklch(47% calc(.185 * var(--color-purple-chroma)) var(--color-purple-hue));
		--color-purple-50:oklch(57% calc(.2 * var(--color-purple-chroma)) var(--color-purple-hue));
		--color-purple-60:oklch(67% calc(.175 * var(--color-purple-chroma)) var(--color-purple-hue));
		--color-purple-70:oklch(75% calc(.13 * var(--color-purple-chroma)) var(--color-purple-hue));
		--color-purple-80:oklch(83.5% calc(.085 * var(--color-purple-chroma)) var(--color-purple-hue));
		--color-purple-90:oklch(92% calc(.04 * var(--color-purple-chroma)) var(--color-purple-hue));
		--color-purple-95:oklch(96% calc(.02 * var(--color-purple-chroma)) var(--color-purple-hue));

		--color-pink-05:oklch(18.5% calc(.08 * var(--color-pink-chroma)) var(--color-pink-hue));
		--color-pink-10:oklch(24% calc(.1 * var(--color-pink-chroma)) var(--color-pink-hue));
		--color-pink-20:oklch(32.5% calc(.135 * var(--color-pink-chroma)) var(--color-pink-hue));
		--color-pink-30:oklch(40% calc(.16 * var(--color-pink-chroma)) var(--color-pink-hue));
		--color-pink-40:oklch(47% calc(.185 * var(--color-pink-chroma)) var(--color-pink-hue));
		--color-pink-50:oklch(57% calc(.2 * var(--color-pink-chroma)) var(--color-pink-hue));
		--color-pink-60:oklch(67% calc(.175 * var(--color-pink-chroma)) var(--color-pink-hue));
		--color-pink-70:oklch(75% calc(.13 * var(--color-pink-chroma)) var(--color-pink-hue));
		--color-pink-80:oklch(83.5% calc(.085 * var(--color-pink-chroma)) var(--color-pink-hue));
		--color-pink-90:oklch(92% calc(.04 * var(--color-pink-chroma)) var(--color-pink-hue));
		--color-pink-95:oklch(96% calc(.02 * var(--color-pink-chroma)) var(--color-pink-hue));

		--color-gray-05:oklch(18.5% calc(.08 * var(--color-gray-chroma)) var(--color-gray-hue));
		--color-gray-10:oklch(24% calc(.1 * var(--color-gray-chroma)) var(--color-gray-hue));
		--color-gray-20:oklch(32.5% calc(.135 * var(--color-gray-chroma)) var(--color-gray-hue));
		--color-gray-30:oklch(40% calc(.16 * var(--color-gray-chroma)) var(--color-gray-hue));
		--color-gray-40:oklch(47% calc(.185 * var(--color-gray-chroma)) var(--color-gray-hue));
		--color-gray-50:oklch(57% calc(.2 * var(--color-gray-chroma)) var(--color-gray-hue));
		--color-gray-60:oklch(67% calc(.175 * var(--color-gray-chroma)) var(--color-gray-hue));
		--color-gray-70:oklch(75% calc(.13 * var(--color-gray-chroma)) var(--color-gray-hue));
		--color-gray-80:oklch(83.5% calc(.085 * var(--color-gray-chroma)) var(--color-gray-hue));
		--color-gray-90:oklch(92% calc(.04 * var(--color-gray-chroma)) var(--color-gray-hue));
		--color-gray-95:oklch(96% calc(.02 * var(--color-gray-chroma)) var(--color-gray-hue));

	}

}

@layer kelp.base{
	:where(:root){
		--breakpoint-xs:18em;
		--breakpoint-s:28em;
		--breakpoint-m:38em;
		--breakpoint-l:52em;
		--breakpoint-xl:60em;
		--breakpoint-2xl:80em;
		--line-height-xs:1.2;
		--line-height-s:1.4;
		--line-height-m:1.5;
		--font-size-base:112.5%;
		--font-size-code:0.875em;
		--size-6xs:0.125em;
		--size-5xs:0.25em;
		--size-4xs:0.5em;
		--size-3xs:0.6875em;
		--size-2xs:0.75em;
		--size-xs:0.8125em;
		--size-s:0.9375em;
		--size-m:1em;
		--size-l:1.0625em;
		--size-xl:1.1875em;
		--size-2xl:1.3125em;
		--size-3xl:1.5em;
		--size-4xl:1.75em;
		--size-5xl:2em;
		--size-6xl:3em;
		--space:calc(1em * var(--line-height-m));
		--border-radius-s:0.25em;
		--border-radius-m:0.5em;
		--border-radius-l:1.3125em;
		--border-radius-circle:50%;

	}

}
@layer kelp.tokens{

	.dark,.light,:where(:root){
		--background-color:var(--color-background);
		--color:var(--color-text-normal);
		background:var(--background-color);
		color:var(--color);
	}

	.dark,.light,.neutral,:where(:root){
		--color-fill-vivid:var(--color-neutral-fill-vivid);
		--color-fill-accent:var(--color-neutral-fill-accent);
		--color-fill-muted:var(--color-neutral-fill-muted);
		--color-border-vivid:var(--color-neutral-border-vivid);
		--color-border-accent:var(--color-neutral-border-accent);
		--color-border-muted:var(--color-neutral-border-muted);
		--color-on-vivid:var(--color-neutral-on-vivid);
		--color-on-accent:var(--color-neutral-on-accent);
		--color-on-muted:var(--color-neutral-on-muted);
		--color-outline:var(--color-neutral-outline);
	}

	.primary{
		--color-fill-vivid:var(--color-primary-fill-vivid);
		--color-fill-accent:var(--color-primary-fill-accent);
		--color-fill-muted:var(--color-primary-fill-muted);
		--color-border-vivid:var(--color-primary-border-vivid);
		--color-border-accent:var(--color-primary-border-accent);
		--color-border-muted:var(--color-primary-border-muted);
		--color-on-vivid:var(--color-primary-on-vivid);
		--color-on-accent:var(--color-primary-on-accent);
		--color-on-muted:var(--color-primary-on-muted);
		--color-outline:var(--color-primary-outline);
	}

	.secondary{
		--color-fill-vivid:var(--color-secondary-fill-vivid);
		--color-fill-accent:var(--color-secondary-fill-accent);
		--color-fill-muted:var(--color-secondary-fill-muted);
		--color-border-vivid:var(--color-secondary-border-vivid);
		--color-border-accent:var(--color-secondary-border-accent);
		--color-border-muted:var(--color-secondary-border-muted);
		--color-on-vivid:var(--color-secondary-on-vivid);
		--color-on-accent:var(--color-secondary-on-accent);
		--color-on-muted:var(--color-secondary-on-muted);
		--color-outline:var(--color-secondary-outline);
	}

	.success{
		--color-fill-vivid:var(--color-success-fill-vivid);
		--color-fill-accent:var(--color-success-fill-accent);
		--color-fill-muted:var(--color-success-fill-muted);
		--color-border-vivid:var(--color-success-border-vivid);
		--color-border-accent:var(--color-success-border-accent);
		--color-border-muted:var(--color-success-border-muted);
		--color-on-vivid:var(--color-success-on-vivid);
		--color-on-accent:var(--color-success-on-accent);
		--color-on-muted:var(--color-success-on-muted);
		--color-outline:var(--color-success-outline);
	}

	.danger{
		--color-fill-vivid:var(--color-danger-fill-vivid);
		--color-fill-accent:var(--color-danger-fill-accent);
		--color-fill-muted:var(--color-danger-fill-muted);
		--color-border-vivid:var(--color-danger-border-vivid);
		--color-border-accent:var(--color-danger-border-accent);
		--color-border-muted:var(--color-danger-border-muted);
		--color-on-vivid:var(--color-danger-on-vivid);
		--color-on-accent:var(--color-danger-on-accent);
		--color-on-muted:var(--color-danger-on-muted);
		--color-outline:var(--color-danger-outline);
	}

	.warning{
		--color-fill-vivid:var(--color-warning-fill-vivid);
		--color-fill-accent:var(--color-warning-fill-accent);
		--color-fill-muted:var(--color-warning-fill-muted);
		--color-border-vivid:var(--color-warning-border-vivid);
		--color-border-accent:var(--color-warning-border-accent);
		--color-border-muted:var(--color-warning-border-muted);
		--color-on-vivid:var(--color-warning-on-vivid);
		--color-on-accent:var(--color-warning-on-accent);
		--color-on-muted:var(--color-warning-on-muted);
		--color-outline:var(--color-warning-outline);
	}
	.outline{
		--background-color-hover:var(--color-fill-vivid);
		--background-color-active:color-mix(in oklab, var(--color-fill-vivid), var(--color-mix-active));

		--border-color:var(--color-outline);
		--border-color-hover:color-mix(in oklab, var(--color-fill-vivid), var(--color-mix-hover));
		--border-color-active:color-mix(in oklab, var(--color-fill-vivid), var(--color-mix-active));
		--color-hover:var(--color-on-vivid);
		--color-active:var(--color-on-vivid);
	}
	.comment-header .datetime a,.outline,.plain{
		--background-color:transparent;

		--color:var(--color-outline);
	}
	.comment-header .datetime a,.plain{
		--background-color-hover:var(--color-fill-muted);
		--background-color-active:var(--color-fill-accent);

		--border-color:transparent;
		--border-color-hover:var(--color-fill-muted);
		--border-color-active:var(--color-fill-accent);
		--color-hover:var(--color-outline);
		--color-active:var(--color-outline);
	}
	.muted{
		--background-color:var(--color-fill-muted);
		--background-color-hover:var(--color-fill-accent);
		--background-color-active:color-mix(in oklab, var(--color-fill-muted), var(--color-mix-transparent));

		--border-color:var(--color-border-muted);
		--border-color-hover:var(--color-border-accent);
		--border-color-active:color-mix(in oklab, var(--color-border-muted), var(--color-mix-transparent));

		--color:var(--color-on-muted);
		--color-hover:var(--color-on-accent);
		--color-active:var(--color-on-muted);
	}
	.vivid{
		--background-color:var(--color-fill-vivid);
		--background-color-hover:color-mix(in oklab, var(--color-fill-vivid), var(--color-mix-hover));
		--background-color-active:color-mix(in oklab, var(--color-fill-vivid), var(--color-mix-active));

		--border-color:transparent;
		--border-color-hover:transparent;
		--border-color-active:transparent;

		--color:var(--color-on-vivid);
		--color-hover:var(--color-on-vivid);
		--color-active:var(--color-on-vivid);

		--color-text-link:var(--color);
		--color-text-link-hover:color-mix(in oklab, var(--color), var(--color-mix-hover));
		--focus-ring-color:var(--color);
	}

}

@layer kelp.utilities{
	.scroll-horizontal{
		display:block;
		overflow-x:auto;
	}
	[class*=visually-hidden]{
		border:0;
		clip:rect(0 0 0 0);
		height:1px;
		margin:-1px;
		overflow:hidden;
		padding:0;
		position:absolute;
		white-space:nowrap;
		width:1px;
	}
	.visually-hidden-focusable:is(:active,:focus){
		clip:auto;
		height:auto;
		margin:0;
		overflow:visible;
		position:static;
		white-space:inherit;
		width:auto;
	}

}

@layer kelp.utilities{

	.align-start{
		align-items:start;
	}

	.align-end{
		align-items:end;
	}

	.align-center{
		align-items:center;
	}

	.align-baseline{
		align-items:baseline;
	}
	.block,.btn-block{
		display:block;
		width:100%;
	}

	.inline{
		display:inline;
		width:auto;
	}

	.inline-block{
		display:inline-block;
	}

	.divided{
		--border-color:var(--color-border-accent);
		--gap:var(--size-3xs);
	}

	.divided>*+*{
		padding:0;
		padding-block-start:var(--gap);
	}

}

@layer kelp.utilities{

	.divided>:first-child,.divided>:has(+*){
		padding-block-end:var(--gap);
	}

	.divided>:has(+*){
		border-block-end:1px solid var(--border-color);
		margin:0;
		padding-inline:0;
	}

}

@layer kelp.utilities{

	.fill{
		--background-color:var(--color-fill-muted);
		background-color:var(--background-color);
	}

	.fill.vivid{
		--color:var(--color-on-vivid);
		color:var(--color);
	}

	.flex{
		display:flex;
	}

	.flex,.flex-inline{
		--gap:0;
		gap:var(--gap);
	}

	.flex-inline{
		display:inline-flex;
	}

	.direction-row{
		flex-direction:row;
	}

	.direction-column{
		flex-direction:column;
	}

	.wrap{
		flex-wrap:wrap;
	}

	.no-wrap{
		flex-wrap:nowrap;
	}

	.gap-0{
		--gap:0;
	}

	.gap-6xs{
		--gap:var(--size-6xs);
	}

	.gap-5xs{
		--gap:var(--size-5xs);
	}

	.gap-4xs{
		--gap:var(--size-4xs);
	}

	.gap-3xs{
		--gap:var(--size-3xs);
	}

	.gap-2xs{
		--gap:var(--size-2xs);
	}

	.gap-xs{
		--gap:var(--size-xs);
	}

	.gap-s{
		--gap:var(--size-s);
	}
	
	.gap-m{
		--gap:var(--size-m);
	}

	.gap-l{
		--gap:var(--size-l);
	}

	.gap-xl{
		--gap:var(--size-xl);
	}

	.gap-2xl{
		--gap:var(--size-2xl);
	}

	.gap-3xl{
		--gap:var(--size-3xl);
	}

	.gap-4xl{
		--gap:var(--size-4xl);
	}

	.gap-5xl{
		--gap:var(--size-5xl);
	}

	.gap-6xl{
		--gap:var(--size-6xl);
	}

}

@layer kelp.utilities{

	@media (min-width:18em){
		.hide-above-xs{
			display:none;
		}
	}

	@media (min-width:28em){
		.hide-above-s{
			display:none;
		}
	}

	@media (min-width:38em){
		.hide-above-m{
			display:none;
		}
	}

	@media (min-width:52em){
		.hide-above-l{
			display:none;
		}
	}

	@media (min-width:60em){
		.hide-above-xl{
			display:none;
		}
	}

	@media (min-width:80em){
		.hide-above-2xl{
			display:none;
		}
	}

}

@layer kelp.utilities{

	.justify-start{
		justify-content:start;
	}

	.justify-end{
		justify-content:end;
	}

	.justify-center{
		justify-content:center;
	}

	.justify-between{
		justify-content:space-between;
	}

	.justify-around{
		justify-content:space-around;
	}

	.justify-even{
		justify-content:space-evenly;
	}

	.margin-start-0{
		margin-block-start:0;
	}

	.margin-start-6xs{
		margin-block-start:var(--size-6xs);
	}

	.margin-start-5xs{
		margin-block-start:var(--size-5xs);
	}

	.margin-start-4xs{
		margin-block-start:var(--size-4xs);
	}

	.margin-start-3xs{
		margin-block-start:var(--size-3xs);
	}

	.margin-start-2xs{
		margin-block-start:var(--size-2xs);
	}

	.margin-start-xs{
		margin-block-start:var(--size-xs);
	}

	.margin-start-s{
		margin-block-start:var(--size-s);
	}

	.margin-start-m{
		margin-block-start:var(--size-m);
	}

	.margin-start-l{
		margin-block-start:var(--size-l);
	}

	.margin-start-xl{
		margin-block-start:var(--size-xl);
	}

	.margin-start-2xl{
		margin-block-start:var(--size-2xl);
	}

	.margin-start-3xl{
		margin-block-start:var(--size-3xl);
	}

	.margin-start-4xl{
		margin-block-start:var(--size-4xl);
	}

	.margin-start-5xl{
		margin-block-start:var(--size-5xl);
	}

	.margin-start-6xl{
		margin-block-start:var(--size-6xl);
	}

	.margin-start-space{
		margin-block-start:var(--space);
	}

	.margin-end-0{
		margin-block-end:0;
	}

	.margin-end-6xs{
		margin-block-end:var(--size-6xs);
	}

	.margin-end-5xs{
		margin-block-end:var(--size-5xs);
	}

	.margin-end-4xs{
		margin-block-end:var(--size-4xs);
	}

	.margin-end-3xs{
		margin-block-end:var(--size-3xs);
	}

	.margin-end-2xs{
		margin-block-end:var(--size-2xs);
	}

	.margin-end-xs{
		margin-block-end:var(--size-xs);
	}

	.margin-end-s{
		margin-block-end:var(--size-s);
	}

	.margin-end-m{
		margin-block-end:var(--size-m);
	}

	.margin-end-l{
		margin-block-end:var(--size-l);
	}

	.margin-end-xl{
		margin-block-end:var(--size-xl);
	}

	.margin-end-2xl{
		margin-block-end:var(--size-2xl);
	}

	.margin-end-3xl{
		margin-block-end:var(--size-3xl);
	}

	.margin-end-4xl{
		margin-block-end:var(--size-4xl);
	}

	.margin-end-5xl{
		margin-block-end:var(--size-5xl);
	}

	.margin-end-6xl{
		margin-block-end:var(--size-6xl);
	}

	.margin-end-space{
		margin-block-end:var(--space);
	}

	.padding-0{
		padding:0;
	}

	.padding-6xs{
		padding:var(--size-6xs);
	}

	.padding-5xs{
		padding:var(--size-5xs);
	}

	.padding-4xs{
		padding:var(--size-4xs);
	}

	.padding-3xs{
		padding:var(--size-3xs);
	}

	.padding-2xs{
		padding:var(--size-2xs);
	}

	.padding-xs{
		padding:var(--size-xs);
	}

	.padding-m{
		padding:var(--size-m);
	}

	.padding-l{
		padding:var(--size-l);
	}

	.padding-xl{
		padding:var(--size-xl);
	}

	.padding-2xl{
		padding:var(--size-2xl);
	}

	.padding-3xl{
		padding:var(--size-3xl);
	}

	.padding-4xl{
		padding:var(--size-4xl);
	}

	.padding-5xl{
		padding:var(--size-5xl);
	}

	.padding-6xl{
		padding:var(--size-6xl);
	}

	.padding-space{
		padding:var(--space);
	}

}

@layer kelp.utilities{

	@media (max-width:calc(18em - 1px)){
		.show-above-xs{
			display:none;
		}
	}

	@media (max-width:calc(28em - 1px)){
		.show-above-s{
			display:none;
		}
	}

	@media (max-width:calc(38em - 1px)){
		.show-above-m{
			display:none;
		}
	}

	@media (max-width:calc(52em - 1px)){
		.show-above-l{
			display:none;
		}
	}

	@media (max-width:calc(60em - 1px)){
		.show-above-xl{
			display:none;
		}
	}

	@media (max-width:calc(80em - 1px)){
		.show-above-2xl{
			display:none;
		}
	}

}

@layer kelp.utilities{

	[class*=size-]{
		--font-size:1em;
		font-size:var(--font-size);
	}

	.size-3xs{
		--font-size:var(--size-3xs);
	}

	.size-2xs{
		--font-size:var(--size-2xs);
	}

	.size-xs{
		--font-size:var(--size-xs);
	}

	.size-s{
		--font-size:var(--size-s);
	}

	.size-m{
		--font-size:var(--size-m);
	}

	.size-l{
		--font-size:var(--size-l);
	}

	.size-xl{
		--font-size:var(--size-xl);
	}

	.size-2xl{
		--font-size:var(--size-2xl);
	}

	.size-3xl{
		--font-size:var(--size-3xl);
	}

	.size-4xl{
		--font-size:var(--size-4xl);
	}

	.size-5xl{
		--font-size:var(--size-5xl);
	}

	.size-6xl{
		--font-size:var(--size-6xl);
	}

	.text-capitalize{
		text-transform:capitalize;
	}

	.text-uppercase{
		text-transform:uppercase;
	}

	.text-lowercase{
		text-transform:lowercase;
	}

	.text-pretty{
		text-wrap:pretty;
	}

	.text-balance{
		text-wrap:balance;
	}

	.text-center{
		text-align:center;
	}

	.text-end{
		text-align:end;
	}

	.text-color{
		--color:var(--color-outline);
		color:var(--color);
	}

	.text-muted{
		--color:var(--color-text-muted);
		color:var(--color);
	}

	.font-primary{
		font-family:var(--font-primary);
	}

	.font-secondary{
		font-family:var(--font-secondary);
	}

}

@layer timeline{

:where(:root){
    --color-rose-500:oklch(64.5% 0.246 16.439);
    --color-red-600:oklch(57.7% 0.245 27.325);
}
.post-article:has(#review-index,.timeline,#label-page,#dcsolic) .post-date{
    display:none;
}
#label-page h2{
  font-size:var(--size-l);
  font-family:var(--font-primary);
  border-block-end:2px solid var(--color-slate-600);
  
  @media (width >= 48rem){
    font-size:revert-layer;
  } 
}

#label-page a{
    text-decoration:none;
    color:var(--color-text-normal);
}

#label-page ul{
    columns:150px 3;
    column-gap:2em;
    list-style-type:"";
    padding-inline:0;
}

#label-page li{
    page-break-inside:avoid;
    break-inside:avoid-column;
}

#label-page li:not(:last-child){
    padding-block-end:.75em;
}
.timeline,.timeline-changelog,.timeline-content,.timeline-toc{
    --gap:var(--size-m);
    display:flex;
    flex-direction:column;
    gap:var(--gap);
}

.timeline{
    --gap:var(--size-6xl);
}

.timeline-content{
    --gap:var(--size-2xl);
}

:is(.timeline,.timeline-toc,.timeline-content,.timeline-changelog)>*{
    margin:0;
}

.timeline :is(h2,h3){
    font-family:var(--font-primary);
}

.timeline-toc ul{
    --gap:var(--size-m);
    display:flex;
    flex-wrap:wrap;
    gap:var(--gap);
    list-style-type:"";
    padding-inline:0;
    list-style-position:inside;
}

.timeline-content span{
    font-weight:700;
    color:light-dark(var(--color-red-600), var(--color-rose-500));
}

.timeline-content dt{
    font-weight:500;
}

.timeline-content ul{
    padding-inline:var(--size-xs) 0;
    display:flex;
    flex-direction:column;
    gap:var(--size-3xs);
}

.timeline-content a{
    text-decoration-line:none;
    color:var(--color-outline);
    font-weight:500;
}

.timeline-content a:hover{
    text-decoration-line:underline;
    color:var(--color-text-link);
}

dd:empty:last-child{
    margin-block:0;
}
#archive-page a{
    --color:var(--color-text-normal);
    text-decoration:none;
}

#archive-page summary{
    font-size:var(--summary-size, var(--size-xl));
    font-weight:var(--summary-weight, 600);
}

#archive-page details details summary{
    --summary-size:var(--size-l);
    --summary-weight:500;

    padding-inline-start:var(--size-2xs);
}

#archive-page ul{
    display:flex;
    flex-direction:column;
    gap:var(--space);
}
#review-index h2{
    font-family:var(--font-primary);
}

#review-index ul{
    display:flex;
    flex-direction:column;
    flex-wrap:wrap;
    gap:var(--size-m);
    list-style-type:none;
    padding-inline:0;
}

#review-index .index_contents ul{
    flex-direction:row;
}

#review-index a{
    text-decoration-line:none;
    color:var(--color-outline);
}

#review-index section a{
    text-decoration-line:revert-layer;
    color:revert-layer;
}
.dcsolic-contents{
    --main-size:75%;
    --secondary-size:8rem;
    border:1px solid var(--color-text-normal);
}

.dcsolic-text>:first-child{
    font-weight:600;
}

.frame{
    aspect-ratio:16 / 9;
}

.frame>img{
    inline-size:100%;
    block-size:100%;
    object-fit:cover;
    object-position:top;
}}

@layer theme{

:where(:root){

	color-scheme:light dark;
	--color-background:light-dark(#fff, var(--color-base-100)); 
	--color-text-normal:light-dark(var(--color-slate-600), var(--color-slate-400));
	--color-text-input:light-dark(var(--color-gray-30), var(--color-gray-80));

	--color-primary-fill-vivid:var(--color-indigo-50);
	--color-primary-border-vivid:var(--color-indigo-60);
	--color-primary-on-vivid:#fff;
	--color-primary-fill-muted:light-dark(
		var(--color-indigo-95),
		var(--color-indigo-20));
	--color-primary-fill-accent:light-dark(
		var(--color-indigo-90),
		var(--color-indigo-30));
	--color-primary-border-muted:light-dark(
		var(--color-indigo-90),
		var(--color-indigo-30));
	--color-primary-border-accent:light-dark(
		var(--color-indigo-80),
		var(--color-indigo-40));
	--color-primary-on-muted:light-dark(
		var(--color-indigo-30),
		var(--color-indigo-95));
	--color-primary-on-accent:light-dark(
		var(--color-indigo-20),
		var(--color-indigo-95));
	--color-primary-outline:light-dark(
		var(--color-indigo-50),
		var(--color-indigo-70));
	--color-neutral-fill-muted:light-dark(var(--color-violet-50), var(--color-slate-700));
	--color-neutral-border-muted:light-dark(var(--color-violet-200), var(--color-slate-600));

	--color-neutral-fill-accent:light-dark(var(--color-gray-90), var(--color-gray-30));
	--color-neutral-fill-vivid:light-dark(var(--color-gray-30), var(--color-gray-80));

	--color-neutral-border-accent:light-dark(var(--color-gray-80), var(--color-gray-40));
	--color-neutral-border-vivid:light-dark(var(--color-gray-40), var(--color-gray-70));

	--color-neutral-on-muted:light-dark(var(--color-gray-10), var(--color-gray-95));
	--color-neutral-on-accent:light-dark(var(--color-gray-10), var(--color-gray-95));
	--color-neutral-on-vivid:light-dark(#fff, var(--color-gray-05));

	--color-neutral-outline:light-dark(var(--color-gray-10), var(--color-gray-80));
	--color-text-link:light-dark(var(--color-indigo-50), var(--color-indigo-60));
	--color-text-link-hover:light-dark(var(--color-indigo-60), var(--color-indigo-70));

	--color-checked:light-dark(
		var(--color-indigo-50),
		var(--color-indigo-60));
	--focus-ring-color:light-dark(var(--color-indigo-50), var(--color-indigo-60));
	--color__post-article-header:light-dark(var(--color-slate-800), #fff);
	--color__commentbox-avatar:light-dark(var(--color-violet-200), var(--color-violet-500));

	--color__card-background:light-dark(var(--color-background),
			var(--color-slate-700));
	--color__card-text:light-dark(var(--color-text-normal),
			var(--color-gray-400));
	--color__card-placeholder:light-dark(var(--color-violet-100), var(--color-violet-400));

	--color__divider:light-dark(var(--color-gray-900), var(--color-gray-400));
	--color__divider-h1:light-dark(var(--color-slate-600), #fff);

--color__footer-hue:294;

--color__footer-comm:oklch(0.5597 0.1409 var(--color__footer-hue));
--color__footer-comm-item-date:oklch(from var(--color__footer-comm) calc(.58 + .5 * l) c h);
--color__footer-newcoll:oklch(0.507  0.1603 var(--color__footer-hue));
--color__footer-nav:oklch(0.5598 0.1538 calc(10 + var(--color__footer-hue)));
--color__footer-masthead:oklch(0.5375 0.086  var(--color__footer-hue));
--color__footer-roll:oklch(0.5656 0.1331 calc(-10 + var(--color__footer-hue)));
--color__footer-roll-item-time:oklch(from var(--color__footer-roll) calc(.58 + .5 * l) c h);
	--color__footer-text:#fff;
	
	--color__status-msg-body-a:light-dark(var(--color-slate-400), var(--color-gray-500));
	--color__status-msg-body-a-hover:light-dark(var(--color-slate-500), var(--color-gray-400));
}

footer{
	--color-text-link:var(--color__footer-text);
	--color-text-link-hover:var(--color__footer-text); 
}

.arrow:after{
	--color:var(--color-gray-400);
}

.newcom a{
	--color:var(--color-text-normal);
}

:where(#newcom,.newcom)>p{
	--header-color:var(--color-sky-600);
	--background-color:var(--header-color);
	--border-color:var(--header-color);
	--color:#fff;
}

:where(#newcom,.newcom) section{
	--border-color:var(--color-gray-400);
}

:where(#newcom,.newcom) section a{
	--color:var(--color-text-normal);
}

:where(agent-build,#agent-build,.agent-build){
	--color-header-background:var(--color-sky-600);
	--color-header-text:#fff;
	--color-border:var(--color-gray-400);
	--color-link:light-dark(var(--color-gray-950), var(--color-gray-20));
}}

@layer kelp.state{

	.comment-header .datetime a,.plain{
		--color-outline:var(--color-text-normal);
	}

	.comment-header .user a,.hover-emphasized{
		--color-text-link:var(--color-text-normal);
		--color-hover:var(--color-text-link-hover);
	}
}

@layer main{

	:where(:root){
		--line-height-l:1.6;
	}

	@keyframes bounce{
	
			0%,20%,50%,80%,to{
				transform:translateX(0);
			}
	
			50%{
				transform:translateX(5px);
			}
		}
	
		.bounce{
			animation:bounce 5s 100;
		}
	
		:where(:root){
			--breakpoint-3xl:96em;
			--breakpoint-4xl:112em;
		}
	
	.icon-search{
		inline-size:.85rem;
		block-size:.85rem;
	}
	
.btn--label{
	--padding-block:var(--size-4xs);
	--padding-inline:var(--size-2xs);
	border-radius:var(--border-radius-m);
	font-weight:600;
}

	.invisible{
		visibility:hidden;
	}
	
	.hidden{
		display:none;
	}
	
	.container-3xl{
		--width:var(--breakpoint-4xl);
		width:91vw
	}

	.container-4xl{
		--width:var(--breakpoint-4xl);
		width:93vw;
	}


	dl>*+*{
		margin-block-start:var(--size-m, 1em);
	}
a[style]{
  clear:none !important;
  float:none !important;
  padding:initial !important;
  margin:initial !important;
  margin-left:0 !important;
  margin-right:0 !important;
}
.epigram{
  margin-block-end:var(--space);
}

.epigram p:last-of-type{
    text-indent:1rem;
}
main{
	max-inline-size:var(--isHomepage__main__max-inline-size, var(--breakpoint-l));
	margin-inline:auto;
	inline-size:91vw;
}

.main__search-results{
	max-inline-size:var(--breakpoint-2xl);
}
#agent-build,.agent-build,agent-build{
	display:block;
	margin-block-end:var(--space);

	.new-collections__header{
		padding:1rem;
		 background-color:var(--color-header-background);
  border:1px solid var(--color-header-background);
	}

	.new-collections__header h1{
		font-family:var(--font-primary);
		text-align:center;
		font-size:var(--size-s);
		margin-block:0;
		color:var(--color-header-text);
	}

	.new-collections__section{
		padding:24px 16px 24px 8px;
		border-right:1px solid var(--color-border);
		border-bottom:1px solid var(--color-border);
		border-left:1px solid var(--color-border);
	}

	p,ul{
		font-size:var(--size-s);
	}

	p{
		text-align:right;
	}
}
.card{
	border-radius:50px 15px;
	inline-size:360px;
	overflow:hidden;
}

.card--elevated{
	box-shadow:0 4px 8px 0 rgba(0,0,0,.2);
	background-color:var(--color__card-background);
}


.card__image{
	height:280px;
}

.card__image--placeholder{
	background-color:var(--color__card-placeholder);
}

.card__image img{
	object-fit:cover;
	object-position:top;
	height:100%;
	width:100%;
}

.card__content{
	padding:var(--size-m) var(--size-4xl);
	height:8.5em;
	display:flex;
	flex-direction:column;
	justify-content:space-between;
}

.card__header{
	-webkit-line-clamp:3;
	-webkit-box-orient:vertical;

	margin-block-start:0;
	line-clamp:3;
	display:-webkit-box;
	overflow:hidden;
}

.card__header p{
	font-size:var(--size-xs);
}
.rating{
	display:none;
}
.footnote{
	display:var(--isHomepage__footnote, inline);
}

.footnotes hr{
 	margin-block-end:1.25rem;
}

.footnotes ol{
	list-style-position:inside;
	padding-inline:0;
	}

.footnotes ol li{
		margin-top:1.25rem;
	}

.footnotes ol p{
		display:inline;
	}

.reversefootnote{
		text-decoration-line:none;
}
.post-header{
	grid-area:header;
}

main .post-article h1{
	color:var(--color__post-article-header);
}
.post-date{
	font-size:var(--size-s);
}
.post-article{
	display:grid;
	grid-template-columns:var(--isHomepage__post-article__grid-template-columns, minmax(0, 1fr) min(65ch, 100%) minmax(0, 1fr));
	margin-block-end:var(--size-6xl);
	row-gap:var(--isHomepage__post-article__gap, 1rem);
	column-gap:var(--isHomepage__post-article__column-gap, 0);

	--post-article__areas-default:"header header header" "separator separator separator" ".      text    ." ".      labels  .";

	grid-template-areas:var(--isHomepage__post-article__grid-template-areas, var(--post-article__areas-default));

	p:has(+div.rating):last-of-type,p:has(+script):last-of-type{
		margin-block-end:0;
	}
}

.post-article:not(:has(.separator)){
	--post-article__areas-default:".      header  ." ".      text    ." ".      labels  .";
}

.post-article:has(.separator):not(:has(:where(#post-text),.post-text)){
	--post-article__areas-default:"header  header  header" ".      text    ." ".      labels  .";
}


.post-article:not(:has(:where(#post-text),.post-text))	.post-body{
		grid-area:text;
		display:block;
		max-inline-size:65ch;
		margin-inline:auto;
	}

.post-article:not(:has(:where(#post-text),.post-text)) .separator{
		margin-block-end:var(--size-2xs);
	}

.post-body{
	font-size:var(--size-l);
	line-height:var(--line-height-l);
}		
.headline{
		font-size:var(--size-l);
		font-weight:600;

		font-family:var(--font-primary);
		margin-block:0;

		
		@media (width >=48rem){
			font-size:var(--size-5xl);
			font-weight:700;
			
			&.headline__long{
				font-size:var(--size-4xl);
			}
		}
	
		@media (width >=64rem){
			font-size:2.83em;
			font-weight:800;
		}
	}
.post-body{
	display:contents;
}


.post-body iframe{
	display:none;
}
.separator{ 
	grid-area:separator; 	
	min-inline-size:0; 
}

.separator img{
	height:16rem;
	max-inline-size:none;
	inline-size:100%;
	object-fit:cover;
	object-position:top;
	border-radius:var(--border-radius-m);

	@media (width >=40rem){
		height:20rem;
	}

	@media (min-width:1280px){
		.isHomepage &{
			height:100%;
			max-height:600px;
			aspect-ratio:13 / 20;
		}
	}
}

.bottom img,.separator__bottom img{
	object-position:bottom;
}
#post-text,.post-text{
	grid-area:text;
}

:is(#post-text,.post-text)>p{
	--space:1lh;
}
.jump-link{
	grid-area:jump;
	text-align:center;
}
.post-labels{
	grid-area:labels;
}
.isHomepage{
	--isHomepage__post-article__grid-template-areas:"header header header" "separator separator separator" ". text ." ". jump .";
	--isHomepage__footnote:none;
}

@media (min-width:1280px){
	.isHomepage{
		--isHomepage__main__max-inline-size:var(--breakpoint-xl);
		--isHomepage__post-article__grid-template-columns:minmax(0, auto) minmax(0, 1fr);
		--isHomepage__post-article__grid-template-areas:"separator header" "separator text" "separator jump";
		--isHomepage__post-article__gap:1.75rem;
		--isHomepage__post-article__column-gap:1.75rem;
		--isHomepage__post-text__max-inline-size:42rem;
	}
}
.recent li{ font-weight:500; }

@media (width >=64rem){
	.recent li{
		font-size:var(--size-2xl);
	}
}

.divider{
	display:flex;
	margin-top:3em;
	flex-direction:row;
	align-items:center;
	align-self:stretch;
	white-space:nowrap;

	&:after,&:before{
		content:"";
		height:.025em;
		inline-size:100%;
		flex-grow:1;
		background-color:var(--color__divider);
	}

	@media print{
		&:after,&:before{
			border:.5px solid;
		}
	}

	&:not(:empty){
		gap:1em;
	}
}

h1.divider{
	color:var(--color__divider-h1);
}
.navbar ul a{
	font-weight:600;
	font-variant-caps:small-caps;
}

.navbar{
	--justify:left;
	align-items:start;
}

.status-update{
	font-style:italic;
	font-size:var(--size-3xs);
	height:8.5px;
}
.action-body,.action-header{
	padding-left:var(--size-5xs);
}

.action-body{
	padding-top:var(--size-m);
}

.action-body__link{
	font-size:var(--size-xs);
}

.action-body__link svg{
	inline-size:var(--size-2xl);
	height:100%;
}
footer{
	background-color:var(--color__footer-background);
	color:var(--color__footer-text);
	container:footer / inline-size;
	margin-block-start:var(--size-6xl);
	padding-block:2em;
	font-family:var(--font-monospace);
	font-size:var(--size-s);
}

footer a{
	text-decoration-style:solid;
	text-decoration-color:transparent;
	text-underline-offset:3px;
	transition:all .3s linear;
}

footer a,footer a:hover{
	text-decoration-line:underline;
}

footer a:hover{
	text-decoration-color:currentColor;
}

.footer__grid{
	display:grid;
	gap:var(--size-m);
	grid-template-columns:1fr 2fr 1fr;
	grid-template-areas:"footer-comm footer-newcoll footer-nav" "footer-comm footer-masthead footer-nav" "footer-roll footer-roll footer-roll";

	@container (max-inline-size: 1100px){
		grid-template-columns:auto;
		grid-template-areas:"footer-comm footer-newcoll" "footer-comm footer-masthead" "footer-nav footer-nav" "footer-roll footer-roll";
	}

	@container (max-inline-size: 875px){
		grid-template-columns:auto;
		grid-template-areas:"footer-comm footer-newcoll" "footer-nav footer-nav" "footer-masthead footer-masthead" "footer-roll footer-roll";
	}

	@container (max-inline-size: 650px){
		grid-template-columns:auto;
		grid-template-areas:"footer-comm" "footer-newcoll" "footer-nav" "footer-masthead" "footer-roll";
	}
}

.footer__grid-item{
	border-radius:var(--border-radius-l);
	container:grid-item / inline-size;
	padding:var(--size-4xl);
}

.footer__grid-item h1{
		font-size:var(--size-m);
		font-weight:600;
		font-family:var(--font-monospace);
		margin-block:0;
}

.footer-comm{
	background-color:var(--color__footer-comm);
	grid-area:footer-comm;
}
.feed.section,.item-content,.widget-content,.widget-content>ul,.widget.Feed{
	display:contents;
}

.item-author{
	order:1;
}

.item-author:after{
	content:" on";
}

.item-title{
	order:2;
	font-weight:600;
}

.item-date{
	color:var(--color);
	color:var(--color__footer-comm-item-date);
	order:3;
}

.item-time{
	color:var(--color__footer-roll-item-time);
} 

.footer-newcoll{
	background-color:var(--color__footer-newcoll);
	grid-area:footer-newcoll;
}

.footer-newcoll	ul{
		list-style-type:"";
		padding-inline:0;
}


.footer-nav{
	background-color:var(--color__footer-nav);
	grid-area:footer-nav;
	container:footer-nav / inline-size;
}

@container footer-nav (inline-size > 641px){
	.item-content{
		display:flex;
		flex-direction:row;
		justify-content:space-between;
	}
}

.footer-masthead{
	background-color:var(--color__footer-masthead);
	grid-area:footer-masthead;
	container:footer-masthead / inline-size;
	font-weight:600;
	font-size:var(--size-2xl);
}

.footer-roll{
	background-color:var(--color__footer-roll);
	grid-area:footer-roll;
}

#BlogList1_container ul{
	display:flex;
	padding:var(--size-xs) 0 25px 0;
	list-style:none;
	overflow-x:scroll;
	scroll-snap-type:x mandatory;
}

#BlogList1_container li{
	flex:0 0 100%;
	scroll-snap-align:start;
	transition:all .2s;

	&:not(:last-child){
		margin-right:10px;
	}

	@media (min-width:500px){
		flex-basis:calc(50% - 10px);


		&:not(:last-child){
			margin-right:20px;
		}
	}

	@media (min-width:700px){
		flex-basis:calc(33.33333% - 20px);


		&:not(:last-child){
			margin-right:30px;
		}
	}

	@media (min-width:1100px){
		flex-basis:calc(25% - 30px);


		&:not(:last-child){
			margin-right:40px;
		}
	}

	@media (min-width:1680px){
		flex-basis:calc(20% - 40px);


		&:not(:last-child){
			margin-right:50px;
		}
	}

	@media (min-width:1920px){
		flex-basis:calc(16.66667% - 50px);


		&:not(:last-child){
			margin-right:60px;
		}
	}

}

feedland-river p.status{
	margin-block-start:var(--space);
}

.blog-title{
	font-weight:600;
	margin-block-end:var(--size-xs);
}

.item-title{
	overflow:hidden;
	display:-webkit-box;
	-webkit-box-orient:vertical;
	-webkit-line-clamp:3;
	line-clamp:3;
}
.header-comments h1{

	font-size:var(--size-2xl);
	font-family:var(--font-primary);
	text-align:center;
	margin-block-end:var(--size-m);
}

#top-continue.continue,.comment-replybox-single{
	display:none;
}

.comment .comment-replybox-single:has(iframe){
	display:block;
	grid-column:1 /  -1;
}

.comment-replybox-thread:not(:has(iframe)){
	display:none;
}

.comment .comment-replies:has(ol li)+.comment-replybox-single:has(iframe){
	display:block;
	grid-column:2 /  -1;
}

.commentbox-css cite{
	all:unset;
}

.comment-actions.secondary-text:not(:has(.comment-reply)),.commentbox-css .item-control,.commentbox-css .thread-toggle,span.blog-admin{
	display:none !important;
}

#comment-holder{
	--grid-row-gap:var(--space);
	--grid-column-gap:0.75em;

	ol{
		padding:0;
		list-style:none;
	}

	#top-ra{
		display:grid;
		grid-template-columns:min-content min-content 1fr;
		row-gap:var(--grid-row-gap);
		column-gap:var(--grid-column-gap);
	}

	.comment-replies ol.thread-chrome.thread-expanded:has(li.comment){
		display:grid;
		grid-column:2 /  -1;
		grid-template-columns:subgrid;
		row-gap:var(--grid-row-gap);
	}

	li.comment{
		display:grid;
		grid-column:1 /  -1;
		grid-template-columns:subgrid;
		row-gap:var(--grid-row-gap);
	}
}

.commentbox-css .avatar-image-container:has(img[src="//resources.blogblog.com/img/blank.gif"]){
	--background-color:var(--color__commentbox-avatar);
}

.commentbox-css #top-ra>.comment>.avatar-image-container{
	grid-column:1 /  2;
}

.comment-block,.comment-replies,.comment-replies .comment-thread ol>div .comment,.comment-replies .comment-thread.inline-thread,.comment-replies .comment-thread.inline-thread ol,.comment-replies .comment-thread.inline-thread ol>div{
	display:contents;
}

.commentbox-css .avatar-image-container{
	inline-size:1.5rem;
	height:1.5rem;
}

.commentbox-css .avatar-image-container img{
	border-radius:var(--border-radius-circle);
}

.commentbox-css .avatar-image-container:has(img[src="//resources.blogblog.com/img/blank.gif"]){
	background-color:var(--background-color);
	border-radius:var(--border-radius-circle);
}


.commentbox-css .comment-block .comment-header{
	display:flex;
	gap:var(--size-m);
	grid-column:2 /  4;
	align-items:center;
}

.commentbox-css .user{
	font-style:italic;
}

.icon.user,span.icon.user.blog-author{
	display:none;
}

.commentbox-css .datetime,.commentbox-css .user{
	font-size:var(--size-xs);

	a:not(:hover){
		text-decoration:none;
	}
}

.commentbox-css .datetime a:hover{
	text-decoration:none;
} 

.commentbox-css .comment-content{
	font-size:var(--size-l);
	line-height:1.625;
	word-break:break-word;
	clear:both;
	grid-column:1 /  -1;
}

.commentbox-css .comment-actions{
	grid-column:1 /  -1;
}

.commentbox-css .comment-reply{
	font-weight:600;
	text-decoration-line:none;
}

.commentbox-css .loadmore{
	font-weight:700;
}

.commentbox-css p{
	margin-block-end:0;
}

.commentbox-css .hidden a{
	display:none;
}

.continue a.comment-reply{
	grid-column:1 /  -1;
}

.comment-form p:last-of-type{
	margin-block:var(--space);
}
.arrow:after{
	font-size:var(--text-xs);
	vertical-align:text-top;
	padding:.25rem;
	content:"\2197";
	color:var(--color);
}

@variant group-hover{
	.arrow{
		text-decoration-line:none;
	}
}
.post-body div:has(p[style*="background-color: #006dbb"]+p[style*="font-size: 10px"]),div[style*="clear: right; float: right; height: 125px; margin-left: 25px; text-align: center; width: 90px;"],div[style*="clear:right;float:right;width:90px;height:125px;text-align:center;margin-left:25px;"]{
	display:none;
}

.snippet-markup,.snippet-title{
	padding:var(--size-xs);
}

.snippet-label,.snippet-title{
	font-weight:500;
}

.snippet-data:not(:last-of-type){
	margin-block-end:var(--size-s);
}
.status-msg-wrap{
	inline-size:fit-content;
	margin-inline:auto;
	padding-inline:var(--size-6xl);
}

.status-msg-body a{
	display:inline-block;
	text-decoration-line:underline;
	text-decoration-style:dashed;
	text-decoration-color:var(--color__status-msg-body-a);
	text-underline-offset:4px;
	padding-left:.5rem;
	padding-right:.5rem;
}

.status-msg-body a:hover{
	text-decoration-color:var(--color__status-msg-body-a-hover);
}

.status-msg-body span{
	font-weight:700;
}
.newcom [style]{
	all:revert;
}

.newcom,.support{
	margin-block-end:var(--space)
}

.newcom td{
	background-color:var(--color-newcom-td);
	border:1px solid var(--color-newcom-td);
	padding:.5rem 1rem 1.5rem .5rem;
}

.newcom a{
	text-decoration-line:none;
}	

.newcom a:hover{
	text-decoration-line:underline;
}

.newcom p a{
	font-size:var(--size-s);
}
:where(#newcom,.newcom)>p{
	padding:1rem;
	text-align:center;
	font-weight:700;
	margin-block:0;
	background-color:var(--background-color);
	border:1px solid var(--border-color);
	color:var(--color);

	@media (width >=64rem){
		font-size:var(--size-l);
	}
}

:where(#newcom,.newcom) section{
	max-inline-size:none;
	padding-inline:1rem;
	padding-block:2rem;
	border-inline-width:1px;
	border-block-start:0;
	border-block-end-width:1px;
	border-color:var(--border-color);
	border-style:solid;
	margin-block-end:var(--space);
}

:where(#newcom,.newcom) section ul{
		display:flex;
		flex-direction:column;
		gap:var(--size-4xs);
		font-size:var(--size-s);
	}


:where(#newcom,.newcom) section a{
	font-weight:var(--font-weight-normal);
	text-decoration-line:none;
}

:where(#newcom,.newcom) section a:hover{
		text-decoration-line:underline;
		text-decoration-thickness:2px;
}

:where(#newcom,.newcom) section p{
	text-align:right;
	font-size:var(--size-s);
}

}