.vid-select {
	display: flex;
	flex-flow: row wrap;
	align-items: baseline;
	position: relative;
	box-sizing: border-box;
	min-height: var(--vid-text-height);
	padding: var(--vid-text-padding);
	padding-right: 30px;
	line-height: 2;
	gap: var(--vid-gap);
	color: var(--vid-text-color) !important;
	user-select: none;
	cursor: pointer;
}
.vid-select::after {
	content: "";
	border-right: 2px solid var(--vid-text-alt);
	border-bottom: 2px solid var(--vid-text-alt);
	width: 10px;
	height: 10px;
	transform: rotate(45deg);
	position: absolute;
	right: 10px;
	top: calc(50% - 10px);
	transition: top 150ms, transform 150ms;
}
.vid-select.active::after {
	transform: rotate(-135deg);
	top: calc(50% - 5px);
}
.vid-select-dropdown {
	position: absolute;
	z-index: 10000;
	display: flex;
	flex-flow: column nowrap;
	width: max-content;
	height: max-content;
	max-height: 50vh;
	overflow-y: auto;
	-webkit-box-shadow: 5px 5px 10px 0px #0005;
	box-shadow: 5px 5px 10px 0px #0005;
}
.vid-select-option {
	display: flex;
	align-items: center;
	box-sizing: border-box;
	gap: 10px;
	width: 100%;
	padding: 5px;
	color: var(--vid-text-color) !important;
	font-family: sans-serif;
}
.vid-select-option.active, .vid-select-option.selected { background-color: #eee; }
.vid-select-token {
	display: flex;
	align-items: center;
	background-color: var(--vid-text-alt);
	padding: 0px 4px;
	border-radius: var(--vid-border-radius);
	width: max-content;
	font-family: sans-serif;
	gap: var(--vid-gap);
	user-select: none;
}
.vid-select-token label { font-size: 0.8em; word-break: break-all; }
.vid-select-token-remove { color: #777; font-size: 1.1em; cursor: pointer; padding-left: 5px; }

.vid-select, .vid-select-dropdown {
	background-color: var(--vid-text-bg);
	border: 1px solid var(--vid-text-border);
	border-radius: var(--vid-border-radius);
}
.vid-select.active, .vid-select:focus { outline: 1px solid var(--vid-text-focus); }
.vid-select.disabled { background-color: var(--vid-text-disabled); color: var(--vid-text-placeholder) !important; }
.vid-select-wrapper { display: flex; flex-flow: column nowrap; width: max-content; position: relative; }
.vid-select-wrapper.row { flex-flow: row nowrap; align-items: center; }