.rt-bs {
	display: flex;
	flex-wrap: wrap;
	gap: .5em;
}

.rt-b {
	position: relative;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
}

.rt-b.is-loading::after {
	position: absolute;
	top: 50%;
	left: 50%;
	box-sizing: border-box;
	width: 1.1rem;
	height: 1.1rem;
	margin: -.55rem 0 0 -.55rem;
}

.rt-b.is-loading svg {
	opacity: .25;
}

.rt-b:disabled {
	cursor: default;
}

.rt-b svg,
.rt-s svg {
	width: 1.25em;
	height: 1.25em;
	flex: none;
}

.rt-s {
	display: inline-flex;
	align-items: center;
	gap: .3em;
}

.rt-s[hidden],
.rt-v[hidden] {
	display: none;
}

.rt--card {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: .5em;
}

.rt--card .rt-v {
	margin: 0;
}

.rt-d {
	position: fixed;
	width: min(36rem, calc(100vw - 2rem));
	max-height: calc(100vh - 2rem);
	overflow: auto;
	padding: 1.5rem;
}

.rt-d-f {
	display: grid;
	gap: .75rem;
}

.rt-d-f textarea {
	width: 100%;
	box-sizing: border-box;
	resize: vertical;
}

.rt-d-e:empty {
	display: none;
}

.rt-d-a {
	display: flex;
	flex-wrap: wrap;
	gap: .75rem;
	margin: 0;
}
