/* ==========================================================================
   bd89 apk - mobile chrome stylesheet (bd89apk.click)
   Palette   : deep #141414 base / orchid #DA70D6 accent / mist #BBBBBB text
   Direction : stroke-led restrained radius, grouped cover cards,
               conclusion-first rhythm, icon micro-state motion,
               compact icon+text CTAs, center-raised bottom rail.
   All classes carry the mobile7d3fe- namespace.
   ========================================================================== */

:root{
  --mobile7d3fe-bg:        #141414;
  --mobile7d3fe-deep:      #0c0b0c;
  --mobile7d3fe-panel:     #1a181a;
  --mobile7d3fe-panel-2:   #201c20;
  --mobile7d3fe-ink:       #bbbbbb;
  --mobile7d3fe-ink-bold:  #eae6ea;
  --mobile7d3fe-accent:    #da70d6;
  --mobile7d3fe-accent-dim:#8f4a8d;
  --mobile7d3fe-accent-wash: rgba(218,112,214,.12);
  --mobile7d3fe-line:      #332c33;
  --mobile7d3fe-line-soft: #272227;
  --mobile7d3fe-ok:        #7ec98f;
  --mobile7d3fe-warn:      #d9a05b;
  --mobile7d3fe-radius:    8px;
  --mobile7d3fe-radius-lg: 14px;
  --mobile7d3fe-tap:       44px;
  --mobile7d3fe-font: "Noto Sans Bengali","Hind Siliguri","SolaimanLipi",
                      "Segoe UI",system-ui,-apple-system,sans-serif;
}

*,*::before,*::after{ box-sizing:border-box; }

html{ -webkit-text-size-adjust:100%; scroll-behavior:smooth; }

body{
  margin:0;
  background:var(--mobile7d3fe-deep);
  color:var(--mobile7d3fe-ink);
  font-family:var(--mobile7d3fe-font);
  font-size:15px;
  line-height:1.75;
  overflow-x:hidden;
}

img{ max-width:100%; display:block; }

a{ color:var(--mobile7d3fe-accent); text-decoration:none; }
a:hover{ text-decoration:underline; }

button{ font-family:inherit; }

:focus-visible{
  outline:2px solid var(--mobile7d3fe-accent);
  outline-offset:2px;
  border-radius:4px;
}

/* --- mobile canvas shell: portrait phone frame, centered on wide screens --- */
.mobile7d3fe-shell{
  position:relative;
  width:100%;
  max-width:430px;
  margin:0 auto;
  background:var(--mobile7d3fe-bg);
  min-height:100vh;
  border-left:1px solid var(--mobile7d3fe-line-soft);
  border-right:1px solid var(--mobile7d3fe-line-soft);
}

.mobile7d3fe-skip{
  position:absolute;
  left:-999px;
  top:0;
  background:var(--mobile7d3fe-accent);
  color:#141414;
  padding:10px 16px;
  font-weight:700;
  z-index:120;
}
.mobile7d3fe-skip:focus{ left:12px; top:12px; }

/* ==========================================================================
   1. Fixed functional header - edge aligned, brand left / actions right
   ========================================================================== */
.mobile7d3fe-topbar{
  position:fixed;
  top:0; left:0; right:0;
  z-index:90;
  max-width:430px;
  margin:0 auto;
  height:58px;
  display:flex;
  align-items:center;
  gap:8px;
  padding:0 12px;
  background:rgba(20,20,20,.94);
  -webkit-backdrop-filter:blur(8px);
  backdrop-filter:blur(8px);
  border-bottom:1px solid var(--mobile7d3fe-line);
}

.mobile7d3fe-brand{
  display:flex;
  align-items:center;
  gap:8px;
  margin-right:auto;
  min-width:0;
  color:var(--mobile7d3fe-ink-bold);
  font-weight:700;
}

.mobile7d3fe-logo{
  width:34px;
  height:34px;
  border:1px solid var(--mobile7d3fe-accent-dim);
  border-radius:var(--mobile7d3fe-radius);
  padding:2px;
  background:var(--mobile7d3fe-panel);
  flex:0 0 auto;
}

.mobile7d3fe-brand b{
  font-size:16px;
  letter-spacing:.2px;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}

/* compact icon+text CTAs */
.mobile7d3fe-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:6px;
  min-height:var(--mobile7d3fe-tap);
  padding:0 12px;
  border-radius:var(--mobile7d3fe-radius);
  border:1px solid var(--mobile7d3fe-accent);
  background:var(--mobile7d3fe-accent);
  color:#141414;
  font-size:13px;
  font-weight:700;
  cursor:pointer;
  transition:transform .15s ease, background-color .15s ease, color .15s ease;
}
.mobile7d3fe-btn:active{ transform:scale(.96); }

.mobile7d3fe-btn--ghost{
  background:transparent;
  color:var(--mobile7d3fe-accent);
}
.mobile7d3fe-btn--ghost:hover{
  background:var(--mobile7d3fe-accent-wash);
  text-decoration:none;
}

.mobile7d3fe-btn--slim{ padding:0 10px; font-size:12px; }

.mobile7d3fe-menu-btn{
  flex:0 0 auto;
  width:var(--mobile7d3fe-tap);
  height:var(--mobile7d3fe-tap);
  display:inline-flex;
  align-items:center;
  justify-content:center;
  background:transparent;
  border:1px solid var(--mobile7d3fe-line);
  border-radius:var(--mobile7d3fe-radius);
  color:var(--mobile7d3fe-ink);
  cursor:pointer;
}
.mobile7d3fe-menu-btn svg{ transition:transform .2s ease; }
.mobile7d3fe-menu-btn[aria-expanded="true"] svg{ transform:rotate(180deg); color:var(--mobile7d3fe-accent); }

/* ==========================================================================
   2. Layered dropdown menu
   ========================================================================== */
.mobile7d3fe-menu{
  position:fixed;
  top:58px; left:0; right:0;
  z-index:88;
  max-width:430px;
  margin:0 auto;
  background:var(--mobile7d3fe-panel);
  border-bottom:1px solid var(--mobile7d3fe-line);
  max-height:0;
  overflow:hidden;
  transition:max-height .28s ease;
}
.mobile7d3fe-menu.mobile7d3fe-menu--open{ max-height:560px; }

.mobile7d3fe-menu-inner{ padding:10px 12px 16px; }

.mobile7d3fe-mlayer{
  border:1px solid var(--mobile7d3fe-line-soft);
  border-radius:var(--mobile7d3fe-radius);
  padding:8px 10px 10px;
  margin-bottom:8px;
  background:var(--mobile7d3fe-bg);
}
.mobile7d3fe-mlayer:last-child{ margin-bottom:0; }

.mobile7d3fe-mlayer h3{
  margin:2px 0 6px;
  font-size:11px;
  font-weight:700;
  letter-spacing:1.2px;
  text-transform:uppercase;
  color:var(--mobile7d3fe-accent-dim);
}

.mobile7d3fe-mlinks{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:4px 8px;
}
.mobile7d3fe-mlinks a{
  display:flex;
  align-items:center;
  gap:6px;
  min-height:38px;
  padding:4px 8px;
  border:1px solid transparent;
  border-radius:6px;
  color:var(--mobile7d3fe-ink);
  font-size:13px;
}
.mobile7d3fe-mlinks a:hover,
.mobile7d3fe-mlinks a.mobile7d3fe-live{
  border-color:var(--mobile7d3fe-accent-dim);
  background:var(--mobile7d3fe-accent-wash);
  color:var(--mobile7d3fe-ink-bold);
  text-decoration:none;
}
.mobile7d3fe-mlinks a .mobile7d3fe-dot{
  width:6px; height:6px;
  border-radius:50%;
  background:var(--mobile7d3fe-line);
  flex:0 0 auto;
}
.mobile7d3fe-mlinks a.mobile7d3fe-live .mobile7d3fe-dot{ background:var(--mobile7d3fe-accent); }

/* ==========================================================================
   3. Main column + hero carousel
   ========================================================================== */
.mobile7d3fe-main{
  padding:70px 0 calc(92px + env(safe-area-inset-bottom));
}

.mobile7d3fe-wrap{ padding:0 12px; }

.mobile7d3fe-hero{ padding-top:14px; }

.mobile7d3fe-hero h1{
  margin:0 0 8px;
  font-size:21px;
  line-height:1.4;
  font-weight:800;
  color:var(--mobile7d3fe-ink-bold);
}
.mobile7d3fe-hero h1 em{
  font-style:normal;
  color:var(--mobile7d3fe-accent);
}

.mobile7d3fe-hero-lead{
  margin:0 0 12px;
  font-size:14px;
  color:var(--mobile7d3fe-ink);
}

.mobile7d3fe-hero-cta{
  display:flex;
  gap:8px;
  margin:0 0 14px;
}
.mobile7d3fe-hero-cta .mobile7d3fe-btn{ flex:1 1 auto; }

/* scroll-snap carousel */
.mobile7d3fe-carousel{
  position:relative;
  border:1px solid var(--mobile7d3fe-line);
  border-radius:var(--mobile7d3fe-radius-lg);
  overflow:hidden;
  background:var(--mobile7d3fe-panel);
}
.mobile7d3fe-track{
  display:flex;
  overflow-x:auto;
  scroll-snap-type:x mandatory;
  scrollbar-width:none;
  -ms-overflow-style:none;
}
.mobile7d3fe-track::-webkit-scrollbar{ display:none; }

.mobile7d3fe-slide{
  position:relative;
  flex:0 0 100%;
  scroll-snap-align:center;
  cursor:pointer;
  border:0;
  padding:0;
  background:var(--mobile7d3fe-panel);
  text-align:left;
}
.mobile7d3fe-slide img{
  width:100%;
  aspect-ratio:16/9;
  object-fit:cover;
}
.mobile7d3fe-slide .mobile7d3fe-slidecap{
  position:absolute;
  left:0; right:0; bottom:0;
  padding:22px 12px 9px;
  font-size:13px;
  font-weight:700;
  color:var(--mobile7d3fe-ink-bold);
  background:linear-gradient(180deg,rgba(20,20,20,0) 0%,rgba(12,11,12,.92) 78%);
}

.mobile7d3fe-hdots{
  position:absolute;
  right:10px; bottom:8px;
  display:flex;
  gap:6px;
  z-index:2;
}
.mobile7d3fe-hdot{
  width:22px; height:6px;
  padding:0;
  border-radius:3px;
  border:1px solid var(--mobile7d3fe-accent-dim);
  background:transparent;
  cursor:pointer;
}
.mobile7d3fe-hdot.mobile7d3fe-hdot--on{
  background:var(--mobile7d3fe-accent);
  border-color:var(--mobile7d3fe-accent);
}

/* ==========================================================================
   4. Section headers + browse strip
   ========================================================================== */
.mobile7d3fe-sec{
  margin-top:26px;
}

.mobile7d3fe-sec-head{
  display:flex;
  align-items:center;
  gap:10px;
  margin-bottom:8px;
}
.mobile7d3fe-sec-head::before{
  content:"";
  width:4px;
  height:22px;
  border-radius:2px;
  background:var(--mobile7d3fe-accent);
  flex:0 0 auto;
}
.mobile7d3fe-sec-head h2{
  margin:0;
  font-size:17px;
  line-height:1.45;
  font-weight:800;
  color:var(--mobile7d3fe-ink-bold);
}

.mobile7d3fe-sec-lead{
  margin:0 0 12px;
  font-size:13.5px;
  color:var(--mobile7d3fe-ink);
}
.mobile7d3fe-sec-lead a{ border-bottom:1px dashed var(--mobile7d3fe-accent-dim); }

/* quick 3-step browse strip */
.mobile7d3fe-steps{
  display:grid;
  grid-template-columns:1fr;
  gap:8px;
  margin:14px 0 0;
}
.mobile7d3fe-step{
  display:flex;
  gap:10px;
  align-items:flex-start;
  border:1px solid var(--mobile7d3fe-line-soft);
  border-radius:var(--mobile7d3fe-radius);
  padding:10px;
  background:var(--mobile7d3fe-panel);
}
.mobile7d3fe-step b{
  flex:0 0 26px;
  height:26px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border:1px solid var(--mobile7d3fe-accent-dim);
  border-radius:50%;
  color:var(--mobile7d3fe-accent);
  font-size:12px;
}
.mobile7d3fe-step p{ margin:0; font-size:13px; }

/* ==========================================================================
   5. Game groups - grouped cover cards on a stable grid
   ========================================================================== */
.mobile7d3fe-group{
  border:1px solid var(--mobile7d3fe-line-soft);
  border-radius:var(--mobile7d3fe-radius-lg);
  background:var(--mobile7d3fe-panel);
  padding:12px 10px;
}

.mobile7d3fe-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:10px 8px;
}

.mobile7d3fe-gcard{
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:6px;
  padding:0;
  border:1px solid var(--mobile7d3fe-line-soft);
  border-radius:var(--mobile7d3fe-radius);
  background:var(--mobile7d3fe-bg);
  cursor:pointer;
  transition:border-color .15s ease, transform .15s ease;
}
.mobile7d3fe-gcard:hover{ border-color:var(--mobile7d3fe-accent-dim); }
.mobile7d3fe-gcard:active{ transform:scale(.95); border-color:var(--mobile7d3fe-accent); }

.mobile7d3fe-gcover{
  width:100%;
  border-radius:7px 7px 0 0;
  overflow:hidden;
  border-bottom:1px solid var(--mobile7d3fe-line-soft);
  background:var(--mobile7d3fe-panel-2);
}
.mobile7d3fe-gcover img{
  width:100%;
  aspect-ratio:1/1;
  object-fit:cover;
}

.mobile7d3fe-gname{
  padding:0 4px 7px;
  font-size:11px;
  line-height:1.4;
  color:var(--mobile7d3fe-ink);
  text-align:center;
  overflow-wrap:break-word;
  word-break:break-word;
}

/* 4 columns up to 389px, 5 columns from 390px within the 430px canvas */
@media (min-width:390px){
  .mobile7d3fe-grid{ grid-template-columns:repeat(5,minmax(0,1fr)); gap:12px 10px; }
}

/* count ribbon on each group */
.mobile7d3fe-count{
  display:inline-flex;
  align-items:center;
  gap:5px;
  margin:0 0 10px;
  padding:3px 9px;
  border:1px solid var(--mobile7d3fe-line);
  border-radius:999px;
  font-size:11px;
  color:var(--mobile7d3fe-ink);
}
.mobile7d3fe-count i{
  width:6px; height:6px;
  border-radius:50%;
  background:var(--mobile7d3fe-accent);
}

/* ==========================================================================
   6. Content modules: FAQ, tips, reviews, guidance, pros/cons
   ========================================================================== */
.mobile7d3fe-faq{ border:1px solid var(--mobile7d3fe-line-soft); border-radius:var(--mobile7d3fe-radius-lg); background:var(--mobile7d3fe-panel); overflow:hidden; }
.mobile7d3fe-faq details{ border-bottom:1px solid var(--mobile7d3fe-line-soft); }
.mobile7d3fe-faq details:last-child{ border-bottom:0; }
.mobile7d3fe-faq summary{
  list-style:none;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
  padding:13px 12px;
  min-height:var(--mobile7d3fe-tap);
  font-size:13.5px;
  font-weight:700;
  color:var(--mobile7d3fe-ink-bold);
  cursor:pointer;
}
.mobile7d3fe-faq summary::-webkit-details-marker{ display:none; }
.mobile7d3fe-faq summary::after{
  content:"+";
  flex:0 0 auto;
  width:20px; height:20px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border:1px solid var(--mobile7d3fe-accent-dim);
  border-radius:50%;
  color:var(--mobile7d3fe-accent);
  font-size:13px;
  transition:transform .18s ease, background-color .18s ease, color .18s ease;
}
.mobile7d3fe-faq details[open] summary::after{
  content:"−";
  background:var(--mobile7d3fe-accent);
  color:#141414;
}
.mobile7d3fe-faq details[open] summary{ color:var(--mobile7d3fe-accent); }
.mobile7d3fe-faq .mobile7d3fe-ans{ padding:0 12px 13px; font-size:13px; margin:0; }

/* trick list */
.mobile7d3fe-tips{ list-style:none; margin:0; padding:0; display:grid; gap:8px; }
.mobile7d3fe-tips li{
  display:flex;
  gap:10px;
  align-items:flex-start;
  border:1px solid var(--mobile7d3fe-line-soft);
  border-left:3px solid var(--mobile7d3fe-accent-dim);
  border-radius:var(--mobile7d3fe-radius);
  padding:10px 12px;
  background:var(--mobile7d3fe-panel);
  font-size:13px;
}
.mobile7d3fe-tips li svg{ flex:0 0 auto; margin-top:3px; }

/* verification and ordered review checklists */
.mobile7d3fe-checklist{
  display:grid;
  gap:8px;
  margin:0;
  padding:0;
  list-style:none;
  counter-reset:mobile7d3fe-check;
}
.mobile7d3fe-checklist li{
  counter-increment:mobile7d3fe-check;
  position:relative;
  padding:10px 12px 10px 42px;
  border:1px solid var(--mobile7d3fe-line-soft);
  border-radius:var(--mobile7d3fe-radius);
  background:var(--mobile7d3fe-panel);
  font-size:13px;
}
.mobile7d3fe-checklist li::before{
  content:counter(mobile7d3fe-check);
  position:absolute;
  left:11px;
  top:10px;
  width:22px;
  height:22px;
  display:grid;
  place-items:center;
  border:1px solid var(--mobile7d3fe-accent-dim);
  border-radius:50%;
  color:var(--mobile7d3fe-accent);
  font-size:11px;
  font-weight:800;
}
.mobile7d3fe-checklist strong{ color:var(--mobile7d3fe-ink-bold); }

/* testimonial cards */
.mobile7d3fe-reviews{
  display:grid;
  grid-template-columns:1fr;
  gap:8px;
}
.mobile7d3fe-review{
  border:1px solid var(--mobile7d3fe-line-soft);
  border-radius:var(--mobile7d3fe-radius);
  background:var(--mobile7d3fe-panel);
  padding:11px 12px;
}
.mobile7d3fe-review-top{
  display:flex;
  align-items:center;
  gap:8px;
  margin-bottom:6px;
}
.mobile7d3fe-review-av{
  flex:0 0 30px;
  width:30px; height:30px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border:1px solid var(--mobile7d3fe-accent-dim);
  border-radius:50%;
  color:var(--mobile7d3fe-accent);
  font-weight:800;
  font-size:12px;
  background:var(--mobile7d3fe-accent-wash);
}
.mobile7d3fe-review-who{ font-size:12.5px; font-weight:700; color:var(--mobile7d3fe-ink-bold); }
.mobile7d3fe-review-who small{ display:block; font-weight:400; color:var(--mobile7d3fe-ink); font-size:11px; }
.mobile7d3fe-stars{ margin-left:auto; color:var(--mobile7d3fe-accent); font-size:11px; letter-spacing:1px; }
.mobile7d3fe-review p{ margin:0; font-size:13px; }

/* scenario rows */
.mobile7d3fe-cases{ display:grid; gap:8px; }
.mobile7d3fe-case{
  border:1px solid var(--mobile7d3fe-line-soft);
  border-radius:var(--mobile7d3fe-radius);
  background:var(--mobile7d3fe-panel);
  padding:10px 12px;
}
.mobile7d3fe-case h3{ margin:0 0 4px; font-size:13.5px; color:var(--mobile7d3fe-ink-bold); }
.mobile7d3fe-case p{ margin:0; font-size:13px; }

/* pros vs limits */
.mobile7d3fe-duo{ display:grid; grid-template-columns:1fr; gap:8px; }
.mobile7d3fe-duo-col{
  border:1px solid var(--mobile7d3fe-line-soft);
  border-radius:var(--mobile7d3fe-radius);
  padding:10px 12px;
  background:var(--mobile7d3fe-panel);
}
.mobile7d3fe-duo-col h3{ margin:0 0 6px; font-size:13px; }
.mobile7d3fe-duo-col--good h3{ color:var(--mobile7d3fe-ok); }
.mobile7d3fe-duo-col--bad h3{ color:var(--mobile7d3fe-warn); }
.mobile7d3fe-duo-col ul{ margin:0; padding-left:18px; font-size:13px; display:grid; gap:4px; }

@media (min-width:390px){
  .mobile7d3fe-duo{ grid-template-columns:1fr 1fr; }
}

/* ==========================================================================
   7. Extended footer: brand > two-column directory > promo tiles > note
   ========================================================================== */
.mobile7d3fe-ext{
  margin-top:30px;
  border-top:1px solid var(--mobile7d3fe-line);
  padding:16px 12px 14px;
  background:var(--mobile7d3fe-panel);
}
.mobile7d3fe-ext-brand{
  display:flex;
  gap:10px;
  align-items:flex-start;
  margin-bottom:14px;
}
.mobile7d3fe-ext-brand img{
  width:40px; height:40px;
  border:1px solid var(--mobile7d3fe-accent-dim);
  border-radius:var(--mobile7d3fe-radius);
  padding:2px;
  background:var(--mobile7d3fe-bg);
  flex:0 0 auto;
}
.mobile7d3fe-ext-brand p{ margin:0; font-size:12.5px; }

.mobile7d3fe-ext h3{
  margin:0 0 8px;
  font-size:11px;
  font-weight:700;
  letter-spacing:1.2px;
  text-transform:uppercase;
  color:var(--mobile7d3fe-accent-dim);
}

.mobile7d3fe-dir{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:4px 10px;
  margin-bottom:14px;
}
.mobile7d3fe-dir a{
  display:flex;
  align-items:center;
  gap:6px;
  min-height:40px;
  padding:4px 6px;
  border:1px solid var(--mobile7d3fe-line-soft);
  border-radius:6px;
  font-size:12px;
  color:var(--mobile7d3fe-ink);
}
.mobile7d3fe-dir a:hover{
  border-color:var(--mobile7d3fe-accent-dim);
  background:var(--mobile7d3fe-accent-wash);
  text-decoration:none;
  color:var(--mobile7d3fe-ink-bold);
}
.mobile7d3fe-dir a svg{ flex:0 0 auto; }

/* five promo tiles, icon + text labels */
.mobile7d3fe-promos{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:6px;
  margin-bottom:14px;
}
.mobile7d3fe-promo{
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:5px;
  min-height:62px;
  padding:8px 2px;
  border:1px solid var(--mobile7d3fe-accent-dim);
  border-radius:var(--mobile7d3fe-radius);
  background:var(--mobile7d3fe-accent-wash);
  color:var(--mobile7d3fe-ink-bold);
  font-size:10.5px;
  font-weight:700;
  line-height:1.3;
  cursor:pointer;
  transition:background-color .15s ease, transform .15s ease;
}
.mobile7d3fe-promo:hover{ background:var(--mobile7d3fe-accent); color:#141414; }
.mobile7d3fe-promo:active{ transform:scale(.94); }
.mobile7d3fe-promo:hover svg{ color:#141414; }
.mobile7d3fe-promo svg{ color:var(--mobile7d3fe-accent); transition:color .15s ease; }

.mobile7d3fe-note{
  border:1px dashed var(--mobile7d3fe-line);
  border-radius:var(--mobile7d3fe-radius);
  padding:9px 11px;
  font-size:11.5px;
  color:var(--mobile7d3fe-ink);
}

/* legal footer */
.mobile7d3fe-foot{
  border-top:1px solid var(--mobile7d3fe-line-soft);
  padding:12px;
  text-align:center;
  font-size:11.5px;
  color:var(--mobile7d3fe-ink);
}
.mobile7d3fe-foot b{ color:var(--mobile7d3fe-ink-bold); }

/* ==========================================================================
   8. Bottom rail - center raised play button
   ========================================================================== */
.mobile7d3fe-rail{
  position:fixed;
  left:0; right:0; bottom:0;
  z-index:92;
  max-width:430px;
  margin:0 auto;
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  align-items:end;
  height:calc(66px + env(safe-area-inset-bottom));
  padding:0 6px env(safe-area-inset-bottom);
  background:rgba(26,24,26,.96);
  -webkit-backdrop-filter:blur(10px);
  backdrop-filter:blur(10px);
  border-top:1px solid var(--mobile7d3fe-line);
}

.mobile7d3fe-rail-item{
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:3px;
  height:56px;
  border:0;
  background:transparent;
  color:var(--mobile7d3fe-ink);
  font-size:10px;
  line-height:1.2;
  text-decoration:none;
  cursor:pointer;
  -webkit-tap-highlight-color:transparent;
}
.mobile7d3fe-rail-item svg{ color:var(--mobile7d3fe-accent-dim); transition:color .16s ease, transform .16s ease; }
.mobile7d3fe-rail-item:hover{ text-decoration:none; }
.mobile7d3fe-rail-item:hover svg{ transform:translateY(-1px); }
.mobile7d3fe-rail-item.mobile7d3fe-live{ color:var(--mobile7d3fe-accent); font-weight:700; }
.mobile7d3fe-rail-item.mobile7d3fe-live svg{ color:var(--mobile7d3fe-accent); }

/* raised center promo hub */
.mobile7d3fe-rail-item--hub{
  position:relative;
  height:66px;
  margin-top:-18px;
  color:var(--mobile7d3fe-ink-bold);
}
.mobile7d3fe-rail-item--hub .mobile7d3fe-hubdisc{
  width:52px; height:52px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:50%;
  border:2px solid var(--mobile7d3fe-accent);
  background:linear-gradient(180deg,#2a1f2a 0%,#141414 100%);
  box-shadow:0 4px 14px rgba(218,112,214,.35);
  transition:transform .16s ease, box-shadow .16s ease;
}
.mobile7d3fe-rail-item--hub svg{ color:var(--mobile7d3fe-accent); }
.mobile7d3fe-rail-item--hub:active .mobile7d3fe-hubdisc{
  transform:scale(.92);
  box-shadow:0 2px 8px rgba(218,112,214,.5);
}

/* ==========================================================================
   9. Micro refinements at the 430px canvas edge + wide-screen letterbox
   ========================================================================== */
@media (min-width:430px){
  .mobile7d3fe-hero h1{ font-size:22px; }
  .mobile7d3fe-sec-head h2{ font-size:18px; }
  .mobile7d3fe-gname{ font-size:11.5px; }
  .mobile7d3fe-wrap{ padding:0 14px; }
}

@media (min-width:600px){
  body{ background:#080708; }
  .mobile7d3fe-shell{
    box-shadow:0 0 0 1px var(--mobile7d3fe-line),0 18px 60px rgba(0,0,0,.6);
  }
}

/* honor reduced-motion preference for auto carousel and transitions */
@media (prefers-reduced-motion:reduce){
  *{ transition:none !important; animation:none !important; scroll-behavior:auto !important; }
}

/* long-name containment safety net for the game grid */
.mobile7d3fe-gname,
.mobile7d3fe-review-who,
.mobile7d3fe-promo{
  hyphens:auto;
}
