.ui-container {
	box-sizing: border-box;
	width: 100%;
	max-width: 1170px;
	margin-inline: auto;
}

.ui-stack-v {
	display: flex;
	flex-direction: column;
}

.ui-stack-h {
	display: flex;
	flex-direction: row;
	align-items: stretch;
}

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

.ui-stack-h > * {
	min-width: 0;
}

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

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

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

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

.ui-items-baseline {
	align-items: baseline;
}

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

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

.ui-self-start {
	align-self: flex-start;
}

.ui-self-end {
	align-self: flex-end;
}

.ui-dot::before,
.ui-separator-dot > * + *::before {
	content: "\00B7";
	font-size: 1em;
	line-height: 1;
}

.ui-separator-dot > * + *::before {
	margin-inline-end: var(--ui-space-xs);
}

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

.ui-gap-xs {
	gap: var(--ui-space-xs);
}

.ui-gap-s {
	gap: var(--ui-space-s);
}

.ui-gap-m {
	gap: var(--ui-space-m);
}

.ui-gap-l {
	gap: var(--ui-space-l);
}

.ui-gap-xl {
	gap: var(--ui-space-xl);
}

.ui-grow {
	flex: 1 1 0;
	min-width: 0;
}

.ui-shrink-0 {
	flex-shrink: 0;
}

.ui-basis-1\/12 {
	flex: 0 0 8.333334%;
	max-width: 8.333334%;
	min-width: 0;
}
.ui-basis-2\/12 {
	flex: 0 0 16.666667%;
	max-width: 16.666667%;
	min-width: 0;
}
.ui-basis-3\/12 {
	flex: 0 0 25%;
	max-width: 25%;
	min-width: 0;
}
.ui-basis-6\/12 {
	flex: 0 0 50%;
	max-width: 50%;
	min-width: 0;
}

.ui-w-full {
	width: 100% !important;
}

.ui-w-auto {
	width: auto !important;
}

.ui-w-1\/4 {
	width: 25% !important;
}

.ui-w-half {
	width: 50% !important;
}

.ui-size-14px {
	width: 14px;
	height: 14px;
}

.ui-size-16px {
	width: 16px;
	height: 16px;
}

.ui-py-2 {
	padding-top: var(--ui-space-s);
	padding-bottom: var(--ui-space-s);
}

.ui-separated > * + * {
    border-top: 1px solid var(--ui-color-border-subtle);
}

.align-middle {
	vertical-align: middle;
}

.mt-2 { margin-top: 10px; }
.mb-none { margin-bottom: 0; }
.mb-1 { margin-bottom: 5px; }
.mb-2 { margin-bottom: 10px; }
.mb-3 { margin-bottom: 15px; }
.m-none { margin: 0 !important; }
.ml-auto { margin-left: auto }

.text-left { text-align: left !important; }
.text-right { text-align: right !important; }
.text-center { text-align: center !important; }
.text-muted { color: var(--ui-color-text-muted); }
.text-subtle { color: var(--ui-color-text-subtle); }
.text-error { color: var(--ui-color-danger-text); }
.text-nowrap { white-space: nowrap; }

.text-xs { font-size: 0.75em; }
.text-sm { font-size: 0.65625rem; }
.text-md { font-size: var(--ui-font-size-m); }
.text-lg { font-size: var(--ui-font-size-xl); }

.font-semibold {
	font-weight: 600;
}

.img-responsive {
	display: block;
	max-width: 100%;
	height: auto;
}
