/* 站点 26 · harbor-cyan 港湾清爽 · 影视站终检皮肤 */
:root {
  --harbor-deep: #0c4a6e;
  --harbor-sea: #0369a1;
  --harbor-sky: #0e7490;
  --harbor-soft: rgba(3, 105, 161, 0.12);
  --coral: #f97316;
  --coral-dark: #ea580c;
  --coral-light: #fb923c;
  --brand: #0369a1;
  --brand-dark: #0c4a6e;
  --bg: #e8f2f4;
  --bg2: #dfecee;
  --gold: #0369a1;
  --gold-dim: rgba(3, 105, 161, 0.14);
}

body.body-tpl-portal {
  --portal-accent: #0369a1;
  --portal-accent-hover: #0c4a6e;
  --portal-accent-light: #38bdf8;
  --portal-accent-dark: #0c4a6e;
  --portal-accent-soft: rgba(3, 105, 161, 0.12);
  --portal-sky: #0e7490;
  --portal-sky-soft: rgba(14, 116, 144, 0.14);
  --portal-violet: #0284c7;
  --portal-violet-soft: rgba(2, 132, 199, 0.12);
  --portal-teal: #0e7490;
  --portal-teal-soft: rgba(14, 116, 144, 0.14);
  --portal-rose: #f97316;
  --portal-rose-soft: rgba(249, 115, 22, 0.12);
}

.header-brand__logo {
  background: linear-gradient(135deg, var(--harbor-deep), var(--harbor-sea)) !important;
  box-shadow: 0 4px 14px rgba(3, 105, 161, 0.32) !important;
}

.header-main-nav__link--active {
  color: var(--brand-dark) !important;
  background: var(--portal-accent-soft) !important;
}

/* 首屏：影视站横幅，非杂志排版 */
.hero-editorial--atlas {
  border-bottom: 1px solid rgba(14, 116, 144, 0.1);
  background: linear-gradient(155deg, #082f49 0%, #0c4a6e 42%, #0e4d6e 100%);
}

.hero-editorial--atlas .hero-editorial__backdrop-vignette {
  background:
    radial-gradient(ellipse 80% 60% at 18% 50%, rgba(14, 116, 144, 0.18), transparent 58%),
    radial-gradient(ellipse 55% 45% at 88% 22%, rgba(249, 115, 22, 0.1), transparent 52%) !important;
}

.hero-editorial--atlas .hero-editorial__eyebrow-line {
  background: linear-gradient(90deg, transparent, var(--harbor-sky) 50%, transparent) !important;
}

.hero-editorial--atlas .hero-editorial__eyebrow-dot {
  background: var(--coral-light) !important;
  box-shadow: 0 0 10px rgba(251, 146, 60, 0.65) !important;
}

.hero-editorial--atlas .hero-editorial__eyebrow {
  color: rgba(186, 230, 253, 0.9) !important;
}

.hero-editorial--atlas .hero-editorial__kicker {
  color: rgba(186, 230, 253, 0.72) !important;
}

.hero-editorial--atlas .hero-editorial__btn--primary {
  background: linear-gradient(135deg, var(--coral-dark), var(--coral)) !important;
  box-shadow: 0 16px 40px rgba(234, 88, 12, 0.38), 0 0 0 1px rgba(255, 255, 255, 0.1) inset !important;
}

.hero-editorial--atlas .hero-editorial__btn--primary:hover {
  box-shadow: 0 22px 50px rgba(234, 88, 12, 0.48), 0 0 0 1px rgba(255, 255, 255, 0.14) inset !important;
}

.hero-editorial--atlas .hero-editorial__btn--ghost {
  color: #e0f2fe !important;
  border-color: rgba(186, 230, 253, 0.35) !important;
  background: rgba(255, 255, 255, 0.08) !important;
}

.hero-editorial--atlas .hero-editorial__stat-ico {
  color: var(--coral-light) !important;
}

.hero-editorial--atlas .hero-editorial__spotlight-label-dot {
  background: var(--coral) !important;
  box-shadow: 0 0 8px rgba(249, 115, 22, 0.75) !important;
}

.hero-editorial--atlas .hero-editorial__poster-hero:hover {
  box-shadow: 0 32px 70px rgba(0, 0, 0, 0.55), 0 0 0 1px rgba(14, 116, 144, 0.35) !important;
}

.hero-editorial--atlas .hero-editorial__poster-mini:hover {
  border-color: rgba(14, 116, 144, 0.45) !important;
}

/* 分类页 hero */
.category-route .category-hero--atlas .category-hero__backdrop {
  background:
    radial-gradient(ellipse 75% 65% at 12% 0%, rgba(14, 116, 144, 0.26), transparent 58%),
    radial-gradient(ellipse 55% 50% at 100% 100%, rgba(3, 105, 161, 0.18), transparent 52%),
    linear-gradient(155deg, #0c4a6e, #082f49 55%, #041f2e) !important;
}

.category-route .category-hero__eyebrow-dot {
  background: var(--coral-light) !important;
  box-shadow: 0 0 10px rgba(251, 146, 60, 0.65) !important;
}

.category-route .category-genre__btn--active {
  border-color: rgba(249, 115, 22, 0.55) !important;
  background: rgba(249, 115, 22, 0.22) !important;
}

.pagination-tab--active {
  background: linear-gradient(135deg, var(--harbor-deep), var(--harbor-sea)) !important;
  box-shadow: 0 4px 14px rgba(3, 105, 161, 0.32) !important;
}

.primary-btn {
  background: linear-gradient(135deg, var(--coral-dark), var(--coral)) !important;
}

.primary-btn:hover {
  background: linear-gradient(135deg, #c2410c, var(--coral-dark)) !important;
}

.ghost-btn {
  color: var(--brand-dark) !important;
  border-color: rgba(3, 105, 161, 0.32) !important;
}

.ghost-btn:hover {
  background: rgba(3, 105, 161, 0.06) !important;
}

.pill-badge {
  color: var(--brand-dark) !important;
  background: var(--gold-dim) !important;
  border-color: rgba(3, 105, 161, 0.22) !important;
}

.tuy-card__pills span {
  background: var(--harbor-soft) !important;
  color: var(--brand-dark) !important;
  border: 1px solid rgba(14, 116, 144, 0.22) !important;
}

.tuy-card__title a:hover {
  color: var(--brand-dark) !important;
}

/* 大留白卡片网格 */
.home-luxe__canvas {
  padding-top: 0.5rem;
}

.home-luxe__main-col {
  gap: 2.75rem;
}

.home-cat-rail--luxe {
  padding: 22px 22px 20px;
  border-radius: 18px;
  background: rgba(255, 255, 255, 0.94);
  border: 1px solid rgba(14, 116, 144, 0.1);
  box-shadow: 0 12px 40px rgba(8, 47, 73, 0.06);
}

.home-cat-rail__pill:hover {
  border-color: rgba(3, 105, 161, 0.32) !important;
  box-shadow: 0 10px 28px rgba(3, 105, 161, 0.1) !important;
}

.cq-block {
  scroll-margin-top: 80px;
}

.cq-card-grid--dense {
  gap: 22px;
}

.cq-hl-card.fsp-hl-card {
  border-radius: 16px;
  border-color: rgba(15, 23, 42, 0.07);
  box-shadow: 0 8px 28px rgba(8, 47, 73, 0.06);
}

.cq-hl-card.fsp-hl-card:hover {
  border-color: rgba(3, 105, 161, 0.24) !important;
  box-shadow: 0 16px 40px rgba(8, 47, 73, 0.1) !important;
}

.footer-fsp__upper {
  background: linear-gradient(180deg, #0c4a6e, #082f49) !important;
}

.footer-fsp__logo-mark {
  background: linear-gradient(135deg, var(--harbor-deep), var(--harbor-sea)) !important;
}

.footer-fsp__links a:hover {
  color: #7dd3fc !important;
}

.footer-fsp__seo-bar {
  background: #082f49;
  color: #94a3b8;
}

/* 播放页 */
.mirror-player-slot {
  max-width: min(75rem, calc(100% - 2rem));
  margin: 0 auto 1rem;
  padding: 0 1rem;
}

.mirror-player-slot video,
.mirror-local-player {
  width: 100%;
  border-radius: 12px;
  background: #000;
  box-shadow: 0 16px 48px rgba(8, 47, 73, 0.18);
}

.mother-play-desc {
  max-width: min(75rem, calc(100% - 2rem));
  margin: 0 auto 2rem;
  padding: 0 1rem;
  font-size: 0.9375rem;
  line-height: 1.75;
  color: var(--ink-muted, #64748b);
}

.page-main {
  flex: 1;
  min-width: 0;
}

/* 内页 */
.inner-page--sub .page-head-panel {
  margin-bottom: 1.25rem;
  border-radius: 18px;
  background: rgba(255, 255, 255, 0.94);
  border: 1px solid rgba(14, 116, 144, 0.08);
  box-shadow: 0 12px 36px rgba(8, 47, 73, 0.05);
}

.inner-page--sub .filter-chip--active {
  border-color: transparent !important;
  color: #fff !important;
  background: linear-gradient(135deg, var(--harbor-deep), var(--harbor-sea)) !important;
  box-shadow: 0 4px 14px rgba(3, 105, 161, 0.28) !important;
}

.inner-page--sub .search-empty,
.inner-page--sub .empty-state {
  text-align: center;
  padding: 2.5rem 1rem;
  color: var(--ink-muted);
}

.inner-page--sub .cat-tile {
  border-radius: 16px;
  transition: transform 0.15s ease, box-shadow 0.15s ease;
}

.inner-page--sub .cat-tile:hover {
  transform: translateY(-2px);
  box-shadow: 0 12px 32px rgba(3, 105, 161, 0.1);
}

.tuyona-features__card {
  border-color: rgba(14, 116, 144, 0.1) !important;
}

.tuyona-features__card h3 {
  color: var(--brand-dark) !important;
}

.tuy-card--compact .tuy-card__body {
  padding: 12px 14px 14px;
}

.tuy-card--compact .tuy-card__title {
  min-height: 0;
  font-size: 0.9375rem;
}

/* 移动端 */
@media (max-width: 768px) {
  .mirror-player-slot {
    padding: 0;
    max-width: 100%;
  }

  .mirror-player-slot video {
    border-radius: 0;
  }

  .mother-play-desc {
    padding: 0 1rem;
  }

  .hero-editorial--atlas .hero-editorial__grid {
    padding-top: 1.75rem;
    padding-bottom: 2rem;
  }

  .hero-editorial--atlas .hero-editorial__stats {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.75rem;
  }

  .home-cat-rail--luxe {
    padding: 16px;
  }

  .cq-card-grid--dense {
    gap: 16px;
  }

  .detail-hero__inner {
    padding: 18px 16px;
  }

  .detail-hero__cover {
    max-width: 140px;
  }
}

@media (max-width: 480px) {
  .hero-editorial--atlas .hero-editorial__cta {
    flex-direction: column;
    align-items: stretch;
  }

  .hero-editorial--atlas .hero-editorial__btn {
    width: 100%;
    justify-content: center;
  }

  .tuy-card .fsp-hl-card__body h3.tuy-card__title {
    min-height: 0;
  }

  .tuy-card .tuy-card__desc {
    min-height: 0;
  }
}

@media (prefers-reduced-motion: reduce) {
  .hero-editorial--atlas .hero-editorial__poster-hero,
  .tuy-card.fsp-hl-card {
    transition: none !important;
  }
}
