/* SEO URL Pusher - 前台模块样式 */
/* 模块完全独立样式，不与主题 card/panel 冲突，强制文档流隔离防止重叠 */
.seop-block {
	display: block !important;
	position: relative !important;
	z-index: 1;
	float: none !important;
	clear: both !important;
	width: 100% !important;
	max-width: 100%;
	box-sizing: border-box !important;
	margin: 1.25rem 0 !important;
	padding: 0;
	background: #fff;
	border: 1px solid #eee;
	border-radius: 8px;
	overflow: hidden;
	box-shadow: 0 1px 4px rgba(0, 0, 0, 0.06);
}
.seop-block-header {
	background: #f7f8fa;
	padding: 0.65rem 1rem;
	font-size: 0.95rem;
	font-weight: 600;
	border-bottom: 1px solid #eee;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 0.35rem;
	box-sizing: border-box;
	width: 100%;
}
.seop-ico {
	color: #409eff;
}
.seop-block-body {
	padding: 0;
	width: 100%;
	box-sizing: border-box;
}
.seop-loading,
.seop-empty {
	color: #999;
	font-size: 0.85rem;
	padding: 0.9rem 1rem;
	display: block;
}

/* 表格布局 */
.seop-table {
	width: 100%;
	box-sizing: border-box;
	font-size: 0.85rem;
	border: none;
}
.seop-row {
	display: flex;
	align-items: center;
	padding: 0.6rem 1rem;
	border-bottom: 1px solid #f2f2f2;
	gap: 0.6rem;
	box-sizing: border-box;
	width: 100%;
}
.seop-row:last-child {
	border-bottom: none;
}
.seop-row-head {
	background: #fafbfc;
	font-weight: 600;
	color: #666;
	font-size: 0.8rem;
}
.seop-cell-engine {
	flex: 1 1 0;
	min-width: 0;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}
.seop-cell-status {
	flex: 1 1 0;
	min-width: 0;
	overflow: visible;
	text-align: center;
}
.seop-cell-time {
	flex: 1 1 0;
	min-width: 0;
	color: #555;
	font-size: 0.75rem;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}
.seop-cell-resp {
	flex: 1 1 0;
	min-width: 0;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
	color: #999;
	font-size: 0.78rem;
	text-align: right;
}

/* 状态徽章：自适应宽度，文字完整显示不被截断 */
.seop-badge {
	display: inline-block;
	padding: 2px 10px;
	border-radius: 10px;
	font-size: 10px;
	line-height: 18px;
	color: #fff;
	white-space: nowrap;
	box-sizing: border-box;
	vertical-align: middle;
}
/* 投稿收录页：较长标识（Sitemap 提交）缩小字号/内边距，与“推送成功”等普通标识同尺寸；详情页保持原样 */
#seop-contribute-body .seop-badge.seop-info {
	font-size: 8px;
	padding: 2px 6px;
}
.seop-ok {
	background: #67c23a;
}
.seop-bad {
	background: #f56c6c;
}
.seop-skip {
	background: #c0c4cc;
}
.seop-pending {
	background: #e6a23c;
}
.seop-disabled {
	background: #909399;
}
.seop-info {
	background: #409eff;
}

/* 谷歌 Sitemap 状态：已列入绿色，待列入红色，前置圆点标识 */
.seop-row-google .seop-cell-resp::before {
	content: '● ';
}
.seop-sm-in .seop-cell-resp {
	color: #67c23a;
}
.seop-sm-out .seop-cell-resp {
	color: #f56c6c;
}

/* 最新已推送站点横条 */
.seop-latest {
	display: flex;
	align-items: center;
	width: 100%;
	box-sizing: border-box;
	padding: 0.55rem 1rem;
	border-bottom: 1px solid #f0f0f0;
	background: #fcfdfe;
	gap: 0.5rem;
	overflow: hidden;
	min-height: 42px;
}
.seop-lt-badge {
	flex: 0 0 auto;
	background: #409eff;
	color: #fff;
	font-size: 12px;
	line-height: 18px;
	padding: 1px 8px;
	border-radius: 10px;
	white-space: nowrap;
}
.seop-lt-inner {
	flex: 1;
	min-width: 0;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 0.5rem;
	transition: transform 0.3s ease, opacity 0.3s ease;
}
.seop-lt-leave {
	transform: translateY(-100%);
	opacity: 0;
}
.seop-lt-enter {
	transform: translateY(0);
	opacity: 1;
}
.seop-lt-time {
	flex: 0 0 auto;
	color: #999;
	font-size: 12px;
	white-space: nowrap;
}
.seop-lt-title {
	flex: 0 1 auto;
	min-width: 0;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
	font-size: 13px;
	color: #333;
}
.seop-lt-link {
	display: block;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
	color: #333;
	text-decoration: none;
}
.seop-lt-link:hover {
	color: #409eff;
	text-decoration: underline;
}
.seop-lt-engine {
	flex: 0 0 auto;
	font-size: 12px;
	color: #409eff;
	background: rgba(64, 158, 255, 0.1);
	padding: 1px 8px;
	border-radius: 10px;
	white-space: nowrap;
}

/* 最新爬虫横条：与最新推送同布局，徽章换绿色区分 */
.seop-crawler {
	background: #f4fbf8;
}
.seop-crawler-badge {
	background: #16a085;
}
.seop-crawler .seop-lt-engine {
	color: #16a085;
	background: rgba(22, 160, 133, 0.12);
}

/* AI 爬虫横条（GPTBot/ClaudeBot/PerplexityBot 等）：紫色系区分 AI 平台 */
.seop-ai {
	background: #f8f5ff;
}
.seop-ai-badge {
	background: #8e44ad;
}
.seop-ai .seop-lt-engine {
	color: #8e44ad;
	background: rgba(142, 68, 173, 0.12);
}

/* 移动端适配 */
@media (max-width: 768px) {
	.seop-block {
		margin: 1rem 0 !important;
	}
	.seop-table {
		font-size: 0.72rem;
	}
	.seop-row {
		flex-wrap: nowrap;
		padding: 0.5rem 0.5rem;
		gap: 0.3rem;
	}
	.seop-cell-engine {
		flex: 0 0 15%;
		min-width: 0;
	}
	.seop-cell-status {
		flex: 0 0 22%;
		min-width: 0;
	}
	.seop-cell-time {
		flex: 0 0 37%;
		min-width: 0;
		margin-top: 0;
		font-size: 0.6rem;
	}
	.seop-cell-resp {
		flex: 1;
		min-width: 0;
		text-align: right;
		margin-top: 0;
		font-size: 0.6rem;
		white-space: nowrap;
		word-break: normal;
	}
	/* 状态徽章：自适应宽度，文字完整显示；Sitemap 提交等较长徽章缩小字号避免挤压时间列 */
	.seop-badge {
		font-size: 10px;
		line-height: 16px;
		width: auto;
		padding: 1px 6px;
		text-align: center;
		box-sizing: border-box;
		white-space: nowrap;
	}
	/* 谷歌 Sitemap 徽章文字较长，缩小字号避免挤压时间列 */
	.seop-badge.seop-info {
		font-size: 8px;
	}
	/* 谷歌 Sitemap 状态文案较长，手机端允许换行完整显示，不再截断 */
	.seop-row-google .seop-cell-resp {
		white-space: normal;
		word-break: break-word;
		text-align: left;
		line-height: 1.5;
	}
	.seop-latest {
		padding: 0.5rem 0.75rem;
		gap: 0.4rem;
	}
	.seop-lt-title {
		font-size: 12px;
	}
	/* 移动端：标题为完整网址时不显示冗长 URL，改为短域名，点击标题仍可跳转 */
	.seop-lt-link.seop-lt-isurl {
		font-size: 0;
		color: transparent;
	}
	.seop-lt-link.seop-lt-isurl::after {
		content: attr(data-short);
		font-size: 12px;
		color: #333;
	}
}

/* ===== 投稿页：立即加入SEO推送计划 勾选框 ===== */
.seop-plan-box {
	display: block !important;
	position: relative;
	margin: 1rem 0 0.75rem !important;
	background: #f0f7ff;
	border: 1px solid #bcd8f7;
	border-left: 4px solid #409eff;
	border-radius: 8px;
	padding: 12px 14px;
	box-sizing: border-box;
	box-shadow: 0 1px 4px rgba(64, 158, 255, 0.12);
}
.seop-plan-label {
	display: flex;
	align-items: center;
	cursor: pointer;
}
.seop-plan-check {
	margin-right: 8px;
	width: 17px;
	height: 17px;
	cursor: pointer;
	accent-color: #409eff;
	flex: 0 0 auto;
}
.seop-plan-label-text {
	display: inline-flex;
	align-items: center;
	font-size: 14.5px;
	font-weight: 700;
	color: #1a56db;
}
.seop-plan-ico {
	margin-right: 5px;
	color: #409eff;
	font-size: 15px;
}
.seop-plan-desc {
	font-size: 12px;
	color: #5b7ea6;
	margin-top: 7px;
	line-height: 1.5;
}
/* 弹窗正文中用户已填的标题/链接绿色加粗 */
.seop-plan-highlight {
	color: #16a34a;
	font-weight: 700;
	word-break: break-all;
}

/* ===== 投稿页：确认弹窗 ===== */
.seop-modal-mask {
	position: fixed;
	inset: 0;
	z-index: 99999;
	background: rgba(15, 23, 42, 0.45);
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 16px;
}
.seop-modal {
	background: #fff;
	border-radius: 12px;
	width: 100%;
	max-width: 460px;
	box-shadow: 0 12px 40px rgba(0, 0, 0, 0.18);
	overflow: hidden;
}
.seop-modal-title {
	font-size: 17px;
	font-weight: 700;
	color: #1f2937;
	padding: 18px 20px 10px;
}
.seop-modal-body {
	padding: 0 20px 12px;
	color: #4b5563;
	font-size: 13.5px;
	line-height: 1.7;
	max-height: 55vh;
	overflow-y: auto;
}
.seop-modal-body p {
	margin: 0;
}
.seop-modal-lines {
	margin-top: 10px;
	background: #f3f6fb;
	border-radius: 8px;
	padding: 10px 12px;
	font-size: 12.5px;
	color: #374151;
}
.seop-modal-lines div {
	margin-bottom: 4px;
}
.seop-modal-lines div:last-child {
	margin-bottom: 0;
}
.seop-modal-foot {
	display: flex;
	gap: 10px;
	padding: 14px 20px 18px;
	border-top: 1px solid #eef2f7;
}
.seop-btn {
	flex: 1;
	height: 40px;
	border-radius: 8px;
	border: 1px solid transparent;
	font-size: 14px;
	cursor: pointer;
	transition: all 0.2s;
}
.seop-btn-ghost {
	background: #fff;
	border-color: #d1d9e6;
	color: #4b5563;
}
.seop-btn-ghost:hover {
	border-color: #b3bfd0;
}
.seop-btn-primary {
	background: #409eff;
	color: #fff;
}
.seop-btn-primary:hover {
	background: #337ecc;
}

/* 暗色模式适配 */
.io-black-mode .seop-plan-box {
	background: rgba(64, 158, 255, 0.08);
	border-color: #3b5a82;
	border-left-color: #409eff;
}
.io-black-mode .seop-plan-label-text {
	color: #93c5fd;
}
.io-black-mode .seop-plan-desc {
	color: #9ca3af;
}
.io-black-mode .seop-plan-highlight {
	color: #4ade80;
}
.io-black-mode .seop-modal {
	background: #1f2937;
}
.io-black-mode .seop-modal-title {
	color: #f3f4f6;
}
.io-black-mode .seop-modal-body {
	color: #d1d5db;
}
.io-black-mode .seop-modal-lines {
	background: rgba(255, 255, 255, 0.05);
	color: #e5e7eb;
}
.io-black-mode .seop-modal-foot {
	border-top-color: #374151;
}
.io-black-mode .seop-btn-ghost {
	background: #111827;
	border-color: #4b5563;
	color: #e5e7eb;
}
