/* page-vod-search.css: consolidated page stylesheet; source order preserved. */

/* ===== source: avlog-coherent-rebuild-20261113.css ===== */
/*
 * AVLOG 2026-11-13 — coherent component rebuild
 * Loaded after legacy/page stylesheets to neutralize older conflicting rules.
 */
:root {
  --av-panel-bg: #0c1b14;
  --av-green: #16a34a;
  --av-green-bright: #22c55e;
  --av-purple: #a855f7;
}

/* Four homepage shortcut cards — desktop shorter height, single-line description */

/* AI cards: individual green outline, no colored glow */
html body.body #ai-videos .ai-video-grid { gap: 16px !important; }
html body.body #ai-videos .ai-video-card {
  display: flex !important;
  flex-direction: column !important;
  min-width: 0 !important;
  overflow: hidden !important;
  border: 1px solid rgba(34,197,94,.62) !important;
  border-radius: 12px !important;
  background: var(--av-panel-bg) !important;
  box-shadow: none !important;
  transition: border-color .18s ease, background-color .18s ease !important;
}
html body.body #ai-videos .ai-video-card:hover {
  border-color: #4ade80 !important;
  background: #102219 !important;
  box-shadow: none !important;
  transform: translateY(-2px);
}
html body.body #ai-videos .ai-video-caption strong {
  display: -webkit-box !important;
  overflow: hidden !important;
  -webkit-box-orient: vertical !important;
  -webkit-line-clamp: 2 !important;
  white-space: normal !important;
  overflow-wrap: anywhere !important;
  line-height: 1.5 !important;
  min-height: 3em !important;
  max-height: 3em !important;
}

/* Same video-card structure and title treatment on home/type/show/search */
html body.body .home-video-list .category-con .a-con,
html body.body #videos .category-con .a-con {
  align-items: start !important;
}
html body.body .home-video-list .category-con .a-con-inner,
html body.body #videos .category-con .a-con-inner {
  min-width: 0 !important;
  overflow: hidden !important;
  padding: 0 !important;
  border: 1px solid transparent !important;
  border-radius: 10px !important;
  background: transparent !important;
  box-shadow: none !important;
}
html body.body .home-video-list .category-con .a-con-inner > .s1,
html body.body #videos .category-con .a-con-inner > .s1 {
  display: block !important;
  min-height: 3em !important;
  max-height: 3em !important;
  margin-top: 8px !important;
  overflow: hidden !important;
  font-size: 13px !important;
  line-height: 1.5 !important;
  font-weight: 600 !important;
}
html body.body .home-video-list .category-con .a-con-inner > .s1 a,
html body.body #videos .category-con .a-con-inner > .s1 a {
  display: -webkit-box !important;
  -webkit-box-orient: vertical !important;
  -webkit-line-clamp: 2 !important;
  overflow: hidden !important;
  white-space: normal !important;
  overflow-wrap: anywhere !important;
  text-overflow: ellipsis !important;
  line-height: 1.5 !important;
  color: #edf7f0 !important;
}
html body.body .home-video-list .category-con .a-con-inner > .s1 a:hover,
html body.body #videos .category-con .a-con-inner > .s1 a:hover {
  color: #4ade80 !important;
}
html body.body .home-video-list .category-con .a-con-inner > .pic,
html body.body #videos .category-con .a-con-inner > .pic {
  position: relative !important;
  overflow: hidden !important;
  border-radius: 9px !important;
  background: #102017 !important;
}
html body.body .home-video-list .category-con .a-con-inner > .pic img,
html body.body #videos .category-con .a-con-inner > .pic img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
}

/* One identical play button for every video list and AI card */
html body.body .home-video-list .category-con .a-con-inner > .pic .bofang,
html body.body #videos .category-con .a-con-inner > .pic .bofang,
html body.body #ai-videos .ai-video-play {
  position: absolute !important;
  left: 50% !important;
  top: 50% !important;
  right: auto !important;
  bottom: auto !important;
  z-index: 5 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 44px !important;
  height: 44px !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 1px solid rgba(255,255,255,.58) !important;
  border-radius: 50% !important;
  background: rgba(12,27,20,.78) !important;
  color: #fff !important;
  font-size: 18px !important;
  line-height: 1 !important;
  opacity: 0 !important;
  visibility: hidden !important;
  transform: translate(-50%,-50%) scale(.92) !important;
  transition: opacity .18s ease, visibility .18s ease, transform .18s ease !important;
  pointer-events: none !important;
}
html body.body .home-video-list .category-con .a-con-inner > .pic:hover .bofang,
html body.body #videos .category-con .a-con-inner > .pic:hover .bofang,
html body.body #ai-videos .ai-video-card:hover .ai-video-play {
  opacity: 1 !important;
  visibility: visible !important;
  transform: translate(-50%,-50%) scale(1) !important;
}
html body.body .home-video-list .category-con .a-con-inner > .pic .bofang:before,
html body.body #videos .category-con .a-con-inner > .pic .bofang:before,
html body.body #ai-videos .ai-video-play .iconfont {
  color: #fff !important;
  font-size: inherit !important;
}

/* Header stays in normal document flow on desktop and mobile. */
html body.body .site-header { position: relative !important; top: auto !important; z-index: 200 !important; }
/* The shared header's green accent is intentionally retained. */

/* Footer reaches the bottom edge with no decorative top strip or trailing gap */
html, body.body {
  min-height: 100% !important;
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
}
html body.body .footer,
html body.body footer.footer {
  margin-bottom: 0 !important;
  padding-bottom: max(18px, env(safe-area-inset-bottom)) !important;
}
html body.body .footer:before,
html body.body .footer:after,
html body.body footer.footer:before,
html body.body footer.footer:after {
  content: none !important;
  display: none !important;
}

/* Responsive details */
@media (max-width: 767px) {
  /* Mobile: keep previous mobile height, do not apply desktop shortening */
  html body.body .home-video-list .category-con .a-con-inner > .s1,
  html body.body #videos .category-con .a-con-inner > .s1 {
    min-height: 2.9em !important;
    max-height: 2.9em !important;
    margin-top: 6px !important;
    font-size: 12px !important;
  }
  html body.body .home-video-list .category-con .a-con-inner > .pic .bofang,
  html body.body #videos .category-con .a-con-inner > .pic .bofang,
  html body.body #ai-videos .ai-video-play {
    width: 36px !important;
    height: 36px !important;
    font-size: 15px !important;
  }
}

/* ========== Keywords: desktop 18 per row (homepage + search) ========== */
@media (max-width: 1400px) {
}
@media (max-width: 1100px) {
}
@media (max-width: 767px) {
}

/* Footer: eliminate bottom white gap, full cover */
html, body {
  background-color: #0a1610 !important;
}
html body.body {
  min-height: 100vh !important;
  margin: 0 !important;
  padding-bottom: 0 !important;
}
html body.body footer.footer,
html body.body footer.footer.avref26-footer {
  margin-bottom: 0 !important;
  padding-bottom: 28px !important;
  border-bottom: 0 !important;
}
html body.body footer.footer:after,
html body.body footer.footer.avref26-footer:after {
  content: none !important;
  display: none !important;
}

/* Unify video date badge on all list pages (same as homepage latest videos) */
html body.body .home-video-date,
html body.body .a-con-inner .pic .home-video-date,
html body.body .avlog-video-item .pic .home-video-date {
  position: absolute !important;
  right: 7px !important;
  bottom: 7px !important;
  z-index: 2 !important;
  padding: 3px 6px !important;
  border: 1px solid rgba(255,255,255,.16) !important;
  border-radius: 5px !important;
  background: rgba(5,13,9,.78) !important;
  color: #f1fff5 !important;
  font-size: 10px !important;
  line-height: 1.35 !important;
  pointer-events: none !important;
  backdrop-filter: blur(5px);
}
html body.body .a-con-inner .pic,
html body.body .avlog-video-item .pic {
  position: relative !important;
}
/* Hide legacy “发布时间” text when present */
html body.body .a-con-inner > .vod-time,
html body.body .avlog-video-item > .vod-time {
  display: none !important;
}

/* ========== 关键词大全 / 搜索页关键词：电脑端强制 1 行 18 个 ========== */
html body.body .vod-keyword-panel .home-video-category-grid a {
  min-height: 32px !important;
  padding: 5px 2px !important;
  font-size: 12px !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  text-align: center !important;
  box-sizing: border-box !important;
}

/* 中大屏降级，避免过窄 */
@media (max-width: 1600px) {
  html body.body .vod-keyword-panel .home-video-category-grid {
    grid-template-columns: repeat(15, minmax(0, 1fr)) !important;
  }
}
@media (max-width: 1400px) {
  html body.body .vod-keyword-panel .home-video-category-grid {
    grid-template-columns: repeat(12, minmax(0, 1fr)) !important;
  }
}
@media (max-width: 1100px) {
  html body.body .vod-keyword-panel .home-video-category-grid {
    grid-template-columns: repeat(8, minmax(0, 1fr)) !important;
  }
}
@media (max-width: 767px) {
  html body.body .vod-keyword-panel .home-video-category-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 6px !important;
  }
}


/* ===== source: keyword-layout-20261113.css ===== */
/* Keyword directory layout: desktop 18 items per row; mobile 6 items per row. */
.av-kw-section .av-kw-grid,
#home-keyword-directory .av-kw-grid,
#search-hot-keywords .av-kw-grid {
  display: grid !important;
  grid-template-columns: repeat(18, minmax(0, 1fr)) !important;
  grid-auto-flow: row !important;
  align-items: stretch !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  box-sizing: border-box !important;
}

.av-kw-section .av-kw-grid > a,
#home-keyword-directory .av-kw-grid > a,
#search-hot-keywords .av-kw-grid > a {
  float: none !important;
  position: static !important;
  inset: auto !important;
  transform: none !important;
  min-width: 0 !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
}

@media (max-width: 767px) {
  .av-kw-section .av-kw-grid,
  #home-keyword-directory .av-kw-grid,
  #search-hot-keywords .av-kw-grid {
    grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
    gap: 6px !important;
  }
}


