
:root{
  --bg:#0b1320;
  --panel:#0e182a;
  --panel-2:#0f1c33;
  --text:#e9eeff;
  --muted:#a9b5d9;
  --line:#203053;
  --accent:#0b5cff;
  --accent-2:#e63a56;
}

/* Reset */
*{box-sizing:border-box}
html,body{height:100%}
body{margin:0;background:var(--bg);color:var(--text);font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif}

/* Top bar */
.top{
  position:sticky;top:0;z-index:10;
  display:flex;align-items:center;justify-content:space-between;
  gap:12px;padding:10px 14px;background:linear-gradient(180deg,rgba(7,12,24,.95),rgba(7,12,24,.6));
  border-bottom:1px solid rgba(255,255,255,.05);
}
.top .title{font-weight:900;letter-spacing:.4px}
.top .dot{color:#ff4c65;margin-right:8px}
.home{
  text-decoration:none;color:var(--text);opacity:.9;background:rgba(255,255,255,.05);
  padding:6px 10px;border-radius:999px;border:1px solid rgba(255,255,255,.08)
}
.navbtns{display:flex;gap:8px}
.round{
  width:32px;height:32px;border-radius:999px;border:1px solid rgba(255,255,255,.12);
  background:rgba(255,255,255,.06);color:var(--text);cursor:pointer
}

/* Grid */
.wrap{
  max-width:1200px;margin:18px auto;padding:0 16px;
  display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:18px;
}

/* Card */
.card{
  background:linear-gradient(180deg,var(--panel),var(--panel-2));
  border:1px solid var(--line);border-radius:16px;overflow:hidden;
  box-shadow:0 10px 30px rgba(0,0,0,.25);
}
/* cover with 16:9 */
.cover{position:relative;width:100%;padding-top:56.25%;background:#000;overflow:hidden}
.cover>img,.cover>video.preview{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
/* preview fade */
.cover>video.preview{opacity:0;transition:opacity .25s ease}
.cover.preview-on>video.preview{opacity:1}
/* progress bar */
.topbar{position:absolute;left:0;right:0;top:0;height:10px;background:rgba(255,255,255,.05)}
.topbar .fill{height:100%;background:linear-gradient(90deg,#ff4c65,#ff8b5e)}

/* play pill */
.play{
  position:absolute;left:10px;top:10px;border:0;border-radius:999px;padding:8px 12px;
  background:rgba(255,255,255,.12);backdrop-filter:blur(4px);color:#fff;font-weight:800;cursor:pointer;
  border:1px solid rgba(255,255,255,.18)
}

/* meta */
.meta{padding:14px}
.tit{font-weight:900;margin-bottom:6px}
.sub{color:var(--muted);font-size:14px;line-height:1.35;min-height:42px}
.badges{margin-top:10px}
.badge{display:inline-block;padding:6px 10px;border-radius:999px;font-size:12px;border:1px solid rgba(255,255,255,.12)}
.badge.red{background:rgba(230,58,86,.15);border-color:rgba(230,58,86,.35);color:#ff7b8f}
.chan{margin-top:10px;padding-top:10px;border-top:1px dashed var(--line);color:var(--muted);font-weight:700}

/* Player overlay */
.player[aria-hidden="true"]{display:none}
.player{
  position:fixed;inset:0;background:rgba(4,8,16,.96);z-index:50;
  display:flex;flex-direction:column;
}
.p-head{
  display:flex;align-items:center;justify-content:space-between;gap:12px;
  padding:10px 14px;border-bottom:1px solid rgba(255,255,255,.08)
}
.back{border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.06);color:#fff;border-radius:10px;padding:8px 12px;cursor:pointer}
.p-head .actions{display:flex;gap:8px}
.pill{border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.06);color:#fff;border-radius:10px;padding:8px 10px;cursor:pointer}

.stage{flex:1;display:flex;align-items:center;justify-content:center;padding:10px}
.stage video{width:100%;height:100%;max-width:100%;max-height:100%;background:#000;border-radius:10px}

.p-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 14px;border-top:1px solid rgba(255,255,255,.08)}
.p-foot .info{display:flex;align-items:center;gap:10px}
.p-foot img{width:44px;height:44px;border-radius:8px;object-fit:cover}
.chn{font-weight:800}
.desc{color:var(--muted);font-size:14px}
.live{color:#ff6a84;margin-right:8px}
.timeline{flex:1;padding-left:10px}
.timeline .bar{height:8px;background:rgba(255,255,255,.08);border-radius:999px;overflow:hidden}
.timeline .fill{height:100%;background:linear-gradient(90deg,#5690ff,#2fe0ff)}
