.sh-single-layout,
.sh-reading-layout {
	width: min(100%, var(--sh-reading-width));
	margin-inline: auto;
}

.sh-single-entry__header {
	margin-bottom: 28px;
}

.sh-single-entry__meta {
	margin-bottom: 10px;
	color: var(--sh-color-subtle);
	font-size: 0.82rem;
}

.sh-single-entry__title {
	margin-bottom: 0;
	font-size: clamp(2.25rem, 6vw, 4.35rem);
	letter-spacing: -0.035em;
}

.sh-single-entry__thumbnail {
	overflow: hidden;
	margin: 0 0 clamp(28px, 5vw, 42px);
	border: 1px solid var(--sh-color-border);
	border-radius: var(--sh-radius-lg);
	background: var(--sh-color-surface);
}

.sh-single-entry__thumbnail img {
	width: 100%;
	height: auto;
}

.sh-single-entry__content {
	color: #d6cedc;
	font-size: clamp(1rem, 1.5vw, 1.075rem);
}

.sh-single-entry__content > * {
	max-width: 100%;
}

.sh-single-entry__content h2,
.sh-single-entry__content h3,
.sh-single-entry__content h4 {
	margin-top: 1.85em;
	margin-bottom: 0.7em;
}

.sh-single-entry__content h2 {
	font-size: clamp(1.65rem, 3.5vw, 2.35rem);
}

.sh-single-entry__content h3 {
	font-size: clamp(1.3rem, 2.7vw, 1.75rem);
}

.sh-single-entry__content p,
.sh-single-entry__content ul,
.sh-single-entry__content ol,
.sh-single-entry__content blockquote {
	margin-bottom: 1.35em;
}

.sh-single-entry__content blockquote {
	margin-inline: 0;
	padding: 18px 22px;
	border-left: 3px solid var(--sh-color-accent);
	background: var(--sh-color-surface);
	color: var(--sh-color-muted);
}

.sh-single-entry__content iframe,
.sh-single-entry__content video,
.sh-single-entry__content canvas {
	max-width: 100%;
}

.sh-single-entry__content img {
	max-width: 100%;
	height: auto;
	border-radius: 10px;
}

.sh-single-entry__content table {
	display: block;
	overflow-x: auto;
	max-width: 100%;
	border-collapse: collapse;
}

.sh-single-entry__content th,
.sh-single-entry__content td {
	padding: 9px 12px;
	border: 1px solid var(--sh-color-border);
}

.sh-page-links {
	margin-top: 32px;
}

.sh-related {
	margin-top: clamp(52px, 8vw, 78px);
	padding-top: clamp(34px, 5vw, 48px);
	border-top: 1px solid var(--sh-color-border);
}

.sh-fortune-block__header {
	max-width: 680px;
	margin-bottom: 24px;
}

.sh-fortune-block__header h2 {
	margin: 0;
	font-size: clamp(1.7rem, 4vw, 2.55rem);
}

@media (max-width: 600px) {
	.sh-single-entry__title {
		font-size: clamp(2rem, 10vw, 2.8rem);
	}
}
