/* =========================================================
   nh88 link core stylesheet
   Prefix: vd29-
   Palette: #3C3C3C | #34495E | #808080
   ========================================================= */

:root{
  --vd29-primary:#34495E;
  --vd29-bg:#3C3C3C;
  --vd29-text:#F5F5F5;
  --vd29-muted:#808080;
  --vd29-accent:#E8B14C;
  --vd29-accent2:#5BC0DE;
  --vd29-card:#4A4A4A;
  --vd29-card2:#3a3a3a;
  --vd29-border:#5a5a5a;
  --vd29-radius:10px;
  --vd29-shadow:0 4px 14px rgba(0,0,0,.35);
  --vd29-header-h:56px;
  --vd29-bottom-h:62px;
}

*{box-sizing:border-box;margin:0;padding:0}
html{font-size:62.5%}
body{
  font-family:"Segoe UI","Helvetica Neue",Arial,sans-serif;
  background:var(--vd29-bg);
  color:var(--vd29-text);
  line-height:1.5rem;
  font-size:1.5rem;
  -webkit-font-smoothing:antialiased;
  overflow-x:hidden;
}
a{color:var(--vd29-accent);text-decoration:none}
a:hover{color:#FFD27A}
img{max-width:100%;display:block}

/* Layout */
.vd29-container{width:100%;max-width:430px;margin:0 auto;padding:0 12px}
.vd29-wrapper{padding-top:var(--vd29-header-h)}
main{display:block}

/* Header */
.vd29-header{
  position:fixed;top:0;left:0;right:0;z-index:1000;
  height:var(--vd29-header-h);
  background:linear-gradient(90deg,#2b2b2b 0%,#34495E 100%);
  border-bottom:1px solid var(--vd29-border);
  box-shadow:var(--vd29-shadow);
}
.vd29-header-inner{
  max-width:430px;margin:0 auto;height:100%;display:flex;align-items:center;
  justify-content:space-between;padding:0 10px;
}
.vd29-brand{display:flex;align-items:center;gap:8px;color:#fff;font-weight:700;font-size:1.7rem}
.vd29-brand img{width:26px;height:26px;border-radius:6px}
.vd29-brand small{color:var(--vd29-accent);font-size:1.1rem;font-weight:600;display:block;line-height:1.2rem}
.vd29-header-actions{display:flex;align-items:center;gap:6px}
.vd29-btn{
  display:inline-flex;align-items:center;justify-content:center;gap:5px;
  min-height:34px;padding:0 12px;border:0;border-radius:18px;
  font-size:1.3rem;font-weight:700;cursor:pointer;color:#fff;
  background:var(--vd29-accent);
  transition:transform .15s, background .15s;
}
.vd29-btn:hover{background:#FFD27A;color:#222;transform:translateY(-1px)}
.vd29-btn--login{background:transparent;border:1px solid #cfcfcf;color:#fff}
.vd29-btn--login:hover{background:#ffffff14;color:#fff}
.vd29-menu-btn{
  background:transparent;border:0;color:#fff;font-size:2rem;cursor:pointer;
  width:34px;height:34px;display:flex;align-items:center;justify-content:center;
}

/* Mobile menu drawer */
.vd29-menu{
  position:fixed;top:var(--vd29-header-h);right:0;left:0;
  background:#2f2f2f;z-index:9999;
  max-height:0;overflow:hidden;transition:max-height .3s ease;
  border-bottom:1px solid #444;
}
.vd29-menu.open{max-height:480px}
.vd29-menu ul{list-style:none;padding:6px 0}
.vd29-menu li a{
  display:block;padding:12px 18px;color:#fff;font-size:1.45rem;
  border-bottom:1px solid #3a3a3a;
}
.vd29-menu li a:hover{background:#3a3a3a;color:var(--vd29-accent)}
.vd29-menu li a i{margin-right:8px;color:var(--vd29-accent)}

/* Hero / carousel */
.vd29-hero{padding:14px 0 6px}
.vd29-carousel{position:relative;border-radius:14px;overflow:hidden;box-shadow:var(--vd29-shadow)}
.vd29-slides{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none}
.vd29-slides::-webkit-scrollbar{display:none}
.vd29-slide{min-width:100%;scroll-snap-align:start;position:relative;cursor:pointer}
.vd29-slide img{width:100%;height:180px;object-fit:cover}
.vd29-slide-cap{
  position:absolute;left:14px;bottom:12px;color:#fff;text-shadow:0 1px 4px #000;
}
.vd29-slide-cap h2{font-size:1.8rem;font-weight:700}
.vd29-slide-cap p{font-size:1.2rem;color:#eee}
.vd29-dots{display:flex;justify-content:center;gap:6px;padding:8px 0}
.vd29-dot{width:8px;height:8px;border-radius:50%;background:#777;cursor:pointer}
.vd29-dot.active{background:var(--vd29-accent)}

/* Section */
.vd29-section{padding:18px 0 6px}
.vd29-section h2{
  font-size:1.8rem;color:#fff;margin-bottom:10px;padding-left:8px;
  border-left:4px solid var(--vd29-accent);
}
.vd29-section h3{font-size:1.55rem;color:var(--vd29-accent);margin:14px 0 8px}
.vd29-lead{color:#dcdcdc;font-size:1.4rem;margin-bottom:10px}
.vd29-para{color:#cfcfcf;font-size:1.38rem;margin-bottom:10px}
.vd29-card{
  background:var(--vd29-card);border:1px solid var(--vd29-border);
  border-radius:var(--vd29-radius);padding:12px;box-shadow:var(--vd29-shadow);
}
.vd29-grid{display:grid;gap:10px}

/* Game list */
.vd29-game-block{margin-bottom:18px}
.vd29-game-title{
  display:flex;align-items:center;gap:8px;font-size:1.6rem;color:#fff;
  margin-bottom:10px;padding:6px 10px;border-radius:8px;
  background:linear-gradient(90deg,#34495E 0%,#3C3C3C 100%);
}
.vd29-game-title i{color:var(--vd29-accent)}
.vd29-games{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.vd29-game{cursor:pointer;text-align:center;background:var(--vd29-card2);border-radius:10px;padding:6px;transition:transform .15s}
.vd29-game:hover{transform:translateY(-2px)}
.vd29-game img{width:100%;height:74px;object-fit:cover;border-radius:6px}
.vd29-game span{display:block;font-size:1.12rem;color:#eaeaea;margin-top:4px;line-height:1.3rem;height:2.6rem;overflow:hidden}

/* Buttons / CTA */
.vd29-cta{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0}
.vd29-btn-lg{
  display:inline-flex;align-items:center;gap:6px;padding:10px 18px;
  background:var(--vd29-accent);color:#222;font-weight:700;border-radius:22px;
  border:0;cursor:pointer;font-size:1.4rem;
}
.vd29-btn-lg:hover{background:#FFD27A}
.vd29-link-text{color:var(--vd29-accent);font-weight:700;border-bottom:1px dashed currentColor}

/* Features list */
.vd29-features{display:grid;grid-template-columns:1fr;gap:10px}
.vd29-feature{display:flex;gap:10px;align-items:flex-start;background:var(--vd29-card);padding:10px;border-radius:8px}
.vd29-feature i{color:var(--vd29-accent2);font-size:1.8rem;margin-top:2px}
.vd29-feature h4{font-size:1.4rem;color:#fff;margin-bottom:3px}
.vd29-feature p{font-size:1.25rem;color:#c5c5c5}

/* RTP table */
.vd29-table{width:100%;border-collapse:collapse;font-size:1.25rem}
.vd29-table th,.vd29-table td{padding:7px 8px;border-bottom:1px solid #4a4a4a;text-align:left}
.vd29-table th{color:var(--vd29-accent)}
.vd29-table td{color:#dcdcdc}

/* Testimonials */
.vd29-testi{background:var(--vd29-card);border-radius:8px;padding:10px;margin-bottom:8px}
.vd29-testi .vd29-stars{color:#FFB400;font-size:1.2rem}
.vd29-testi p{font-size:1.3rem;color:#dcdcdc;margin:4px 0}
.vd29-testi b{color:var(--vd29-accent);font-size:1.25rem}

/* Winners */
.vd29-winner{display:flex;justify-content:space-between;background:var(--vd29-card);padding:8px 10px;border-radius:8px;margin-bottom:6px;font-size:1.25rem}
.vd29-winner b{color:var(--vd29-accent)}

/* Payment */
.vd29-pay{display:flex;flex-wrap:wrap;gap:8px}
.vd29-pay span{background:var(--vd29-card);border:1px solid var(--vd29-border);border-radius:6px;padding:6px 10px;font-size:1.2rem}

/* Footer */
.vd29-footer{
  margin-top:18px;padding:18px 0;background:#2b2b2b;border-top:1px solid #444;
}
.vd29-footer p{font-size:1.25rem;color:#bbb;margin-bottom:10px}
.vd29-footer-links{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:10px}
.vd29-footer-links a{
  font-size:1.2rem;color:#ddd;background:#3a3a3a;border:1px solid #4a4a4a;
  padding:5px 9px;border-radius:6px;
}
.vd29-footer-links a:hover{color:var(--vd29-accent)}
.vd29-copy{font-size:1.15rem;color:#888;text-align:center;padding-top:8px;border-top:1px solid #3a3a3a}

/* Mobile bottom nav */
.vd29-bottomnav{
  position:fixed;bottom:0;left:0;right:0;z-index:1000;
  height:var(--vd29-bottom-h);
  background:linear-gradient(180deg,#34495E 0%,#2b2b2b 100%);
  border-top:1px solid #5a5a5a;
  display:flex;justify-content:space-around;align-items:center;
  box-shadow:0 -3px 12px rgba(0,0,0,.4);
}
.vd29-bottomnav button,.vd29-bottomnav a{
  flex:1;background:transparent;border:0;color:#cfcfcf;
  display:flex;flex-direction:column;align-items:center;justify-content:center;
  min-width:60px;min-height:60px;font-size:1.05rem;gap:2px;
  text-decoration:none;cursor:pointer;transition:color .15s, transform .15s;
}
.vd29-bottomnav button i,.vd29-bottomnav a i,
.vd29-bottomnav button .material-icons-outlined,.vd29-bottomnav a .material-icons-outlined,
.vd29-bottomnav button ion-icon,.vd29-bottomnav a ion-icon{font-size:22px}
.vd29-bottomnav a:hover,.vd29-bottomnav button:hover{color:var(--vd29-accent);transform:translateY(-1px)}
.vd29-bottomnav .active{color:var(--vd29-accent)}
.vd29-bottomnav .badge{
  position:absolute;top:6px;right:50%;transform:translateX(18px);
  background:#e74c3c;color:#fff;border-radius:50%;font-size:.9rem;padding:0 4px;
}

/* Desktop */
@media (min-width:769px){
  .vd29-bottomnav{display:none}
  .vd29-container{max-width:760px}
  .vd29-games{grid-template-columns:repeat(6,1fr)}
  .vd29-features{grid-template-columns:1fr 1fr}
}
@media (max-width:768px){
  main{padding-bottom:80px}
}
