/**
 * LabScope Community — public styles.
 *
 * Theme-independent baseline styles. Themes may override via their own CSS.
 */

.lscom-community-shell,
.lscom-module,
.lscom-notice {
	box-sizing: border-box;
	max-width: 100%;
}

.lscom-community-shell {
	padding: clamp(1.5rem, 3vw, 2.25rem) 0;
}

.lscom-community-shell__header {
	margin-bottom: 1.75rem;
}

.lscom-community-shell__title,
.lscom-module__title {
	margin: 0 0 0.5em;
	font-size: clamp(1.35rem, 2vw, 1.65rem);
	line-height: 1.25;
	letter-spacing: -0.015em;
}

.lscom-community-shell__intro,
.lscom-module__placeholder,
.lscom-module__hint,
.lscom-notice p {
	margin: 0 0 1em;
	line-height: 1.65;
	color: inherit;
}

.lscom-community-shell__modules {
	display: grid;
	gap: 2rem;
}

.lscom-community-shell__modules > * + * {
	margin-top: 0;
}

.lscom-notice--login-required {
	padding: 1rem 1.15rem;
	border: 1px solid color-mix(in srgb, currentColor 18%, transparent);
	border-radius: 12px;
	background: color-mix(in srgb, currentColor 4%, transparent);
}

.lscom-notice__link {
	text-decoration: underline;
	font-weight: 600;
}
