@charset "UTF-8";

/**
 * 豆瓣影视卡片 — huux_tinymce 样式
 * 主结构：table.movie-info（AiEditor 兼容）+ 覆盖 xtr 主题冲突
 */

/* huux 渐变背景（table / div 共用） */
:root {
	--mydb-card-bg: linear-gradient(90deg, #ffffff 8.56%, rgba(255, 255, 255, 0) 54.21%), radial-gradient(38.36% 126.97% at 0.79% 79.32%, rgba(0, 115, 255, 0.15) 0%, rgba(255, 255, 255, 0) 100%), radial-gradient(37.51% 157.39% at 83.12% 10.83%, rgba(0, 115, 255, 0.15) 0%, rgba(255, 255, 255, 0) 100%), radial-gradient(23.44% 59.26% at 0.42% 0%, rgba(255, 132, 0, 0.15) 0%, rgba(255, 255, 255, 0) 100%), radial-gradient(24.48% 60.57% at 67.76% 90.07%, rgba(255, 132, 0, 0.15) 0%, rgba(255, 255, 255, 0) 100%), radial-gradient(168.43% 350.01% at 57.43% 23.44%, #f6f8fb 1.42%, rgba(243, 247, 254, 0) 100%), linear-gradient(0deg, #ffffff, #ffffff), #f6f8fb;
}

/* ---------- 工具栏按钮 ---------- */
#mydb-douban-btn,
aie-custom#mydb-douban-btn,
.aie-menu-item#mydb-douban-btn,
.mydb-aie-item {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	min-width: auto !important;
	min-height: 28px !important;
	padding: 0 6px !important;
	border-radius: 4px !important;
}

#mydb-douban-btn:hover,
aie-custom#mydb-douban-btn:hover {
	background: rgba(0, 132, 255, 0.1) !important;
}

.mydb-aie-btn {
	display: inline-flex;
	align-items: center;
	gap: 5px;
	height: 22px;
	line-height: 1;
	user-select: none;
	white-space: nowrap;
}

.mydb-aie-btn__mark {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 18px;
	height: 18px;
	border-radius: 4px;
	background: linear-gradient(135deg, #0084ff, #00aaff);
	color: #fff;
	font-size: 11px;
	font-weight: 800;
	box-shadow: 0 1px 3px rgba(0, 132, 255, 0.35);
}

.mydb-aie-btn__text {
	font-size: 13px;
	font-weight: 600;
	color: #222f3e;
}

[data-bs-theme="dark"] .mydb-aie-btn__text {
	color: #e5e7eb;
}

/* ---------- 弹窗 ---------- */
#mydbModal .modal-content {
	border: none;
	border-radius: 10px;
	overflow: hidden;
	box-shadow: 0 12px 40px rgba(24, 39, 75, 0.16);
}

#mydbModal .modal-header {
	border-bottom: 1px solid #eef2f7;
	padding: 14px 18px;
	background: #f8fbff;
}

#mydbModal .modal-title {
	font-size: 16px;
	font-weight: 700;
	color: #1f2d3d;
}

#mydbModal .modal-body { padding: 16px 18px; }
#mydbModal .modal-footer {
	border-top: 1px solid #eef2f7;
	padding: 12px 18px;
	gap: 8px;
}

#mydbModal #mydbSearchBtn,
#mydbModal #mydbInsertBtn {
	background: linear-gradient(90deg, #0084ff, #00aaff) !important;
	border: none !important;
	color: #fff !important;
	border-radius: 5px !important;
	padding: 6px 18px !important;
	font-weight: 600;
}

.mydb-hit {
	display: flex;
	gap: 12px;
	align-items: flex-start;
	width: 100%;
	padding: 10px 12px;
	border: 1px solid #e6eaf0;
	border-radius: 10px;
	background: #fff;
	text-align: left;
	cursor: pointer;
}

.mydb-hit:hover,
.mydb-hit.is-active {
	border-color: #0084ff;
	background: rgba(0, 132, 255, 0.05);
}

.mydb-hit img {
	width: 48px;
	height: 72px;
	object-fit: cover;
	border-radius: 6px;
	flex-shrink: 0;
	background: #f0f2f5;
}

.mydb-hit-main {
	display: flex;
	flex-direction: column;
	gap: 4px;
	min-width: 0;
}

.mydb-hit-title {
	font-size: 14px;
	font-weight: 600;
	color: #1f2d3d;
}

.mydb-hit-meta {
	font-size: 12px;
	color: #8a94a6;
	line-height: 1.4;
}

.mydb-results {
	max-height: 360px;
	overflow: auto;
	display: grid;
	gap: 8px;
}

/* ---------- 影视卡片：发帖编辑器内（保持真实 table 布局） ---------- */
.aieditor-container .aie-content table.movie-info,
.aieditor-container .ProseMirror table.movie-info {
	display: table !important;
	width: 100% !important;
	max-width: 100% !important;
	border: none !important;
	border-collapse: collapse !important;
	margin: 8px 0 12px !important;
	padding: 7px !important;
	border-radius: 5px !important;
	box-shadow: 0 2px 4px rgba(26, 26, 26, .1) !important;
	background: var(--mydb-card-bg) !important;
	table-layout: fixed !important;
	line-height: 1.45 !important;
}

.aieditor-container .aie-content table.movie-info tbody,
.aieditor-container .ProseMirror table.movie-info tbody {
	display: table-row-group !important;
}

.aieditor-container .aie-content table.movie-info tr,
.aieditor-container .ProseMirror table.movie-info tr {
	display: table-row !important;
}

.aieditor-container .aie-content table.movie-info td,
.aieditor-container .ProseMirror table.movie-info td {
	display: table-cell !important;
	border: none !important;
	background: transparent !important;
	vertical-align: top !important;
	padding: 0 !important;
}

.aieditor-container .aie-content table.movie-info td.movie-info-poster,
.aieditor-container .ProseMirror table.movie-info td.movie-info-poster {
	width: 253px !important;
	padding-right: 20px !important;
}

.aieditor-container .aie-content table.movie-info td.movie-info-content,
.aieditor-container .ProseMirror table.movie-info td.movie-info-content {
	width: auto !important;
}

.aieditor-container .aie-content table.movie-info img,
.aieditor-container .ProseMirror table.movie-info img {
	max-width: 253px !important;
	width: 100% !important;
	height: auto !important;
	object-fit: cover !important;
	border-radius: 5px !important;
	margin: 0 !important;
	display: block !important;
}

.aieditor-container .aie-content table.movie-info p,
.aieditor-container .ProseMirror table.movie-info p {
	font-size: 14px !important;
	color: #666 !important;
	margin: 0 !important;
	padding: 0 !important;
	line-height: 1.45 !important;
}

.aieditor-container .aie-content table.movie-info p:empty,
.aieditor-container .ProseMirror table.movie-info p:empty {
	display: none !important;
}

.aieditor-container .aie-content table.movie-info ~ h3,
.aieditor-container .ProseMirror table.movie-info ~ h3,
.aieditor-container .aie-content table.movie-info ~ h4,
.aieditor-container .ProseMirror table.movie-info ~ h4 {
	margin: 12px 0 6px !important;
}

/* ---------- 影视卡片：帖子展示页（兼容 AiEditor 拆列） ---------- */
.message table.movie-info,
body.xtr-skin .message table.movie-info {
	display: block !important;
	width: 100% !important;
	max-width: 100% !important;
	border: none !important;
	border-collapse: collapse !important;
	margin: 8px 0 12px !important;
	padding: 7px !important;
	border-radius: 5px !important;
	box-shadow: 0 2px 4px rgba(26, 26, 26, .1) !important;
	background: var(--mydb-card-bg) !important;
	table-layout: auto !important;
	line-height: 1.4 !important;
}

.message table.movie-info tbody,
body.xtr-skin .message table.movie-info tbody {
	display: block !important;
	width: 100% !important;
}

.message table.movie-info tr,
body.xtr-skin .message table.movie-info tr {
	display: flex !important;
	flex-wrap: wrap !important;
	align-items: flex-start !important;
	gap: 0 20px !important;
	width: 100% !important;
}

.message table.movie-info td,
body.xtr-skin .message table.movie-info td {
	border: none !important;
	background: transparent !important;
	vertical-align: top !important;
	padding: 0 !important;
	width: auto !important;
	max-width: none !important;
}

/* 隐藏 AiEditor 拆出来的空 td */
.message table.movie-info td:not(:has(img)):not(:has(strong)),
body.xtr-skin .message table.movie-info td:not(:has(img)):not(:has(strong)) {
	display: none !important;
}

.message table.movie-info td:has(img),
body.xtr-skin .message table.movie-info td:has(img),
.message table.movie-info td.movie-info-poster {
	flex: 0 0 auto !important;
}

.message table.movie-info td:has(strong),
body.xtr-skin .message table.movie-info td:has(strong),
.message table.movie-info td.movie-info-content {
	flex: 1 1 240px !important;
	min-width: 0 !important;
}

.message table.movie-info img,
body.xtr-skin .message table.movie-info img {
	max-width: 253px !important;
	width: auto !important;
	height: auto !important;
	object-fit: cover !important;
	border-radius: 5px !important;
	margin: 0 !important;
	display: block !important;
	box-shadow: none !important;
}

.message table.movie-info p,
body.xtr-skin .message table.movie-info p {
	font-size: 14px !important;
	color: #666 !important;
	margin: 0 !important;
	padding: 0 !important;
	line-height: 1.45 !important;
}

.message table.movie-info,
.message table.movie-info * {
	line-height: 1.45 !important;
}

/* AiEditor 空白段落（展示页） */
.message table.movie-info p:empty,
.message.aie-content > p:empty,
.message table.movie-info ~ p:empty,
.message table.movie-info ~ h3 ~ p:empty,
.message table.movie-info ~ h4 ~ p:empty {
	display: none !important;
	margin: 0 !important;
	padding: 0 !important;
	height: 0 !important;
	min-height: 0 !important;
}

.message table.movie-info a,
body.xtr-skin .message table.movie-info a {
	color: #0084ff !important;
	text-decoration: none !important;
}

.message table.movie-info a:hover {
	text-decoration: underline !important;
}

/* 标题 + 评分 badge（编辑器 + 展示页共用） */
.aieditor-container .movie-title,
.message .movie-title,
body.xtr-skin .message .movie-title {
	font-size: 20px !important;
	font-weight: 700 !important;
	color: #333 !important;
	border-bottom: none !important;
}

.aieditor-container .badge-vlo1,
.message .badge-vlo1,
body.xtr-skin .message .badge-vlo1,
.aieditor-container strong.badge-vlo1,
.message strong.badge-vlo1 {
	background: linear-gradient(135deg, #0047abb0 0%, #6b8cff5e 100%) !important;
	color: #ffffff !important;
	border-radius: 5px !important;
	padding: 2px 6px !important;
	margin-left: 9px !important;
	font-size: 11px !important;
	font-weight: bold !important;
	display: inline-block !important;
	box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2) !important;
}

.aieditor-container .badge-vlo2,
.message .badge-vlo2,
body.xtr-skin .message .badge-vlo2,
.aieditor-container strong.badge-vlo2,
.message strong.badge-vlo2 {
	background: linear-gradient(135deg, #FF6B6B 0%, #FFA1A1 100%) !important;
	color: #ffffff !important;
	border-radius: 5px !important;
	padding: 2px 6px !important;
	margin-left: 9px !important;
	font-size: 11px !important;
	font-weight: bold !important;
	display: inline-block !important;
	box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2) !important;
}

.aieditor-container .actor-list,
.message .actor-list,
body.xtr-skin .message .actor-list,
.aieditor-container span.actor-list,
.message span.actor-list {
	display: -webkit-box !important;
	-webkit-box-orient: vertical !important;
	-webkit-line-clamp: 2;
	overflow: hidden;
	text-overflow: ellipsis;
	max-height: 2.9em;
	line-height: 1.45em;
}

/* 简介 / 热评 / 下载：统一平级 h3 样式（兼容旧帖 h4/h5） */
.aieditor-container table.movie-info ~ h3,
.aieditor-container div.movie-info ~ h3,
.aieditor-container table.movie-info ~ h4,
.aieditor-container div.movie-info ~ h4,
.aieditor-container table.movie-info ~ h5,
.aieditor-container div.movie-info ~ h5,
.message table.movie-info ~ h3,
.message div.movie-info ~ h3,
.message table.movie-info ~ h4,
.message div.movie-info ~ h4,
.message table.movie-info ~ h5,
.message div.movie-info ~ h5,
body.xtr-skin .card-body .message table.movie-info ~ h3,
body.xtr-skin .message table.movie-info ~ h3,
body.xtr-skin .message table.movie-info ~ h4,
body.xtr-skin .message table.movie-info ~ h5,
body.xtr-skin .message.aie-content > table.movie-info ~ h3 {
	font-size: 1.3rem !important;
	font-weight: 700 !important;
	color: #4a4b4f !important;
	padding: .5rem 1rem !important;
	background: #fff !important;
	border-radius: 8px !important;
	display: inline-block !important;
	transform: skewX(-5deg) !important;
	margin: 14px 0 6px !important;
	position: relative !important;
	border-left: none !important;
	line-height: 1.35 !important;
	align-items: unset !important;
}

.aieditor-container table.movie-info ~ h3:before,
.aieditor-container table.movie-info ~ h4:before,
.aieditor-container table.movie-info ~ h5:before,
.message table.movie-info ~ h3:before,
.message table.movie-info ~ h4:before,
.message table.movie-info ~ h5:before,
body.xtr-skin .message table.movie-info ~ h3:before,
body.xtr-skin .message table.movie-info ~ h4:before,
body.xtr-skin .message table.movie-info ~ h5:before {
	content: '' !important;
	position: absolute !important;
	top: 0 !important;
	left: 0 !important;
	width: 4px !important;
	height: 100% !important;
	background: #3b82f6 !important;
	border-radius: 8px 0 0 8px !important;
	margin: 0 !important;
	box-shadow: none !important;
	flex-shrink: unset !important;
}

/* 简介正文 */
.aieditor-container table.movie-info ~ h3 + p,
.aieditor-container div.movie-info ~ h3 + p,
.aieditor-container .mydb-synopsis,
.message table.movie-info ~ h3 + p,
.message div.movie-info ~ h3 + p,
.message .mydb-synopsis,
body.xtr-skin .message table.movie-info ~ h3 + p,
body.xtr-skin .message .mydb-synopsis {
	text-indent: 2em;
	line-height: 1.65 !important;
	color: #494949 !important;
	margin: 0 0 6px !important;
	background: transparent !important;
	box-shadow: none !important;
	padding: 0 !important;
}

/* 热评（含旧帖丢失 custom-blockquote 时的兜底） */
.aieditor-container table.movie-info ~ h3 + p.custom-blockquote,
.aieditor-container table.movie-info ~ h4 + p,
.message table.movie-info ~ h4 + p,
body.xtr-skin .message table.movie-info ~ h4 + p,
.aieditor-container .custom-blockquote,
.message .custom-blockquote,
body.xtr-skin .message .custom-blockquote,
.aieditor-container p.custom-blockquote,
.message p.custom-blockquote {
	background: linear-gradient(135deg, rgb(116 235 213 / 7%), rgb(159 172 230 / 10%)) !important;
	border-radius: 8px !important;
	box-shadow: 0 4px 8px rgba(0, 0, 0, 0.05) !important;
	margin: 6px 0 10px !important;
	padding: 14px 18px !important;
	position: relative !important;
	display: block !important;
	color: #666 !important;
	border: none !important;
	font-size: 14px !important;
	line-height: 1.65 !important;
	text-indent: 0 !important;
}

.aieditor-container table.movie-info ~ h4 + p::before,
.message table.movie-info ~ h4 + p::before,
.aieditor-container .custom-blockquote::before,
.message .custom-blockquote::before,
.aieditor-container p.custom-blockquote::before,
.message p.custom-blockquote::before {
	color: #aaa;
	content: open-quote;
	font-size: 4em;
	line-height: 0.1em;
	margin-right: 10px;
	vertical-align: -0.4em;
}

.aieditor-container table.movie-info ~ h4 + p::after,
.message table.movie-info ~ h4 + p::after,
.aieditor-container .custom-blockquote::after,
.message .custom-blockquote::after,
.aieditor-container p.custom-blockquote::after,
.message p.custom-blockquote::after {
	color: #bbb;
	content: close-quote;
	font-size: 4em;
	line-height: 0.1em;
	opacity: 0.7;
	position: absolute;
	right: 20px;
	bottom: 10px;
}

/* ---------- 热评列表 ---------- */
.mydb-hot-list,
.message .mydb-hot-list,
.aieditor-container .mydb-hot-list {
	display: grid;
	gap: 10px;
	margin: 6px 0 12px;
}

.mydb-hot-item,
.message .mydb-hot-item,
.aieditor-container .mydb-hot-item {
	margin: 0 0 10px !important;
	padding: 12px 14px !important;
	border: none !important;
	border-radius: 8px !important;
	background: linear-gradient(135deg, rgb(116 235 213 / 7%), rgb(159 172 230 / 10%)) !important;
	box-shadow: 0 4px 8px rgba(0, 0, 0, 0.05) !important;
	position: relative !important;
	color: #666 !important;
	font-size: 14px !important;
	line-height: 1.65 !important;
}

.mydb-hot-item p {
	margin: 0 !important;
	padding: 0 !important;
	text-indent: 0 !important;
}

.mydb-hot-item > p > strong:first-child,
.message .mydb-hot-item > p > strong:first-child,
.aieditor-container .mydb-hot-item > p > strong:first-child {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 22px;
	height: 22px;
	margin-right: 8px;
	padding: 0 6px;
	border-radius: 50%;
	background: linear-gradient(135deg, #5594f7, #0084ff);
	color: #fff !important;

	font-size: 11px;
	font-weight: 700;
	box-shadow: 0 2px 6px rgba(0, 132, 255, 0.25);
	vertical-align: middle;
}

/* ---------- 影视卡片：发帖编辑器内 div.movie-info ---------- */
.aieditor-container .aie-content div.movie-info,
.aieditor-container .ProseMirror div.movie-info {
	padding: 7px !important;
	border-radius: 5px !important;
	box-shadow: 0 2px 4px rgba(26, 26, 26, .1) !important;
	display: flex !important;
	align-items: flex-start !important;
	background: var(--mydb-card-bg) !important;
	margin: 8px 0 12px !important;
	gap: 20px;
}

.aieditor-container div.movie-info > img,
.aieditor-container div.movie-info .movie-info-content {
	flex-shrink: 0;
}

.aieditor-container div.movie-info .movie-info-content {
	flex: 1;
	min-width: 0;
}

.aieditor-container div.movie-info ~ h3,
.aieditor-container div.movie-info ~ h4 {
	margin: 12px 0 6px !important;
}

/* ---------- 兼容旧帖 div.movie-info ---------- */
.message div.movie-info,
body.xtr-skin .message div.movie-info {
	padding: 7px;
	border-radius: 5px;
	box-shadow: 0 2px 4px rgba(26, 26, 26, .1);
	display: flex;
	align-items: center;
	background: var(--mydb-card-bg);
	margin: 12px 0 16px;
}

.message div.movie-info > img {
	max-width: 253px !important;
	height: auto;
	object-fit: cover;
	border-radius: 5px;
	margin-right: 20px !important;
}

.message div.movie-info .movie-info-content {
	flex: 1;
	min-width: 0;
}

@media (max-width: 767px) {
	.message table.movie-info tr,
	body.xtr-skin .message table.movie-info tr {
		flex-direction: column !important;
	}

	.aieditor-container .aie-content table.movie-info,
	.aieditor-container .ProseMirror table.movie-info {
		display: block !important;
	}

	.aieditor-container .aie-content table.movie-info tr,
	.aieditor-container .ProseMirror table.movie-info tr {
		display: block !important;
	}

	.aieditor-container .aie-content table.movie-info td,
	.aieditor-container .ProseMirror table.movie-info td {
		display: block !important;
		width: 100% !important;
		padding-right: 0 !important;
	}

	.message table.movie-info img,
	body.xtr-skin .message table.movie-info img {
		max-width: 140px !important;
		margin-bottom: 10px !important;
	}

	.message div.movie-info {
		flex-direction: column;
		align-items: flex-start;
	}
}
