/* =====================================================
   BingoTime - Core Base Stylesheet
   File: css/style-1a58.css
   Class prefix: g58e-
   Palette: #3CB371 | #E0F2F1 | #800080 | #34495E
   Mobile-first, max 430px design width
   ===================================================== */

:root{
  --g58e-primary:#3CB371;        /* sea green - brand main */
  --g58e-accent:#800080;         /* purple - vip / promo */
  --g58e-deep:#34495E;           /* dark slate - backgrounds */
  --g58e-light:#E0F2F1;          /* soft mint - text on dark */
  --g58e-bg:#0f1a24;             /* page background */
  --g58e-bg2:#16263a;            /* card background */
  --g58e-bg3:#1e3450;            /* hover background */
  --g58e-text:#eafff7;
  --g58e-muted:#9fb6c9;
  --g58e-gold:#ffd479;
  --g58e-danger:#ff5a73;
  --g58e-shadow:0 8px 24px rgba(0,0,0,.35);
  --g58e-radius:14px;
  --g58e-radius-lg:22px;
  --g58e-header-h:60px;
  --g58e-nav-h:64px;
  --g58e-maxw:430px;
}

*{box-sizing:border-box;margin:0;padding:0;-webkit-tap-highlight-color:transparent;}
html{font-size:62.5%;}
body{
  font-family:"Segoe UI",system-ui,-apple-system,"Helvetica Neue",Arial,sans-serif;
  background:linear-gradient(160deg,var(--g58e-bg) 0%,#0a1420 100%);
  color:var(--g58e-text);
  font-size:1.5rem;
  line-height:1.5;
  -webkit-font-smoothing:antialiased;
  min-height:100vh;
}
img{max-width:100%;display:block;}
a{color:var(--g58e-primary);text-decoration:none;transition:color .2s;}
a:hover{color:var(--g58e-light);}
h1,h2,h3,h4{line-height:1.35;font-weight:700;color:#fff;}
h1{font-size:2.2rem;}
h2{font-size:1.95rem;}
h3{font-size:1.65rem;}
h4{font-size:1.4rem;}
p{margin-bottom:1rem;color:var(--g58e-light);}

.g58e-container{width:100%;max-width:var(--g58e-maxw);margin:0 auto;padding:0 1.2rem;}
.g58e-wrapper{min-height:100vh;display:flex;flex-direction:column;}

/* ---------- Header ---------- */
.g58e-header{
  position:fixed;top:0;left:0;right:0;z-index:1000;
  background:linear-gradient(95deg,var(--g58e-deep) 0%,#243b55 100%);
  border-bottom:2px solid var(--g58e-primary);
  box-shadow:var(--g58e-shadow);
}
.g58e-header-inner{
  max-width:var(--g58e-maxw);margin:0 auto;
  height:var(--g58e-header-h);
  display:flex;align-items:center;justify-content:space-between;
  padding:0 1rem;
}
.g58e-brand{display:flex;align-items:center;gap:.6rem;}
.g58e-brand-icon{
  width:30px;height:30px;border-radius:8px;object-fit:cover;
  border:2px solid var(--g58e-primary);
}
.g58e-brand-name{
  font-size:1.7rem;font-weight:800;color:#fff;letter-spacing:.3px;
  background:linear-gradient(90deg,var(--g58e-primary),var(--g58e-light));
  -webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;
}
.g58e-brand-tag{font-size:1rem;color:var(--g58e-gold);font-weight:600;}
.g58e-header-actions{display:flex;align-items:center;gap:.5rem;}
.g58e-btn{
  display:inline-flex;align-items:center;justify-content:center;gap:.4rem;
  padding:.6rem 1.2rem;font-size:1.35rem;font-weight:700;border-radius:30px;
  border:none;cursor:pointer;transition:transform .15s,box-shadow .2s,filter .2s;
  min-height:38px;text-decoration:none;color:#fff;
}
.g58e-btn:active{transform:scale(.95);}
.g58e-btn-primary{background:linear-gradient(95deg,var(--g58e-primary),#2e8b57);box-shadow:0 4px 12px rgba(60,179,113,.4);}
.g58e-btn-primary:hover{filter:brightness(1.08);color:#fff;}
.g58e-btn-accent{background:linear-gradient(95deg,var(--g58e-accent),#b300b3);box-shadow:0 4px 12px rgba(128,0,128,.4);}
.g58e-btn-accent:hover{filter:brightness(1.08);color:#fff;}
.g58e-btn-ghost{background:transparent;border:1.5px solid var(--g58e-light);color:var(--g58e-light);}
.g58e-btn-ghost:hover{background:rgba(255,255,255,.08);color:#fff;}
.g58e-btn-sm{padding:.45rem .9rem;font-size:1.2rem;min-height:34px;}
.g58e-btn-lg{padding:.85rem 1.8rem;font-size:1.55rem;min-height:48px;width:100%;}
.g58e-menu-toggle{
  background:transparent;border:none;color:var(--g58e-light);
  font-size:2rem;cursor:pointer;padding:.2rem .6rem;border-radius:8px;
}
.g58e-menu-toggle:hover{background:rgba(255,255,255,.08);}

/* ---------- Mobile menu drawer ---------- */
.g58e-mobile-menu{
  position:fixed;top:var(--g58e-header-h);left:0;right:0;
  background:var(--g58e-deep);
  max-height:0;overflow:hidden;transition:max-height .35s ease;
  z-index:9999;border-bottom:1px solid var(--g58e-primary);
}
.g58e-mobile-menu.g58e-open{max-height:560px;box-shadow:var(--g58e-shadow);}
.g58e-mobile-menu-inner{
  max-width:var(--g58e-maxw);margin:0 auto;padding:.8rem 1.2rem 1.2rem;
  display:grid;grid-template-columns:1fr 1fr;gap:.6rem;
}
.g58e-menu-link{
  display:flex;align-items:center;gap:.6rem;padding:.75rem .9rem;
  background:var(--g58e-bg2);border-radius:10px;color:var(--g58e-light);
  font-size:1.3rem;font-weight:600;border:1px solid transparent;transition:all .2s;
}
.g58e-menu-link:hover{border-color:var(--g58e-primary);color:#fff;background:var(--g58e-bg3);}
.g58e-menu-link i,.g58e-menu-link span.mi{color:var(--g58e-primary);font-size:1.6rem;}

/* ---------- Main ---------- */
.g58e-main{flex:1;padding-top:calc(var(--g58e-header-h) + 8px);padding-bottom:1rem;}
@media(max-width:768px){
  .g58e-main{padding-bottom:90px;}
}

/* ---------- Hero / Carousel ---------- */
.g58e-hero{margin-bottom:1.2rem;}
.g58e-carousel{
  position:relative;border-radius:var(--g58e-radius-lg);overflow:hidden;
  box-shadow:var(--g58e-shadow);background:var(--g58e-bg2);
}
.g58e-slides{display:flex;transition:transform .5s ease;}
.g58e-slide{
  min-width:100%;position:relative;cursor:pointer;
}
.g58e-slide img{width:100%;height:200px;object-fit:cover;}
.g58e-slide-overlay{
  position:absolute;inset:0;
  background:linear-gradient(90deg,rgba(15,26,36,.85) 0%,rgba(15,26,36,.25) 70%);
  display:flex;flex-direction:column;justify-content:center;padding:1.2rem 1.4rem;
}
.g58e-slide-title{font-size:1.9rem;font-weight:800;color:#fff;margin-bottom:.4rem;text-shadow:0 2px 6px rgba(0,0,0,.5);}
.g58e-slide-desc{font-size:1.25rem;color:var(--g58e-light);margin-bottom:.7rem;max-width:80%;}
.g58e-slide-cta{align-self:flex-start;}
.g58e-carousel-dots{
  position:absolute;bottom:8px;left:0;right:0;display:flex;justify-content:center;gap:6px;z-index:5;
}
.g58e-dot{
  width:8px;height:8px;border-radius:50%;background:rgba(255,255,255,.4);cursor:pointer;border:none;
}
.g58e-dot.g58e-active{background:var(--g58e-primary);width:22px;border-radius:6px;transition:all .3s;}

/* ---------- Section ---------- */
.g58e-section{margin-bottom:1.6rem;}
.g58e-section-head{
  display:flex;align-items:center;justify-content:space-between;margin-bottom:.9rem;padding:0 .2rem;
}
.g58e-section-title{
  font-size:1.75rem;font-weight:800;color:#fff;display:flex;align-items:center;gap:.5rem;
}
.g58e-section-title i,.g58e-section-title .mi{color:var(--g58e-gold);}
.g58e-section-more{font-size:1.2rem;color:var(--g58e-primary);font-weight:600;}
.g58e-section-more:hover{color:var(--g58e-light);}

/* ---------- Game grid ---------- */
.g58e-grid{
  display:grid;grid-template-columns:repeat(3,1fr);gap:.7rem;
}
@media(min-width:380px){.g58e-grid{grid-template-columns:repeat(4,1fr);}}
.g58e-card{
  background:var(--g58e-bg2);border-radius:var(--g58e-radius);overflow:hidden;
  border:1px solid rgba(255,255,255,.05);transition:transform .15s,border-color .2s;
  display:flex;flex-direction:column;cursor:pointer;
}
.g58e-card:hover{transform:translateY(-3px);border-color:var(--g58e-primary);}
.g58e-card:active{transform:scale(.97);}
.g58e-card-img{
  width:100%;aspect-ratio:1/1;object-fit:cover;background:#0a1420;
}
.g58e-card-name{
  font-size:1.1rem;color:var(--g58e-light);text-align:center;padding:.45rem .3rem;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-weight:600;
}
.g58e-card-hot{
  position:relative;
}
.g58e-card-hot::before{
  content:"HOT";position:absolute;top:4px;left:4px;z-index:3;
  background:linear-gradient(95deg,#ff5a73,#ff9a3c);color:#fff;
  font-size:.95rem;font-weight:800;padding:.1rem .45rem;border-radius:6px;
  letter-spacing:.5px;
}

/* ---------- Category tabs (decorative) ---------- */
.g58e-cat-list{
  display:flex;gap:.5rem;overflow-x:auto;padding:.3rem 0 1rem;scrollbar-width:none;
}
.g58e-cat-list::-webkit-scrollbar{display:none;}
.g58e-cat-pill{
  flex:0 0 auto;padding:.5rem 1.1rem;border-radius:30px;
  background:var(--g58e-bg2);color:var(--g58e-light);font-size:1.2rem;font-weight:600;
  border:1px solid transparent;cursor:pointer;white-space:nowrap;
}
.g58e-cat-pill.g58e-active{background:var(--g58e-primary);color:#fff;border-color:var(--g58e-primary);}

/* ---------- Feature boxes ---------- */
.g58e-feature-row{
  display:grid;grid-template-columns:repeat(2,1fr);gap:.7rem;
}
.g58e-feature{
  background:linear-gradient(150deg,var(--g58e-bg2),var(--g58e-bg3));
  border-radius:var(--g58e-radius);padding:1rem;border:1px solid rgba(60,179,113,.15);
}
.g58e-feature-ico{
  width:42px;height:42px;border-radius:12px;display:flex;align-items:center;justify-content:center;
  background:rgba(60,179,113,.15);color:var(--g58e-primary);font-size:2rem;margin-bottom:.6rem;
}
.g58e-feature h4{font-size:1.35rem;color:#fff;margin-bottom:.3rem;}
.g58e-feature p{font-size:1.15rem;color:var(--g58e-muted);margin:0;line-height:1.5;}

/* ---------- Promo CTA ---------- */
.g58e-cta-box{
  background:linear-gradient(120deg,var(--g58e-accent),#5a2d6b);
  border-radius:var(--g58e-radius-lg);padding:1.4rem;text-align:center;
  box-shadow:var(--g58e-shadow);position:relative;overflow:hidden;
}
.g58e-cta-box::before{
  content:"";position:absolute;top:-30px;right:-30px;width:120px;height:120px;
  background:rgba(255,212,121,.15);border-radius:50%;
}
.g58e-cta-box h3{color:#fff;font-size:1.85rem;margin-bottom:.4rem;position:relative;}
.g58e-cta-box p{color:#f3e6f5;font-size:1.2rem;margin-bottom:1rem;position:relative;}
.g58e-cta-box .g58e-btn{position:relative;}

/* ---------- RTP / stats ---------- */
.g58e-stats-grid{display:grid;grid-template-columns:1fr;gap:.7rem;}
.g58e-stat-row{
  display:flex;align-items:center;justify-content:space-between;
  background:var(--g58e-bg2);border-radius:12px;padding:.75rem 1rem;border-left:4px solid var(--g58e-primary);
}
.g58e-stat-name{font-size:1.3rem;color:#fff;font-weight:600;}
.g58e-stat-bar-wrap{flex:1;margin:0 1rem;height:8px;background:#0a1420;border-radius:6px;overflow:hidden;}
.g58e-stat-bar{height:100%;background:linear-gradient(90deg,var(--g58e-primary),var(--g58e-gold));border-radius:6px;}
.g58e-stat-val{font-size:1.25rem;color:var(--g58e-gold);font-weight:800;min-width:55px;text-align:right;}

/* ---------- Testimonials ---------- */
.g58e-testi-grid{display:grid;grid-template-columns:1fr;gap:.7rem;}
.g58e-testi{
  background:var(--g58e-bg2);border-radius:var(--g58e-radius);padding:1rem;border:1px solid rgba(255,255,255,.06);
}
.g58e-testi-head{display:flex;align-items:center;gap:.6rem;margin-bottom:.5rem;}
.g58e-testi-avatar{
  width:36px;height:36px;border-radius:50%;background:var(--g58e-accent);color:#fff;
  display:flex;align-items:center;justify-content:center;font-weight:800;font-size:1.3rem;
}
.g58e-testi-name{font-size:1.3rem;color:#fff;font-weight:700;}
.g58e-testi-stars{color:var(--g58e-gold);font-size:1.1rem;margin-left:auto;}
.g58e-testi-text{font-size:1.2rem;color:var(--g58e-muted);line-height:1.5;}

/* ---------- Winners ---------- */
.g58e-winner-list{display:flex;flex-direction:column;gap:.5rem;}
.g58e-winner{
  display:flex;align-items:center;gap:.7rem;background:var(--g58e-bg2);
  border-radius:12px;padding:.6rem .9rem;border:1px solid rgba(255,255,255,.05);
}
.g58e-winner-ico{
  width:34px;height:34px;border-radius:8px;background:linear-gradient(95deg,var(--g58e-primary),#2e8b57);
  display:flex;align-items:center;justify-content:center;color:#fff;font-size:1.6rem;flex-shrink:0;
}
.g58e-winner-info{flex:1;}
.g58e-winner-name{font-size:1.25rem;color:#fff;font-weight:700;}
.g58e-winner-game{font-size:1.1rem;color:var(--g58e-muted);}
.g58e-winner-amt{font-size:1.35rem;color:var(--g58e-gold);font-weight:800;}

/* ---------- Payment ---------- */
.g58e-pay-row{display:flex;flex-wrap:wrap;gap:.6rem;}
.g58e-pay-chip{
  display:inline-flex;align-items:center;gap:.4rem;padding:.5rem 1rem;border-radius:30px;
  background:var(--g58e-bg2);border:1px solid rgba(255,255,255,.08);font-size:1.2rem;color:var(--g58e-light);font-weight:600;
}
.g58e-pay-chip i,.g58e-pay-chip .mi{color:var(--g58e-primary);}

/* ---------- FAQ ---------- */
.g58e-faq-item{
  background:var(--g58e-bg2);border-radius:12px;margin-bottom:.6rem;overflow:hidden;
  border:1px solid rgba(255,255,255,.06);
}
.g58e-faq-q{
  width:100%;text-align:left;background:none;border:none;color:#fff;
  padding:.9rem 1rem;font-size:1.3rem;font-weight:700;cursor:pointer;
  display:flex;justify-content:space-between;align-items:center;gap:.6rem;
}
.g58e-faq-q .g58e-faq-ico{color:var(--g58e-primary);transition:transform .3s;}
.g58e-faq-a{
  max-height:0;overflow:hidden;transition:max-height .3s ease;padding:0 1rem;
  font-size:1.2rem;color:var(--g58e-muted);line-height:1.5;
}
.g58e-faq-item.g58e-open .g58e-faq-a{max-height:240px;padding:0 1rem .9rem;}
.g58e-faq-item.g58e-open .g58e-faq-ico{transform:rotate(45deg);}

/* ---------- SEO content blocks ---------- */
.g58e-content-block{
  background:var(--g58e-bg2);border-radius:var(--g58e-radius);padding:1.1rem 1.2rem;
  margin-bottom:1rem;border:1px solid rgba(255,255,255,.05);
}
.g58e-content-block h2{margin-bottom:.7rem;color:#fff;font-size:1.7rem;}
.g58e-content-block h3{margin:.8rem 0 .4rem;color:var(--g58e-primary);font-size:1.4rem;}
.g58e-content-block p{font-size:1.25rem;color:var(--g58e-light);line-height:1.7;margin-bottom:.7rem;}
.g58e-content-block ul{padding-left:1.4rem;margin-bottom:.7rem;}
.g58e-content-block li{font-size:1.2rem;color:var(--g58e-light);margin-bottom:.4rem;line-height:1.6;}
.g58e-content-block a{color:var(--g58e-gold);font-weight:600;border-bottom:1px dotted var(--g58e-gold);}
.g58e-content-block a:hover{color:var(--g58e-light);}

/* ---------- Inline promo text links ---------- */
.g58e-text-link{color:var(--g58e-gold);font-weight:700;cursor:pointer;border-bottom:1px dashed var(--g58e-gold);}
.g58e-text-link:hover{color:var(--g58e-light);}

/* ---------- Footer ---------- */
.g58e-footer{
  background:linear-gradient(180deg,#0a1420,#000810);
  border-top:2px solid var(--g58e-primary);padding:1.5rem 0 1rem;
}
.g58e-footer-inner{max-width:var(--g58e-maxw);margin:0 auto;padding:0 1.2rem;}
.g58e-footer-brand{display:flex;align-items:center;gap:.6rem;margin-bottom:.8rem;}
.g58e-footer-brand .g58e-brand-name{font-size:1.6rem;}
.g58e-footer-desc{font-size:1.2rem;color:var(--g58e-muted);line-height:1.6;margin-bottom:1rem;}
.g58e-footer-promos{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1rem;}
.g58e-footer-promos .g58e-btn{flex:1;min-width:130px;}
.g58e-footer-links{display:grid;grid-template-columns:repeat(2,1fr);gap:.4rem .8rem;margin-bottom:1rem;}
.g58e-footer-links a{font-size:1.2rem;color:var(--g58e-light);}
.g58e-footer-links a:hover{color:var(--g58e-primary);}
.g58e-footer-copy{
  text-align:center;font-size:1.1rem;color:var(--g58e-muted);
  border-top:1px solid rgba(255,255,255,.08);padding-top:.8rem;
}

/* ---------- Bottom nav (mobile) ---------- */
.g58e-bottom-nav{
  position:fixed;bottom:0;left:0;right:0;z-index:1000;
  height:var(--g58e-nav-h);
  background:linear-gradient(180deg,var(--g58e-deep),#1a2a3a);
  border-top:2px solid var(--g58e-primary);
  display:flex;justify-content:space-around;align-items:stretch;
  box-shadow:0 -4px 18px rgba(0,0,0,.4);
}
.g58e-bottom-btn{
  flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;
  gap:2px;background:none;border:none;color:var(--g58e-muted);
  font-size:1rem;font-weight:600;cursor:pointer;padding:.35rem .2rem;position:relative;
  transition:color .2s,transform .15s;min-width:60px;min-height:60px;
}
.g58e-bottom-btn:active{transform:scale(.9);}
.g58e-bottom-btn i,.g58e-bottom-btn .mi,.g58e-bottom-btn ion-icon{
  font-size:2.2rem;color:var(--g58e-muted);transition:color .2s;
}
.g58e-bottom-btn.g58e-active{color:var(--g58e-primary);}
.g58e-bottom-btn.g58e-active i,
.g58e-bottom-btn.g58e-active .mi,
.g58e-bottom-btn.g58e-active ion-icon{color:var(--g58e-primary);}
.g58e-bottom-btn.g58e-promo i,
.g58e-bottom-btn.g58e-promo .mi,
.g58e-bottom-btn.g58e-promo ion-icon{color:var(--g58e-gold);}
.g58e-bottom-btn.g58e-promo{color:var(--g58e-gold);}
.g58e-bottom-badge{
  position:absolute;top:4px;right:18px;background:#ff5a73;color:#fff;
  font-size:.9rem;font-weight:800;padding:0 5px;border-radius:10px;min-width:16px;text-align:center;line-height:1.6;
}
@media(min-width:769px){.g58e-bottom-nav{display:none;}}

/* ---------- Utility ---------- */
.g58e-text-center{text-align:center;}
.g58e-mt-1{margin-top:.5rem;}
.g58e-mt-2{margin-top:1rem;}
.g58e-hidden{display:none!important;}
.g58e-divider{height:1px;background:rgba(255,255,255,.08);margin:1.2rem 0;}

/* ---------- Desktop nav (shown when wide) ---------- */
.g58e-desktop-nav{display:none;}
@media(min-width:769px){
  .g58e-header-inner{max-width:900px;}
  .g58e-container{max-width:900px;}
  .g58e-grid{grid-template-columns:repeat(6,1fr);}
  .g58e-feature-row{grid-template-columns:repeat(4,1fr);}
  body{font-size:1.6rem;}
}
