/* ================= 网站详情页 · 青绿清新风格 ================= */
body{
	background: radial-gradient(1200px 420px at 50% -140px, #e9f4f2 0, rgba(233, 244, 242, 0) 70%), #f6f8f7 !important;
	min-height: 100vh;
}

.sd-page{
	--sd-primary:#2c7a7b;
	--sd-primary-2:#3f9a93;
	--sd-primary-soft:#e9f4f2;
	--sd-danger:#e0604f;
	--sd-text:#1f2d2b;
	--sd-sub:#4a5a56;
	--sd-muted:#7c8b88;
	--sd-line:rgba(31,45,43,.08);
	--sd-radius:12px;
	--sd-radius-sm:8px;
	--sd-shadow:0 2px 12px rgba(31,45,43,.05);
	--sd-shadow-hover:0 10px 26px rgba(31,45,43,.10);
}

/* ---------- 通用卡片 ---------- */
.sd-page .card{
	border-radius:var(--sd-radius);
	box-shadow:var(--sd-shadow);
	background:#fff;
	border:0;
	transition:box-shadow .3s ease;
}
.sd-page .card:hover{
	box-shadow:var(--sd-shadow-hover);
}

/* ---------- 顶部主卡片 ---------- */
.sd-hero{
	overflow:hidden;
}

.sd-hero-head{
	position:relative;
	text-align:center;
	padding:26px 70px 22px 24px;
	background:#fff;
	border-bottom:1px solid var(--sd-line);
}

.sd-hero-head::after{
	content:"";
	position:absolute;
	left:0;right:0;bottom:-1px;
	height:2px;
	background:linear-gradient(90deg,transparent,var(--sd-primary-2),transparent);
	opacity:.5;
}

.sd-title{
	display:inline-flex;
	align-items:center;
	justify-content:center;
	gap:8px;
	flex-wrap:wrap;
	font-size:1.55rem;
	font-weight:800;
	letter-spacing:.4px;
	color:var(--sd-text);
	margin:0;
	line-height:1.4;
}

.sd-title img{
	box-shadow:0 4px 12px rgba(31,45,43,.10);
}

.sd-badges{
	position:absolute;
	right:20px;
	top:50%;
	transform:translateY(-50%);
	display:flex;
	align-items:center;
	gap:6px;
}

.sd-badges em{
	font-size:1.05rem;
	line-height:1;
}

/* ---------- 信息区 ---------- */
.sd-info{
	padding:4px 4px 0;
}

.sd-meta p{
	margin-bottom:9px;
	font-size:.92rem;
	color:var(--sd-muted);
	display:flex;
	align-items:center;
	flex-wrap:wrap;
	gap:4px;
}

.sd-meta .sd-k{
	color:var(--sd-muted);
	min-width:62px;
}

.sd-meta .sd-v{
	color:var(--sd-text);
	font-weight:700;
	font-size:.95rem;
	letter-spacing:.2px;
}

.sd-meta .text-success{
	color:var(--sd-primary)!important;
}

.sd-meta .text-danger{
	color:var(--sd-danger)!important;
}

/* ---------- 权重区 ---------- */
.sd-weight{
	text-align:center;
	padding:6px 0 0;
}

.sd-weight-t{
	color:var(--sd-muted);
	font-size:.86rem;
	margin-bottom:10px;
	font-weight:600;
	letter-spacing:.5px;
}

.sd-weight-sub{
	display:block;
	font-size:.72rem;
	color:#b3bfbc;
	font-weight:400;
	margin-top:2px;
}

.sd-weight img{
	display:inline-block;
	margin:3px 0;
	transition:transform .25s ease;
}

.sd-weight img:hover{
	transform:translateY(-2px);
}

/* ---------- 二维码区 ---------- */
.sd-qr-col p{
	font-size:.86rem;
	color:var(--sd-muted);
	letter-spacing:.5px;
	font-weight:600;
}

.sd-qr{
	display:inline-flex;
	align-items:center;
	justify-content:center;
	padding:9px;
	background:#fff;
	border:1px solid var(--sd-line);
	border-radius:var(--sd-radius);
	box-shadow:var(--sd-shadow);
	transition:.3s;
}

.sd-qr:hover{
	box-shadow:var(--sd-shadow-hover);
	transform:translateY(-2px);
}

/* ---------- 操作按钮区 ---------- */
.sd-actions{
	display:flex;
	align-items:center;
	flex-wrap:wrap;
	gap:10px;
	padding:18px;
	margin-top:14px;
	border-radius:var(--sd-radius);
	background:#f8fbfa;
	border:1px solid var(--sd-line);
}

.sd-actions .btn{
	border-radius:var(--sd-radius-sm);
	font-weight:600;
	font-size:.9rem;
	padding:8px 18px;
	border:0;
	transition:transform .22s ease, box-shadow .22s ease, background .22s ease, color .22s ease, border-color .22s ease;
	display:inline-flex;
	align-items:center;
	gap:5px;
}

.sd-actions .btn:hover{
	transform:translateY(-1px);
}

.btn-sd-main{
	background:var(--sd-primary) !important;
	color:#fff !important;
	box-shadow:0 4px 14px rgba(44,122,123,.26);
}
.btn-sd-main:hover{
	background:var(--sd-primary-2) !important;
	box-shadow:0 8px 20px rgba(44,122,123,.34);
}

.btn-sd-app{
	background:#fff !important;
	color:var(--sd-primary) !important;
	border:1px solid rgba(44,122,123,.35) !important;
	box-shadow:0 2px 8px rgba(31,45,43,.05);
}
.btn-sd-app:hover{
	background:var(--sd-primary) !important;
	color:#fff !important;
	border-color:var(--sd-primary) !important;
	box-shadow:0 6px 16px rgba(44,122,123,.26);
}

.btn-sd-ghost{
	background:#fff !important;
	color:var(--sd-sub) !important;
	border:1px solid var(--sd-line) !important;
	box-shadow:0 2px 8px rgba(31,45,43,.04);
}
.btn-sd-ghost:hover{
	color:var(--sd-danger) !important;
	border-color:rgba(224,96,79,.4) !important;
	box-shadow:0 4px 12px rgba(224,96,79,.12);
}

.sd-report{
	margin-left:auto;
	font-size:.82rem;
	color:var(--sd-muted) !important;
	text-decoration:none;
	transition:color .2s;
}
.sd-report:hover{
	color:var(--sd-primary) !important;
}

/* 下拉菜单 */
.sd-actions .dropdown-menu{
	border:1px solid var(--sd-line);
	border-radius:var(--sd-radius-sm);
	box-shadow:var(--sd-shadow-hover);
	padding:.35rem;
}
.sd-actions .dropdown-item{
	border-radius:6px;
	font-size:.86rem;
	color:var(--sd-sub);
	transition:background .2s ease, color .2s ease;
}
.sd-actions .dropdown-item:hover{
	background:var(--sd-primary-soft);
	color:var(--sd-primary);
}

/* ---------- 图文轮播 ---------- */
.sd-gallery{
	padding:6px 4px;
}
.sd-gallery .nz_slider_item img{
	border-radius:var(--sd-radius-sm);
	box-shadow:0 4px 16px rgba(31,45,43,.10);
	transition:transform .35s ease;
}
.sd-gallery .nz_slider_item img:hover{
	transform:scale(1.015);
}

/* ---------- 描述卡片 ---------- */
.sd-desc{
	line-height:1.9;
	color:var(--sd-sub);
	font-size:.95rem;
}
.sd-desc .li-title{
	color:var(--sd-text);
	font-weight:700;
	letter-spacing:.3px;
}
.sd-desc hr{
	border-top:1px dashed var(--sd-line);
	margin:20px 0;
}
.sd-desc a{
	color:var(--sd-primary);
	text-decoration:none;
	transition:color .2s;
}
.sd-desc a:hover{
	color:var(--sd-primary-2);
}

.sd-tags a{
	display:inline-block;
	padding:3px 12px;
	margin:3px 4px 3px 0;
	font-size:.82rem;
	color:var(--sd-primary);
	background:var(--sd-primary-soft);
	border:1px solid rgba(44,122,123,.16);
	border-radius:20px;
	transition:.22s;
	text-decoration:none;
}
.sd-tags a:hover{
	background:var(--sd-primary);
	color:#fff;
	border-color:var(--sd-primary);
	transform:translateY(-1px);
	box-shadow:0 4px 12px rgba(44,122,123,.22);
}

.sd-desc .blockquote-footer{
	font-size:.82rem;
	color:var(--sd-muted);
	margin-top:8px;
	line-height:1.7;
}
.sd-desc .blockquote-footer a{
	color:var(--sd-primary);
}

/* 认领按钮 */
.sd-page .btn-outline-info{
	color:var(--sd-primary);
	border-color:rgba(44,122,123,.35);
	background:var(--sd-primary-soft);
	border-radius:var(--sd-radius-sm);
	transition:all .22s ease;
}
.sd-page .btn-outline-info:hover{
	background:var(--sd-primary);
	border-color:var(--sd-primary);
	color:#fff;
}

/* ---------- 相关资讯 / 侧栏卡片头部 ---------- */
.sd-sec-head{
	display:flex;
	align-items:center;
	gap:8px;
	padding:16px 20px;
	border-bottom:1px solid var(--sd-line);
	background:#fff;
	border-radius:var(--sd-radius) var(--sd-radius) 0 0;
}
.sd-sec-head b{
	color:var(--sd-text);
	font-weight:700;
	font-size:.98rem;
	letter-spacing:.3px;
}
.sd-sec-head i{
	font-size:1.05rem;
	opacity:.75;
}
.sd-sec-head .text-danger{
	color:var(--sd-danger)!important;
}
.sd-sec-head .text-info{
	color:var(--sd-primary)!important;
}
.sd-sec-head .text-success{
	color:var(--sd-primary)!important;
}

/* ---------- 相关资讯卡片项 ---------- */
.sd-news-item{
	border-radius:var(--sd-radius-sm) !important;
	box-shadow:var(--sd-shadow) !important;
	overflow:hidden;
	height:100%;
}
.sd-news-item:hover{
	box-shadow:var(--sd-shadow-hover) !important;
	transform:translateY(-2px);
}
.sd-news-item .card-body{
	border-radius:var(--sd-radius-sm);
}
.sd-news-item .card-title a{
	color:var(--sd-text);
	font-weight:600;
	font-size:.93rem;
	text-decoration:none;
	transition:color .2s;
}
.sd-news-item:hover .card-title a{
	color:var(--sd-primary);
}
.sd-news-item .card-text{
	font-size:.82rem;
	line-height:1.7;
}

/* ---------- 侧栏列表 ---------- */
.sd-side .card-body{
	padding:16px 18px;
}
.sd-side .user_item_list li{
	padding:7px 0;
	border-bottom:1px dashed var(--sd-line);
	line-height:1.6;
}
.sd-side .user_item_list li:last-child{
	border-bottom:0;
}
.sd-side .user_item_list a{
	color:var(--sd-sub);
	font-size:.88rem;
	text-decoration:none;
	transition:color .2s, padding-left .2s;
}
.sd-side .user_item_list a:hover{
	color:var(--sd-primary);
	padding-left:4px;
}

.sd-side .media-body p a{
	color:var(--sd-sub);
	font-size:.86rem;
	font-weight:500;
	text-decoration:none;
	transition:color .2s;
}
.sd-side .media-body p a:hover{
	color:var(--sd-primary);
}
.sd-side .media-body small{
	font-size:.74rem;
	color:var(--sd-muted);
}

.sd-side .card-header a{
	text-decoration:none;
	color:var(--sd-muted);
}
.sd-side .card-header a:hover{
	color:var(--sd-primary);
}

/* ---------- 小程序 / 公众号圆形卡片 ---------- */
.sd-side .anim{
	border-radius:var(--sd-radius-sm) !important;
	box-shadow:none !important;
	transition:transform .25s ease;
	background:transparent;
}
.sd-side .anim:hover{
	transform:translateY(-2px);
}
.sd-side .anim img{
	box-shadow:0 3px 12px rgba(31,45,43,.10);
	transition:box-shadow .25s ease;
}
.sd-side .anim:hover img{
	box-shadow:0 6px 18px rgba(31,45,43,.16);
}

/* ---------- 响应式微调 ---------- */
@media (max-width:767.98px){
	.sd-hero-head{
		padding:22px 16px 18px;
	}
	.sd-title{
		font-size:1.22rem;
	}
	.sd-badges{
		position:static;
		transform:none;
		justify-content:center;
		margin-top:8px;
	}
	.sd-actions{
		padding:14px;
	}
	.sd-report{
		margin-left:0;
	}
}

canvas{
	display:block;
	max-width:100%;
	height:auto;
	margin:0 auto;
	border-radius:var(--sd-radius-sm);
}