:root{
  --yellow:#FFD84D;
  --yellow-soft:#FFE894;
  --pink:#FF5C9E;
  --pink-dark:#C92E73;
  --ink:#141414;
  --paper:#FFF8E1;
  --line:3px solid #141414;
  --shadow:6px 6px 0 #141414;
  --shadow-sm:4px 4px 0 #141414;
}
*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{
  margin:0;
  background:var(--yellow);
  color:var(--ink);
  font-family:"PingFang SC","Hiragino Sans GB","Microsoft YaHei","Heiti SC",sans-serif;
  line-height:1.7;
  -webkit-font-smoothing:antialiased;
  overflow-x:hidden;
}
img{max-width:100%;display:block;}
a{color:inherit;text-decoration:none;}
.wrap{width:100%;max-width:1160px;margin:0 auto;padding:0 18px;}

/* ---------- header ---------- */
.site-header{
  position:sticky;top:0;z-index:60;
  background:var(--yellow);
  border-bottom:var(--line);
}
.header-bar{
  display:flex;align-items:center;gap:14px;
  padding:12px 0;flex-wrap:wrap;
}
.brand{display:flex;align-items:center;gap:10px;flex-shrink:0;}
.brand img{
  height:36px;width:auto;
  border:var(--line);border-radius:8px;
  background:#fff;padding:2px;
}
.brand-name{
  font-size:22px;font-weight:900;letter-spacing:1px;
  background:#fff;border:var(--line);border-radius:8px;
  padding:2px 10px;box-shadow:var(--shadow-sm);
  transform:rotate(-1.5deg);
}
.nav-toggle{
  margin-left:auto;display:none;
  background:var(--pink);color:#fff;font-weight:900;font-size:14px;
  border:var(--line);border-radius:8px;box-shadow:var(--shadow-sm);
  padding:7px 12px;cursor:pointer;
}
.main-nav{width:100%;}
.main-nav ul{
  list-style:none;display:flex;flex-wrap:wrap;gap:8px;
  margin:0;padding:0;
}
.main-nav a{
  display:block;
  background:#fff;border:var(--line);border-radius:999px;
  padding:5px 13px;font-size:14px;font-weight:700;
  box-shadow:3px 3px 0 #141414;
  transition:transform .15s,background .15s;
}
.main-nav a:hover{background:var(--pink);color:#fff;transform:translate(-2px,-2px);}
.header-cta{
  display:flex;gap:10px;margin-left:auto;flex-shrink:0;
}

/* ---------- buttons ---------- */
.btn{
  display:inline-block;text-align:center;
  font-weight:900;font-size:15px;
  padding:10px 20px;border-radius:10px;
  border:var(--line);box-shadow:var(--shadow);
  transition:transform .12s,box-shadow .12s;
  cursor:pointer;
}
.btn:active{transform:translate(3px,3px);box-shadow:2px 2px 0 #141414;}
.btn-pink{background:var(--pink);color:#fff;}
.btn-pink:hover{background:var(--pink-dark);}
.btn-white{background:#fff;color:var(--ink);}
.btn-white:hover{background:var(--yellow-soft);}

/* ---------- hero ---------- */
.hero{
  position:relative;
  padding:44px 0 54px;
  border-bottom:var(--line);
  background:
    radial-gradient(circle at 88% 12%,#FFF6C9 0,rgba(255,246,201,0) 55%),
    var(--yellow);
}
.hero-grid{display:grid;gap:34px;align-items:center;}
.hero-tag{
  display:inline-block;
  background:#fff;border:var(--line);border-radius:6px;
  font-size:13px;font-weight:900;padding:3px 10px;
  box-shadow:3px 3px 0 #141414;
  transform:rotate(-2deg);margin-bottom:16px;
}
.hero h1{
  font-size:32px;line-height:1.3;margin:0 0 16px;
  font-weight:900;letter-spacing:.5px;
}
.hero h1 mark{
  background:var(--pink);color:#fff;
  padding:0 6px;border-radius:4px;
  box-decoration-break:clone;
}
.hero p{font-size:16px;margin:0 0 12px;max-width:34em;}
.hero-actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:24px;}
.hero-note{font-size:13px;margin-top:16px;color:#4a3a00;}

.hero-art{position:relative;}
.poster-stack{
  display:flex;justify-content:center;gap:0;
  padding:20px 6px;
}
.poster-stack img{
  width:44%;max-width:220px;
  border:var(--line);border-radius:10px;
  box-shadow:var(--shadow);
  background:#fff;
}
.poster-stack img:first-child{transform:rotate(-6deg) translateY(10px);z-index:1;}
.poster-stack img:last-child{transform:rotate(5deg) translate(-18px,-4px);z-index:2;}

/* ---------- generic section ---------- */
section{padding:52px 0;border-bottom:var(--line);}
.sec-head{margin-bottom:26px;}
.sec-kicker{
  display:inline-block;
  background:var(--pink);color:#fff;
  border:var(--line);border-radius:999px;
  font-size:12px;font-weight:900;letter-spacing:1px;
  padding:3px 12px;margin-bottom:12px;
  box-shadow:3px 3px 0 #141414;
}
.sec-head h2{
  font-size:26px;line-height:1.35;margin:0 0 10px;font-weight:900;
}
.sec-head p{margin:0;font-size:15px;color:#4a3a00;max-width:44em;}

/* ---------- cards ---------- */
.card{
  background:var(--paper);
  border:var(--line);
  border-radius:14px;
  box-shadow:var(--shadow);
  overflow:hidden;
}
.grid{display:grid;gap:20px;}
.grid-2{grid-template-columns:1fr;}
.grid-3{grid-template-columns:1fr;}

/* 今日更新 */
.update-list{display:grid;gap:20px;}
.update-card{display:flex;gap:14px;padding:14px;}
.update-card img{
  width:96px;min-width:96px;border-radius:8px;
  border:2px solid #141414;object-fit:cover;
}
.update-card .meta{font-size:12px;font-weight:900;color:var(--pink-dark);}
.update-card h3{margin:4px 0 6px;font-size:17px;}
.update-card p{margin:0;font-size:13.5px;color:#3d3300;}
.badge-row{display:flex;gap:6px;flex-wrap:wrap;margin-top:8px;}
.badge{
  font-size:11px;font-weight:900;background:#fff;
  border:2px solid #141414;border-radius:999px;padding:1px 8px;
}

/* 追剧日历 */
.calendar{
  display:grid;gap:12px;grid-template-columns:repeat(2,1fr);
}
.cal-day{
  background:#fff;border:var(--line);border-radius:10px;
  box-shadow:var(--shadow-sm);padding:12px;
}
.cal-day strong{display:block;font-size:13px;color:var(--pink-dark);}
.cal-day span{font-size:14px;font-weight:700;}

/* AI 流程 */
.steps{display:grid;gap:18px;counter-reset:step;}
.step{
  background:#fff;border:var(--line);border-radius:12px;
  box-shadow:var(--shadow-sm);padding:16px 18px;position:relative;
}
.step::before{
  counter-increment:step;content:counter(step);
  position:absolute;top:-14px;left:16px;
  width:30px;height:30px;border-radius:50%;
  background:var(--pink);color:#fff;
  border:var(--line);font-weight:900;
  display:flex;align-items:center;justify-content:center;
  font-size:14px;
}
.step h3{margin:8px 0 6px;font-size:16px;}
.step p{margin:0;font-size:14px;color:#3d3300;}

/* 在线播放 */
.player-shell{
  display:grid;gap:18px;
}
.player-frame{
  background:#141414;border:var(--line);border-radius:14px;
  box-shadow:var(--shadow);overflow:hidden;
  aspect-ratio:16/9;position:relative;
  display:flex;align-items:center;justify-content:center;
}
.player-frame img{
  width:100%;height:100%;object-fit:cover;opacity:.72;
}
.play-btn{
  position:absolute;
  width:74px;height:74px;border-radius:50%;
  background:var(--pink);border:var(--line);
  box-shadow:4px 4px 0 #fff;
  display:flex;align-items:center;justify-content:center;
}
.play-btn::after{
  content:"";width:0;height:0;
  border-left:22px solid #fff;border-top:14px solid transparent;
  border-bottom:14px solid transparent;margin-left:6px;
}
.player-caption{
  font-size:13px;color:#4a3a00;margin-top:10px;
}
.play-list{display:grid;gap:10px;}
.play-item{
  display:flex;align-items:center;gap:10px;
  background:#fff;border:2px solid #141414;border-radius:10px;
  padding:8px 12px;font-size:14px;font-weight:700;
}
.play-item b{
  font-size:12px;background:var(--yellow-soft);
  border:2px solid #141414;border-radius:6px;padding:0 6px;
}

/* 排行榜 */
.rank-list{display:grid;gap:12px;}
.rank-item{
  display:flex;align-items:center;gap:12px;
  background:#fff;border:var(--line);border-radius:12px;
  box-shadow:var(--shadow-sm);padding:10px 14px;
}
.rank-no{
  font-size:20px;font-weight:900;color:var(--pink-dark);
  min-width:38px;
}
.rank-item img{
  width:52px;min-width:52px;border-radius:6px;border:2px solid #141414;
}
.rank-info h3{margin:0 0 2px;font-size:15px;}
.rank-info p{margin:0;font-size:12.5px;color:#4a3a00;}

/* 证书 */
.cert-grid{display:grid;gap:16px;grid-template-columns:1fr 1fr;}
.cert{
  background:#fff;border:var(--line);border-radius:10px;
  box-shadow:var(--shadow-sm);padding:16px;
  text-align:center;
}
.cert .seal{
  width:46px;height:46px;margin:0 auto 10px;
  border-radius:50%;border:3px solid var(--pink);
  display:flex;align-items:center;justify-content:center;
  font-weight:900;color:var(--pink-dark);font-size:13px;
}
.cert p{margin:0;font-size:13.5px;}

/* 评论区 */
.comments-wrap{overflow:hidden;position:relative;
  background:var(--paper);border:var(--line);border-radius:14px;
  box-shadow:var(--shadow);padding:18px;
}
.comment-track{display:flex;flex-direction:column;gap:12px;
  animation:scrollUp 26s linear infinite;}
.comment{
  background:#fff;border:2px solid #141414;border-radius:10px;
  padding:10px 14px;font-size:14px;
}
.comment b{color:var(--pink-dark);}
@keyframes scrollUp{
  0%{transform:translateY(0);}
  100%{transform:translateY(-50%);}
}
.comments-wrap:hover .comment-track{animation-play-state:paused;}

/* 教程 */
.tutorial{display:grid;gap:20px;}
.tutorial-item{
  display:flex;gap:14px;align-items:flex-start;
  background:#fff;border:var(--line);border-radius:12px;
  box-shadow:var(--shadow-sm);padding:14px;
}
.tutorial-item img{
  width:130px;min-width:130px;border-radius:8px;border:2px solid #141414;
}
.tutorial-item h3{margin:0 0 6px;font-size:16px;}
.tutorial-item p{margin:0;font-size:13.5px;color:#3d3300;}

/* 截图墙 */
.wall{display:grid;gap:14px;grid-template-columns:repeat(2,1fr);}
.wall img{
  width:100%;border:var(--line);border-radius:10px;
  box-shadow:var(--shadow-sm);object-fit:cover;
}

/* 下载区 */
.download{
  background:var(--pink);
  border-top:var(--line);
  padding:52px 0 58px;
  color:#fff;
}
.download-inner{
  background:#fff;color:var(--ink);
  border:var(--line);border-radius:16px;
  box-shadow:var(--shadow);
  padding:26px 20px;text-align:center;
}
.download-inner h2{font-size:24px;margin:0 0 10px;}
.download-inner p{margin:0 auto 20px;max-width:34em;font-size:15px;}
.dl-btns{display:flex;flex-wrap:wrap;gap:14px;justify-content:center;}

/* 相关搜索 */
.related{padding:38px 0;}
.tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px;}
.tags span{
  background:#fff;border:2px solid #141414;border-radius:999px;
  font-size:12.5px;padding:2px 12px;font-weight:700;
}

/* footer */
.site-footer{
  background:#141414;color:#cfc7b4;
  padding:26px 0 30px;font-size:12.5px;
  border-top:var(--line);
}
.site-footer p{margin:0 0 8px;line-height:1.8;}
.site-footer a{color:#ffd84d;text-decoration:underline;}
.site-footer time{color:#a89f8c;}

/* ---------- breakpoints ---------- */
@media (min-width:768px){
  .hero{padding:58px 0 66px;}
  .hero h1{font-size:42px;}
  .hero-grid{grid-template-columns:1.15fr .85fr;gap:40px;}
  .poster-stack img{width:47%;max-width:260px;}
  .grid-2{grid-template-columns:1fr 1fr;}
  .grid-3{grid-template-columns:1fr 1fr;}
  .update-list{grid-template-columns:1fr 1fr;}
  .calendar{grid-template-columns:repeat(4,1fr);}
  .steps{grid-template-columns:1fr 1fr;}
  .player-shell{grid-template-columns:1.6fr 1fr;align-items:start;}
  .rank-list{grid-template-columns:1fr 1fr;}
  .cert-grid{grid-template-columns:repeat(4,1fr);}
  .tutorial{grid-template-columns:1fr 1fr;}
  .wall{grid-template-columns:repeat(3,1fr);}
  .main-nav{width:auto;}
  .nav-toggle{display:none;}
}
@media (min-width:1024px){
  section{padding:66px 0;}
  .hero h1{font-size:50px;}
  .sec-head h2{font-size:32px;}
  .grid-3{grid-template-columns:repeat(3,1fr);}
  .update-list{grid-template-columns:repeat(3,1fr);}
  .wall{grid-template-columns:repeat(4,1fr);}
  .rank-list{grid-template-columns:1fr 1fr;}
  .download-inner{padding:40px 40px;}
  .download-inner h2{font-size:30px;}
}
@media (max-width:767px){
  .nav-toggle{display:inline-block;}
  .main-nav{display:none;}
  .main-nav.open{display:block;}
  .header-cta{margin-left:0;width:100%;}
  .header-cta .btn{flex:1;}
  .poster-stack img{width:46%;}
}