/* ==========================================================================
   论坛广场侧栏：最新话题条目
   ========================================================================== */
.svhs-side-topics {
	display: flex;
	flex-direction: column;
}

.svhs-side-topic {
	display: block;
	padding: 10px 8px;
	border-radius: var(--svhs-r-sm);
	transition: background var(--svhs-t-fast) var(--svhs-ease);
}

.svhs-side-topic:hover {
	background: var(--svhs-primary-soft);
}

.svhs-side-topic-title {
	display: block;
	font-size: 13.5px;
	font-weight: 500;
	color: var(--svhs-ink-2);
	line-height: 1.55;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

.svhs-side-topic:hover .svhs-side-topic-title {
	color: var(--svhs-primary);
}

.svhs-side-topic-meta {
	display: block;
	font-size: 11.5px;
	color: var(--svhs-muted-2);
	margin-top: 3px;
}

.svhs-side-topic + .svhs-side-topic {
	border-top: 1px solid var(--svhs-line-soft);
}

/* 论坛广场主列在窄屏下的间距 */
.svhs-bbp-main {
	min-width: 0;
}

.svhs-bbp-main > #bbpress-forums {
	margin-top: 0;
}

/* bbPress 归档页面的 form 直接子元素归位 */
.svhs-bbp-main #bbpress-forums > form {
	clear: both;
	float: none;
	margin-bottom: var(--svhs-s5);
	max-width: 460px;
}

/* ==========================================================================
   学校版块横幅（单版块 / 单主题页顶部）
   ========================================================================== */
.svhs-school-banner {
	position: relative;
	display: flex;
	align-items: center;
	gap: var(--svhs-s5);
	padding: var(--svhs-s6) var(--svhs-s7);
	margin-bottom: var(--svhs-s6);
	border-radius: var(--svhs-r-xl);
	background: linear-gradient(135deg, #eef5ff 0%, #f8fbff 58%, #fff 100%);
	border: 1px solid #dbe8f8;
	overflow: hidden;
}

.svhs-school-banner::after {
	content: "";
	position: absolute;
	right: -46px;
	top: -54px;
	width: 200px;
	height: 200px;
	border-radius: 50%;
	background: radial-gradient(circle, rgba(74, 157, 222, .1) 0, transparent 68%);
	pointer-events: none;
}

.svhs-school-banner-avatar {
	width: 62px;
	height: 62px;
	flex-shrink: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: var(--svhs-r-lg);
	background: var(--svhs-grad-primary);
	color: #fff;
	font-size: 26px;
	font-weight: 800;
	box-shadow: var(--svhs-sh-primary);
	letter-spacing: -1px;
	position: relative;
	z-index: 1;
}

.svhs-school-banner-text {
	min-width: 0;
	position: relative;
	z-index: 1;
}

.svhs-school-banner-title {
	margin: 0 0 6px;
	font-size: 25px;
	letter-spacing: -.02em;
}

.svhs-school-banner-meta {
	display: flex;
	align-items: center;
	gap: var(--svhs-s5);
	flex-wrap: wrap;
	margin: 0;
	font-size: 13px;
	color: var(--svhs-muted);
}

.svhs-school-banner-meta span {
	display: inline-flex;
	align-items: center;
	gap: 5px;
}

.svhs-school-banner-meta svg {
	width: 15px;
	height: 15px;
	color: var(--svhs-primary);
	opacity: .8;
}

@media (max-width: 640px) {
	.svhs-school-banner {
		padding: var(--svhs-s5);
		gap: var(--svhs-s4);
	}
	.svhs-school-banner-avatar {
		width: 50px;
		height: 50px;
		font-size: 21px;
		border-radius: var(--svhs-r-md);
	}
	.svhs-school-banner-title {
		font-size: 20px;
	}
	.svhs-school-banner-meta {
		gap: var(--svhs-s3);
	}
}
