/* design.css - core base stylesheet for bingo plus app */
/* All custom classes use the v4da- prefix to keep the namespace isolated. */

:root{
  --v4da-primary:#8470FF;
  --v4da-accent:#CC99FF;
  --v4da-mint:#26A69A;
  --v4da-bg-dark:#2C2C2C;
  --v4da-bg-light:#E0F2F1;
  --v4da-text:#F5F7FA;
  --v4da-text-muted:#B8B0D6;
  --v4da-card-bg:#3A3450;
  --v4da-card-border:#4A4366;
  --v4da-grad-1:linear-gradient(135deg,#8470FF 0%,#CC99FF 100%);
  --v4da-grad-2:linear-gradient(135deg,#26A69A 0%,#8470FF 100%);
  --v4da-radius:14px;
  --v4da-radius-sm:10px;
  --v4da-shadow:0 6px 22px rgba(0,0,0,.35);
  --v4da-shadow-lg:0 14px 40px rgba(0,0,0,.45);
}

*{box-sizing:border-box;margin:0;padding:0}
html{font-size:62.5%;scroll-behavior:smooth}
body{
  font-family:"Poppins","Segoe UI",system-ui,-apple-system,sans-serif;
  background:var(--v4da-bg-dark);
  color:var(--v4da-text);
  line-height:1.5rem;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
  overflow-x:hidden;
}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
ul{list-style:none}
button{font-family:inherit;cursor:pointer;border:none;background:none;color:inherit}

/* layout primitives */
.v4da-container{width:100%;max-width:430px;margin:0 auto;padding:0 14px}
.v4da-wrapper{display:flex;flex-direction:column;min-height:100vh}

/* header */
.v4da-header{
  position:fixed;top:0;left:0;right:0;z-index:1000;
  background:rgba(44,44,44,.96);
  backdrop-filter:blur(10px);
  border-bottom:1px solid rgba(132,112,255,.28);
}
.v4da-header-inner{
  display:flex;align-items:center;justify-content:space-between;
  gap:10px;padding:10px 14px;max-width:430px;margin:0 auto;
}
.v4da-logo{display:flex;align-items:center;gap:8px;min-width:0}
.v4da-logo-img{width:30px;height:30px;border-radius:8px;object-fit:cover}
.v4da-logo-text{font-size:1.5rem;font-weight:700;white-space:nowrap;
  background:var(--v4da-grad-1);-webkit-background-clip:text;background-clip:text;color:transparent}
.v4da-header-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}
.v4da-btn{
  display:inline-flex;align-items:center;gap:6px;
  padding:8px 14px;border-radius:24px;font-size:1.2rem;font-weight:600;
  transition:transform .2s ease,box-shadow .2s ease,opacity .2s ease;
  min-height:34px;line-height:1;
}
.v4da-btn:active{transform:scale(.96)}
.v4da-btn-primary{background:var(--v4da-grad-1);color:#fff;box-shadow:0 4px 14px rgba(132,112,255,.45)}
.v4da-btn-outline{border:1.5px solid var(--v4da-accent);color:var(--v4da-accent)}
.v4da-menu-btn{width:34px;height:34px;display:flex;align-items:center;justify-content:center;
  border-radius:8px;color:var(--v4da-text)}
.v4da-menu-btn i{font-size:20px}

/* mobile menu */
.v4da-mobile-menu{
  position:fixed;top:0;right:0;bottom:0;width:78%;max-width:320px;
  background:#241F38;z-index:9999;
  transform:translateX(105%);transition:transform .3s ease;
  padding:18px 16px;overflow-y:auto;
  box-shadow:-8px 0 32px rgba(0,0,0,.45);
}
.v4da-mobile-menu.v4da-open{transform:translateX(0)}
.v4da-menu-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}
.v4da-menu-head .v4da-logo-text{font-size:1.6rem}
.v4da-menu-close{width:32px;height:32px;border-radius:8px;background:rgba(255,255,255,.08);
  display:flex;align-items:center;justify-content:center}
.v4da-menu-close i{font-size:18px}
.v4da-menu-section-title{font-size:1.1rem;text-transform:uppercase;letter-spacing:.08em;
  color:var(--v4da-text-muted);margin:14px 0 8px}
.v4da-menu-link{display:flex;align-items:center;gap:10px;padding:11px 12px;border-radius:10px;
  font-size:1.35rem;color:var(--v4da-text);transition:background .2s}
.v4da-menu-link:active{background:rgba(132,112,255,.18)}
.v4da-menu-link i{font-size:18px;color:var(--v4da-accent);width:22px;text-align:center}
.v4da-menu-overlay{position:fixed;inset:0;background:rgba(0,0,0,.55);z-index:9998;
  opacity:0;visibility:hidden;transition:opacity .3s,visibility .3s}
.v4da-menu-overlay.v4da-open{opacity:1;visibility:visible}

/* main */
.v4da-main{padding-top:62px;flex:1}
.v4da-section{padding:18px 0}
.v4da-section-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}
.v4da-section-title{font-size:1.7rem;font-weight:700;color:#fff}
.v4da-section-title .v4da-accent-text{color:var(--v4da-accent)}
.v4da-section-sub{font-size:1.15rem;color:var(--v4da-text-muted);margin-top:3px}
.v4da-more-link{font-size:1.15rem;color:var(--v4da-accent);display:inline-flex;align-items:center;gap:4px}

/* hero / carousel */
.v4da-hero{padding:14px 0 6px}
.v4da-carousel{position:relative;border-radius:var(--v4da-radius);overflow:hidden;box-shadow:var(--v4da-shadow)}
.v4da-carousel-track{display:flex;scroll-snap-type:x mandatory;overflow-x:auto;scroll-behavior:smooth;
  -webkit-overflow-scrolling:touch;scrollbar-width:none}
.v4da-carousel-track::-webkit-scrollbar{display:none}
.v4da-slide{flex:0 0 100%;scroll-snap-align:start;position:relative;cursor:pointer}
.v4da-slide img{width:100%;height:190px;object-fit:cover}
.v4da-slide-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(20,16,40,.82) 0%,rgba(20,16,40,.15) 70%)}
.v4da-slide-caption{position:absolute;left:14px;bottom:14px;right:14px;text-align:left}
.v4da-slide-title{font-size:1.6rem;font-weight:700;color:#fff;line-height:1.25}
.v4da-slide-desc{font-size:1.15rem;color:rgba(255,255,255,.85);margin-top:3px}
.v4da-slide-cta{display:inline-flex;align-items:center;gap:6px;margin-top:8px;
  padding:6px 14px;border-radius:20px;background:var(--v4da-grad-1);color:#fff;
  font-size:1.15rem;font-weight:600}
.v4da-carousel-dots{display:flex;justify-content:center;gap:6px;margin-top:8px}
.v4da-dot{width:7px;height:7px;border-radius:50%;background:rgba(255,255,255,.28);transition:all .2s;cursor:pointer}
.v4da-dot.v4da-active{width:18px;background:var(--v4da-grad-1);border-radius:6px}

/* hero CTA bar */
.v4da-hero-cta{display:flex;gap:10px;margin-top:12px}
.v4da-hero-cta .v4da-btn{flex:1;justify-content:center;padding:12px;border-radius:12px;font-size:1.3rem}

/* category pills */
.v4da-pills{display:flex;gap:8px;overflow-x:auto;padding:4px 0 6px;scrollbar-width:none}
.v4da-pills::-webkit-scrollbar{display:none}
.v4da-pill{flex-shrink:0;padding:7px 14px;border-radius:20px;background:var(--v4da-card-bg);
  color:var(--v4da-text-muted);font-size:1.2rem;font-weight:600;border:1px solid transparent}
.v4da-pill.v4da-active{background:var(--v4da-grad-1);color:#fff;border-color:transparent}

/* game grid */
.v4da-game-list{display:flex;flex-direction:column;gap:18px}
.v4da-game-block{}
.v4da-game-block-head{display:flex;align-items:center;gap:8px;margin-bottom:10px}
.v4da-game-block-icon{width:28px;height:28px;border-radius:8px;display:flex;align-items:center;justify-content:center;
  background:var(--v4da-grad-2);color:#fff}
.v4da-game-block-icon i{font-size:16px}
.v4da-game-block-title{font-size:1.45rem;font-weight:700}
.v4da-game-block-count{font-size:1.05rem;color:var(--v4da-text-muted);margin-left:auto}
.v4da-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.v4da-card{
  background:var(--v4da-card-bg);border:1px solid var(--v4da-card-border);
  border-radius:var(--v4da-radius-sm);overflow:hidden;cursor:pointer;
  transition:transform .2s,box-shadow .2s,border-color .2s;
}
.v4da-card:active{transform:scale(.97);border-color:var(--v4da-accent)}
.v4da-card-img{width:100%;aspect-ratio:1/1;object-fit:cover;background:#2A2540}
.v4da-card-name{padding:7px 8px;font-size:1.1rem;color:#EDEAF8;text-align:center;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-weight:500}

/* feature / promo banner */
.v4da-promo-banner{
  border-radius:var(--v4da-radius);padding:16px;color:#fff;
  background:var(--v4da-grad-2);box-shadow:var(--v4da-shadow);margin:14px 0;
  display:flex;align-items:center;gap:14px;cursor:pointer;
}
.v4da-promo-banner:active{transform:scale(.98)}
.v4da-promo-icon{width:46px;height:46px;border-radius:12px;background:rgba(255,255,255,.18);
  display:flex;align-items:center;justify-content:center;flex-shrink:0}
.v4da-promo-icon i{font-size:24px;color:#fff}
.v4da-promo-body{flex:1;min-width:0}
.v4da-promo-title{font-size:1.4rem;font-weight:700;line-height:1.2}
.v4da-promo-desc{font-size:1.12rem;color:rgba(255,255,255,.9);margin-top:2px}

/* features list */
.v4da-features{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin-top:10px}
.v4da-feature-card{background:var(--v4da-card-bg);border:1px solid var(--v4da-card-border);
  border-radius:var(--v4da-radius-sm);padding:13px}
.v4da-feature-icon{width:34px;height:34px;border-radius:8px;background:rgba(132,112,255,.18);
  display:flex;align-items:center;justify-content:center;color:var(--v4da-accent);margin-bottom:8px}
.v4da-feature-icon i{font-size:18px}
.v4da-feature-title{font-size:1.25rem;font-weight:600;color:#fff;margin-bottom:3px}
.v4da-feature-text{font-size:1.1rem;color:var(--v4da-text-muted);line-height:1.35}

/* winners */
.v4da-winners{background:var(--v4da-card-bg);border:1px solid var(--v4da-card-border);
  border-radius:var(--v4da-radius);padding:12px 14px;margin-top:10px}
.v4da-winner-item{display:flex;align-items:center;gap:10px;padding:8px 0;border-bottom:1px solid rgba(255,255,255,.06)}
.v4da-winner-item:last-child{border-bottom:none}
.v4da-winner-avatar{width:32px;height:32px;border-radius:50%;background:var(--v4da-grad-1);
  display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700;font-size:1.1rem;flex-shrink:0}
.v4da-winner-info{flex:1;min-width:0}
.v4da-winner-name{font-size:1.15rem;color:#fff;font-weight:600}
.v4da-winner-game{font-size:1.05rem;color:var(--v4da-text-muted)}
.v4da-winner-amount{font-size:1.3rem;font-weight:700;color:#FFD56B;flex-shrink:0}

/* payment methods */
.v4da-payments{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:10px}
.v4da-payment{background:var(--v4da-card-bg);border:1px solid var(--v4da-card-border);
  border-radius:10px;padding:10px 6px;text-align:center}
.v4da-payment-icon{font-size:24px;color:var(--v4da-accent)}
.v4da-payment-name{font-size:1.05rem;color:#EDEAF8;margin-top:4px}

/* testimonials */
.v4da-testimonials{display:flex;flex-direction:column;gap:10px;margin-top:10px}
.v4da-testimonial{background:var(--v4da-card-bg);border:1px solid var(--v4da-card-border);
  border-radius:var(--v4da-radius-sm);padding:13px}
.v4da-testimonial-head{display:flex;align-items:center;gap:8px;margin-bottom:6px}
.v4da-testimonial-avatar{width:30px;height:30px;border-radius:50%;background:var(--v4da-grad-2);
  display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700;font-size:1.05rem}
.v4da-testimonial-name{font-size:1.2rem;font-weight:600;color:#fff}
.v4da-testimonial-stars{color:#FFD56B;font-size:1.05rem;margin-left:auto}
.v4da-testimonial-text{font-size:1.12rem;color:var(--v4da-text-muted);line-height:1.4}

/* content / faq / about */
.v4da-content-block{background:var(--v4da-card-bg);border:1px solid var(--v4da-card-border);
  border-radius:var(--v4da-radius);padding:16px;margin-top:10px}
.v4da-content-block h2{font-size:1.55rem;font-weight:700;color:#fff;margin-bottom:8px;line-height:1.25}
.v4da-content-block h3{font-size:1.3rem;font-weight:600;color:var(--v4da-accent);margin:12px 0 6px}
.v4da-content-block p{font-size:1.2rem;color:var(--v4da-text-muted);line-height:1.55;margin-bottom:8px}
.v4da-content-block .v4da-inline-link{color:var(--v4da-accent);font-weight:600;cursor:pointer}
.v4da-content-block ul{padding-left:18px;margin:6px 0}
.v4da-content-block li{font-size:1.15rem;color:var(--v4da-text-muted);line-height:1.5;margin-bottom:4px;list-style:disc}

/* faq accordion */
.v4da-faq-item{border-bottom:1px solid rgba(255,255,255,.08);padding:10px 0}
.v4da-faq-item:last-child{border-bottom:none}
.v4da-faq-q{display:flex;align-items:center;justify-content:space-between;gap:10px;
  font-size:1.25rem;font-weight:600;color:#fff;cursor:pointer;padding:4px 0}
.v4da-faq-q i{font-size:16px;color:var(--v4da-accent);transition:transform .25s}
.v4da-faq-item.v4da-open .v4da-faq-q i{transform:rotate(45deg)}
.v4da-faq-a{max-height:0;overflow:hidden;transition:max-height .3s ease;padding:0 4px}
.v4da-faq-item.v4da-open .v4da-faq-a{max-height:260px;padding-top:6px}
.v4da-faq-a p{font-size:1.15rem;color:var(--v4da-text-muted);line-height:1.5}

/* app download CTA */
.v4da-app-cta{background:linear-gradient(135deg,#2C2C2C 0%,#3A3450 100%);
  border:1px solid var(--v4da-card-border);border-radius:var(--v4da-radius);
  padding:16px;margin-top:12px;text-align:center}
.v4da-app-cta h3{font-size:1.5rem;color:#fff;margin-bottom:4px}
.v4da-app-cta p{font-size:1.15rem;color:var(--v4da-text-muted);margin-bottom:12px}
.v4da-app-cta-buttons{display:flex;gap:8px;justify-content:center;flex-wrap:wrap}
.v4da-app-btn{display:inline-flex;align-items:center;gap:8px;padding:10px 16px;border-radius:10px;
  background:#1B1730;color:#fff;font-size:1.15rem;font-weight:600;border:1px solid var(--v4da-card-border)}
.v4da-app-btn i{font-size:20px}

/* footer */
.v4da-footer{background:#1B1730;padding:22px 0 110px;margin-top:18px;border-top:1px solid rgba(132,112,255,.25)}
.v4da-footer-brand{display:flex;align-items:center;gap:8px;margin-bottom:10px}
.v4da-footer-brand .v4da-logo-text{font-size:1.5rem}
.v4da-footer-intro{font-size:1.15rem;color:var(--v4da-text-muted);line-height:1.5;margin-bottom:14px}
.v4da-footer-links{display:grid;grid-template-columns:repeat(2,1fr);gap:8px 14px;margin-bottom:14px}
.v4da-footer-link{font-size:1.15rem;color:var(--v4da-text-muted);display:inline-flex;align-items:center;gap:6px;cursor:pointer}
.v4da-footer-link:active{color:var(--v4da-accent)}
.v4da-footer-link i{font-size:13px;color:var(--v4da-accent)}
.v4da-footer-buttons{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0 14px}
.v4da-footer-buttons .v4da-btn{font-size:1.15rem;padding:8px 14px}
.v4da-footer-copy{text-align:center;font-size:1.1rem;color:var(--v4da-text-muted);
  border-top:1px solid rgba(255,255,255,.06);padding-top:12px}

/* mobile bottom nav */
.v4da-bottom-nav{
  position:fixed;bottom:0;left:0;right:0;z-index:1000;
  background:rgba(27,23,48,.98);
  border-top:1px solid rgba(132,112,255,.32);
  backdrop-filter:blur(10px);
  display:flex;justify-content:space-around;align-items:stretch;
  height:60px;padding:0 4px;
}
.v4da-bottom-nav-btn{
  flex:1;min-width:60px;min-height:56px;
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;
  color:var(--v4da-text-muted);position:relative;transition:color .2s;
}
.v4da-bottom-nav-btn i{font-size:22px;transition:transform .2s}
.v4da-bottom-nav-btn .material-icons-outlined,
.v4da-bottom-nav-btn .material-icons{font-size:22px}
.v4da-bottom-nav-btn span{font-size:10px;font-weight:600}
.v4da-bottom-nav-btn.v4da-active{color:var(--v4da-accent)}
.v4da-bottom-nav-btn.v4da-active i{transform:translateY(-1px) scale(1.08)}
.v4da-bottom-nav-btn:active{transform:scale(.92)}
.v4da-bottom-nav-btn.v4da-active::before{
  content:"";position:absolute;top:0;left:50%;transform:translateX(-50%);
  width:24px;height:3px;border-radius:0 0 4px 4px;background:var(--v4da-grad-1);
}
.v4da-bottom-nav-badge{position:absolute;top:6px;right:18%;min-width:16px;height:16px;padding:0 4px;
  border-radius:8px;background:#FF4D6A;color:#fff;font-size:9px;font-weight:700;
  display:flex;align-items:center;justify-content:center}

/* utility */
.v4da-hidden{display:none !important}
.v4da-text-promo{color:var(--v4da-accent);font-weight:700;cursor:pointer}
.v4da-spacer-sm{height:8px}

/* responsive */
@media (min-width:431px){
  .v4da-header-inner,.v4da-container,.v4da-footer>.v4da-container{max-width:430px}
}
@media (min-width:769px){
  .v4da-bottom-nav{display:none}
  .v4da-footer{padding-bottom:30px}
  .v4da-main{padding-bottom:0}
}
@media (max-width:768px){
  .v4da-main{padding-bottom:80px}
}
@media (max-width:360px){
  .v4da-grid{grid-template-columns:repeat(2,1fr)}
  .v4da-features{grid-template-columns:1fr}
}
