/* ========= link fun88 base layout (prefix: s50a-) ========= */
:root{
  --s50a-pink:#FF91A4;
  --s50a-gray:#6C757D;
  --s50a-dark:#1B263B;
  --s50a-cream:#FFFFBA;
  --s50a-coral:#FF8A80;
  --s50a-darker:#121b2c;
  --s50a-card:#22324a;
  --s50a-text:#F5F7FB;
  --s50a-muted:#AEB6C2;
  --s50a-gold:#FFD27A;
  --s50a-radius:14px;
  --s50a-shadow:0 6px 20px rgba(0,0,0,.35);
}
*{box-sizing:border-box;margin:0;padding:0;-webkit-tap-highlight-color:transparent;}
html{font-size:62.5%;}
body{
  font-family:"Segoe UI",Roboto,system-ui,Arial,sans-serif;
  background:var(--s50a-dark);
  color:var(--s50a-text);
  line-height:1.5;
  max-width:430px;
  margin:0 auto;
  position:relative;
  min-height:100vh;
  overflow-x:hidden;
}
a{color:var(--s50a-pink);text-decoration:none;}
img{max-width:100%;display:block;}
section{padding:2.2rem 1.4rem;}

/* ===== Header ===== */
.s50a-header{
  position:sticky;top:0;z-index:1000;
  background:linear-gradient(135deg,var(--s50a-darker),var(--s50a-dark));
  border-bottom:1px solid rgba(255,145,164,.25);
  padding:.8rem 1rem;
  display:flex;align-items:center;justify-content:space-between;
}
.s50a-logo{display:flex;align-items:center;gap:.6rem;font-size:1.6rem;font-weight:800;color:#fff;}
.s50a-logo .s50a-logo-mark{
  width:30px;height:30px;border-radius:8px;
  background:linear-gradient(135deg,var(--s50a-pink),var(--s50a-coral));
  display:flex;align-items:center;justify-content:center;color:#1B263B;font-weight:900;font-size:1.4rem;
}
.s50a-logo span{background:linear-gradient(90deg,var(--s50a-pink),var(--s50a-cream));-webkit-background-clip:text;background-clip:text;color:transparent;}
.s50a-header-actions{display:flex;gap:.6rem;align-items:center;}
.s50a-btn{
  border:none;border-radius:10px;padding:.7rem 1.2rem;font-size:1.3rem;font-weight:700;
  cursor:pointer;transition:transform .15s,box-shadow .15s;display:inline-flex;align-items:center;gap:.4rem;
}
.s50a-btn:active{transform:scale(.96);}
.s50a-btn-login{background:transparent;border:1.5px solid var(--s50a-pink);color:var(--s50a-pink);}
.s50a-btn-register{background:linear-gradient(135deg,var(--s50a-pink),var(--s50a-coral));color:#1B263B;box-shadow:var(--s50a-shadow);}
.s50a-menu-toggle{
  background:transparent;border:none;color:#fff;font-size:2rem;cursor:pointer;padding:.2rem .4rem;
}

/* ===== Mobile menu ===== */
.s50a-mobile-menu{
  position:fixed;inset:0;z-index:9999;background:rgba(10,16,28,.96);
  transform:translateX(100%);transition:transform .3s ease;
  display:flex;flex-direction:column;padding:1.6rem;overflow-y:auto;
}
.s50a-mobile-menu.s50a-open{transform:translateX(0);}
.s50a-menu-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.4rem;}
.s50a-menu-close{background:transparent;border:none;color:#fff;font-size:2.4rem;cursor:pointer;}
.s50a-mobile-menu nav{display:flex;flex-direction:column;gap:.4rem;}
.s50a-mobile-menu nav a{
  display:flex;align-items:center;gap:1rem;padding:1.3rem 1rem;
  color:var(--s50a-text);font-size:1.5rem;border-radius:10px;
  border-bottom:1px solid rgba(255,255,255,.06);
}
.s50a-mobile-menu nav a:active{background:rgba(255,145,164,.12);}
.s50a-mobile-menu nav a i{color:var(--s50a-pink);width:24px;text-align:center;}
.s50a-menu-cta{margin-top:1.6rem;display:flex;flex-direction:column;gap:.8rem;}
.s50a-menu-cta .s50a-btn{justify-content:center;padding:1.3rem;font-size:1.5rem;}

/* ===== Hero / banner ===== */
.s50a-hero{
  background:
    radial-gradient(120% 90% at 80% 0%,rgba(255,145,164,.35),transparent 60%),
    linear-gradient(160deg,var(--s50a-darker),var(--s50a-dark));
  border-radius:0 0 22px 22px;
  text-align:center;padding:2.6rem 1.4rem 2.2rem;
}
.s50a-hero h1{
  font-size:2.6rem;line-height:1.2;margin-bottom:.8rem;
  background:linear-gradient(90deg,var(--s50a-cream),var(--s50a-pink));
  -webkit-background-clip:text;background-clip:text;color:transparent;
}
.s50a-hero p{font-size:1.4rem;color:var(--s50a-muted);margin-bottom:1.6rem;}
.s50a-hero-cta{display:flex;gap:.8rem;justify-content:center;flex-wrap:wrap;}
.s50a-hero-cta .s50a-btn{padding:1.2rem 2rem;font-size:1.5rem;}
.s50a-hero-stats{
  display:flex;justify-content:space-around;margin-top:2rem;
  border-top:1px solid rgba(255,255,255,.08);padding-top:1.4rem;
}
.s50a-stat{text-align:center;}
.s50a-stat strong{display:block;font-size:1.8rem;color:var(--s50a-gold);}
.s50a-stat span{font-size:1.1rem;color:var(--s50a-muted);}

/* ===== Carousel ===== */
.s50a-carousel{position:relative;border-radius:16px;overflow:hidden;margin:1.4rem;box-shadow:var(--s50a-shadow);}
.s50a-carousel-track{display:flex;transition:transform .5s ease;}
.s50a-carousel-slide{min-width:100%;padding:2rem 1.6rem;background:linear-gradient(135deg,#2a3a55,#16223a);position:relative;}
.s50a-carousel-slide h3{font-size:1.8rem;color:var(--s50a-pink);margin-bottom:.4rem;}
.s50a-carousel-slide p{font-size:1.3rem;color:var(--s50a-muted);margin-bottom:1rem;}
.s50a-carousel-dots{display:flex;gap:.5rem;justify-content:center;padding-bottom:.8rem;}
.s50a-carousel-dots button{width:8px;height:8px;border-radius:50%;border:none;background:rgba(255,255,255,.3);cursor:pointer;}
.s50a-carousel-dots button.s50a-active{background:var(--s50a-pink);width:18px;border-radius:4px;}

/* ===== Section titles ===== */
.s50a-section-title{
  display:flex;align-items:center;justify-content:space-between;margin-bottom:1.2rem;
}
.s50a-section-title h2{
  font-size:1.8rem;color:#fff;display:flex;align-items:center;gap:.6rem;
}
.s50a-section-title h2 i{color:var(--s50a-pink);}
.s50a-section-title a{font-size:1.2rem;color:var(--s50a-cream);}
.s50a-cat-tabs{display:flex;gap:.6rem;overflow-x:auto;padding:.4rem 0 1rem;-webkit-overflow-scrolling:touch;}
.s50a-cat-tabs button{
  background:var(--s50a-card);border:1px solid rgba(255,255,255,.08);color:var(--s50a-muted);
  padding:.6rem 1.2rem;border-radius:20px;font-size:1.2rem;cursor:pointer;white-space:nowrap;transition:.2s;
}
.s50a-cat-tabs button.s50a-active{background:linear-gradient(135deg,var(--s50a-pink),var(--s50a-coral));color:#1B263B;border-color:transparent;font-weight:700;}

/* ===== Game grid ===== */
.s50a-game-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.9rem;}
.s50a-game-card{
  background:var(--s50a-card);border-radius:12px;overflow:hidden;cursor:pointer;
  transition:transform .18s,box-shadow .18s;position:relative;
}
.s50a-game-card:active{transform:scale(.96);}
.s50a-game-card img{width:100%;aspect-ratio:1;object-fit:cover;background:#0e1626;}
.s50a-game-card .s50a-game-name{
  font-size:1.1rem;text-align:center;padding:.5rem .3rem;color:var(--s50a-text);
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
}
.s50a-game-card .s50a-game-play{
  position:absolute;inset:0;background:rgba(10,16,28,.6);display:flex;align-items:center;justify-content:center;
  opacity:0;transition:opacity .2s;font-size:1.2rem;color:var(--s50a-cream);font-weight:700;
}
.s50a-game-card:active .s50a-game-play{opacity:1;}

/* ===== Promo banner ===== */
.s50a-promo{
  background:linear-gradient(135deg,var(--s50a-pink),var(--s50a-coral));
  border-radius:16px;padding:1.8rem;margin:1.4rem;color:#1B263B;text-align:center;
}
.s50a-promo h3{font-size:1.8rem;margin-bottom:.4rem;}
.s50a-promo p{font-size:1.3rem;margin-bottom:1rem;}
.s50a-promo .s50a-btn{background:#1B263B;color:var(--s50a-cream);padding:1rem 2rem;font-size:1.4rem;}

/* ===== SEO content ===== */
.s50a-seo{background:var(--s50a-darker);border-radius:16px;padding:1.8rem;margin:1.4rem;}
.s50a-seo h2{font-size:1.8rem;color:var(--s50a-pink);margin:1.2rem 0 .6rem;}
.s50a-seo h2:first-child{margin-top:0;}
.s50a-seo h3{font-size:1.5rem;color:var(--s50a-cream);margin:1rem 0 .4rem;}
.s50a-seo p{font-size:1.3rem;color:var(--s50a-muted);margin-bottom:.8rem;}
.s50a-seo ul{padding-left:1.6rem;margin-bottom:.8rem;}
.s50a-seo li{font-size:1.3rem;color:var(--s50a-muted);margin-bottom:.4rem;}
.s50a-seo a{color:var(--s50a-pink);text-decoration:underline;}

/* ===== FAQ ===== */
.s50a-faq-item{border-bottom:1px solid rgba(255,255,255,.08);padding:1rem 0;}
.s50a-faq-q{display:flex;justify-content:space-between;align-items:center;font-size:1.4rem;color:#fff;cursor:pointer;font-weight:600;}
.s50a-faq-q i{color:var(--s50a-pink);transition:transform .2s;}
.s50a-faq-item.s50a-open .s50a-faq-q i{transform:rotate(180deg);}
.s50a-faq-a{max-height:0;overflow:hidden;transition:max-height .3s ease;color:var(--s50a-muted);font-size:1.3rem;}
.s50a-faq-item.s50a-open .s50a-faq-a{max-height:300px;padding-top:.6rem;}

/* ===== Footer ===== */
.s50a-footer{background:var(--s50a-darker);padding:2.2rem 1.4rem 6rem;border-top:1px solid rgba(255,145,164,.2);}
.s50a-footer h4{font-size:1.4rem;color:var(--s50a-pink);margin-bottom:.8rem;}
.s50a-footer ul{list-style:none;margin-bottom:1.6rem;}
.s50a-footer li{margin-bottom:.5rem;}
.s50a-footer a{color:var(--s50a-muted);font-size:1.3rem;}
.s50a-footer a:active{color:var(--s50a-pink);}
.s50a-footer-bottom{text-align:center;color:var(--s50a-muted);font-size:1.1rem;border-top:1px solid rgba(255,255,255,.06);padding-top:1.2rem;}

/* ===== Mobile bottom nav ===== */
.s50a-bottom-nav{
  position:fixed;bottom:0;left:50%;transform:translateX(-50%);
  width:100%;max-width:430px;z-index:1000;
  background:linear-gradient(180deg,#1a2740,#0e1626);
  border-top:1px solid rgba(255,145,164,.3);
  display:flex;justify-content:space-around;align-items:center;
  height:62px;padding:0 .3rem;
}
.s50a-bottom-nav button,.s50a-bottom-nav a{
  flex:1;min-width:60px;min-height:60px;background:transparent;border:none;
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;
  color:var(--s50a-muted);font-size:1rem;cursor:pointer;transition:color .2s,transform .2s;text-decoration:none;
}
.s50a-bottom-nav button i,.s50a-bottom-nav a i{font-size:22px;}
.s50a-bottom-nav .s50a-nav-active{color:var(--s50a-pink);}
.s50a-bottom-nav .s50a-nav-promo{color:var(--s50a-gold);position:relative;}
.s50a-bottom-nav .s50a-nav-promo::before{
  content:"";position:absolute;top:-10px;width:46px;height:46px;border-radius:50%;
  background:linear-gradient(135deg,var(--s50a-pink),var(--s50a-coral));z-index:-1;
  box-shadow:0 4px 12px rgba(255,138,128,.5);
}
.s50a-bottom-nav .s50a-nav-promo i{color:#1B263B;font-size:24px;}
.s50a-bottom-nav .s50a-nav-promo span{color:#1B263B;font-weight:700;font-size:.95rem;}
.s50a-bottom-nav button:active,.s50a-bottom-nav a:active{transform:scale(.9);}

@media (min-width:769px){
  .s50a-bottom-nav{display:none;}
  body{max-width:430px;}
}
@media (max-width:768px){
  main{padding-bottom:80px;}
}
