/* mother-diversity · site 9 · harbor-cyan · 港湾清爽 */

:root{
  --hc-primary:#0ea5e9;
  --hc-secondary:#0284c7;
  --hc-cta:#f97316;
  --hc-badge:#f97316;
  --hc-bg:#ffffff;
  --hc-surface:#f0f9ff;
  --hc-surface-2:#e0f2fe;
  --hc-text:#0c4a6e;
  --hc-muted:#64748b;
  --hc-dim:#94a3b8;
  --hc-line:rgba(14,165,233,.18);
  --hc-shadow:0 12px 40px rgba(14,165,233,.12);
  color-scheme:light;
}

/* ── Body ── */
.hc-body{
  margin:0;
  min-height:100vh;
  background:
    radial-gradient(800px 360px at 100% -8%, rgba(14,165,233,.08), transparent 55%),
    radial-gradient(600px 300px at 0% 100%, rgba(249,115,22,.05), transparent 50%),
    var(--hc-bg);
  color:var(--hc-text);
  font-family:"Segoe UI","PingFang SC","Noto Sans SC",system-ui,sans-serif;
}
.hc-body a{color:var(--hc-primary);transition:color .2s,background .2s,transform .2s,border-color .2s}
.hc-body a:hover{color:var(--hc-secondary)}

/* ── Header: 搜索优先单行 + 胶囊导航 ── */
.hc-head{
  position:sticky;top:0;z-index:90;
  background:var(--hc-bg);
  border-bottom:2px solid var(--hc-line);
  box-shadow:0 2px 16px rgba(14,165,233,.08);
}
.hc-head__bar{
  max-width:1280px;margin:0 auto;
  display:flex;align-items:center;gap:14px;
  padding:12px 20px;
}
.hc-brand{
  display:inline-flex;align-items:center;gap:8px;
  color:var(--hc-text)!important;font-weight:900;font-size:1.15rem;flex-shrink:0;
}
.hc-brand__mark{
  display:grid;place-items:center;
  width:34px;height:34px;border-radius:10px;
  background:linear-gradient(135deg,var(--hc-primary),var(--hc-secondary));
  color:#fff;font-size:.9rem;font-weight:900;
  box-shadow:0 4px 14px rgba(14,165,233,.35);
}
.hc-brand__name{color:var(--hc-secondary)}
.hc-search{
  flex:1;display:flex;max-width:520px;margin:0 auto;
  border:2px solid var(--hc-primary);border-radius:999px;overflow:hidden;
  background:var(--hc-surface);
}
.hc-search input{
  flex:1;padding:10px 18px;border:0;outline:none;
  background:transparent;color:var(--hc-text);font-size:.92rem;
}
.hc-search input::placeholder{color:var(--hc-dim)}
.hc-search button{
  padding:10px 22px;border:0;cursor:pointer;
  background:linear-gradient(135deg,var(--hc-primary),var(--hc-secondary));
  color:#fff;font-weight:800;font-size:.88rem;
}
.hc-head__cta{
  flex-shrink:0;padding:9px 18px;border-radius:999px;
  background:linear-gradient(135deg,var(--hc-cta),#ea580c);
  color:#fff!important;font-weight:800;font-size:.85rem;
  box-shadow:0 4px 16px rgba(249,115,22,.35);
}
.hc-head__cta:hover{transform:translateY(-1px);color:#fff!important}
.hc-burger{
  display:none;flex-shrink:0;
  width:40px;height:40px;border:2px solid var(--hc-line);border-radius:10px;
  background:var(--hc-surface);color:var(--hc-text);font-size:1.2rem;cursor:pointer;
}

/* 彩色分类胶囊导航 */
.hc-capsules{
  max-width:1280px;margin:0 auto;
  display:flex;flex-wrap:wrap;gap:8px;
  padding:0 20px 12px;
  overflow-x:auto;-webkit-overflow-scrolling:touch;
}
.hc-capsules a{
  padding:6px 16px;border-radius:999px;
  font-weight:700;font-size:.84rem;white-space:nowrap;
  background:var(--hc-surface);color:var(--hc-secondary)!important;
  border:1.5px solid var(--hc-line);
}
.hc-capsules a:hover{
  background:var(--hc-surface-2);border-color:var(--hc-primary);
  transform:translateY(-1px);
}
.hc-capsules a[aria-current="page"]{
  background:linear-gradient(135deg,var(--hc-primary),var(--hc-secondary));
  color:#fff!important;border-color:transparent;
  box-shadow:0 3px 12px rgba(14,165,233,.3);
}

/* ── Main ── */
.hc-main{max-width:1280px;margin:0 auto;padding:24px 20px 48px}

/* ── Spotlight hero (左右分栏) ── */
.hc-spotlight{
  display:grid;grid-template-columns:1fr 1.1fr;gap:28px;
  margin-bottom:32px;padding:28px;border-radius:16px;
  background:linear-gradient(135deg,var(--hc-surface) 0%,#fff 50%,rgba(249,115,22,.04) 100%);
  border:1px solid var(--hc-line);
}
.hc-spotlight__eyebrow{
  display:inline-block;margin-bottom:10px;padding:4px 12px;border-radius:999px;
  background:var(--hc-cta);color:#fff;font-size:.72rem;font-weight:800;
}
.hc-spotlight h1{
  margin:0 0 12px;font-size:clamp(1.5rem,3.5vw,2.1rem);font-weight:900;line-height:1.2;
  color:var(--hc-text);
}
.hc-spotlight__lead{margin:0 0 20px;color:var(--hc-muted);line-height:1.75;font-size:.95rem}
.hc-spotlight__actions{display:flex;flex-wrap:wrap;gap:10px}
.hc-spotlight__strip{
  display:flex;flex-direction:column;gap:12px;
  padding:16px;border-radius:12px;background:#fff;border:1px solid var(--hc-line);
}
.hc-spotlight__strip-head{
  display:flex;align-items:center;justify-content:space-between;
  font-size:.88rem;font-weight:800;color:var(--hc-secondary);
}
.hc-spotlight__strip-head a{color:var(--hc-primary)!important;font-size:.82rem}
.hc-spotlight__cards{
  display:grid;grid-auto-flow:column;grid-auto-columns:minmax(110px,130px);
  gap:12px;overflow-x:auto;padding-bottom:8px;
  scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;
}
.hc-spotlight__cards--solo{grid-auto-columns:minmax(120px,140px)}
.hc-spotlight__cards .hc-card{background:transparent;border:0;box-shadow:none}
.hc-spotlight__cards .hc-card:hover{transform:none;box-shadow:none}
.hc-spotlight__cards .hc-card__cover{border-radius:10px}
.hc-spotlight__cards .hc-card__body{padding:6px 2px 0}
.hc-spotlight__cards .hc-card__body h3{font-size:.78rem}

/* ── Buttons ── */
.hc-btn{
  display:inline-flex;align-items:center;justify-content:center;
  padding:11px 22px;border-radius:999px;font-weight:800;font-size:.88rem;
  border:2px solid transparent;cursor:pointer;transition:transform .2s,box-shadow .2s;
}
.hc-btn--cta{
  background:linear-gradient(135deg,var(--hc-cta),#ea580c);
  color:#fff!important;box-shadow:0 6px 20px rgba(249,115,22,.3);
}
.hc-btn--cta:hover{transform:translateY(-2px);box-shadow:0 10px 28px rgba(249,115,22,.4);color:#fff!important}
.hc-btn--outline{
  background:#fff;color:var(--hc-primary)!important;border-color:var(--hc-primary);
}
.hc-btn--outline:hover{background:var(--hc-surface)}
.hc-btn--play{flex-shrink:0;align-self:center}

/* ── Channel pills strip ── */
.hc-channels{margin-bottom:32px}
.hc-channels--compact{margin-bottom:20px}
.hc-channels__title{margin:0 0 12px;font-size:1rem;font-weight:800;color:var(--hc-secondary)}
.hc-channels__pills{
  display:flex;flex-wrap:wrap;gap:10px;
  overflow-x:auto;padding-bottom:4px;-webkit-overflow-scrolling:touch;
}
.hc-pill{
  padding:8px 18px;border-radius:999px;
  font-weight:700;font-size:.85rem;white-space:nowrap;
  background:var(--hc-surface);color:var(--hc-secondary)!important;
  border:1.5px solid var(--hc-line);
  transition:transform .2s,background .2s,border-color .2s;
}
.hc-pill:hover{
  background:var(--hc-primary);color:#fff!important;border-color:var(--hc-primary);
  transform:translateY(-2px);box-shadow:0 4px 14px rgba(14,165,233,.25);
}

/* ── Sections ── */
.hc-section{margin-bottom:36px}
.hc-section__head{
  display:flex;align-items:center;justify-content:space-between;
  margin-bottom:18px;
}
.hc-section__head h2{
  margin:0;font-size:1.15rem;font-weight:900;color:var(--hc-text);
  display:flex;align-items:center;gap:10px;
}
.hc-section__dot{
  width:10px;height:10px;border-radius:50%;
  background:var(--hc-primary);box-shadow:0 0 0 3px rgba(14,165,233,.2);
}
.hc-section__dot--orange{background:var(--hc-cta);box-shadow:0 0 0 3px rgba(249,115,22,.2)}
.hc-section__more{color:var(--hc-primary)!important;font-weight:700;font-size:.88rem}
.hc-section--detail{
  padding:24px;border-radius:14px;
  background:var(--hc-surface);border:1px solid var(--hc-line);
}
.hc-section--detail h2{margin:0 0 14px;font-size:1.05rem;color:var(--hc-secondary);font-weight:800}
.hc-prose{margin:0;line-height:1.85;color:var(--hc-muted);font-size:.92rem}

/* ── Grids ── */
.hc-grid{display:grid;gap:18px}
.hc-grid--featured{grid-template-columns:repeat(3,minmax(0,1fr))}
.hc-grid--latest{grid-template-columns:repeat(5,minmax(0,1fr))}
.hc-grid--catalog{grid-template-columns:repeat(4,minmax(0,1fr))}
.hc-grid--related{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.movie-grid.hc-grid{display:grid}

/* ── Portrait cards (3:4) ── */
.hc-card{
  background:#fff;border-radius:14px;overflow:hidden;
  border:1px solid var(--hc-line);
  transition:transform .22s,border-color .22s,box-shadow .22s;
}
.hc-card:hover{
  transform:translateY(-4px);
  border-color:rgba(14,165,233,.45);
  box-shadow:var(--hc-shadow);
}
.hc-card__cover{position:relative;display:block;overflow:hidden;background:var(--hc-surface-2)}
.hc-card__cover img{width:100%;aspect-ratio:3/4;object-fit:cover;transition:transform .35s}
.hc-card:hover .hc-card__cover img{transform:scale(1.05)}
.hc-card__badge{
  position:absolute;left:8px;top:8px;
  padding:3px 9px;border-radius:999px;
  background:var(--hc-badge);color:#fff;
  font-size:.68rem;font-weight:800;
}
.hc-card__year{
  position:absolute;right:8px;bottom:8px;
  padding:2px 8px;border-radius:6px;
  background:rgba(12,74,110,.78);color:#fff;
  font-size:.7rem;font-weight:700;
}
.hc-card__body{padding:12px 14px 14px}
.hc-card__body h3{
  margin:0 0 6px;font-size:.88rem;line-height:1.35;font-weight:800;
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;
}
.hc-card__body h3 a{color:var(--hc-text)!important}
.hc-card__body h3 a:hover{color:var(--hc-primary)!important}
.hc-card__meta{display:flex;flex-wrap:wrap;gap:6px;margin:0;font-size:.72rem;color:var(--hc-dim)}
.hc-card__meta span{
  padding:2px 7px;border-radius:999px;
  background:var(--hc-surface);color:var(--hc-muted);
}

/* Row compact card */
.hc-card--row{
  display:grid;grid-template-columns:90px 1fr;gap:12px;
  align-items:center;padding:10px;background:var(--hc-surface);
}
.hc-card--row .hc-card__cover{border-radius:10px}
.hc-card--row .hc-card__cover img{aspect-ratio:3/4}
.hc-card--row .hc-card__body{padding:0}
.hc-card--row .hc-card__body h3{font-size:.84rem;-webkit-line-clamp:2}
.hc-card--row:hover{transform:none;box-shadow:0 4px 16px rgba(14,165,233,.1)}

/* ── Category banner ── */
.hc-cat-banner{
  margin-bottom:24px;padding:22px 24px;border-radius:14px;
  background:linear-gradient(120deg,var(--hc-surface),#fff);
  border:1px solid var(--hc-line);
}
.hc-cat-banner h1{margin:6px 0 8px;font-size:1.5rem;font-weight:900;color:var(--hc-secondary)}
.hc-cat-banner p{margin:0;color:var(--hc-muted);line-height:1.7;font-size:.92rem}
.hc-crumb{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:8px;font-size:.82rem;color:var(--hc-dim)}
.hc-crumb a{color:var(--hc-primary)!important;font-weight:600}
.hc-crumb span{opacity:.5}

/* ── Filter bar ── */
.hc-filter{
  display:flex;flex-wrap:wrap;gap:12px;align-items:center;
  margin-bottom:22px;padding:14px 16px;border-radius:12px;
  background:var(--hc-surface);border:1px solid var(--hc-line);
}
.hc-filter__search{flex:1;min-width:200px}
.hc-filter__search input{
  width:100%;padding:10px 16px;border-radius:999px;border:2px solid var(--hc-line);
  background:#fff;color:var(--hc-text);outline:none;font-size:.9rem;
}
.hc-filter__search input:focus{border-color:var(--hc-primary)}
.hc-filter__pills{display:flex;gap:8px;flex-wrap:wrap}
.hc-filter__pills select{
  padding:9px 14px;border-radius:999px;border:2px solid var(--hc-line);
  background:#fff;color:var(--hc-text);cursor:pointer;font-weight:600;font-size:.85rem;
}
.hc-filter__pills select:focus{border-color:var(--hc-cta);outline:none}
.hc-empty{
  padding:32px;text-align:center;color:var(--hc-muted);font-weight:700;
  border-radius:12px;background:var(--hc-surface);border:1px dashed var(--hc-line);
}

/* Category grid (categories page) */
.hc-cat-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}

/* ── Player page (全宽播放器 + 下方信息条) ── */
.hc-player{margin-bottom:32px}
.hc-player__screen{
  border-radius:14px 14px 0 0;overflow:hidden;
  border:2px solid var(--hc-primary);border-bottom:0;
  background:#000;box-shadow:var(--hc-shadow);
}
.hc-player__screen video{width:100%;aspect-ratio:16/9;background:#000;display:block}
.hc-player__bar{
  display:flex;align-items:flex-start;gap:18px;
  padding:18px 20px;border-radius:0 0 14px 14px;
  background:var(--hc-surface);border:2px solid var(--hc-primary);border-top:1px solid var(--hc-line);
}
.hc-player__thumb{
  flex-shrink:0;width:80px;border-radius:10px;overflow:hidden;
  border:1px solid var(--hc-line);
}
.hc-player__thumb img{width:100%;aspect-ratio:3/4;object-fit:cover}
.hc-player__info{flex:1;min-width:0}
.hc-player__info h1{margin:0 0 10px;font-size:1.15rem;font-weight:900;line-height:1.3}
.hc-player__tags{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:10px}
.hc-player__tags span{
  padding:3px 10px;border-radius:999px;font-size:.72rem;font-weight:700;
  background:rgba(14,165,233,.12);color:var(--hc-secondary);border:1px solid var(--hc-line);
}
.hc-player__tags span:nth-child(even){
  background:rgba(249,115,22,.1);color:#c2410c;border-color:rgba(249,115,22,.25);
}
.hc-player__desc{
  margin:0;font-size:.86rem;line-height:1.7;color:var(--hc-muted);
  display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;
}

/* ── Footer (双行紧凑 + 波浪) ── */
.hc-foot{
  position:relative;margin-top:24px;
  background:var(--hc-surface);border-top:3px solid var(--hc-primary);
}
.hc-foot__wave{
  height:6px;
  background:linear-gradient(90deg,var(--hc-primary),var(--hc-cta),var(--hc-primary));
}
.hc-foot__inner{max-width:1280px;margin:0 auto;padding:0 20px}
.hc-foot__top{
  display:grid;grid-template-columns:1.2fr 1fr;gap:32px;
  padding:32px 0 24px;
}
.hc-foot__desc{margin:12px 0 0;font-size:.84rem;line-height:1.7;color:var(--hc-muted)}
.hc-foot__links{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.hc-foot__col h3{margin:0 0 12px;font-size:.88rem;font-weight:800;color:var(--hc-secondary)}
.hc-foot__col ul{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.hc-foot__col a{color:var(--hc-muted)!important;font-size:.84rem;font-weight:600}
.hc-foot__col a:hover{color:var(--hc-primary)!important}
.hc-brand--foot .hc-brand__mark{width:30px;height:30px;font-size:.8rem}
.hc-foot__bar{
  display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px;
  padding:14px 0 20px;border-top:1px solid var(--hc-line);
  font-size:.78rem;color:var(--hc-dim);font-weight:600;
}

/* ── Mobile nav ── */
.hc-capsules.open{
  display:flex;flex-direction:column;
  position:absolute;left:16px;right:16px;top:68px;z-index:95;
  padding:12px;border-radius:14px;
  background:#fff;border:2px solid var(--hc-primary);
  box-shadow:var(--hc-shadow);
}
.hc-capsules.open a{padding:12px 16px;text-align:center}

/* ── Responsive ── */
@media (max-width:1100px){
  .hc-spotlight{grid-template-columns:1fr}
  .hc-grid--featured{grid-template-columns:repeat(3,minmax(0,1fr))}
  .hc-grid--latest{grid-template-columns:repeat(4,minmax(0,1fr))}
  .hc-grid--catalog{grid-template-columns:repeat(3,minmax(0,1fr))}
  .hc-cat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .hc-foot__top{grid-template-columns:1fr}
}
@media (max-width:820px){
  .hc-head__cta{display:none}
  .hc-burger{display:block;margin-left:auto}
  .hc-search{order:3;flex:1 1 100%;max-width:none;margin:0}
  .hc-head__bar{flex-wrap:wrap;padding:10px 16px}
  .hc-capsules{display:none;width:calc(100% - 32px)}
  .hc-capsules.open{display:flex}
  .hc-grid--featured,.hc-grid--latest,.hc-grid--catalog{grid-template-columns:repeat(2,minmax(0,1fr))}
  .hc-grid--related{grid-template-columns:1fr}
  .hc-player__bar{flex-wrap:wrap}
  .hc-btn--play{width:100%;margin-top:8px}
  .hc-foot__links{grid-template-columns:1fr}
  .hc-foot__bar{flex-direction:column}
  .hc-spotlight{padding:20px 18px}
}
@media (max-width:480px){
  .hc-main{padding:16px 14px 36px}
  .hc-grid--featured,.hc-grid--latest,.hc-grid--catalog{gap:12px}
  .hc-card__body{padding:10px 12px}
  .hc-cat-grid{grid-template-columns:1fr}
}

.image-off{opacity:0}
