/* 情豆：深色海报墙。封面在上，标题在下，分类收成小标签。 */
html { -webkit-text-size-adjust: 100%; }
html, body {
	background: #120d10;
	color: #f6eef1;
	font-family: "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", sans-serif;
}
a, button { touch-action: manipulation; }
body { min-width: 320px; }
a { color: inherit; text-decoration: none; -webkit-tap-highlight-color: transparent; }
.max { width: auto; max-width: 1440px; margin: 0 auto; padding: 0 16px; }
.content, .vod-details-container, .card, .card-content, .vod-info { background: transparent; box-shadow: none; border: 0; }
.also:not(:has(a)) { display: none; }

.site-head {
	position: sticky;
	top: 0;
	z-index: 30;
	background: rgba(18, 13, 16, 0.94);
	border-bottom: 1px solid rgba(255, 255, 255, 0.06);
	backdrop-filter: blur(10px);
}
.head-bar {
	display: flex;
	align-items: center;
	gap: 18px;
	min-height: 64px;
}
.logo-img { display: block; height: 36px; width: auto; max-width: 148px; }
.header-search { flex: 1; max-width: 560px; margin-left: auto; }
.soso {
	display: flex;
	align-items: center;
	height: 40px;
	border-radius: 999px;
	background: #24181c;
	border: 1px solid rgba(255, 107, 129, 0.28);
}
.soso input {
	flex: 1;
	min-width: 0;
	height: 100%;
	border: 0;
	outline: 0;
	background: transparent;
	color: #fff;
	font-size: 14px;
	padding: 0 16px;
}
.soso input::placeholder { color: #9a8088; }
.soso:focus-within { border-color: #ff6b81; box-shadow: 0 0 0 3px rgba(255, 107, 129, 0.16); }
.searchBtn {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 42px;
	height: 32px;
	margin-right: 4px;
	border: 0;
	border-radius: 999px;
	background: #ff4d6d;
	cursor: pointer;
}
.searchBtn svg { width: 18px; height: 18px; fill: #fff; }

.cat-nav { padding: 0 0 10px; }
.cat-row { display: flex; flex-wrap: wrap; gap: 6px; }
.cat {
	display: inline-flex;
	align-items: center;
	height: 28px;
	padding: 0 10px;
	border-radius: 6px;
	background: rgba(255, 255, 255, 0.04);
	color: #e7d5da;
	font-size: 13px;
	line-height: 1;
}
.cat:hover, .cat.is-on { background: #ff4d6d; color: #fff; }
#linksNav { padding-top: 8px; }
#linksNav .max.flex { display: flex; flex-wrap: wrap; gap: 8px; justify-content: flex-start; }
#linksNav .item a { border-radius: 999px; font-size: 12px; }

.hot-keys:not(:has(a)) { display: none; }
.hot-keys { max-width: 1440px; margin: 0 auto; padding: 12px 16px 4px; background: transparent; border: 0; }
.hot-keys .hot-wrap { display: flex; flex-wrap: nowrap; gap: 8px; margin: 0; padding: 0; overflow-x: auto; overscroll-behavior-x: contain; scrollbar-width: none; }
.hot-keys .hot-wrap::-webkit-scrollbar { display: none; }
.hot-keys .hot-chip { flex: 0 0 auto; }
.hot-keys .hot-chip {
	width: auto;
	min-width: 0;
	height: 30px;
	padding: 0 12px;
	border-radius: 999px;
	border: 1px solid rgba(255, 180, 194, 0.28);
	background: rgba(255, 255, 255, 0.03);
	color: #f0d5dc;
	font-size: 13px;
	line-height: 28px;
	box-shadow: none;
}
.hot-keys .hot-chip:nth-child(4n + 2) { background: rgba(255, 77, 109, 0.12); border-color: rgba(255, 77, 109, 0.28); color: #ffb4c0; }
.hot-keys .hot-chip:nth-child(4n) { background: #ff4d6d; border-color: #ff4d6d; color: #fff; }
.hot-keys .hot-chip:hover { background: #ff6b81; border-color: #ff6b81; color: #fff; }

.app-promo:not(:has(a)) { display: none; }
.app-promo { max-width: 1440px; margin: 8px auto 0; padding: 0 16px; }
.app-row {
	display: inline-flex;
	gap: 16px;
	max-width: 100%;
	overflow-x: auto;
	overscroll-behavior-x: contain;
	scrollbar-width: none;
	background: #24181c;
	border: 1px solid rgba(255, 77, 109, 0.28);
	border-radius: 14px;
	padding: 10px 16px 8px;
}
.app-row::-webkit-scrollbar { display: none; }
.app-item {
	flex: 0 0 64px;
	width: 64px;
	text-align: center;
	color: #f0d5dc;
}
.app-icon {
	display: block;
	width: 48px;
	height: 48px;
	margin: 0 auto 6px;
	border-radius: 12px;
	object-fit: cover;
	background: #1a1216;
	box-shadow: 0 0 0 1px rgba(255, 77, 109, 0.28);
}
.app-item span {
	display: block;
	overflow: hidden;
	font-size: 12px;
	line-height: 1.3;
	white-space: nowrap;
	text-overflow: ellipsis;
	color: #f0d5dc;
}

.ad-container { max-width: 1440px; margin: 8px auto; padding: 0 16px; text-align: center; }
.ad-item { margin: 6px 0; }
.ad-link { display: block; }
.ad-image { width: 100%; max-width: 1000px; height: auto; min-height: 60px; display: block; margin: 0 auto; object-fit: contain; }
img.ad-image[src^="data:image"], img.ad-image.image-loading, img.ad-image.image-error { width: auto; max-width: 220px; height: 56px; min-height: 0; }

.page-head { padding: 16px 0 2px; }
.page-head h1 { margin: 0; font-size: 20px; font-weight: 600; letter-spacing: 0.02em; }
.page-head h1::before { content: ""; display: inline-block; width: 3px; height: 16px; margin-right: 8px; border-radius: 2px; background: #ff4d6d; vertical-align: -2px; }

.video_box { margin: 6px 0 18px; }
.video_box .title {
	display: flex;
	align-items: center;
	margin: 14px 0 12px;
	padding: 0 0 0 10px;
	background: transparent;
	border-radius: 0;
	border-left: 3px solid #ff4d6d;
	color: #fff;
}
.video_box .title h6 { margin: 0; font-size: 16px; font-weight: 600; }
.video-box { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 16px 12px; margin: 0; }
.video-box .video-item { display: block; width: auto; min-width: 0; flex: none; padding: 0; }
.video-item .img-box { position: relative; height: auto; aspect-ratio: 16 / 9; border-radius: 8px; overflow: hidden; background: #2a1c22; }
.video-item .img-box img { display: block; width: 100%; height: 100%; object-fit: cover; transition: transform .35s ease; }
.video-item:hover .img-box img { transform: scale(1.05); }
.video-item .txt-ellipsis-2 { margin-top: 8px; min-height: 2.7em; color: #f4e7ea; font-size: 13px; line-height: 1.35; }
.video-item .txt-ellipsis-2 a, .video-item .txt-ellipsis-2 h3 { color: inherit; font-size: inherit; font-weight: 500; line-height: inherit; margin: 0; }
.video-item:hover .txt-ellipsis-2 { color: #ff8fa3; }

#titleH { margin: 10px 0 12px; font-size: 18px; font-weight: 600; line-height: 1.45; color: #fff; }
.plaryer-wrapper {
	position: relative;
	width: min(100%, calc(72vh * 16 / 9));
	margin: 0 auto 16px;
	aspect-ratio: 16 / 9;
	height: auto;
	background: #000;
	border-radius: 10px;
	overflow: hidden;
}
.plaryer-wrapper iframe {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	border: 0;
}
.also { margin: 8px 0 18px; }
.also h2 { margin: 0 0 10px; font-size: 16px; font-weight: 600; color: #fff; }
.also-list { display: grid; grid-template-columns: 1fr 1fr; gap: 7px 22px; }
.also-list a { display: block; overflow: hidden; color: #e4d0d5; font-size: 13px; line-height: 1.5; text-overflow: ellipsis; white-space: nowrap; }
.also-list a:hover { color: #ff8fa3; }

.pagina { display: flex; flex-wrap: wrap; justify-content: center; gap: 6px; margin: 20px 0 8px; text-align: center; }
.pagina a, .pagina strong {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 34px;
	height: 34px;
	padding: 0 10px;
	border-radius: 8px;
	background: #24181c;
	color: #f0dde2;
	text-shadow: none;
	box-shadow: none;
}
.pagina strong, .pagina a:hover { background: #ff4d6d; color: #fff; transform: none; }
.pagina span { color: #a08b91; padding: 0 2px; }

#friendLinks { max-width: 1440px; margin: 12px auto 0; padding: 0 16px; }
.footer-container { max-width: 1440px; margin: 28px auto 0; padding: 22px 16px 32px; background: transparent; border-top: 1px solid rgba(255, 255, 255, 0.06); }
.footer-content { text-align: center; }
.footer-text { max-width: 640px; margin: 0 auto; color: #b7a4aa; font-size: 13px; line-height: 1.8; }
.footer-desc { margin: 0 0 8px; color: #e7d5da; }
.footer-email { margin: 0 0 8px; color: #ff8fa3; font-size: 13px; }
.footer-email a { color: inherit; }
.footer-note { margin: 0 0 6px; color: #8d787e; font-size: 12px; }
.footer-copyright { margin: 0; color: #8d787e; font-size: 12px; }

@media (hover: none) {
	.video-item:hover .img-box img { transform: none; }
}
@media (max-width: 1200px) {
	.video-box { grid-template-columns: repeat(4, minmax(0, 1fr)); }
}
@media (max-width: 959px) {
	.site-head { padding-top: env(safe-area-inset-top); }
	.head-bar { min-height: 52px; gap: 10px; }
	.soso { height: 40px; }
	.soso input { font-size: 16px; }
	.cat-nav { padding-bottom: 8px; }
	.cat-row, #linksNav .max.flex, .hot-keys .hot-wrap, .app-row {
		flex-wrap: nowrap;
		overflow-x: auto;
		overscroll-behavior-x: contain;
		scrollbar-width: none;
		-webkit-overflow-scrolling: touch;
	}
	.cat-row::-webkit-scrollbar, #linksNav .max.flex::-webkit-scrollbar, .hot-keys .hot-wrap::-webkit-scrollbar, .app-row::-webkit-scrollbar { display: none; }
	.cat, #linksNav .item, .hot-keys .hot-chip { flex: 0 0 auto; }
	.cat { height: 36px; padding: 0 12px; font-size: 14px; }
	.hot-keys { padding-top: 8px; padding-bottom: 8px; }
	.hot-keys .hot-chip { height: 34px; line-height: 32px; }
}
@media (max-width: 760px) {
	.max, .hot-keys, .ad-container, .app-promo, #friendLinks, .footer-container { padding-left: 10px; padding-right: 10px; }
	.app-item { flex-basis: 64px; width: 64px; }
	.app-icon { width: 48px; height: 48px; border-radius: 12px; }
	.logo-img { height: 28px; }
	.header-search { max-width: none; }
	.video-box { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px 8px; }
	.video-item .txt-ellipsis-2 { margin-top: 6px; font-size: 13px; line-height: 1.35; min-height: 2.7em; }
	.page-head { padding-top: 12px; }
	.page-head h1, .video_box .title h6, #titleH { font-size: 16px; }
	#titleH { margin-top: 8px; }
	.also-list { grid-template-columns: 1fr; }
	.pagina { gap: 8px; margin: 16px 0; }
	.pagina a, .pagina strong { min-width: 36px; height: 40px; padding: 0 10px; font-size: 14px; }
	.footer-container { padding-bottom: calc(24px + env(safe-area-inset-bottom)); }
}
