.studio-connection {
	box-sizing: border-box;
	max-width: 52rem;
}

.studio-connection *,
.studio-connection *::before,
.studio-connection *::after {
	box-sizing: inherit;
}

.studio-connection-field {
	margin-bottom: 1rem;
}

.studio-connection-field label {
	display: block;
	font-weight: 600;
	margin-bottom: 0.35rem;
}

.studio-connection-field input,
.studio-connection-field textarea {
	display: block;
	font: inherit;
	max-width: 100%;
	padding: 0.6rem;
	width: 100%;
}

.studio-connection button {
	cursor: pointer;
}

.studio-connection button:disabled {
	cursor: not-allowed;
	opacity: 0.65;
}

.studio-connection-honeypot {
	left: -10000px;
	position: absolute;
	top: auto;
	width: 1px;
	height: 1px;
	overflow: hidden;
}

.studio-connection-status {
	min-height: 1.5em;
}

.studio-connection-toolbar {
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	gap: 1rem;
	margin-bottom: 1rem;
}

.studio-connection-message {
	background: #fff;
	border: 1px solid #8c8f94;
	border-radius: 0.25rem;
	margin: 0 0 1rem;
	padding: 1rem;
}

.studio-connection-message h2 {
	font-size: 1.25rem;
	margin: 0 0 0.75rem;
}

.studio-connection-message dl {
	margin: 0;
}

.studio-connection-message dt {
	font-weight: 700;
	margin-top: 0.65rem;
}

.studio-connection-message dd {
	margin: 0.15rem 0 0;
}

.studio-connection-message-text {
	white-space: pre-wrap;
	word-break: break-word;
}

.studio-connection .screen-reader-text {
	clip: rect(1px, 1px, 1px, 1px);
	clip-path: inset(50%);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute;
	width: 1px;
	word-wrap: normal !important;
}
