:root {
  --cdacf7-ink: #0a0a0a;
  --cdacf7-panel: #12130f;
  --cdacf7-panel-light: #1b1d15;
  --cdacf7-gold: #ffd700;
  --cdacf7-amber: #daa520;
  --cdacf7-cream: #eee8aa;
  --cdacf7-green: #228b22;
  --cdacf7-muted: #b5b897;
  --cdacf7-line: rgba(238, 232, 170, .18);
  --cdacf7-radius: 14px;
  --cdacf7-tight: 8px;
  --cdacf7-shadow: 0 16px 38px rgba(0, 0, 0, .34);
}

* { box-sizing: border-box; }
html { background: var(--cdacf7-ink); scroll-behavior: smooth; }
body {
  margin: 0;
  min-width: 320px;
  background:
    radial-gradient(circle at 88% 2%, rgba(34, 139, 34, .25), transparent 28rem),
    linear-gradient(145deg, #0a0a0a 0%, #10120d 55%, #080908 100%);
  color: var(--cdacf7-cream);
  font-family: "Noto Sans Bengali", "Hind Siliguri", system-ui, sans-serif;
  line-height: 1.72;
  overflow-x: hidden;
}
body::before {
  content: "";
  position: fixed;
  inset: 0;
  pointer-events: none;
  opacity: .22;
  background-image: linear-gradient(rgba(255,215,0,.025) 1px, transparent 1px), linear-gradient(90deg, rgba(255,215,0,.025) 1px, transparent 1px);
  background-size: 28px 28px;
  mask-image: linear-gradient(to bottom, black, transparent 75%);
}
a { color: inherit; }
img { display: block; max-width: 100%; }
button, a { -webkit-tap-highlight-color: transparent; }
button { font: inherit; }

.cdacf7-shell { width: min(100%, 520px); margin: 0 auto; position: relative; }
.cdacf7-topbar {
  position: sticky;
  top: 0;
  z-index: 30;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 9px;
  min-height: 68px;
  padding: 10px 13px;
  background: rgba(10, 10, 10, .94);
  border-bottom: 1px solid var(--cdacf7-line);
  backdrop-filter: blur(16px);
}
.cdacf7-brand { min-width: 0; display: flex; align-items: center; gap: 9px; text-decoration: none; }
.cdacf7-brand img { width: 39px; height: 39px; object-fit: cover; border-radius: 11px; border: 1px solid rgba(255,215,0,.6); box-shadow: 0 0 18px rgba(255,215,0,.17); }
.cdacf7-brand strong { color: var(--cdacf7-gold); font: 700 20px/1 "Georgia", serif; letter-spacing: .02em; }
.cdacf7-actions { display: flex; align-items: center; gap: 5px; flex-shrink: 0; }
.cdacf7-action, .cdacf7-menu-button {
  min-height: 44px;
  padding: 8px 10px;
  border: 1px solid rgba(255,215,0,.48);
  border-radius: 7px;
  background: transparent;
  color: var(--cdacf7-cream);
  text-decoration: none;
  font-size: 12px;
  font-weight: 700;
  cursor: pointer;
}
.cdacf7-action:hover, .cdacf7-action:focus-visible, .cdacf7-menu-button:hover, .cdacf7-menu-button:focus-visible { color: var(--cdacf7-ink); background: var(--cdacf7-gold); outline: none; }
.cdacf7-action.cdacf7-primary { background: var(--cdacf7-gold); color: var(--cdacf7-ink); }
.cdacf7-menu-button { width: 44px; padding: 0; display: grid; place-items: center; border-color: rgba(238,232,170,.35); }
.cdacf7-menu-icon { width: 19px; height: 14px; position: relative; border-top: 2px solid currentColor; border-bottom: 2px solid currentColor; }
.cdacf7-menu-icon::after { content: ""; position: absolute; inset: 5px 0 auto; border-top: 2px solid currentColor; }
.cdacf7-menu-panel {
  display: none;
  position: absolute;
  top: calc(100% + 1px);
  right: 8px;
  left: 8px;
  padding: 12px;
  background: #11130e;
  border: 1px solid rgba(255,215,0,.35);
  border-radius: 0 0 14px 14px;
  box-shadow: var(--cdacf7-shadow);
}
.cdacf7-menu-panel.cdacf7-open { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 7px; animation: cdacf7-drop .18s ease-out; }
.cdacf7-menu-panel a { padding: 10px 8px; min-height: 44px; border: 1px solid var(--cdacf7-line); border-radius: 7px; color: var(--cdacf7-muted); text-decoration: none; font-size: 12px; }
.cdacf7-menu-panel a:hover, .cdacf7-menu-panel a:focus-visible { color: var(--cdacf7-gold); border-color: var(--cdacf7-gold); outline: none; }
@keyframes cdacf7-drop { from { opacity: 0; transform: translateY(-8px); } to { opacity: 1; transform: translateY(0); } }

.cdacf7-main { padding: 15px 12px 120px; }
.cdacf7-hero { position: relative; margin: 0 -2px 18px; overflow: hidden; border-radius: 18px; border: 1px solid rgba(255,215,0,.3); background: #15160f; box-shadow: var(--cdacf7-shadow); }
.cdacf7-hero-track { display: flex; transition: transform .45s ease; }
.cdacf7-hero-slide { min-width: 100%; position: relative; aspect-ratio: 1.72 / 1; overflow: hidden; }
.cdacf7-hero-slide img { width: 100%; height: 100%; object-fit: cover; filter: saturate(.9) contrast(1.06); }
.cdacf7-hero-slide::after { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, rgba(10,10,10,.86), rgba(10,10,10,.08) 75%), linear-gradient(0deg, rgba(10,10,10,.68), transparent 55%); }
.cdacf7-hero-copy { position: absolute; z-index: 1; inset: auto 16px 15px; max-width: 74%; }
.cdacf7-hero-copy p { margin: 0 0 6px; color: var(--cdacf7-gold); font-size: 11px; letter-spacing: .08em; text-transform: uppercase; }
.cdacf7-hero-copy h2 { margin: 0; color: #fff8c9; font: 700 clamp(20px, 6vw, 30px)/1.16 "Georgia", "Noto Serif Bengali", serif; }
.cdacf7-hero-button { position: absolute; z-index: 2; right: 14px; bottom: 14px; min-height: 44px; padding: 8px 12px; border: 1px solid var(--cdacf7-gold); border-radius: 7px; background: var(--cdacf7-gold); color: var(--cdacf7-ink); font-size: 12px; font-weight: 800; cursor: pointer; }
.cdacf7-hero-dots { display: flex; gap: 6px; position: absolute; z-index: 3; top: 12px; right: 13px; }
.cdacf7-dot { width: 8px; height: 8px; padding: 0; border: 1px solid var(--cdacf7-cream); border-radius: 50%; background: transparent; cursor: pointer; }
.cdacf7-dot.cdacf7-active { width: 22px; border-radius: 9px; background: var(--cdacf7-gold); border-color: var(--cdacf7-gold); }

.cdacf7-kicker { margin: 2px 0 7px; color: var(--cdacf7-amber); font-size: 11px; font-weight: 800; letter-spacing: .14em; text-transform: uppercase; }
.cdacf7-title { margin: 0; color: #fff8c9; font: 700 clamp(28px, 8vw, 42px)/1.18 "Georgia", "Noto Serif Bengali", serif; letter-spacing: -.02em; }
.cdacf7-lead { margin: 10px 0 18px; color: var(--cdacf7-muted); font-size: 14px; }
.cdacf7-section { margin: 26px 0; }
.cdacf7-section-head { display: flex; align-items: end; justify-content: space-between; gap: 10px; margin-bottom: 11px; border-left: 3px solid var(--cdacf7-gold); padding-left: 10px; }
.cdacf7-section-head h2 { margin: 0; color: #fff8c9; font: 700 22px/1.25 "Georgia", "Noto Serif Bengali", serif; }
.cdacf7-section-head p { margin: 0; color: var(--cdacf7-muted); font-size: 11px; text-align: right; }
.cdacf7-section-intro { margin: -3px 0 12px; color: #c7c99e; font-size: 13px; }
.cdacf7-section-intro a, .cdacf7-rich a { color: var(--cdacf7-gold); text-decoration-thickness: 1px; text-underline-offset: 3px; }

.cdacf7-game-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 7px; }
.cdacf7-game-card { min-width: 0; overflow: hidden; border: 1px solid rgba(238,232,170,.16); border-radius: 10px; background: linear-gradient(155deg, #1c1e14, #10110d); box-shadow: 0 7px 16px rgba(0,0,0,.18); transition: transform .18s ease, border-color .18s ease, background .18s ease; }
.cdacf7-game-card:hover, .cdacf7-game-card:focus-within { transform: translateY(-2px); border-color: rgba(255,215,0,.72); background: #252817; }
.cdacf7-game-card a { display: block; min-height: 44px; color: var(--cdacf7-cream); text-decoration: none; }
.cdacf7-game-card img { width: 100%; aspect-ratio: 1 / 1; object-fit: cover; }
.cdacf7-game-name { display: block; min-height: 39px; padding: 5px 4px 7px; font-size: 10px; line-height: 1.35; text-align: center; overflow-wrap: anywhere; }
.cdacf7-game-card a:focus-visible { outline: 2px solid var(--cdacf7-gold); outline-offset: -2px; }

.cdacf7-prose { color: #d4d5ab; font-size: 14px; }
.cdacf7-prose p { margin: 0 0 13px; }
.cdacf7-prose h2, .cdacf7-prose h3 { color: #fff8c9; font-family: "Georgia", "Noto Serif Bengali", serif; line-height: 1.3; }
.cdacf7-prose h2 { margin: 28px 0 9px; font-size: 22px; }
.cdacf7-prose h3 { margin: 17px 0 6px; font-size: 17px; }
.cdacf7-note { padding: 13px 14px; margin: 14px 0; border: 1px solid rgba(218,165,32,.48); border-radius: var(--cdacf7-radius); background: linear-gradient(115deg, rgba(34,139,34,.23), rgba(218,165,32,.07)); }
.cdacf7-note strong { color: var(--cdacf7-gold); }
.cdacf7-list { display: grid; gap: 8px; margin: 12px 0; padding: 0; list-style: none; }
.cdacf7-list li { position: relative; padding: 10px 10px 10px 29px; border-bottom: 1px solid var(--cdacf7-line); color: #d9d9b4; }
.cdacf7-list li::before { content: "+"; position: absolute; left: 8px; color: var(--cdacf7-gold); font-weight: 900; }
.cdacf7-compare { display: grid; gap: 8px; margin: 13px 0; }
.cdacf7-compare-row { display: grid; grid-template-columns: 1fr 1.35fr; gap: 9px; padding: 10px; border-radius: 9px; background: rgba(238,232,170,.065); border: 1px solid var(--cdacf7-line); }
.cdacf7-compare-row strong { color: var(--cdacf7-gold); font-size: 12px; }
.cdacf7-compare-row span { color: #d1d2ac; font-size: 12px; }
.cdacf7-steps { counter-reset: cdacf7-step; display: grid; gap: 9px; padding: 0; list-style: none; }
.cdacf7-steps li { counter-increment: cdacf7-step; display: grid; grid-template-columns: 32px 1fr; gap: 9px; align-items: start; }
.cdacf7-steps li::before { content: counter(cdacf7-step); display: grid; place-items: center; width: 30px; height: 30px; border-radius: 50%; background: var(--cdacf7-green); color: #fff8c9; font-weight: 900; }
.cdacf7-steps li span { padding-top: 3px; }
.cdacf7-promo-strip { display: flex; gap: 8px; overflow-x: auto; padding: 3px 1px 8px; scrollbar-width: thin; }
.cdacf7-promo-strip button { flex: 0 0 auto; min-height: 44px; padding: 8px 14px; border: 1px solid rgba(255,215,0,.55); border-radius: 999px; background: rgba(34,139,34,.3); color: var(--cdacf7-cream); cursor: pointer; font-size: 12px; font-weight: 700; }
.cdacf7-promo-strip button:hover, .cdacf7-promo-strip button:focus-visible { background: var(--cdacf7-gold); color: var(--cdacf7-ink); outline: none; }
.cdacf7-quick-links { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 8px; }
.cdacf7-quick-links a { display: flex; align-items: center; justify-content: space-between; min-height: 48px; padding: 10px 12px; border: 1px solid var(--cdacf7-line); border-radius: 9px; color: var(--cdacf7-cream); text-decoration: none; font-size: 12px; }
.cdacf7-quick-links a::after { content: "↗"; color: var(--cdacf7-gold); font-size: 16px; }
.cdacf7-quick-links a:hover, .cdacf7-quick-links a:focus-visible { border-color: var(--cdacf7-gold); background: rgba(255,215,0,.08); outline: none; }
.cdacf7-tagline { display: inline-block; padding: 4px 9px; border-radius: 5px; background: rgba(255,215,0,.12); color: var(--cdacf7-gold); font-size: 11px; font-weight: 800; }
.cdacf7-callout { margin: 18px 0; padding: 17px 15px; border-radius: 15px; background: linear-gradient(120deg, #1e451e, #142017 55%, #3f3210); border: 1px solid rgba(255,215,0,.45); box-shadow: var(--cdacf7-shadow); }
.cdacf7-callout h2 { margin: 0 0 6px; font: 700 21px/1.25 "Georgia", "Noto Serif Bengali", serif; color: #fff8c9; }
.cdacf7-callout p { margin: 0 0 13px; color: #e5e3b8; font-size: 13px; }
.cdacf7-cta { display: inline-flex; align-items: center; justify-content: center; min-height: 48px; width: 100%; padding: 10px 15px; border: 1px solid var(--cdacf7-gold); border-radius: 8px; background: var(--cdacf7-gold); color: var(--cdacf7-ink); text-decoration: none; font-size: 13px; font-weight: 900; cursor: pointer; transition: filter .18s ease, transform .18s ease; }
.cdacf7-cta:hover, .cdacf7-cta:focus-visible { filter: brightness(1.1); transform: translateY(-1px); outline: none; }
.cdacf7-home-footer { margin: 30px 0 17px; padding: 18px 14px; border-top: 1px solid rgba(255,215,0,.3); border-bottom: 1px solid var(--cdacf7-line); background: rgba(18,19,15,.72); }
.cdacf7-home-footer h2 { margin: 0 0 7px; color: var(--cdacf7-gold); font: 700 20px/1.3 "Georgia", "Noto Serif Bengali", serif; }
.cdacf7-home-footer p { margin: 0 0 14px; color: var(--cdacf7-muted); font-size: 12px; }
.cdacf7-footer-nav { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 7px; }
.cdacf7-footer-nav a { padding: 9px 8px; border: 1px solid var(--cdacf7-line); border-radius: 7px; color: #d8d8b1; font-size: 11px; text-decoration: none; }
.cdacf7-footer-nav a:hover, .cdacf7-footer-nav a:focus-visible { color: var(--cdacf7-gold); border-color: var(--cdacf7-gold); outline: none; }
.cdacf7-bottom-space { height: 84px; }
.cdacf7-bottom-nav { position: fixed; z-index: 40; right: 0; bottom: 0; left: 0; display: grid; grid-template-columns: repeat(5, 1fr); width: min(100%, 520px); margin: 0 auto; padding: 8px 7px calc(8px + env(safe-area-inset-bottom)); border: 1px solid rgba(255,215,0,.32); border-bottom: 0; border-radius: 15px 15px 0 0; background: rgba(10,10,10,.97); box-shadow: 0 -11px 28px rgba(0,0,0,.42); backdrop-filter: blur(14px); }
.cdacf7-bottom-nav a, .cdacf7-bottom-nav button { display: flex; min-width: 0; min-height: 52px; flex-direction: column; align-items: center; justify-content: center; gap: 2px; border: 0; border-bottom: 2px solid transparent; background: transparent; color: #aeb18e; text-decoration: none; cursor: pointer; font-size: 10px; font-weight: 700; }
.cdacf7-bottom-nav a:hover, .cdacf7-bottom-nav a:focus-visible, .cdacf7-bottom-nav button:hover, .cdacf7-bottom-nav button:focus-visible { color: var(--cdacf7-gold); outline: none; }
.cdacf7-bottom-nav .cdacf7-current { color: var(--cdacf7-gold); border-bottom-color: var(--cdacf7-gold); }
.cdacf7-bottom-icon { display: grid; place-items: center; width: 25px; height: 25px; border: 1px solid currentColor; border-radius: 7px; font-size: 13px; line-height: 1; }
.cdacf7-disclaimer { margin: 18px 0 0; color: #81846b; font-size: 11px; }
.cdacf7-reveal { animation: cdacf7-rise .45s ease both; }
@keyframes cdacf7-rise { from { opacity: 0; transform: translateY(8px); } to { opacity: 1; transform: translateY(0); } }

@media (min-width: 375px) { .cdacf7-main { padding-right: 15px; padding-left: 15px; } .cdacf7-game-grid { grid-template-columns: repeat(5, minmax(0,1fr)); gap: 8px; } .cdacf7-game-name { font-size: 10.5px; } }
@media (min-width: 600px) { .cdacf7-main { padding-top: 22px; } .cdacf7-hero-slide { aspect-ratio: 2.05 / 1; } }
.cdacf7-feature-ribbon { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; margin-top: 14px; }
.cdacf7-feature-ribbon button { min-height: 46px; padding: 9px 10px; border: 1px solid rgba(255,215,0,.58); border-radius: 8px; background: rgba(34,139,34,.38); color: var(--cdacf7-cream); font-size: 12px; font-weight: 800; cursor: pointer; }
.cdacf7-feature-ribbon button:hover, .cdacf7-feature-ribbon button:focus-visible { background: var(--cdacf7-gold); color: var(--cdacf7-ink); outline: none; }
.cdacf7-feature-intro { padding: 18px 15px 17px; border: 1px solid rgba(255,215,0,.32); border-radius: 16px; background: linear-gradient(145deg, rgba(34,139,34,.3), rgba(18,19,15,.78) 55%, rgba(218,165,32,.12)); box-shadow: var(--cdacf7-shadow); }
.cdacf7-feature-intro .cdacf7-title { font-size: clamp(26px, 7.5vw, 40px); }
.cdacf7-feature-board { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 8px; margin: 14px 0 16px; }
.cdacf7-feature-board article { min-width: 0; padding: 11px 10px; border: 1px solid var(--cdacf7-line); border-radius: 10px; background: rgba(238,232,170,.055); }
.cdacf7-feature-board h3 { margin: 8px 0 4px; color: #fff8c9; font: 700 16px/1.3 "Georgia", "Noto Serif Bengali", serif; }
.cdacf7-feature-board p { margin: 0; color: #cfd0a9; font-size: 12px; line-height: 1.55; }
.cdacf7-branch-list { display: grid; gap: 9px; margin: 13px 0 16px; }
.cdacf7-branch-list article { padding: 12px 13px; border-left: 3px solid var(--cdacf7-amber); background: rgba(218,165,32,.075); }
.cdacf7-branch-list strong { display: block; margin-bottom: 4px; color: var(--cdacf7-gold); font-size: 13px; }
.cdacf7-branch-list p { margin: 0; color: #d1d2ac; font-size: 13px; }
.cdacf7-troubleshoot { display: grid; gap: 7px; margin: 13px 0 16px; }
.cdacf7-trouble-row { display: grid; grid-template-columns: .92fr 1.35fr; gap: 9px; padding: 11px 10px; border: 1px solid var(--cdacf7-line); border-radius: 8px; background: linear-gradient(90deg, rgba(34,139,34,.14), rgba(238,232,170,.035)); }
.cdacf7-trouble-row strong { color: var(--cdacf7-gold); font-size: 12px; line-height: 1.45; }
.cdacf7-trouble-row span { color: #d1d2ac; font-size: 12px; line-height: 1.55; }
@media (prefers-reduced-motion: reduce) { *, *::before, *::after { scroll-behavior: auto !important; animation-duration: .01ms !important; transition-duration: .01ms !important; } }
@media (max-width: 430px) {
  .cdacf7-shell { width: 100%; max-width: 430px; }
  .cdacf7-main { padding-right: 12px; padding-left: 12px; }
  .cdacf7-game-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 7px; }
  .cdacf7-game-name { font-size: 10px; }
}
