:root{
  --paper:#f7f9fb;
  --ink:#142033;
  --muted:#667184;
  --line:#d9e1e8;
  --panel:#ffffff;
  --mint:#0e9384;
  --coral:#e95f42;
  --blue:#2859c5;
  --plum:#6d3b8d;
  --sun:#ffbf47;
  --shadow:0 18px 50px rgba(20,32,51,.14);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  color:var(--ink);
  background:
    linear-gradient(90deg,rgba(20,32,51,.05) 1px,transparent 1px) 0 0/34px 34px,
    linear-gradient(180deg,#fbfcff 0%,#edf5f3 44%,#f7f9fb 100%);
  font-family:"HarmonyOS Sans SC","Microsoft YaHei UI","PingFang SC",Arial,sans-serif;
  line-height:1.62;
}
a{color:inherit;text-decoration:none}
img{display:block;max-width:100%}
.site-head{
  position:sticky;
  top:0;
  z-index:30;
  display:grid;
  grid-template-columns:auto 1fr minmax(230px,320px);
  gap:18px;
  align-items:center;
  padding:14px clamp(16px,4vw,56px);
  background:rgba(255,255,255,.88);
  border-bottom:1px solid var(--line);
  backdrop-filter:blur(18px);
}
.logo{display:flex;align-items:center;gap:10px;min-width:max-content}
.logo span{
  display:grid;
  place-items:center;
  width:44px;
  height:44px;
  color:#fff;
  background:linear-gradient(135deg,var(--mint),var(--blue));
  border-radius:8px;
  font-weight:900;
}
.logo strong{font-size:24px;letter-spacing:0}
.main-nav{display:flex;justify-content:center;gap:6px;flex-wrap:wrap}
.main-nav a{
  padding:9px 12px;
  border-radius:7px;
  color:#38445a;
  font-weight:800;
  transition:.2s ease;
}
.main-nav a:hover,.main-nav a[aria-current=page]{color:#fff;background:var(--ink)}
.search{display:flex;min-width:0;border:1px solid var(--line);border-radius:8px;background:#fff;overflow:hidden}
.search input{width:100%;min-width:0;border:0;outline:0;padding:10px 12px;color:var(--ink);background:transparent}
.search button{border:0;padding:0 16px;background:var(--coral);color:#fff;font-weight:900}
.nav-toggle{display:none}
main{width:min(1280px,calc(100% - 32px));margin:0 auto}
.hero{
  display:grid;
  grid-template-columns:minmax(0,1.05fr) minmax(300px,.95fr);
  gap:34px;
  align-items:stretch;
  min-height:520px;
  padding:42px 0 24px;
}
.hero-copy{
  position:relative;
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:38px;
  background:var(--panel);
  border:1px solid var(--line);
  border-radius:8px;
  box-shadow:var(--shadow);
}
.eyebrow,.section-head p,.today-panel p,.library-hero p,.detail-copy p,.guide p{
  margin:0 0 8px;
  color:var(--mint);
  font-size:13px;
  font-weight:900;
}
.hero h1,.library-hero h1,.detail-copy h1{
  margin:0;
  font-family:"Songti SC","SimSun","Noto Serif SC",serif;
  font-size:clamp(40px,7vw,78px);
  line-height:1.05;
  letter-spacing:0;
}
.hero-copy .lead,.library-hero span,.detail-copy .lead{
  display:block;
  max-width:720px;
  margin-top:18px;
  color:#4c596d;
  font-size:18px;
}
.hero-actions,.actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:26px}
.btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:44px;
  padding:10px 18px;
  border-radius:8px;
  border:1px solid var(--ink);
  font-weight:900;
  transition:.22s ease;
}
.btn.primary{background:var(--ink);color:#fff}
.btn.secondary{background:#fff;color:var(--ink)}
.btn:hover{transform:translateY(-2px);box-shadow:0 12px 24px rgba(20,32,51,.16)}
.hero-board{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px;
}
.feature-poster:first-child{grid-row:span 2}
.poster{
  position:relative;
  overflow:hidden;
  margin:0;
  border-radius:8px;
  background:#dfe6ec;
  border:1px solid rgba(20,32,51,.12);
  box-shadow:0 10px 24px rgba(20,32,51,.12);
  transition:transform .24s ease,box-shadow .24s ease,border-color .24s ease;
}
.poster img{width:100%;aspect-ratio:3/4;object-fit:cover;transition:transform .36s ease}
.poster figcaption{
  position:absolute;
  left:0;
  right:0;
  bottom:0;
  padding:38px 12px 12px;
  color:#fff;
  font-weight:900;
  background:linear-gradient(0deg,rgba(8,14,24,.82),transparent);
}
.show-card:hover .poster,.feature-poster:hover,.rank-item:hover .poster,.detail-poster:hover{
  transform:translateY(-8px);
  border-color:rgba(233,95,66,.55);
  box-shadow:0 22px 44px rgba(20,32,51,.22);
}
.show-card:hover img,.feature-poster:hover img,.rank-item:hover img{transform:scale(1.05)}
.quick-lanes{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:12px;
  margin:14px 0 34px;
}
.quick-lanes a{
  display:flex;
  justify-content:space-between;
  gap:12px;
  padding:16px;
  min-height:82px;
  border:1px solid var(--line);
  border-left:6px solid var(--mint);
  border-radius:8px;
  background:#fff;
  font-weight:900;
  transition:.2s ease;
}
.quick-lanes a:nth-child(2){border-left-color:var(--coral)}
.quick-lanes a:nth-child(3){border-left-color:var(--blue)}
.quick-lanes a:nth-child(4){border-left-color:var(--plum)}
.quick-lanes a:nth-child(5){border-left-color:var(--sun)}
.quick-lanes a:hover{transform:translateY(-4px);box-shadow:var(--shadow)}
.quick-lanes small{display:block;color:var(--muted);font-size:12px}
.home-layout{
  display:grid;
  grid-template-columns:300px minmax(0,1fr);
  gap:26px;
  align-items:start;
}
.today-panel{
  position:sticky;
  top:92px;
  padding:22px;
  background:#152235;
  color:#fff;
  border-radius:8px;
  box-shadow:var(--shadow);
}
.today-panel p{color:#89e2d3}
.today-panel h1{margin:0 0 18px;font-size:30px;line-height:1.15}
.hot-list{display:grid;gap:10px}
.hot-list a{
  display:grid;
  grid-template-columns:38px 1fr;
  gap:10px;
  align-items:center;
  padding:10px;
  border-radius:8px;
  background:rgba(255,255,255,.08);
}
.hot-list b{color:var(--sun)}
.hot-list span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:900}
.hot-list small{color:#b8c5d7}
.section-head{
  display:flex;
  justify-content:space-between;
  align-items:end;
  gap:16px;
  margin:0 0 18px;
}
.section-head h2{margin:0;font-size:34px;line-height:1.12}
.section-head a{color:var(--blue);font-weight:900}
.poster-grid{
  display:grid;
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:18px;
}
.show-card a{display:block}
.show-card h3{
  margin:12px 0 3px;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  font-size:18px;
}
.show-card p{margin:0;color:var(--muted);font-size:14px}
.show-card span{color:#3a485d;font-size:13px;font-weight:800}
.wide-rank,.guide,.filters{
  margin:42px 0;
  padding:24px;
  border:1px solid var(--line);
  border-radius:8px;
  background:#fff;
  box-shadow:var(--shadow);
}
.rank-strip{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:14px;
}
.rank-item{
  display:grid;
  grid-template-columns:42px 68px 1fr;
  gap:10px;
  align-items:center;
  padding:10px;
  border:1px solid var(--line);
  border-radius:8px;
  background:#fbfcff;
  transition:.2s ease;
}
.rank-item:hover{transform:translateY(-4px);box-shadow:0 14px 30px rgba(20,32,51,.14)}
.rank-item .mini{box-shadow:none}
.rank-item .mini figcaption{display:none}
.rank-item strong,.rank-item em{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.rank-item b{color:var(--coral);font-size:20px}
.rank-item em{color:var(--muted);font-style:normal;font-size:13px}
.guide{display:grid;grid-template-columns:320px 1fr;gap:28px;align-items:center;background:#122238;color:#fff}
.guide h2{margin:0;font-size:32px}.guide p{color:#89e2d3}.guide ul{margin:0;padding-left:20px;color:#d6e1ec}
.site-foot{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:24px;
  margin-top:54px;
  padding:34px clamp(16px,4vw,56px);
  color:#dbe5ef;
  background:#101827;
}
.site-foot h2{margin:0 0 8px;color:#fff;font-size:18px}
.site-foot p{margin:0;color:#b9c6d5}
.site-foot a{display:block;color:#b9c6d5;margin:4px 0}
.copyright{grid-column:1/-1;padding-top:18px;border-top:1px solid rgba(255,255,255,.12)}
.library-hero{padding:46px 0 10px}
.filters{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin:20px 0 22px}
.filters label{display:grid;gap:6px;color:var(--muted);font-size:13px;font-weight:900}
.filters input,.filters select{min-height:42px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--ink);padding:0 12px;outline:0}
.result-line{display:flex;justify-content:space-between;gap:16px;margin:0 0 18px;color:var(--muted)}
.result-line strong{color:var(--ink);font-size:21px}
.library-grid{margin-bottom:40px}
.empty{grid-column:1/-1;padding:44px;text-align:center;border:1px solid var(--line);border-radius:8px;background:#fff}
.detail-hero{
  display:grid;
  grid-template-columns:330px minmax(0,1fr);
  gap:38px;
  align-items:center;
  padding:44px 0 26px;
}
.detail-poster{max-width:330px}
.meta-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:24px}
.meta-grid div{padding:14px;border:1px solid var(--line);border-radius:8px;background:#fff}
.meta-grid dt{color:var(--muted);font-size:13px}.meta-grid dd{margin:2px 0 0;font-size:24px;font-weight:900}
.content-block{
  margin:24px 0;
  padding:24px;
  border:1px solid var(--line);
  border-radius:8px;
  background:#fff;
  box-shadow:var(--shadow);
}
.episode-grid{display:grid;grid-template-columns:repeat(10,minmax(0,1fr));gap:10px}
.episode{
  display:grid;
  place-items:center;
  min-height:40px;
  border:1px solid var(--line);
  border-radius:8px;
  background:#f8fbff;
  font-weight:900;
  transition:.2s ease;
}
.episode:hover,.episode.active{background:var(--coral);border-color:var(--coral);color:#fff;transform:translateY(-2px)}
.small-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.player-layout{display:grid;grid-template-columns:minmax(0,1fr)330px;gap:24px;padding-top:28px}
.player{
  overflow:hidden;
  border:1px solid var(--line);
  border-radius:8px;
  background:#0f1726;
  box-shadow:var(--shadow);
}
.screen{
  display:grid;
  grid-template-columns:230px minmax(0,1fr);
  gap:30px;
  align-items:center;
  min-height:510px;
  padding:34px;
  color:#fff;
  background:
    linear-gradient(135deg,rgba(14,147,132,.3),transparent 42%),
    linear-gradient(45deg,#101827,#263b63 56%,#6d3b8d);
}
.screen .poster{width:230px;box-shadow:0 22px 44px rgba(0,0,0,.32)}
.play-copy b{
  display:grid;
  place-items:center;
  width:82px;
  height:82px;
  margin-bottom:18px;
  border-radius:50%;
  background:var(--sun);
  color:#101827;
  font-size:36px;
}
.play-copy h1{margin:0;font-size:42px;line-height:1.16}
.play-copy p{color:#dce9ff}
.player-meta{display:flex;justify-content:space-between;gap:14px;align-items:center;padding:16px;color:#d8e4f4}
.player-meta .btn.secondary{background:transparent;color:#fff;border-color:rgba(255,255,255,.28)}
.play-list{padding:20px;border:1px solid var(--line);border-radius:8px;background:#fff;box-shadow:var(--shadow)}
.play-list h2{margin:0 0 14px}
.compact{grid-template-columns:repeat(4,minmax(0,1fr))}
@media(max-width:1120px){
  .site-head{grid-template-columns:auto auto}
  .nav-toggle{display:grid;justify-self:end;gap:5px;width:42px;height:42px;padding:9px;border:1px solid var(--line);border-radius:8px;background:#fff}
  .nav-toggle i{height:2px;background:var(--ink)}
  .main-nav,.search{display:none;grid-column:1/-1}
  .nav-open .main-nav,.nav-open .search{display:flex}
  .nav-open .main-nav{justify-content:flex-start}
  .hero,.home-layout,.detail-hero,.player-layout,.guide{grid-template-columns:1fr}
  .today-panel{position:static}
  .poster-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
  .rank-strip{grid-template-columns:repeat(2,minmax(0,1fr))}
  .filters{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:720px){
  main{width:min(100% - 24px,1280px)}
  .hero{min-height:0;padding-top:24px}
  .hero-copy{padding:24px}
  .hero h1,.library-hero h1,.detail-copy h1{font-size:42px}
  .hero-board,.quick-lanes,.poster-grid,.small-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .section-head{align-items:flex-start;flex-direction:column}
  .rank-strip,.site-foot,.filters,.meta-grid{grid-template-columns:1fr}
  .episode-grid,.compact{grid-template-columns:repeat(4,minmax(0,1fr))}
  .screen{grid-template-columns:1fr;min-height:360px}
  .screen .poster{width:180px}
}
