/* =========================================================
   plus2222.homes - Core theme stylesheet
   Mobile-first HTML5 casino layout (max-width: 430px)
   All custom classes use the "ga7b-" prefix.
   ========================================================= */

:root{
  --ga7b-primary:#0000CD;        /* deep navy blue */
  --ga7b-accent:#FFF8DC;         /* cornsilk light */
  --ga7b-silver:#C0C0C0;         /* silver */
  --ga7b-bg:#0D1117;             /* midnight background */
  --ga7b-bg-alt:#11192a;
  --ga7b-bg-card:#161f33;
  --ga7b-bg-deep:#070b14;
  --ga7b-text:#F4F6FB;
  --ga7b-text-dim:#AEB7CC;
  --ga7b-border:#1f2b45;
  --ga7b-gold:#FFD76A;
  --ga7b-success:#34d27b;
  --ga7b-danger:#ff5a6a;
  --ga7b-radius:14px;
  --ga7b-radius-sm:10px;
  --ga7b-shadow:0 12px 30px rgba(0,0,0,.45);
  --ga7b-header-h:60px;
  --ga7b-nav-h:64px;
  --ga7b-max:430px;
}

*{box-sizing:border-box;margin:0;padding:0;-webkit-tap-highlight-color:transparent;}
html{font-size:62.5%;}
body{
  font-family:"Segoe UI","Helvetica Neue",Roboto,system-ui,sans-serif;
  background:radial-gradient(1200px 600px at 50% -10%,#1a2547 0%,var(--ga7b-bg) 55%) fixed;
  color:var(--ga7b-text);
  line-height:1.55;
  font-size:1.5rem;
  min-height:100%;
  overflow-x:hidden;
  -webkit-font-smoothing:antialiased;
}
img{max-width:100%;display:block;border:0;}
a{color:inherit;text-decoration:none;}
ul,ol{list-style:none;}
button{font-family:inherit;cursor:pointer;border:0;background:transparent;color:inherit;}

/* ---------- Layout containers ---------- */
.ga7b-wrapper{max-width:var(--ga7b-max);margin:0 auto;position:relative;}
.ga7b-container{padding:0 14px;}
.ga7b-section{padding:22px 14px;}
.ga7b-hide{display:none !important;}

/* ---------- Header ---------- */
.ga7b-header{
  position:fixed;top:0;left:0;right:0;z-index:1000;
  height:var(--ga7b-header-h);
  background:linear-gradient(180deg,rgba(13,17,23,.98),rgba(13,17,23,.88));
  backdrop-filter:blur(10px);
  border-bottom:1px solid var(--ga7b-border);
}
.ga7b-header-inner{
  max-width:var(--ga7b-max);margin:0 auto;height:100%;
  display:flex;align-items:center;justify-content:space-between;
  padding:0 12px;gap:8px;
}
.ga7b-brand{display:flex;align-items:center;gap:8px;min-width:0;}
.ga7b-logo{
  width:32px;height:32px;border-radius:9px;
  background:linear-gradient(135deg,var(--ga7b-primary),#3a4cff);
  display:grid;place-items:center;color:#fff;font-weight:800;font-size:1.4rem;
  box-shadow:0 4px 12px rgba(0,0,205,.45);flex:0 0 auto;
}
.ga7b-brand-name{font-weight:800;font-size:1.7rem;letter-spacing:.3px;white-space:nowrap;}
.ga7b-brand-name span{color:var(--ga7b-gold);}
.ga7b-header-actions{display:flex;align-items:center;gap:7px;}
.ga7b-icon-btn{
  width:38px;height:38px;border-radius:10px;
  background:rgba(255,255,255,.05);border:1px solid var(--ga7b-border);
  display:grid;place-items:center;color:var(--ga7b-text);font-size:1.8rem;
  transition:background .2s, transform .2s;
}
.ga7b-icon-btn:hover{background:rgba(0,0,205,.25);transform:translateY(-1px);}

/* ---------- Auth buttons ---------- */
.ga7b-btn{
  display:inline-flex;align-items:center;justify-content:center;gap:6px;
  padding:9px 14px;border-radius:11px;font-weight:700;font-size:1.35rem;
  transition:transform .15s, box-shadow .2s, filter .2s;
  white-space:nowrap;line-height:1;
}
.ga7b-btn:active{transform:scale(.97);}
.ga7b-btn-login{
  background:transparent;border:1.5px solid var(--ga7b-silver);color:var(--ga7b-silver);
}
.ga7b-btn-login:hover{background:rgba(192,192,192,.12);}
.ga7b-btn-register{
  background:linear-gradient(135deg,var(--ga7b-gold),#ff9d2a);
  color:#1a1206;border:0;font-weight:800;
  box-shadow:0 6px 18px rgba(255,215,106,.32);
}
.ga7b-btn-register:hover{filter:brightness(1.05);}
.ga7b-btn-cta{
  background:linear-gradient(135deg,var(--ga7b-primary),#3a4cff);
  color:#fff;padding:12px 22px;font-size:1.5rem;border-radius:12px;
  box-shadow:0 10px 22px rgba(0,0,205,.4);
}

/* ---------- Mobile menu drawer ---------- */
.ga7b-menu-backdrop{
  position:fixed;inset:0;background:rgba(0,0,0,.6);z-index:9998;
  opacity:0;visibility:hidden;transition:.25s;
}
.ga7b-menu-backdrop.ga7b-active{opacity:1;visibility:visible;}
.ga7b-mobile-menu{
  position:fixed;top:0;right:0;bottom:0;width:84%;max-width:340px;
  background:linear-gradient(180deg,#10182b,#0a0f1c);z-index:9999;
  transform:translateX(105%);transition:transform .3s ease;
  padding:18px 16px;display:flex;flex-direction:column;gap:6px;overflow-y:auto;
}
.ga7b-mobile-menu.ga7b-active{transform:translateX(0);}
.ga7b-menu-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px;}
.ga7b-menu-header h3{font-size:1.7rem;color:var(--ga7b-gold);}
.ga7b-menu-close{font-size:2rem;color:var(--ga7b-silver);width:36px;height:36px;}
.ga7b-menu-group-title{
  font-size:1.15rem;color:var(--ga7b-text-dim);text-transform:uppercase;
  letter-spacing:.12em;margin:10px 6px 4px;
}
.ga7b-menu-link{
  display:flex;align-items:center;gap:12px;padding:11px 12px;border-radius:10px;
  color:var(--ga7b-text);font-size:1.45rem;font-weight:600;
  transition:background .15s;
}
.ga7b-menu-link i{font-size:1.7rem;color:var(--ga7b-gold);width:22px;text-align:center;}
.ga7b-menu-link:hover{background:rgba(0,0,205,.18);}
.ga7b-menu-cta-row{display:flex;gap:8px;margin-top:14px;}
.ga7b-menu-cta-row .ga7b-btn{flex:1;}

/* ---------- Hero ---------- */
.ga7b-main{padding-top:var(--ga7b-header-h);padding-bottom:calc(var(--ga7b-nav-h) + 24px);}
.ga7b-hero{
  position:relative;margin:14px;border-radius:20px;overflow:hidden;
  background:linear-gradient(135deg,#10204d 0%,#1b2c63 60%,#0a0f1c 100%);
  border:1px solid var(--ga7b-border);box-shadow:var(--ga7b-shadow);
}
.ga7b-hero-bg{position:absolute;inset:0;opacity:.25;}
.ga7b-hero-bg img{width:100%;height:100%;object-fit:cover;}
.ga7b-hero-content{position:relative;padding:22px 18px;}
.ga7b-hero-badge{
  display:inline-flex;align-items:center;gap:6px;
  background:rgba(255,215,106,.15);color:var(--ga7b-gold);
  border:1px solid rgba(255,215,106,.35);
  padding:5px 11px;border-radius:30px;font-size:1.15rem;font-weight:700;
  margin-bottom:10px;
}
.ga7b-hero h1{font-size:2.5rem;line-height:1.2;margin-bottom:8px;letter-spacing:.3px;}
.ga7b-hero h1 .ga7b-hl{color:var(--ga7b-gold);}
.ga7b-hero p{font-size:1.35rem;color:var(--ga7b-text-dim);margin-bottom:14px;}
.ga7b-hero-actions{display:flex;gap:9px;flex-wrap:wrap;}
.ga7b-hero-stats{
  display:flex;gap:8px;margin-top:16px;flex-wrap:wrap;
}
.ga7b-hero-stat{
  flex:1 1 30%;min-width:90px;background:rgba(0,0,0,.32);
  border:1px solid var(--ga7b-border);border-radius:11px;padding:8px 10px;text-align:center;
}
.ga7b-hero-stat b{display:block;color:var(--ga7b-gold);font-size:1.6rem;}
.ga7b-hero-stat span{font-size:1.05rem;color:var(--ga7b-text-dim);}

/* ---------- Marquee ---------- */
.ga7b-marquee{
  margin:0 14px 4px;background:rgba(0,0,0,.35);border:1px solid var(--ga7b-border);
  border-radius:10px;padding:8px 10px;display:flex;align-items:center;gap:8px;overflow:hidden;
}
.ga7b-marquee i{color:var(--ga7b-gold);font-size:1.5rem;flex:0 0 auto;}
.ga7b-marquee-track{
  flex:1;overflow:hidden;white-space:nowrap;font-size:1.25rem;color:var(--ga7b-silver);
}
.ga7b-marquee-track span{display:inline-block;padding-left:100%;animation:ga7b-scroll 22s linear infinite;}
@keyframes ga7b-scroll{to{transform:translateX(-100%);}}

/* ---------- Section heads ---------- */
.ga7b-sec-head{
  display:flex;align-items:center;justify-content:space-between;
  margin:6px 14px 12px;
}
.ga7b-sec-head h2{
  font-size:1.85rem;font-weight:800;display:flex;align-items:center;gap:8px;
}
.ga7b-sec-head h2 i{color:var(--ga7b-gold);}
.ga7b-sec-head a{font-size:1.2rem;color:var(--ga7b-silver);}

/* ---------- Category filter pills ---------- */
.ga7b-filter{display:flex;gap:7px;overflow-x:auto;padding:4px 14px 8px;scrollbar-width:none;}
.ga7b-filter::-webkit-scrollbar{display:none;}
.ga7b-pill{
  flex:0 0 auto;padding:7px 14px;border-radius:30px;font-size:1.25rem;font-weight:700;
  background:rgba(255,255,255,.05);border:1px solid var(--ga7b-border);color:var(--ga7b-text-dim);
  transition:.2s;display:inline-flex;align-items:center;gap:6px;
}
.ga7b-pill.ga7b-active{background:linear-gradient(135deg,var(--ga7b-primary),#3a4cff);color:#fff;border-color:transparent;}

/* ---------- Game grid ---------- */
.ga7b-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;padding:0 14px;}
.ga7b-card{
  background:linear-gradient(180deg,var(--ga7b-bg-card),#0d1426);
  border:1px solid var(--ga7b-border);border-radius:var(--ga7b-radius-sm);
  overflow:hidden;position:relative;transition:transform .18s, box-shadow .2s;
  display:flex;flex-direction:column;
}
.ga7b-card:hover{transform:translateY(-3px);box-shadow:0 10px 22px rgba(0,0,0,.5);}
.ga7b-card-img{aspect-ratio:1/1;background:#070b14;position:relative;}
.ga7b-card-img img{width:100%;height:100%;object-fit:cover;}
.ga7b-card-tag{
  position:absolute;top:6px;left:6px;background:rgba(0,0,205,.85);color:#fff;
  font-size:1rem;font-weight:700;padding:2px 7px;border-radius:6px;letter-spacing:.04em;
}
.ga7b-card-tag.ga7b-hot{background:linear-gradient(135deg,#ff4d4d,#ff8a3a);}
.ga7b-card-name{
  padding:7px 8px;font-size:1.15rem;font-weight:600;text-align:center;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--ga7b-text);
}
.ga7b-card-play{
  position:absolute;inset:0;background:rgba(7,11,20,.78);
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;
  opacity:0;transition:opacity .2s;
}
.ga7b-card:hover .ga7b-card-play{opacity:1;}
.ga7b-card-play i{font-size:2.6rem;color:var(--ga7b-gold);}
.ga7b-card-play span{font-size:1.2rem;font-weight:700;color:var(--ga7b-gold);}

/* ---------- Featured (banner rows) ---------- */
.ga7b-feature{
  margin:14px;border-radius:16px;overflow:hidden;
  background:linear-gradient(120deg,#0e1a3a,#1c1156);
  border:1px solid var(--ga7b-border);box-shadow:var(--ga7b-shadow);
}
.ga7b-feature-row{display:flex;align-items:stretch;}
.ga7b-feature-img{flex:0 0 42%;}
.ga7b-feature-img img{width:100%;height:100%;object-fit:cover;}
.ga7b-feature-body{padding:13px 14px;display:flex;flex-direction:column;justify-content:center;gap:6px;flex:1;}
.ga7b-feature-body h3{font-size:1.65rem;color:var(--ga7b-gold);}
.ga7b-feature-body p{font-size:1.2rem;color:var(--ga7b-text-dim);}
.ga7b-feature-body .ga7b-btn{align-self:flex-start;margin-top:4px;padding:7px 14px;font-size:1.2rem;}

/* ---------- Promo strip ---------- */
.ga7b-promo-strip{
  margin:14px;padding:14px;border-radius:14px;
  background:linear-gradient(135deg,rgba(0,0,205,.35),rgba(255,215,106,.12));
  border:1px solid var(--ga7b-border);display:flex;align-items:center;gap:12px;
}
.ga7b-promo-strip i{font-size:2.4rem;color:var(--ga7b-gold);}
.ga7b-promo-strip div{flex:1;}
.ga7b-promo-strip h4{font-size:1.45rem;}
.ga7b-promo-strip p{font-size:1.15rem;color:var(--ga7b-text-dim);}

/* ---------- SEO content ---------- */
.ga7b-seo{padding:18px 14px;}
.ga7b-seo h2{font-size:1.9rem;margin-bottom:8px;color:var(--ga7b-gold);}
.ga7b-seo h3{font-size:1.55rem;margin:14px 0 6px;color:var(--ga7b-silver);}
.ga7b-seo p{font-size:1.32rem;color:var(--ga7b-text-dim);margin-bottom:10px;}
.ga7b-seo ul{margin:6px 0 12px 4px;}
.ga7b-seo li{font-size:1.28rem;color:var(--ga7b-text-dim);margin-bottom:6px;padding-left:18px;position:relative;}
.ga7b-seo li::before{content:"\f00c";font-family:"Font Awesome 6 Free";font-weight:900;color:var(--ga7b-success);position:absolute;left:0;font-size:1rem;top:3px;}
.ga7b-seo a{color:var(--ga7b-gold);text-decoration:underline;text-underline-offset:2px;}

/* ---------- FAQ ---------- */
.ga7b-faq{padding:18px 14px;}
.ga7b-faq-item{
  background:var(--ga7b-bg-card);border:1px solid var(--ga7b-border);
  border-radius:11px;margin-bottom:9px;overflow:hidden;
}
.ga7b-faq-q{
  width:100%;text-align:left;padding:13px 14px;display:flex;justify-content:space-between;
  align-items:center;gap:10px;font-size:1.35rem;font-weight:700;color:var(--ga7b-text);
}
.ga7b-faq-q i{color:var(--ga7b-gold);transition:transform .2s;}
.ga7b-faq-item.ga7b-open .ga7b-faq-q i{transform:rotate(45deg);}
.ga7b-faq-a{max-height:0;overflow:hidden;transition:max-height .25s ease;padding:0 14px;}
.ga7b-faq-item.ga7b-open .ga7b-faq-a{max-height:300px;padding:0 14px 13px;font-size:1.25rem;color:var(--ga7b-text-dim);}

/* ---------- Steps ---------- */
.ga7b-steps{display:grid;gap:9px;padding:0 14px;}
.ga7b-step{
  display:flex;gap:11px;align-items:flex-start;
  background:var(--ga7b-bg-card);border:1px solid var(--ga7b-border);
  border-radius:11px;padding:11px 12px;
}
.ga7b-step-num{
  flex:0 0 auto;width:30px;height:30px;border-radius:50%;
  background:linear-gradient(135deg,var(--ga7b-primary),#3a4cff);
  display:grid;place-items:center;font-weight:800;color:#fff;font-size:1.35rem;
}
.ga7b-step h4{font-size:1.35rem;margin-bottom:2px;}
.ga7b-step p{font-size:1.2rem;color:var(--ga7b-text-dim);}

/* ---------- Footer ---------- */
.ga7b-footer{
  background:var(--ga7b-bg-deep);border-top:1px solid var(--ga7b-border);
  padding:22px 14px 16px;margin-top:10px;
}
.ga7b-footer-brand{display:flex;align-items:center;gap:8px;margin-bottom:10px;}
.ga7b-footer-brand p{font-size:1.22rem;color:var(--ga7b-text-dim);max-width:380px;}
.ga7b-footer h4{font-size:1.3rem;color:var(--ga7b-gold);margin:14px 0 7px;}
.ga7b-footer-links{display:grid;grid-template-columns:repeat(2,1fr);gap:6px;}
.ga7b-footer-links a{font-size:1.2rem;color:var(--ga7b-text-dim);padding:3px 0;}
.ga7b-footer-links a:hover{color:var(--ga7b-gold);}
.ga7b-footer-promos{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0;}
.ga7b-footer-promos .ga7b-btn{flex:1 1 30%;min-width:100px;font-size:1.18rem;padding:9px 10px;}
.ga7b-social{display:flex;gap:9px;margin:10px 0;}
.ga7b-social a{
  width:36px;height:36px;border-radius:9px;display:grid;place-items:center;
  background:rgba(255,255,255,.05);border:1px solid var(--ga7b-border);font-size:1.6rem;color:var(--ga7b-silver);
}
.ga7b-social a:hover{color:var(--ga7b-gold);background:rgba(0,0,205,.25);}
.ga7b-payments{display:flex;flex-wrap:wrap;gap:6px;margin:10px 0;}
.ga7b-payments span{
  font-size:1.05rem;padding:4px 9px;border-radius:6px;
  background:rgba(255,255,255,.05);border:1px solid var(--ga7b-border);color:var(--ga7b-text-dim);
}
.ga7b-disclaimer{
  font-size:1.1rem;color:#6b7488;border-top:1px solid var(--ga7b-border);
  padding-top:12px;margin-top:12px;line-height:1.5;
}
.ga7b-copyright{text-align:center;font-size:1.1rem;color:#6b7488;margin-top:8px;}

/* ---------- Floating promo ---------- */
.ga7b-float-promo{
  position:fixed;right:10px;bottom:calc(var(--ga7b-nav-h) + 12px);z-index:998;
  background:linear-gradient(135deg,var(--ga7b-gold),#ff8a3a);
  color:#1a1206;width:54px;height:54px;border-radius:50%;
  display:grid;place-items:center;font-size:2.2rem;font-weight:800;
  box-shadow:0 10px 24px rgba(255,138,58,.45);
  animation:ga7b-pulse 2s infinite;
}
@keyframes ga7b-pulse{0%,100%{transform:scale(1);}50%{transform:scale(1.08);}}

/* ---------- Mobile bottom navigation ---------- */
.ga7b-bottom-nav{
  position:fixed;bottom:0;left:0;right:0;z-index:1000;height:var(--ga7b-nav-h);
  background:linear-gradient(180deg,rgba(11,16,28,.97),rgba(7,11,20,.99));
  backdrop-filter:blur(12px);border-top:1px solid var(--ga7b-border);
  display:flex;justify-content:space-around;align-items:stretch;
}
.ga7b-bottom-nav-inner{max-width:var(--ga7b-max);margin:0 auto;display:flex;flex:1;justify-content:space-around;}
.ga7b-nav-item{
  flex:1;min-width:60px;min-height:60px;display:flex;flex-direction:column;
  align-items:center;justify-content:center;gap:2px;color:var(--ga7b-text-dim);
  font-size:1rem;font-weight:600;transition:color .2s;position:relative;
}
.ga7b-nav-item i{font-size:2.1rem;}
.ga7b-nav-item .material-icons,.ga7b-nav-item .bi{font-size:2.1rem;}
.ga7b-nav-item.ga7b-active{color:var(--ga7b-gold);}
.ga7b-nav-item.ga7b-active::before{
  content:"";position:absolute;top:0;left:50%;transform:translateX(-50%);
  width:30px;height:3px;border-radius:2px;background:var(--ga7b-gold);
}
.ga7b-nav-item.ga7b-promo{
  color:#1a1206;background:linear-gradient(135deg,var(--ga7b-gold),#ff9d2a);
  border-radius:14px;margin:6px;flex:0 0 56px;transform:translateY(-8px);
  box-shadow:0 8px 16px rgba(255,157,42,.4);
}
.ga7b-nav-item.ga7b-promo i{font-size:2.3rem;}
.ga7b-nav-item:active{transform:scale(.92);}

/* ---------- Desktop ---------- */
@media (min-width:769px){
  .ga7b-bottom-nav,.ga7b-menu-backdrop{display:none !important;}
  .ga7b-mobile-menu{transform:translateX(105%) !important;}
  body{background:#0a0f1c;}
}
@media (min-width:600px) and (max-width:768px){
  .ga7b-grid{grid-template-columns:repeat(4,1fr);}
}
@media (max-width:768px){
  .ga7b-main{padding-bottom:calc(var(--ga7b-nav-h) + 30px);}
}
