/**
 * OOCode 前台主题 — Element UI 风格蓝白博客
 * 参考 Element：主色 #409EFF、边框 #DCDFE6、文字 #303133 / #606266 / #909399
 */

:root {
	--oo-ink: #303133;
	--oo-ink-soft: #606266;
	--oo-muted: #909399;
	--oo-line: #dcdfe6;
	--oo-line-soft: #ebeef5;
	--oo-surface: #ffffff;
	--oo-surface-soft: #f5f7fa;
	--oo-bg: #f0f2f5;
	--oo-blue: #409eff;
	--oo-blue-mid: #66b1ff;
	--oo-blue-soft: #ecf5ff;
	--oo-blue-deep: #337ecc;
	--oo-radius: 4px;
	--oo-radius-lg: 4px;
	--oo-shadow: 0 2px 12px 0 rgba(0, 0, 0, 0.06);
	--oo-nav-h: 56px;
	--oo-top-h: 34px;
	--oo-rainbow: linear-gradient(to left, #4cd964, #5ac8fa, #007aff, #34aadc, #5856d6, #ff2d55);
	--oo-font: "Helvetica Neue", Helvetica, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", Arial, sans-serif;
}

/* ---------- 全局 ---------- */
body,
body.oo-home {
	font-family: var(--oo-font) !important;
	color: var(--oo-ink) !important;
	background: var(--oo-bg) !important;
	-webkit-font-smoothing: antialiased;
}

a {
	color: var(--oo-ink-soft);
	transition: color 0.15s ease;
}

a:hover,
a:active {
	color: var(--oo-blue) !important;
	text-decoration: none;
}

#head-container {
	padding-top: 90px !important;
}

section.container,
section.container.oo-page {
	margin: 0 auto !important;
	padding: 12px 12px 28px !important;
	max-width: 1280px;
}

@media (min-width: 1410px) {
	section.container,
	section.container.oo-page {
		max-width: 1240px;
		width: 1240px !important;
	}
}

.content-wrapper > .row,
.oo-main-row {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	margin-left: 0 !important;
	margin-right: 0 !important;
	width: 100%;
}

.left-content {
	padding: 0 10px 0 0 !important;
}

.right-content {
	padding: 0 0 0 10px !important;
}

/* 首页焦点区已展示简报，侧栏不再重复 */
body.oo-home .right-content > ul.toppic {
	display: none !important;
}

/* ---------- 顶栏 / 导航：蓝白 ---------- */
.navbar.navbar-default.navbar-fixed-top {
	background: transparent !important;
	border: none !important;
	box-shadow: none !important;
}

.top-line {
	padding: 6px 0 !important;
	min-height: var(--oo-top-h);
	height: auto !important;
	display: flex;
	align-items: center;
	/* 保留原彩虹顶栏，勿改成纯色 */
	background: #000 var(--oo-rainbow) !important;
	border-bottom: none !important;
	overflow: hidden;
}

.top-line-container {
	width: 100%;
	padding: 0 2% !important;
}

.top-line .row {
	display: flex;
	align-items: center;
	margin: 0;
}

.oo-top-advice {
	color: rgba(255, 255, 255, 0.82) !important;
	font-size: 12px;
	display: flex;
	align-items: center;
	gap: 6px;
	overflow: hidden;
}

.oo-top-advice .fa-bullhorn {
	color: #93c5fd;
	font-size: 12px;
}

.top-brand-mark {
	font-weight: 700;
	letter-spacing: 0.04em;
	color: #fff;
	font-size: 12px;
}

.top-brand-sep {
	opacity: 0.4;
}

.top-notice-text {
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.top-line ul.social-icons {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-end;
	gap: 2px;
	margin: 0;
	padding: 0;
}

.top-line ul.social-icons li {
	margin: 0 !important;
}

.top-line ul.social-icons li a {
	font-size: 12px !important;
	color: rgba(255, 255, 255, 0.78) !important;
	padding: 3px 7px;
	border-radius: 3px;
	font-weight: 500;
}

.top-line ul.social-icons li a:hover {
	color: #fff !important;
	background: rgba(255, 255, 255, 0.12);
	font-size: 12px !important;
	font-weight: 600 !important;
}

.containerBox.oo-nav-shell,
.el-menu-shell {
	background: #fff;
	border-bottom: 1px solid var(--oo-line-soft);
	box-shadow: 0 1px 4px rgba(0, 21, 41, 0.08);
	padding: 0 !important;
}

.top-line-container.el-topbar,
.el-topbar {
	max-width: 1240px;
	margin: 0 auto;
	padding: 0 16px !important;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	width: 100%;
}

.el-topbar .row {
	display: contents;
}

.el-topbar-left {
	flex: 1;
	min-width: 0;
}

.el-topbar-links,
.el-topbar ul.social-icons {
	display: flex !important;
	flex-wrap: wrap;
	justify-content: flex-end;
	gap: 2px;
	margin: 0 !important;
	padding: 0 !important;
	list-style: none;
	flex-shrink: 0;
}

.oo-nav-inner,
.el-menu-inner {
	max-width: 1240px;
	margin: 0 auto;
	height: var(--oo-nav-h);
	padding: 0 16px;
	display: flex;
	align-items: center;
	gap: 4px;
	position: relative;
}

.oo-logo {
	flex: 0 0 auto;
	display: flex;
	align-items: center;
	height: 36px;
	margin: 0;
	line-height: 0;
}

.oo-logo img {
	display: block;
	height: 36px;
	width: auto;
	max-width: 150px;
	object-fit: contain;
}

.oo-nav-menu-wrap,
.oo-nav-menu-wrap .pc-nav,
.oo-nav-menu-wrap .m-nav {
	flex: 1 1 auto;
	float: none !important;
	height: var(--oo-nav-h) !important;
	max-width: none !important;
	margin: 0 !important;
	min-width: 0;
}

/* Element Menu 横向菜单 */
.oo-nav-menu,
.el-menu {
	display: flex !important;
	align-items: stretch;
	justify-content: flex-start;
	flex-wrap: nowrap;
	height: var(--oo-nav-h);
	margin: 0 !important;
	padding: 0 8px !important;
	list-style: none;
	gap: 0;
	border-bottom: none;
}

.oo-nav-menu > li,
.el-menu > li {
	float: none !important;
	position: relative;
	height: var(--oo-nav-h);
	display: flex;
	align-items: center;
	border-bottom: 2px solid transparent;
	margin-bottom: -1px;
}

.pc-nav li a,
.oo-nav-menu > li > a,
.el-menu > li > a {
	height: var(--oo-nav-h) !important;
	line-height: var(--oo-nav-h) !important;
	padding: 0 18px !important;
	font-size: 14px !important;
	font-weight: 500;
	color: var(--oo-ink) !important;
	position: relative;
	border-radius: 0;
	display: inline-flex !important;
	align-items: center;
	gap: 6px;
	white-space: nowrap;
	background: transparent !important;
}

.pc-nav li a::after,
.oo-nav-menu > li > a::after {
	display: none !important;
}

.pc-nav li a:hover,
.pc-nav li a.active,
.pc-nav li.active > a,
.oo-nav-menu > li > a:hover,
.oo-nav-menu > li > a.active,
.oo-nav-menu > li.active > a,
.el-menu > li:hover,
.el-menu > li.active {
	color: var(--oo-blue) !important;
	background: transparent !important;
}

.oo-nav-menu > li:hover,
.oo-nav-menu > li.active,
.el-menu > li:hover,
.el-menu > li.active {
	border-bottom-color: var(--oo-blue);
}

.pc-nav li a i.fa,
.oo-nav-menu > li > a i.fa {
	color: inherit;
	opacity: 0.85;
	margin-right: 0;
	font-size: 14px;
	position: static !important;
	top: auto !important;
}

.el-nav-actions {
	margin-left: auto;
	display: flex;
	align-items: center;
	gap: 8px;
}

.oo-nav-search,
.search-button.oo-nav-search,
.search-button {
	flex: 0 0 auto;
	float: none !important;
	width: 38px;
	height: 38px !important;
	line-height: 38px !important;
	margin: 0 !important;
	text-align: center;
	border-radius: 4px;
	color: var(--oo-ink-soft);
	font-size: 16px;
	cursor: pointer;
	background: var(--oo-surface-soft);
	border: 1px solid var(--oo-line);
}

.oo-nav-search:hover,
.search-button:hover {
	color: var(--oo-blue);
	border-color: #93b4d8;
	background: var(--oo-blue-soft);
	transform: none;
}

.m-nav-btn {
	display: none;
	order: 3;
	margin-left: auto;
}

@media (max-width: 1024px) {
	.m-nav-btn {
		display: block;
		float: none !important;
		line-height: 38px;
		height: 38px;
		width: 38px;
		text-align: center;
		border: 1px solid var(--oo-line);
		border-radius: 4px;
		background: var(--oo-surface-soft);
		margin: 0 0 0 auto !important;
	}

	.oo-nav-menu-wrap {
		display: none;
	}
}

/* 兼容旧结构（子页若仍用 .header） */
.header,
.h-wrap {
	height: var(--oo-nav-h) !important;
}

h1.logo-area,
.logo-area {
	margin: 0 !important;
}

.pc-nav li .sub-nav {
	top: 100% !important;
	left: 0 !important;
	border: 1px solid var(--oo-line) !important;
	border-bottom: 2px solid var(--oo-blue) !important;
	border-radius: var(--oo-radius) !important;
	box-shadow: 0 8px 20px rgba(26, 35, 50, 0.1) !important;
	padding: 4px 0 !important;
	min-width: 140px;
}

.pc-nav li .sub-nav li a {
	height: 38px !important;
	line-height: 38px !important;
	font-size: 13px !important;
	font-weight: 500;
}

.pc-nav li .sub-nav li a:hover {
	background: var(--oo-blue-soft) !important;
	color: var(--oo-blue-deep) !important;
}

#search-area {
	border-radius: var(--oo-radius) !important;
	border: 1px solid var(--oo-line);
	box-shadow: 0 8px 24px rgba(26, 35, 50, 0.12);
	padding: 10px !important;
	background: #fff;
}

#search-area .s-input {
	border: 1px solid var(--oo-line) !important;
	border-radius: 4px !important;
	height: 38px;
	padding: 0 12px;
}

#search-area .s-button {
	background: var(--oo-blue) !important;
	border: none !important;
	border-radius: 4px !important;
	height: 38px;
	padding: 0 16px;
	font-weight: 600;
}

/* ---------- 公告条 ---------- */
.oo-notice-bar {
	display: flex;
	align-items: center;
	gap: 10px;
	background: #fff;
	border: 1px solid var(--oo-line);
	border-radius: var(--oo-radius);
	padding: 8px 12px;
	margin-bottom: 10px;
	box-shadow: var(--oo-shadow);
}

.oo-notice-label {
	flex-shrink: 0;
	font-size: 12px;
	font-weight: 700;
	color: #fff;
	background: #c2410c;
	padding: 3px 8px;
	border-radius: 2px;
}

.oo-notice-scroll {
	flex: 1;
	display: flex;
	flex-wrap: wrap;
	gap: 4px 16px;
	margin: 0;
	padding: 0;
	list-style: none;
	min-width: 0;
	overflow: hidden;
}

.oo-notice-scroll li a {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	font-size: 13px;
	color: var(--oo-ink-soft) !important;
	max-width: 280px;
}

.oo-notice-scroll li a em {
	font-style: normal;
	font-size: 11px;
	color: var(--oo-muted);
}

.oo-notice-scroll li a span {
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.oo-notice-scroll li:first-child a span {
	color: var(--oo-blue-deep);
	font-weight: 700;
}

.oo-notice-more {
	flex-shrink: 0;
	font-size: 12px;
	font-weight: 600;
	color: var(--oo-blue) !important;
}

/* ---------- 焦点区：轮播 + 简报 ---------- */
.oo-focus {
	display: grid;
	grid-template-columns: 1.7fr 1fr;
	gap: 10px;
	margin-bottom: 12px;
}

.oo-focus-main {
	min-width: 0;
}

#lunch-images-box {
	padding: 0 !important;
	margin: 0 !important;
	border-radius: var(--oo-radius-lg) !important;
	overflow: hidden;
	border: 1px solid var(--oo-line);
	height: 100%;
	background: #0f172a;
}

.swiper-container {
	border-radius: var(--oo-radius-lg) !important;
	height: 100%;
	--swiper-theme-color: #60a5fa !important;
	--swiper-navigation-color: #fff !important;
}

.swiper-container .swiper-slide {
	background: #0f172a !important;
	height: 320px;
}

.swiper-container .swiper-slide img {
	width: 100%;
	height: 320px;
	object-fit: cover;
	display: block;
	opacity: 0.95;
}

.swiper-container h3.slide-title {
	padding: 28px 14px 12px !important;
	font-size: 16px !important;
	font-weight: 700 !important;
	line-height: 1.4 !important;
	height: auto !important;
	background: linear-gradient(transparent, rgba(10, 22, 40, 0.88)) !important;
	white-space: nowrap !important;
	overflow: hidden;
	text-overflow: ellipsis;
}

.swiper-container .swiper-pagination {
	top: auto !important;
	bottom: 10px !important;
	right: 12px !important;
	left: auto !important;
	width: auto !important;
}

.swiper-container .swiper-button-next,
.swiper-container .swiper-button-prev {
	display: flex !important;
	width: 34px;
	height: 34px;
	margin-top: -17px;
	border-radius: 3px;
	background: rgba(15, 23, 42, 0.45);
	opacity: 0;
	transition: opacity 0.2s;
}

#lunch-images-box:hover .swiper-button-next,
#lunch-images-box:hover .swiper-button-prev {
	opacity: 1;
}

.swiper-container .swiper-button-next:after,
.swiper-container .swiper-button-prev:after {
	font-size: 14px !important;
	font-weight: 700;
}

.oo-focus-side {
	display: flex;
	flex-direction: column;
	gap: 10px;
	margin: 0 !important;
	padding: 0 !important;
	list-style: none;
	height: 320px;
}

.oo-focus-side li,
.oo-focus-side.toppic li {
	flex: 1;
	margin: 0 !important;
	border-radius: var(--oo-radius-lg) !important;
	overflow: hidden;
	border: 1px solid var(--oo-line);
	background: #000;
	position: relative;
}

.oo-focus-side li i,
.oo-focus-side.toppic li i {
	display: block;
	height: 100%;
	opacity: 1 !important;
}

.oo-focus-side li i img,
.oo-focus-side.toppic li i img {
	width: 100%;
	height: 100% !important;
	object-fit: cover;
	display: block;
	transition: transform 0.35s ease;
}

.oo-focus-side li:hover i img {
	transform: scale(1.04);
}

.oo-focus-side li h2,
.oo-focus-side.toppic li h2 {
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	margin: 0;
	padding: 24px 12px 10px !important;
	font-size: 14px !important;
	font-weight: 700 !important;
	color: #fff;
	background: linear-gradient(transparent, rgba(10, 22, 40, 0.85)) !important;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.oo-focus-side li span,
.oo-focus-side.toppic li span {
	position: absolute;
	top: 8px !important;
	left: 8px !important;
	padding: 2px 8px !important;
	background: var(--oo-blue) !important;
	color: #fff;
	font-size: 11px !important;
	font-weight: 600;
	border-radius: 2px !important;
}

/* ---------- 频道条 ---------- */
.oo-channel {
	display: flex;
	align-items: center;
	gap: 10px;
	background: #fff;
	border: 1px solid var(--oo-line);
	border-radius: var(--oo-radius);
	padding: 8px 12px;
	margin-bottom: 10px;
	box-shadow: var(--oo-shadow);
	overflow: hidden;
}

.oo-channel-label {
	flex-shrink: 0;
	font-size: 12px;
	font-weight: 700;
	color: #fff;
	background: var(--oo-blue);
	padding: 3px 8px;
	border-radius: 2px;
}

.oo-channel-list {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
	min-width: 0;
	flex: 1;
}

.oo-channel-list a {
	font-size: 13px;
	font-weight: 600;
	color: var(--oo-ink-soft) !important;
	padding: 4px 10px;
	border: 1px solid var(--oo-line);
	border-radius: 3px;
	background: var(--oo-surface-soft);
	white-space: nowrap;
}

.oo-channel-list a:hover {
	border-color: var(--oo-blue);
	color: var(--oo-blue) !important;
	background: var(--oo-blue-soft);
}

.oo-channel-list a i {
	margin-right: 3px;
	color: var(--oo-blue-mid);
}

.oo-channel-extra {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
	flex-shrink: 0;
	padding-left: 8px;
	border-left: 1px solid var(--oo-line);
}

.oo-channel-extra a {
	font-size: 12px;
	font-weight: 600;
	color: var(--oo-blue) !important;
	padding: 4px 8px;
	white-space: nowrap;
}

.oo-channel-extra a:hover {
	background: var(--oo-blue-soft);
	border-radius: 3px;
}

/* ---------- 通用板块标题 ---------- */
.oo-block {
	background: #fff;
	border: 1px solid var(--oo-line);
	border-radius: var(--oo-radius);
	padding: 12px 14px 14px;
	margin-bottom: 12px;
	box-shadow: var(--oo-shadow);
}

.oo-block-head,
.oo-feed-head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	margin-bottom: 12px;
	padding-bottom: 8px;
	border-bottom: 1px solid var(--oo-line-soft);
}

.oo-block-head h2,
.oo-feed-head h2 {
	margin: 0;
	font-size: 16px;
	font-weight: 700;
	color: var(--oo-ink);
	padding-left: 10px;
	border-left: 3px solid var(--oo-blue);
	line-height: 1.2;
}

.oo-block-more {
	font-size: 12px;
	font-weight: 600;
	color: var(--oo-blue) !important;
}

.oo-feed-tabs {
	display: flex;
	gap: 4px;
	flex-wrap: wrap;
}

.oo-feed-tabs span,
.oo-feed-tabs a {
	font-size: 12px;
	font-weight: 600;
	padding: 3px 10px;
	border-radius: 3px;
	color: var(--oo-muted) !important;
}

.oo-feed-tabs span.is-active {
	background: var(--oo-blue);
	color: #fff !important;
}

.oo-feed-tabs a:hover {
	background: var(--oo-blue-soft);
	color: var(--oo-blue) !important;
}

.oo-feed-head {
	background: #fff;
	border: 1px solid var(--oo-line);
	border-radius: var(--oo-radius);
	padding: 10px 14px;
	margin-bottom: 10px;
	box-shadow: var(--oo-shadow);
}

/* ---------- 双栏看板：精选密铺 + 热门 ---------- */
.oo-board-row {
	display: grid;
	grid-template-columns: 1.4fr 1fr;
	gap: 10px;
	margin-bottom: 10px;
	align-items: start;
}

.oo-board {
	background: #fff;
	border: 1px solid var(--oo-line);
	border-radius: var(--oo-radius);
	padding: 10px 12px 12px;
	box-shadow: var(--oo-shadow);
	min-width: 0;
	height: auto;
}

.oo-pick-grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 8px;
}

.oo-pick-card {
	display: flex;
	align-items: center;
	gap: 8px;
	padding: 8px;
	border: 1px solid var(--oo-line);
	border-radius: 4px;
	background: var(--oo-surface-soft);
	min-width: 0;
}

.oo-pick-card:hover {
	border-color: #93b4d8;
	background: var(--oo-blue-soft);
}

.oo-pick-cover {
	position: relative;
	flex: 0 0 72px;
	width: 72px;
	height: 52px;
	border-radius: 3px;
	overflow: hidden;
	background: #cbd5e1;
}

.oo-pick-cover img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.oo-pick-cover b {
	position: absolute;
	left: 0;
	top: 0;
	width: 16px;
	height: 16px;
	line-height: 16px;
	text-align: center;
	font-size: 11px;
	font-weight: 700;
	color: #fff;
	background: var(--oo-blue);
}

.oo-pick-body {
	flex: 1;
	min-width: 0;
}

.oo-pick-body h3 {
	margin: 0 0 4px;
	font-size: 13px;
	font-weight: 700;
	line-height: 1.35;
	color: var(--oo-ink);
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

.oo-pick-card:hover .oo-pick-body h3 {
	color: var(--oo-blue);
}

.oo-pick-body p {
	margin: 0;
	display: flex;
	justify-content: space-between;
	gap: 6px;
	font-size: 11px;
	color: var(--oo-muted);
}

/* 频道行已移除 */
.oo-channel {
	display: none !important;
}

.oo-rank-list {
	margin: 0;
	padding: 0;
	list-style: none;
}

.oo-rank-list li {
	margin-bottom: 6px;
}

.oo-rank-list li:last-child {
	margin-bottom: 0;
}

.oo-rank-list a {
	display: flex;
	align-items: center;
	gap: 8px;
	padding: 6px;
	border-radius: 3px;
	background: var(--oo-surface-soft);
}

.oo-rank-list a:hover {
	background: var(--oo-blue-soft);
}

.oo-rank-list i {
	flex: 0 0 18px;
	width: 18px;
	height: 18px;
	line-height: 18px;
	text-align: center;
	font-style: normal;
	font-size: 12px;
	font-weight: 700;
	color: #fff;
	background: #94a3b8;
	border-radius: 2px;
}

.oo-rank-list i.top {
	background: var(--oo-blue);
}

.oo-rank-cover {
	flex: 0 0 52px;
	width: 52px;
	height: 38px;
	border-radius: 3px;
	overflow: hidden;
	background: #cbd5e1;
}

.oo-rank-cover img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.oo-rank-text {
	flex: 1;
	min-width: 0;
	display: flex;
	flex-direction: column;
	gap: 2px;
}

.oo-rank-text span {
	font-size: 13px;
	font-weight: 600;
	color: var(--oo-ink);
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.oo-rank-text em {
	font-style: normal;
	font-size: 11px;
	color: var(--oo-muted);
}

.oo-tag-strip {
	margin-bottom: 10px;
}

.oo-empty-actions {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 8px;
	margin-top: 12px;
}

.oo-empty-actions a {
	font-size: 13px;
	font-weight: 600;
	color: var(--oo-blue) !important;
	background: var(--oo-blue-soft);
	border: 1px solid var(--oo-line);
	padding: 6px 12px;
	border-radius: 3px;
}

.oo-empty-actions a:hover {
	background: var(--oo-blue);
	color: #fff !important;
	border-color: var(--oo-blue);
}

.no-article-content {
	margin-bottom: 10px;
}

/* ---------- 文章列表：更紧凑 ---------- */
.article_list,
section .article_list {
	overflow: visible !important;
}

.article_list > li,
section .article_list li {
	display: flex !important;
	align-items: stretch;
	gap: 14px;
	margin-bottom: 10px !important;
	padding: 12px 14px !important;
	background: var(--oo-surface) !important;
	border: 1px solid var(--oo-line) !important;
	border-radius: var(--oo-radius) !important;
	box-shadow: var(--oo-shadow);
	position: relative;
	overflow: hidden;
	transition: border-color 0.15s, box-shadow 0.15s;
}

.article_list > li:hover {
	border-color: #a8c2df !important;
	box-shadow: 0 3px 12px rgba(29, 79, 145, 0.1);
}

.article_list > li .line,
section .article_list li .line {
	display: none !important;
}

.article_list .articlepic,
section .article_list .articlepic {
	flex: 0 0 168px;
	width: 168px !important;
	height: 108px !important;
	float: none !important;
	margin: 0 !important;
	border-radius: 4px !important;
	overflow: hidden;
	position: relative;
	align-self: center;
	border: 1px solid var(--oo-line-soft);
}

.article_list .articlepic img,
section .article_list .articlepic img {
	width: 100% !important;
	height: 100% !important;
	object-fit: cover;
}

.article_list .articlepic span,
section .articlepic span {
	left: 6px !important;
	top: 6px;
	padding: 2px 7px !important;
	background: rgba(20, 58, 107, 0.88) !important;
	border-radius: 2px !important;
	font-size: 11px !important;
	font-weight: 600;
}

.article_list .article-body {
	flex: 1;
	min-width: 0;
	display: flex;
	flex-direction: column;
}

.article_list h3.articletitle,
section .article_list h3.articletitle {
	margin: 0 0 6px !important;
	height: auto !important;
	font-size: 17px !important;
	font-weight: 700 !important;
	line-height: 1.4 !important;
	white-space: normal !important;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

.article_list h3.articletitle a {
	color: var(--oo-ink) !important;
}

.article_list h3.articletitle a:hover {
	color: var(--oo-blue) !important;
}

section .articletitle .badge {
	background: var(--oo-blue) !important;
	background-image: none !important;
	border-radius: 2px !important;
	padding: 0 6px !important;
	height: 18px;
	line-height: 18px;
	font-weight: 600;
	font-size: 11px;
	vertical-align: 2px;
}

.article_list .articleinfo {
	margin: 0 0 auto !important;
}

.article_list .articleinfo p,
section .article_list .articleinfo p {
	font-size: 13px !important;
	color: var(--oo-muted) !important;
	line-height: 1.65 !important;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
	margin: 0;
}

.article_list .autor,
section .article_list .autor {
	display: flex !important;
	flex-wrap: wrap;
	align-items: center;
	gap: 4px 12px;
	padding-top: 8px !important;
	margin-top: 8px !important;
	border-top: 1px solid var(--oo-line-soft) !important;
	font-size: 12px !important;
	color: var(--oo-muted) !important;
}

.article_list .autor span {
	margin-right: 0 !important;
	font-size: 12px !important;
}

.article_list .readmore,
section .article_list .readmore {
	float: none !important;
	margin-left: auto;
	background: transparent !important;
	color: var(--oo-blue) !important;
	font-size: 12px !important;
	font-weight: 700 !important;
	padding: 0 !important;
	border-radius: 0 !important;
}

.article_list .readmore:hover {
	opacity: 1 !important;
	color: var(--oo-blue-deep) !important;
}

.no-article-content {
	background: #fff;
	border: 1px solid var(--oo-line);
	border-radius: var(--oo-radius);
	padding: 28px 16px;
	text-align: center;
	color: var(--oo-muted);
	margin-bottom: 10px;
}

section .end_list .loadmore {
	background: var(--oo-blue) !important;
	border-radius: 3px !important;
	width: auto !important;
	min-width: 120px;
	height: 36px !important;
	line-height: 36px !important;
	padding: 0 18px;
	font-size: 13px !important;
	font-weight: 600;
}

section .end_list .loadmore:hover {
	background: var(--oo-blue-deep) !important;
}

/* ---------- 主栏标签云 ---------- */
.oo-tag-panel {
	margin-top: 4px;
}

.oo-tag-cloud {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
}

.oo-tag-cloud a {
	display: inline-flex;
	align-items: center;
	gap: 5px;
	font-size: 12px;
	font-weight: 600;
	color: var(--oo-ink-soft) !important;
	background: var(--oo-surface-soft);
	border: 1px solid var(--oo-line);
	border-radius: 3px;
	padding: 4px 9px;
}

.oo-tag-cloud a i {
	font-style: normal;
	font-size: 11px;
	color: var(--oo-muted);
	font-weight: 500;
}

.oo-tag-cloud a:hover {
	background: var(--oo-blue);
	border-color: var(--oo-blue);
	color: #fff !important;
}

.oo-tag-cloud a:hover i {
	color: rgba(255, 255, 255, 0.8);
}

/* ---------- 侧栏：紧凑蓝白 ---------- */
.right-content .toppic li {
	border-radius: var(--oo-radius) !important;
	margin-bottom: 10px !important;
	border: 1px solid var(--oo-line);
}

.right-content .toppic li i img {
	height: 140px !important;
	object-fit: cover;
}

.right-content .toppic li h2 {
	padding: 20px 10px 8px !important;
	background: linear-gradient(transparent, rgba(10, 22, 40, 0.85)) !important;
	font-size: 13px !important;
	font-weight: 700 !important;
}

.right-content .toppic li span {
	background: var(--oo-blue) !important;
	border-radius: 2px !important;
	padding: 2px 8px !important;
	font-size: 11px !important;
}

.right-content .widget {
	background: #fff !important;
	border: 1px solid var(--oo-line) !important;
	border-radius: var(--oo-radius) !important;
	box-shadow: var(--oo-shadow) !important;
	margin-bottom: 10px !important;
	overflow: hidden;
}

.right-content .widget:hover {
	transform: none;
	box-shadow: var(--oo-shadow) !important;
}

.right-content .widget-title:before {
	display: none !important;
}

.right-content .panel-heading {
	padding: 10px 12px 0 !important;
	background: transparent !important;
	border: none !important;
}

.right-content .sidebar_title,
.right-content .panel-title.widget-title {
	font-size: 14px !important;
	font-weight: 700 !important;
	color: var(--oo-ink) !important;
	margin: 0 !important;
	padding: 0 0 8px 10px !important;
	border-bottom: 1px solid var(--oo-line-soft);
	border-left: 3px solid var(--oo-blue);
	position: relative;
	display: block;
}

.right-content .sidebar_title::after {
	display: none;
}

.right-content .sidebar_title .fa {
	color: var(--oo-blue);
	margin-right: 4px;
}

.right-content .panel-body {
	padding: 10px 12px 12px !important;
}

.right-content .widget-top-tip {
	height: auto !important;
}

.right-content .panel-body #tab-advice li {
	border-bottom: none !important;
	margin-bottom: 6px !important;
	padding: 7px 8px;
	border-radius: 3px;
	background: var(--oo-surface-soft);
	white-space: normal !important;
	line-height: 1.45;
}

.right-content .panel-body #tab-advice li a {
	display: flex;
	flex-direction: column-reverse;
	gap: 2px;
}

.right-content .panel-body #tab-advice time {
	float: none !important;
	margin: 0 !important;
	font-size: 11px;
	color: var(--oo-muted) !important;
}

.right-content .panel-body #tab-advice li span {
	color: var(--oo-ink-soft) !important;
	font-weight: 600 !important;
	font-size: 12px;
}

.right-content .panel-body #tab-advice li:first-child {
	background: var(--oo-blue-soft);
}

.right-content .panel-body #tab-advice li:first-child span {
	color: var(--oo-blue-deep) !important;
}

.right-content div.side_con ul {
	padding-top: 0 !important;
	margin-top: 0 !important;
}

.right-content .sidebar_content {
	padding: 0 !important;
}

.right-content div.side_con li {
	height: auto !important;
	line-height: 1.35 !important;
	padding: 8px !important;
	margin-bottom: 6px;
	display: flex !important;
	align-items: center;
	border-bottom: none !important;
	background: var(--oo-surface-soft) !important;
	border-radius: 3px;
	transition: background 0.15s;
}

.right-content div.side_con li:nth-child(1),
.right-content div.side_con li:nth-child(2),
.right-content div.side_con li:nth-child(3) {
	background: #eef4fb !important;
}

.right-content div.side_con li:hover {
	background: var(--oo-blue-soft) !important;
	transform: none;
	color: inherit !important;
}

.right-content div.side_con li a {
	display: flex !important;
	align-items: center;
	width: 100%;
	gap: 8px;
}

.right-content div.side_con li .hotcom-img {
	display: block !important;
	width: 64px !important;
	height: 48px !important;
	flex-shrink: 0;
	margin: 0 !important;
	border: none !important;
	border-radius: 3px !important;
	overflow: hidden;
	position: relative;
}

.right-content div.side_con li .hotcom-img img,
.hotcom-img img {
	width: 100% !important;
	height: 100% !important;
	object-fit: cover;
}

.right-content div.side_con li .hotcom-left {
	flex: 1;
	min-width: 0;
	height: auto !important;
	display: flex;
	flex-direction: column;
	justify-content: center;
	gap: 4px;
}

.right-content .hot-com-title {
	height: auto !important;
	line-height: 1.35 !important;
	font-size: 12.5px !important;
	font-weight: 600;
	color: var(--oo-ink);
	display: flex;
	align-items: flex-start;
	white-space: normal !important;
}

.right-content .hot-com-title span:not(.item-num) {
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

.right-content .hot-com-title span.item-num,
.hot-com-title span.item-num {
	position: absolute !important;
	top: 0;
	left: 0;
	width: 16px;
	height: 16px;
	line-height: 16px;
	text-align: center;
	padding: 0 !important;
	margin: 0 !important;
	font-size: 10px;
	font-weight: 700;
	color: #fff;
	background: #64748b;
	border-radius: 0 0 3px 0;
	z-index: 2;
}

.right-content div.side_con li:nth-child(1) .item-num,
.right-content div.side_con li:nth-child(2) .item-num,
.right-content div.side_con li:nth-child(3) .item-num {
	background: var(--oo-blue);
}

.right-content .hot-com-clock {
	line-height: 1.2 !important;
	text-align: left !important;
	font-size: 11px !important;
	color: var(--oo-muted);
	display: flex;
	justify-content: space-between;
	gap: 6px;
}

.right-content .divTags a {
	display: inline-flex !important;
	align-items: center;
	gap: 3px;
	margin: 0 5px 6px 0 !important;
	padding: 3px 8px !important;
	border-radius: 3px !important;
	background: var(--oo-surface-soft) !important;
	border: 1px solid var(--oo-line) !important;
	color: var(--oo-ink-soft) !important;
	font-size: 12px !important;
	font-weight: 600;
}

.right-content .divTags a:hover {
	background: var(--oo-blue) !important;
	border-color: var(--oo-blue) !important;
	color: #fff !important;
	transform: none;
}

.follow_us_list ul {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	padding: 0;
	justify-content: flex-start;
}

.follow_us_list ul li {
	flex: 0 0 auto;
	margin: 0 !important;
	padding: 0 !important;
	border: none !important;
	background: transparent !important;
	height: auto !important;
	line-height: 1 !important;
}

.follow_us_list ul li a {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 38px;
	height: 38px;
	border-radius: 4px;
	background: var(--oo-surface-soft);
	color: var(--oo-ink-soft) !important;
	border: 1px solid var(--oo-line);
}

.follow_us_list ul li a span {
	display: none;
}

.follow_us_list ul li a::before {
	font-family: "FontAwesome";
	font-size: 16px;
}

.follow_us_list ul li.wxgzh a::before { content: "\f1d7"; color: #07c160; }
.follow_us_list ul li.qq a::before { content: "\f1d6"; color: #12b7f5; }
.follow_us_list ul li.qqGroup a::before { content: "\f0c0"; color: #0ea5e9; }
.follow_us_list ul li.email a::before { content: "\f0e0"; color: #ea580c; }
.follow_us_list ul li.sina a::before { content: "\f18a"; color: #e11d48; }
.follow_us_list ul li.gitee a::before { content: "\f1d3"; color: #be123c; }
.follow_us_list ul li.github a::before { content: "\f09b"; color: #1a2332; }

.follow_us_list ul li a:hover {
	transform: none;
	box-shadow: none;
	border-color: transparent;
	color: #fff !important;
}

.follow_us_list ul li.wxgzh a:hover { background: #07c160; }
.follow_us_list ul li.qq a:hover { background: #12b7f5; }
.follow_us_list ul li.qqGroup a:hover { background: #0ea5e9; }
.follow_us_list ul li.email a:hover { background: #ea580c; }
.follow_us_list ul li.sina a:hover { background: #e11d48; }
.follow_us_list ul li.gitee a:hover { background: #be123c; }
.follow_us_list ul li.github a:hover { background: #1a2332; }
.follow_us_list ul li a:hover::before { color: #fff; }

.official-qrcode {
	margin-top: 10px;
	padding: 10px;
	background: var(--oo-surface-soft);
	border-radius: 4px;
	border: 1px solid var(--oo-line);
}

.strugglelife .item {
	background: var(--oo-surface-soft);
	padding: 8px 10px;
	border-radius: 3px;
	border: 1px solid var(--oo-line);
	margin-bottom: 8px;
}

.strugglelife .item:hover {
	background: var(--oo-blue-soft);
	border-color: #b7cce4;
}

.strugglelife .item .title {
	color: var(--oo-muted);
	font-size: 12px;
	margin-bottom: 6px;
	display: flex;
	align-items: center;
}

.strugglelife .item .title::before {
	font-family: "FontAwesome";
	margin-right: 5px;
	font-size: 12px;
}

.strugglelife .item:nth-child(1) .title::before { content: "\f017"; color: var(--oo-blue); }
.strugglelife .item:nth-child(2) .title::before { content: "\f073"; color: var(--oo-blue-mid); }
.strugglelife .item:nth-child(3) .title::before { content: "\f274"; color: #0369a1; }
.strugglelife .item:nth-child(4) .title::before { content: "\f273"; color: #475569; }

.strugglelife .item .title .text {
	font-weight: 700;
	font-size: 14px;
	color: var(--oo-blue-deep);
}

.strugglelife .item .progressive-bar {
	background: #d7e0eb;
	height: 5px;
	border-radius: 2px;
	overflow: hidden;
}

.strugglelife .item .progressive-bar > * {
	background: var(--oo-blue) !important;
}

.right-content .websiteInfo {
	margin: 0;
	padding: 0;
	list-style: none;
}

.right-content .websiteInfo li {
	display: flex;
	justify-content: space-between;
	padding: 6px 0;
	border-bottom: 1px dashed var(--oo-line);
	font-size: 12px;
	color: var(--oo-muted);
}

.right-content .websiteInfo li span {
	color: var(--oo-ink);
	font-weight: 600;
}

/* ---------- 页脚 / 悬浮 ---------- */
/* ---------- Element 风格页脚：多列网格，禁止竖排单列 ---------- */
.footer.el-footer,
.footer {
	margin-top: 20px !important;
	padding: 0 !important;
	text-align: left !important;
	background: #fff !important;
	border-top: 2px solid #999 !important;
	border-image: -webkit-linear-gradient(to left, #4cd964, #5ac8fa, #007aff, #34aadc, #5856d6, #ff2d55) 20 20 !important;
	border-image: linear-gradient(to left, #4cd964, #5ac8fa, #007aff, #34aadc, #5856d6, #ff2d55) 20 20 !important;
	color: var(--oo-muted) !important;
}

.el-footer-main {
	max-width: 1240px;
	margin: 0 auto;
	padding: 28px 20px 20px;
}

.el-footer-grid {
	display: grid;
	grid-template-columns: 1.4fr 1fr 1fr 1fr;
	gap: 24px 32px;
}

.el-footer-brand .el-footer-logo {
	display: inline-flex;
	align-items: center;
	margin-bottom: 10px;
	line-height: 0;
}

.el-footer-brand .el-footer-logo img {
	display: block;
	height: 36px;
	width: auto;
	max-width: 160px;
	object-fit: contain;
}

.el-footer-brand p {
	margin: 0 0 12px;
	font-size: 13px;
	line-height: 1.6;
	color: var(--oo-muted);
}

.el-footer-social {
	display: flex;
	gap: 8px;
}

.el-footer-social a {
	width: 32px;
	height: 32px;
	line-height: 32px;
	text-align: center;
	border-radius: 4px;
	border: 1px solid var(--oo-line);
	background: var(--oo-surface-soft);
	color: var(--oo-ink-soft) !important;
}

.el-footer-social a:hover {
	color: #fff !important;
	background: var(--oo-blue);
	border-color: var(--oo-blue);
}

.el-footer-col h4 {
	margin: 0 0 12px;
	font-size: 14px;
	font-weight: 700;
	color: var(--oo-ink);
	padding-bottom: 8px;
	border-bottom: 1px solid var(--oo-line-soft);
}

.el-footer-col a {
	display: block;
	font-size: 13px;
	color: var(--oo-ink-soft) !important;
	line-height: 2;
	padding: 0;
}

.el-footer-col a:hover {
	color: var(--oo-blue) !important;
	padding-left: 4px;
}

.el-footer-bar {
	background: var(--oo-surface-soft);
	border-top: 1px solid var(--oo-line-soft);
	padding: 12px 20px;
}

.el-footer-bar-inner {
	max-width: 1240px;
	margin: 0 auto;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	gap: 6px 4px;
	font-size: 12px;
	color: var(--oo-muted);
	text-align: center;
}

.el-footer-bar-inner .sep {
	margin: 0 6px;
	color: var(--oo-line);
}

.el-footer-bar-inner a {
	color: var(--oo-ink-soft) !important;
}

.el-footer-bar-inner a:hover {
	color: var(--oo-blue) !important;
}

@media (max-width: 900px) {
	.el-footer-grid {
		grid-template-columns: 1fr 1fr;
	}
}

@media (max-width: 560px) {
	.el-footer-grid {
		grid-template-columns: 1fr;
	}
}

.right-rollbar {
	right: 10px !important;
	width: 40px !important;
}

.right-rollbar ul {
	padding: 4px !important;
	background: #fff;
	border-radius: 6px;
	box-shadow: 0 4px 16px rgba(26, 35, 50, 0.12);
	border: 1px solid var(--oo-line);
}

.right-rollbar li {
	margin-top: 4px !important;
	border-radius: 4px !important;
	box-shadow: none !important;
	overflow: hidden;
}

.right-rollbar li:first-child {
	margin-top: 0 !important;
}

.right-rollbar a {
	height: 36px !important;
	border-radius: 4px !important;
	background-color: var(--oo-surface-soft) !important;
	color: var(--oo-ink-soft) !important;
}

.right-rollbar a:hover {
	background-color: var(--oo-blue) !important;
	color: #fff !important;
	transform: none;
}

.right-rollbar .fa {
	line-height: 36px !important;
	color: inherit !important;
}

.right-rollbar h6 {
	background: var(--oo-blue-deep) !important;
	border-radius: 3px;
}

.cur-position,
section .gd-box {
	background: #fff !important;
	border-radius: var(--oo-radius) !important;
	box-shadow: var(--oo-shadow);
	border: 1px solid var(--oo-line);
}

.tab-box {
	border-left: 3px solid var(--oo-blue) !important;
	border-bottom-color: var(--oo-line) !important;
}

.tab-box li.tab-current,
.tab-box li:hover {
	color: var(--oo-blue) !important;
}

.tab-box li:after {
	background: var(--oo-blue) !important;
}

/* ---------- 响应式 ---------- */
@media (max-width: 1100px) {
	.oo-board-row {
		grid-template-columns: 1fr;
	}

	.oo-pick-grid {
		grid-template-columns: 1fr;
	}

	.oo-nav-menu {
		justify-content: flex-start;
		overflow-x: auto;
	}

	.oo-focus {
		grid-template-columns: 1fr;
	}

	.oo-focus-side {
		flex-direction: row;
		height: auto;
	}

	.oo-focus-side li {
		height: 140px;
	}

	.swiper-container .swiper-slide,
	.swiper-container .swiper-slide img {
		height: 240px;
	}

	.oo-channel {
		flex-wrap: wrap;
	}

	.oo-channel-extra {
		border-left: none;
		padding-left: 0;
		width: 100%;
	}
}

@media (max-width: 991px) {
	.left-content,
	.right-content {
		padding: 0 !important;
	}

	.article_list > li,
	section .article_list li {
		flex-direction: column;
		gap: 10px;
	}

	.article_list .articlepic,
	section .article_list .articlepic {
		flex: none;
		width: 100% !important;
		height: 160px !important;
	}

	.oo-notice-scroll li a {
		max-width: 100%;
	}
}

@media (max-width: 767px) {
	:root {
		--oo-nav-h: 52px;
		--oo-top-h: 0px;
	}

	.top-line {
		display: none !important;
	}

	#head-container {
		padding-top: var(--oo-nav-h) !important;
	}

	.oo-logo img {
		height: 30px;
	}

	.oo-focus-side {
		flex-direction: column;
	}

	.oo-nav-inner {
		padding: 0 10px;
	}
}

/* ---------- 暗色兼容 ---------- */
body.theme-dark,
body.background-night {
	--oo-ink: #e8eef5;
	--oo-ink-soft: #b7c2d0;
	--oo-muted: #8b98a8;
	--oo-line: #2b3848;
	--oo-line-soft: #243041;
	--oo-surface: #1a2432;
	--oo-surface-soft: #222e3d;
	--oo-bg: #121a24;
	--oo-blue-soft: rgba(37, 99, 168, 0.22);
	--oo-shadow: 0 1px 2px rgba(0, 0, 0, 0.25);
	background: var(--oo-bg) !important;
}

body.theme-dark .containerBox,
body.background-night .containerBox,
body.theme-dark .oo-block,
body.theme-dark .oo-board,
body.theme-dark .oo-channel,
body.theme-dark .oo-notice-bar,
body.theme-dark .oo-feed-head,
body.theme-dark .footer,
body.background-night .footer {
	background: var(--oo-surface) !important;
}

/* 暗色仍保留彩虹顶栏（沿用 main.css 深色渐变） */
body.theme-dark .top-line,
body.background-night .top-line {
	background: linear-gradient(to left, #1f6f4a, #1f7091, #28579a, #33539f, #4f45a8, #9a2755) !important;
}

body.theme-dark .article_list h3.articletitle a,
body.background-night .article_list h3.articletitle a {
	color: var(--oo-ink) !important;
}

body.theme-dark .el-footer-bar,
body.background-night .el-footer-bar {
	background: #151c27 !important;
}

/* ---------- Element Card / 内容区强化 ---------- */
.oo-board,
.oo-block,
.oo-feed-head,
.right-content .widget,
.article_list > li,
section .article_list li {
	border: 1px solid var(--oo-line-soft) !important;
	border-radius: 4px !important;
	box-shadow: var(--oo-shadow) !important;
}

.oo-block-head,
.oo-feed-head {
	margin-bottom: 10px;
	padding-bottom: 10px;
	border-bottom: 1px solid var(--oo-line-soft);
}

.oo-block-head h2,
.oo-feed-head h2 {
	font-size: 15px;
	font-weight: 600;
	border-left: 3px solid var(--oo-blue);
	padding-left: 8px;
	line-height: 1.2;
	color: var(--oo-ink);
}

.oo-block-more {
	font-size: 13px;
	color: var(--oo-blue) !important;
}

.oo-pick-grid {
	gap: 8px !important;
}

.oo-pick-card {
	padding: 8px 10px !important;
	border-color: var(--oo-line-soft) !important;
	background: #fff !important;
	min-height: 0;
}

.oo-pick-card:hover {
	border-color: #c6e2ff !important;
	background: var(--oo-blue-soft) !important;
}

.oo-pick-cover {
	flex: 0 0 64px !important;
	width: 64px !important;
	height: 48px !important;
}

.oo-notice-bar {
	border-color: var(--oo-line-soft) !important;
	box-shadow: var(--oo-shadow) !important;
}

.oo-notice-label {
	background: #e6a23c !important;
	border-radius: 2px;
}

.oo-focus {
	gap: 10px;
	margin-bottom: 12px;
}

#lunch-images-box,
.oo-focus-side li {
	border-radius: 4px !important;
	border: 1px solid var(--oo-line-soft);
	box-shadow: var(--oo-shadow);
}

.swiper-container .swiper-slide,
.swiper-container .swiper-slide img {
	height: 280px;
}

.oo-focus-side {
	height: 280px;
}

.el-search-btn,
.oo-nav-search {
	width: 36px !important;
	height: 36px !important;
	line-height: 36px !important;
	border-radius: 4px !important;
	border: 1px solid var(--oo-line) !important;
	background: #fff !important;
	color: var(--oo-ink-soft) !important;
}

.el-search-btn:hover,
.oo-nav-search:hover {
	color: var(--oo-blue) !important;
	border-color: #c6e2ff !important;
	background: var(--oo-blue-soft) !important;
}

.el-search-pop,
#search-area {
	border: 1px solid var(--oo-line) !important;
	border-radius: 4px !important;
	box-shadow: 0 2px 12px 0 rgba(0, 0, 0, 0.1) !important;
}

#search-area .s-button {
	background: var(--oo-blue) !important;
	border-radius: 4px !important;
}

.right-content .sidebar_title,
.right-content .panel-title.widget-title {
	border-left: 3px solid var(--oo-blue) !important;
	font-size: 14px !important;
	font-weight: 600 !important;
}

.article_list .readmore {
	color: var(--oo-blue) !important;
}

.oo-tag-cloud a,
.right-content .divTags a {
	border-radius: 4px !important;
	border-color: var(--oo-line) !important;
	background: #fff !important;
}

.oo-tag-cloud a:hover,
.right-content .divTags a:hover {
	background: var(--oo-blue) !important;
	border-color: var(--oo-blue) !important;
	color: #fff !important;
}

.right-rollbar ul {
	border-radius: 4px !important;
	border: 1px solid var(--oo-line-soft) !important;
	box-shadow: var(--oo-shadow) !important;
}

.right-rollbar a:hover {
	background-color: var(--oo-blue) !important;
}

/* ---------- 通栏精选 / 热门 / 入口卡片（去空白） ---------- */
.oo-pick-panel,
.oo-hot-panel {
	margin-bottom: 12px;
}

.oo-pick-grid-3 {
	display: grid !important;
	grid-template-columns: repeat(3, 1fr) !important;
	gap: 10px !important;
}

.oo-rank-grid {
	display: grid !important;
	grid-template-columns: 1fr 1fr !important;
	gap: 8px 12px !important;
	list-style: none;
	margin: 0;
	padding: 0;
}

.oo-rank-grid li {
	margin: 0 !important;
}

.oo-entry-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 10px;
	margin-bottom: 12px;
}

.oo-entry-card {
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 14px 16px;
	background: #fff;
	border: 1px solid var(--oo-line-soft);
	border-radius: 4px;
	box-shadow: var(--oo-shadow);
	transition: border-color 0.15s, box-shadow 0.15s;
}

.oo-entry-card:hover {
	border-color: #c6e2ff;
	box-shadow: 0 2px 12px 0 rgba(64, 158, 255, 0.15);
}

.oo-entry-card > i {
	flex: 0 0 40px;
	width: 40px;
	height: 40px;
	line-height: 40px;
	text-align: center;
	border-radius: 4px;
	background: var(--oo-blue-soft);
	color: var(--oo-blue);
	font-size: 18px;
}

.oo-entry-card strong {
	display: block;
	font-size: 14px;
	font-weight: 600;
	color: var(--oo-ink);
	margin-bottom: 2px;
}

.oo-entry-card span {
	display: block;
	font-size: 12px;
	color: var(--oo-muted);
}

.oo-sidefill-cards {
	margin-top: 12px;
	display: flex;
	flex-direction: column;
	gap: 12px;
}

.oo-continue-grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 10px;
}

.oo-continue-card {
	display: flex;
	gap: 10px;
	align-items: center;
	padding: 8px;
	border: 1px solid var(--oo-line-soft);
	border-radius: 4px;
	background: #fff;
	min-width: 0;
}

.oo-continue-card:hover {
	border-color: #c6e2ff;
	background: var(--oo-blue-soft);
}

.oo-continue-card img {
	flex: 0 0 72px;
	width: 72px;
	height: 52px;
	object-fit: cover;
	border-radius: 3px;
	background: #e4e7ed;
}

.oo-continue-card h3 {
	margin: 0 0 4px;
	font-size: 13px;
	font-weight: 600;
	line-height: 1.35;
	color: var(--oo-ink);
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

.oo-continue-card span {
	font-size: 11px;
	color: var(--oo-muted);
}

.oo-about-text {
	margin: 0 0 12px;
	font-size: 13px;
	line-height: 1.7;
	color: var(--oo-ink-soft);
}

.oo-about-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}

.el-btn {
	display: inline-block;
	padding: 7px 14px;
	font-size: 13px;
	border-radius: 4px;
	border: 1px solid transparent;
	line-height: 1;
	font-weight: 500;
}

.el-btn-primary {
	background: var(--oo-blue);
	border-color: var(--oo-blue);
	color: #fff !important;
}

.el-btn-primary:hover {
	background: var(--oo-blue-mid);
	border-color: var(--oo-blue-mid);
	color: #fff !important;
}

.el-btn-plain {
	background: #fff;
	border-color: var(--oo-line);
	color: var(--oo-ink-soft) !important;
}

.el-btn-plain:hover {
	color: var(--oo-blue) !important;
	border-color: #c6e2ff;
	background: var(--oo-blue-soft);
}

.oo-main-row {
	align-items: flex-start !important;
}

.left-content {
	min-height: 0 !important;
}

@media (max-width: 1100px) {
	.oo-pick-grid-3,
	.oo-entry-grid {
		grid-template-columns: repeat(2, 1fr) !important;
	}

	.oo-rank-grid {
		grid-template-columns: 1fr !important;
	}
}

@media (max-width: 767px) {
	.oo-pick-grid-3,
	.oo-entry-grid,
	.oo-continue-grid {
		grid-template-columns: 1fr !important;
	}
}
