:root{
  --primary:#0B74B5;
  --text:#0f172a;
  --muted:#64748b;
  --border:#dde2ea;
  --shadow:0 12px 26px rgba(15,23,42,.08);
  --radius:14px;
}

*{box-sizing:border-box}
body{
  margin:0;
  font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;
  background:#fff;
  color:var(--text);
}

.wrap{
  max-width:1050px;
  margin:40px auto;
  padding:0 16px 60px;
}

.head h1{margin:0 0 6px;font-size:30px;}
.head p{margin:0 0 18px;color:var(--muted);}

.card{
  border:1px solid var(--border);
  border-radius:var(--radius);
  box-shadow:var(--shadow);
  padding:14px;
}

.slider{
  display:grid;
  grid-template-columns:46px 1fr 46px;
  gap:12px;
  align-items:stretch;
}

.nav{
  width:46px;
  border-radius:999px;
  border:1px solid var(--border);
  background:#fff;
  cursor:pointer;
  display:flex;
  align-items:center;
  justify-content:center;
}
.nav i{color:var(--primary);}

.stage{
  background:#0b1220;
  border-radius:16px;
  overflow:hidden;
  position:relative;
  min-height:380px;
  border:1px solid rgba(255,255,255,.08);
}

.stage img{
  width:100%;
  height:100%;
  display:block;
  object-fit:contain;
  background:#0b1220;
}

.overlay{
  position:absolute;
  left:0; right:0; bottom:0;
  padding:12px;
  display:flex;
  justify-content:space-between;
  align-items:flex-end;
  gap:12px;
  background:linear-gradient(to top, rgba(0,0,0,.72), rgba(0,0,0,0));
}

.title{
  color:#fff;
  font-weight:900;
  font-size:14px;
  word-break:break-word;
}
.sub{
  color:rgba(255,255,255,.8);
  font-size:12px;
  margin-top:3px;
}

.btn{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:10px 16px;
  border-radius:999px;
  background:var(--primary);
  color:#fff;
  text-decoration:none;
  font-weight:800;
}

.dots{
  margin-top:12px;
  display:flex;
  justify-content:center;
  gap:8px;
  flex-wrap:wrap;
}
.dot{
  width:10px;height:10px;
  border-radius:999px;
  background:#cbd5e1;
  cursor:pointer;
}
.dot.active{background:var(--primary);}

.thumbs{
  margin-top:14px;
  display:flex;
  gap:10px;
  overflow:auto;
  padding-bottom:4px;
}
.thumb{
  flex:0 0 auto;
  width:120px;
  height:76px;
  border-radius:12px;
  overflow:hidden;
  cursor:pointer;
  border:2px solid transparent;
  background:#f1f5f9;
}
.thumb img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}
.thumb.active{border-color:var(--primary);}

@media (max-width:650px){
  .stage{min-height:240px;}
  .slider{grid-template-columns:40px 1fr 40px;gap:10px;}
  .nav{width:40px;}
  .thumb{width:96px;height:64px;}
}