.surfcloud-directory {
	max-width: 52rem;
	margin: 0 auto 2rem;
}
.surfcloud-level {
	margin-bottom: 1.75rem;
}
.surfcloud-course-list {
	list-style: none;
	padding: 0;
	margin: 0.5rem 0 0;
}
.surfcloud-course-list li {
	padding: 0.65rem 0;
	border-bottom: 1px solid #e6e8ee;
}
.surfcloud-level-intro {
	color: #4b5563;
	margin: 0.25rem 0 0.5rem;
}
.surfcloud-intro {
	max-width: 52rem;
	margin: 0 auto 1.5rem;
	line-height: 1.55;
}
.ges-code-explore {
	background: #6d28d9;
}
.ges-bridge {
	background: #f5f3ff;
	border-left: 4px solid #6d28d9;
	padding: 0.75rem 1rem;
}
.ges-explore pre {
	background: #0f172a;
	color: #e2e8f0;
	padding: 0.85rem 1rem;
	border-radius: 8px;
	overflow-x: auto;
	font-size: 0.9rem;
}

.ges-lesson {
	max-width: 42rem;
	line-height: 1.55;
	color: #1f2937;
}
.ges-kicker {
	font-size: 0.85rem;
	letter-spacing: 0.02em;
	color: #374151;
	margin-bottom: 0.35rem;
}
.ges-code {
	display: inline-block;
	background: #0f766e;
	color: #fff;
	font-family: ui-monospace, Consolas, monospace;
	font-size: 0.8rem;
	padding: 0.15rem 0.45rem;
	border-radius: 4px;
	margin-right: 0.35rem;
}
.ges-outcome {
	background: #f0fdfa;
	border-left: 4px solid #0f766e;
	padding: 0.75rem 1rem;
}
.ges-practice {
	padding-left: 1.2rem;
}
.ges-practice li {
	margin-bottom: 1rem;
}
.ges-lesson details {
	margin-top: 0.35rem;
	background: #f8fafc;
	padding: 0.4rem 0.7rem;
	border-radius: 6px;
}
.ges-lesson summary {
	cursor: pointer;
	font-weight: 600;
	color: #0f766e;
}
.ges-placeholder {
	border: 1px dashed #94a3b8;
	padding: 1rem 1.1rem;
	border-radius: 8px;
	background: #fffbeb;
}
.ges-source {
	font-size: 0.85rem;
	color: #6b7280;
	margin-top: 1.5rem;
}

@media (max-width: 640px) {
	.ges-lesson h2 {
		font-size: 1.35rem;
	}
}
