/* =====================================================================
   Game Zone — shell-compact-1dc5e5.css
   Layer c5e54 base stylesheet (mobile-first, dark casino theme)
   Palette: #FFEB3B / #1E90FF / #0000CD / #3A3A3A / #FF8000
   ===================================================================== */

/* ---------- Design tokens ---------- */
:root{
  /* Brand palette */
  --layerc5e54-yellow:#FFEB3B;
  --layerc5e54-blue:#1E90FF;
  --layerc5e54-deep:#0000CD;
  --layerc5e54-coal:#3A3A3A;
  --layerc5e54-orange:#FF8000;

  /* Surfaces */
  --layerc5e54-bg:#0b1030;
  --layerc5e54-bg-2:#121844;
  --layerc5e54-panel:#19224e;
  --layerc5e54-panel-2:#212c63;
  --layerc5e54-line:rgba(255,235,59,.22);
  --layerc5e54-line-soft:rgba(190,205,255,.14);
  --layerc5e54-ink:#f2f5ff;
  --layerc5e54-soft:#aebcf0;
  --layerc5e54-muted:#7e8ac0;

  /* Layout */
  --layerc5e54-canvas:430px;
  --layerc5e54-pad:14px;
  --layerc5e54-radius:14px;
  --layerc5e54-radius-sm:10px;
  --layerc5e54-radius-lg:20px;
  --layerc5e54-shadow:0 10px 26px rgba(0,0,0,.38);
  --layerc5e54-tap:44px;
  --layerc5e54-bottom-h:62px;

  /* Type */
  --layerc5e54-fz-base:15px;
  --layerc5e54-fz-sm:13px;
  --layerc5e54-fz-xs:11px;
  --layerc5e54-fz-h1:24px;
  --layerc5e54-fz-h2:19px;
  --layerc5e54-fz-h3:16px;
}

/* ---------- Reset ---------- */
*,*::before,*::after{box-sizing:border-box;}
html,body{margin:0;padding:0;}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%;}
body{
  font-family:"Segoe UI",system-ui,-apple-system,Roboto,Arial,sans-serif;
  font-size:var(--layerc5e54-fz-base);
  line-height:1.55;
  color:var(--layerc5e54-ink);
  background:
    radial-gradient(900px 480px at 50% -8%,#1b2666 0%,rgba(27,38,102,0) 60%),
    linear-gradient(180deg,#0b1030 0%,#070a23 100%);
  min-height:100vh;
  -webkit-font-smoothing:antialiased;
  overflow-x:hidden;
}
img{max-width:100%;display:block;border:0;}
a{color:var(--layerc5e54-yellow);text-decoration:none;}
a:focus-visible,button:focus-visible{
  outline:2px solid var(--layerc5e54-yellow);
  outline-offset:2px;border-radius:6px;
}
h1,h2,h3,h4,p,ul,ol,figure{margin:0;padding:0;}
ul,ol{list-style:none;}
button{font:inherit;color:inherit;background:none;border:0;cursor:pointer;}

/* ---------- Mobile canvas shell ---------- */
.layerc5e54-shell{
  position:relative;
  width:100%;
  max-width:var(--layerc5e54-canvas);
  margin:0 auto;
  background:linear-gradient(180deg,#10164a 0%,#0a0f30 60%,#080c26 100%);
  box-shadow:0 0 60px rgba(0,0,0,.55);
  min-height:100vh;
  overflow:hidden;
}
.layerc5e54-main{
  padding:0 var(--layerc5e54-pad) calc(var(--layerc5e54-bottom-h) + 28px);
  padding-top:8px;
}

/* ---------- Top bar ---------- */
.layerc5e54-topbar{
  position:sticky;top:0;z-index:30;
  display:flex;align-items:center;justify-content:space-between;gap:8px;
  padding:10px var(--layerc5e54-pad);
  background:linear-gradient(180deg,rgba(11,16,48,.96),rgba(11,16,48,.86));
  backdrop-filter:blur(8px);
  border-bottom:1px solid var(--layerc5e54-line-soft);
}
.layerc5e54-brand{display:flex;align-items:center;gap:8px;min-width:0;}
.layerc5e54-logo{
  width:34px;height:34px;border-radius:9px;object-fit:cover;
  box-shadow:0 0 0 2px var(--layerc5e54-yellow),0 4px 10px rgba(0,0,0,.45);
  flex:0 0 auto;
}
.layerc5e54-brandname{
  font-weight:800;font-size:17px;letter-spacing:.4px;
  color:var(--layerc5e54-yellow);
  text-shadow:0 1px 0 rgba(0,0,0,.45);
  text-transform:lowercase;white-space:nowrap;
}
.layerc5e54-actions{display:flex;align-items:center;gap:6px;}
.layerc5e54-btn{
  display:inline-flex;align-items:center;justify-content:center;gap:6px;
  min-height:var(--layerc5e54-tap);padding:0 12px;
  border-radius:999px;font-weight:700;font-size:13px;letter-spacing:.2px;
  transition:transform .14s ease,background .2s ease,color .2s ease,box-shadow .2s ease;
  white-space:nowrap;
}
.layerc5e54-btn:active{transform:scale(.94);}
.layerc5e54-btn-primary{
  background:linear-gradient(135deg,var(--layerc5e54-orange),var(--layerc5e54-yellow));
  color:#3a2400;
  box-shadow:0 6px 16px rgba(255,128,0,.35);
}
.layerc5e54-btn-outline{
  background:transparent;color:var(--layerc5e54-yellow);
  box-shadow:inset 0 0 0 1.5px var(--layerc5e54-yellow);
}
.layerc5e54-menubtn{
  width:var(--layerc5e54-tap);height:var(--layerc5e54-tap);min-height:0;padding:0;
  display:inline-flex;align-items:center;justify-content:center;
  border-radius:10px;background:rgba(255,255,255,.06);
  box-shadow:inset 0 0 0 1px var(--layerc5e54-line-soft);
}
.layerc5e54-menubtn:active{transform:scale(.92);}
.layerc5e54-menubtn svg{width:22px;height:22px;stroke:var(--layerc5e54-ink);}

/* ---------- Expandable menu ---------- */
.layerc5e54-menubar{
  position:absolute;left:0;right:0;top:100%;
  background:linear-gradient(180deg,#0e1440,#0a0f30);
  border-bottom:1px solid var(--layerc5e54-line-soft);
  padding:8px var(--layerc5e54-pad) 14px;
  display:grid;grid-template-columns:1fr 1fr;gap:6px;
  opacity:0;visibility:hidden;transform:translateY(-6px);
  transition:opacity .2s ease,transform .2s ease,visibility .2s;
  z-index:29;
}
.layerc5e54-menubar.is-open{opacity:1;visibility:visible;transform:translateY(0);}
.layerc5e54-menubar a{
  display:flex;align-items:center;gap:8px;
  min-height:40px;padding:0 10px;
  background:rgba(255,255,255,.05);
  border-radius:10px;color:var(--layerc5e54-ink);font-weight:600;font-size:13px;
  box-shadow:inset 0 0 0 1px var(--layerc5e54-line-soft);
}
.layerc5e54-menubar a:active{transform:scale(.97);}
.layerc5e54-menubar a span.dot{
  width:6px;height:6px;border-radius:50%;
  background:var(--layerc5e54-yellow);flex:0 0 auto;
}
.layerc5e54-menubar a[data-promo]{color:var(--layerc5e54-yellow);}

/* ---------- Carousel ---------- */
.layerc5e54-carousel{
  position:relative;border-radius:var(--layerc5e54-radius-lg);
  overflow:hidden;margin:14px 0 6px;
  box-shadow:var(--layerc5e54-shadow);
  aspect-ratio:16/9;background:#0a1230;
}
.layerc5e54-track{position:absolute;inset:0;}
.layerc5e54-slide{
  position:absolute;inset:0;opacity:0;transform:scale(1.04);
  transition:opacity .7s ease,transform 1.2s ease;
}
.layerc5e54-slide.is-active{opacity:1;transform:scale(1);}
.layerc5e54-slide img{width:100%;height:100%;object-fit:cover;}
.layerc5e54-slide .layerc5e54-slidecover{
  position:absolute;inset:0;
  background:linear-gradient(180deg,rgba(8,12,38,0) 35%,rgba(8,12,38,.78) 100%);
}
.layerc5e54-slidetext{
  position:absolute;left:14px;right:14px;bottom:12px;color:#fff;
  font-weight:800;font-size:15px;line-height:1.3;text-shadow:0 2px 8px rgba(0,0,0,.6);
}
.layerc5e54-slidetext small{
  display:block;font-size:11px;font-weight:600;letter-spacing:1.5px;
  color:var(--layerc5e54-yellow);text-transform:uppercase;margin-bottom:2px;
}
.layerc5e54-dots{
  position:absolute;left:50%;transform:translateX(-50%);
  bottom:8px;display:flex;gap:6px;z-index:2;
}
.layerc5e54-dots button{
  width:7px;height:7px;border-radius:50%;
  background:rgba(255,255,255,.45);padding:0;transition:.25s;
}
.layerc5e54-dots button.is-on{background:var(--layerc5e54-yellow);width:18px;border-radius:6px;}

/* ---------- Headings & lead ---------- */
.layerc5e54-h1{
  font-size:var(--layerc5e54-fz-h1);line-height:1.25;
  font-weight:800;letter-spacing:.2px;
  margin:18px 2px 6px;color:#fff;
  text-wrap:balance;
}
.layerc5e54-lead{
  font-size:14px;color:var(--layerc5e54-soft);margin:0 2px 14px;
}
.layerc5e54-eyebrow{
  display:inline-block;font-size:11px;font-weight:700;letter-spacing:1.5px;
  text-transform:uppercase;color:var(--layerc5e54-yellow);
  background:rgba(255,235,59,.08);padding:4px 10px;border-radius:999px;
  margin:14px 2px 4px;border:1px solid var(--layerc5e54-line);
}
.layerc5e54-h2{
  font-size:var(--layerc5e54-fz-h2);font-weight:800;color:#fff;
  margin:18px 2px 8px;letter-spacing:.2px;line-height:1.3;
  padding-left:10px;border-left:3px solid var(--layerc5e54-yellow);
}
.layerc5e54-h3{
  font-size:var(--layerc5e54-fz-h3);font-weight:700;color:var(--layerc5e54-yellow);
  margin:14px 2px 6px;
}
.layerc5e54-main p{margin:0 2px 10px;color:var(--layerc5e54-soft);font-size:14.5px;}

/* ---------- Section block ---------- */
.layerc5e54-section{
  margin:18px 0;padding:14px 12px 16px;
  background:linear-gradient(180deg,rgba(30,144,255,.06),rgba(11,16,48,.55));
  border:1px solid var(--layerc5e54-line-soft);
  border-radius:var(--layerc5e54-radius);
}
.layerc5e54-section-head{
  display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:10px;
}
.layerc5e54-section-head h2{margin:0;border:0;padding:0;font-size:18px;}
.layerc5e54-tag{
  font-size:11px;font-weight:700;letter-spacing:1px;text-transform:uppercase;
  padding:3px 8px;border-radius:999px;
  background:rgba(255,128,0,.18);color:var(--layerc5e54-orange);
  border:1px solid rgba(255,128,0,.4);
}
.layerc5e54-tag-blue{
  background:rgba(30,144,255,.18);color:var(--layerc5e54-blue);
  border:1px solid rgba(30,144,255,.4);
}
.layerc5e54-more{
  font-size:12px;font-weight:700;color:var(--layerc5e54-yellow);
  display:inline-flex;align-items:center;gap:4px;
}

/* ---------- Game grid & cards ---------- */
.layerc5e54-grid{
  display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;
}
.layerc5e54-card{
  display:flex;flex-direction:column;align-items:center;
  background:linear-gradient(180deg,#1c2756,#141a44);
  border:1px solid var(--layerc5e54-line-soft);
  border-radius:var(--layerc5e54-radius-sm);
  padding:6px 4px 7px;min-width:0;
  transition:transform .14s ease,box-shadow .2s ease,border-color .2s ease;
  cursor:pointer;
}
.layerc5e54-card:active{
  transform:scale(.95);
  box-shadow:0 6px 14px rgba(255,128,0,.25);
  border-color:var(--layerc5e54-yellow);
}
.layerc5e54-thumb{
  width:100%;aspect-ratio:1/1;border-radius:8px;object-fit:cover;
  background:#0a0f30;box-shadow:inset 0 0 0 1px rgba(255,255,255,.06);
}
.layerc5e54-gamename{
  margin-top:5px;font-size:10.5px;font-weight:600;line-height:1.2;
  text-align:center;color:var(--layerc5e54-ink);
  overflow:hidden;display:-webkit-box;
  -webkit-line-clamp:2;-webkit-box-orient:vertical;
  min-height:24px;word-break:break-word;
}

/* ---------- Promo strip / inline CTA ---------- */
.layerc5e54-cta{
  display:flex;flex-direction:column;gap:10px;
  margin:16px 0;padding:14px;
  border-radius:var(--layerc5e54-radius);
  background:
    radial-gradient(120% 80% at 0% 0%,rgba(255,128,0,.25),transparent 60%),
    linear-gradient(135deg,#1d2a78,#0d1340);
  border:1px solid var(--layerc5e54-line);
  box-shadow:var(--layerc5e54-shadow);
}
.layerc5e54-cta h3{margin:0;color:#fff;font-size:16px;}
.layerc5e54-cta p{margin:0;color:var(--layerc5e54-soft);font-size:13.5px;}
.layerc5e54-cta-actions{display:flex;gap:8px;flex-wrap:wrap;}
.layerc5e54-cta-actions .layerc5e54-btn{flex:1 1 auto;}

/* ---------- Info grid (selection guide, payment, etc.) ---------- */
.layerc5e54-infogrid{
  display:grid;grid-template-columns:1fr;gap:10px;margin:8px 0;
}
.layerc5e54-infocard{
  padding:12px;border-radius:var(--layerc5e54-radius-sm);
  background:rgba(255,255,255,.04);
  border:1px solid var(--layerc5e54-line-soft);
}
.layerc5e54-infocard h3{
  margin:0 0 6px;color:var(--layerc5e54-yellow);font-size:14.5px;
  display:flex;align-items:center;gap:6px;
}
.layerc5e54-infocard p{margin:0;color:var(--layerc5e54-soft);font-size:13.5px;}
.layerc5e54-infocard .layerc5e54-pillrow{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px;}
.layerc5e54-pill{
  font-size:11px;font-weight:700;padding:4px 9px;border-radius:999px;
  background:rgba(30,144,255,.16);color:#cfe0ff;border:1px solid rgba(30,144,255,.4);
}
.layerc5e54-pill.warm{background:rgba(255,128,0,.16);color:#ffd8a8;border-color:rgba(255,128,0,.4);}
.layerc5e54-pill.gold{background:rgba(255,235,59,.16);color:#fff3a8;border-color:rgba(255,235,59,.45);}

/* ---------- Comparison table (compact) ---------- */
.layerc5e54-compare{
  width:100%;border-collapse:collapse;font-size:13px;margin:8px 0;
  border-radius:var(--layerc5e54-radius-sm);overflow:hidden;
}
.layerc5e54-compare th,.layerc5e54-compare td{
  text-align:left;padding:9px 10px;border-bottom:1px solid var(--layerc5e54-line-soft);
  vertical-align:top;
}
.layerc5e54-compare th{
  background:rgba(30,144,255,.16);color:#cfe0ff;font-size:12px;
  text-transform:uppercase;letter-spacing:.6px;
}
.layerc5e54-compare tr:last-child td{border-bottom:0;}
.layerc5e54-compare td:first-child{font-weight:700;color:#fff;width:38%;}
.layerc5e54-compare tr:nth-child(even) td{background:rgba(255,255,255,.025);}

/* ---------- Steps (numbered lists) ---------- */
.layerc5e54-steps{display:flex;flex-direction:column;gap:8px;margin:8px 0;}
.layerc5e54-step{
  display:flex;gap:10px;align-items:flex-start;
  padding:10px;border-radius:var(--layerc5e54-radius-sm);
  background:rgba(255,255,255,.04);border:1px solid var(--layerc5e54-line-soft);
}
.layerc5e54-stepnum{
  flex:0 0 auto;width:24px;height:24px;border-radius:50%;
  display:flex;align-items:center;justify-content:center;
  background:linear-gradient(135deg,var(--layerc5e54-orange),var(--layerc5e54-yellow));
  color:#3a2400;font-weight:800;font-size:12px;
}
.layerc5e54-step p{margin:0;font-size:13.5px;color:var(--layerc5e54-soft);}
.layerc5e54-step strong{color:#fff;}

/* ---------- Note / disclaimer block ---------- */
.layerc5e54-note{
  margin:10px 0;padding:10px 12px;border-radius:var(--layerc5e54-radius-sm);
  background:rgba(255,128,0,.08);border:1px dashed rgba(255,128,0,.4);
  font-size:12.5px;color:#ffd8a8;
}
.layerc5e54-note strong{color:var(--layerc5e54-yellow);}

/* ---------- Extended footer ---------- */
.layerc5e54-extended{
  margin:22px 0 14px;padding:16px 14px;
  border-radius:var(--layerc5e54-radius);
  background:linear-gradient(180deg,rgba(0,0,205,.18),rgba(11,16,48,.65));
  border:1px solid var(--layerc5e54-line);
}
.layerc5e54-extended h2{
  font-size:17px;color:#fff;margin:0 0 8px;border:0;padding:0;
}
.layerc5e54-extended p{font-size:13px;color:var(--layerc5e54-soft);margin:0 0 12px;}
.layerc5e54-promorow{
  display:grid;grid-template-columns:repeat(2,1fr);gap:8px;margin:10px 0 14px;
}
.layerc5e54-promorow .layerc5e54-btn{width:100%;font-size:12px;padding:0 8px;}
.layerc5e54-dirgrid{
  display:grid;grid-template-columns:1fr 1fr;gap:6px 14px;margin:10px 0;
}
.layerc5e54-dirgrid a{
  font-size:12.5px;color:var(--layerc5e54-soft);font-weight:600;
  display:inline-flex;align-items:center;gap:6px;line-height:1.35;
}
.layerc5e54-dirgrid a::before{
  content:"";width:5px;height:5px;border-radius:50%;
  background:var(--layerc5e54-yellow);flex:0 0 auto;
}
.layerc5e54-dirgrid a:hover{color:var(--layerc5e54-yellow);}
.layerc5e54-disclaim{
  margin-top:12px;padding-top:10px;border-top:1px solid var(--layerc5e54-line-soft);
  font-size:11.5px;color:var(--layerc5e54-muted);line-height:1.5;
}

/* ---------- Generic footer ---------- */
.layerc5e54-foot{
  padding:16px var(--layerc5e54-pad) calc(var(--layerc5e54-bottom-h) + 16px);
  border-top:1px solid var(--layerc5e54-line-soft);
  background:linear-gradient(180deg,#0a0f30,#060a1e);
  text-align:center;
}
.layerc5e54-footlogo{
  width:30px;height:30px;border-radius:8px;margin:0 auto 6px;display:block;
  box-shadow:0 0 0 1.5px var(--layerc5e54-yellow);
}
.layerc5e54-footname{
  color:var(--layerc5e54-yellow);font-weight:800;letter-spacing:.3px;font-size:14px;
  text-transform:lowercase;
}
.layerc5e54-footcopy{
  margin-top:6px;font-size:11.5px;color:var(--layerc5e54-muted);line-height:1.55;
}
.layerc5e54-footlinks{
  display:flex;flex-wrap:wrap;justify-content:center;gap:6px 10px;margin:10px 0 4px;
}
.layerc5e54-footlinks a{
  color:var(--layerc5e54-soft);font-size:12px;font-weight:600;
}
.layerc5e54-footlinks a:hover{color:var(--layerc5e54-yellow);}

/* ---------- Mobile bottom nav ---------- */
.layerc5e54-bottomnav{
  position:fixed;left:50%;transform:translateX(-50%);
  bottom:0;width:100%;max-width:var(--layerc5e54-canvas);
  height:var(--layerc5e54-bottom-h);z-index:40;
  display:grid;grid-template-columns:repeat(5,1fr);
  background:linear-gradient(180deg,rgba(10,15,38,.86),rgba(6,10,30,.98));
  backdrop-filter:blur(10px);
  border-top:1px solid var(--layerc5e54-line);
  padding-bottom:env(safe-area-inset-bottom,0);
}
.layerc5e54-bottomnav a,.layerc5e54-bottomnav button{
  position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;
  gap:2px;height:100%;min-height:var(--layerc5e54-tap);
  color:var(--layerc5e54-soft);font-size:10px;font-weight:600;
  background:transparent;
}
.layerc5e54-bottomnav a::before,.layerc5e54-bottomnav button::before{
  content:"";position:absolute;left:50%;top:0;transform:translateX(-50%);
  width:0;height:2.5px;border-radius:0 0 4px 4px;background:var(--layerc5e54-yellow);
  transition:width .2s ease;
}
.layerc5e54-bottomnav .is-active::before{width:26px;}
.layerc5e54-bottomnav .is-active{color:var(--layerc5e54-yellow);}
.layerc5e54-bottomnav svg{
  width:22px;height:22px;stroke:currentColor;fill:none;stroke-width:1.8;
  transition:transform .14s ease;
}
.layerc5e54-bottomnav a:active svg,.layerc5e54-bottomnav button:active svg{transform:scale(.86);}
.layerc5e54-bottomnav .is-active svg{fill:var(--layerc5e54-yellow);stroke:var(--layerc5e54-yellow);}
.layerc5e54-bottomnav .label{font-size:10px;letter-spacing:.2px;}

/* ---------- Utility ---------- */
.layerc5e54-sr-only{
  position:absolute;width:1px;height:1px;padding:0;margin:-1px;
  overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;
}
.layerc5e54-clearfix::after{content:"";display:table;clear:both;}

/* ---------- Responsive tweak (within mobile canvas) ---------- */
@media (min-width:380px){
  .layerc5e54-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:9px;}
  .layerc5e54-promorow{grid-template-columns:repeat(4,1fr);}
  .layerc5e54-dirgrid{grid-template-columns:1fr 1fr 1fr;}
}
@media (min-width:540px){
  .layerc5e54-infogrid{grid-template-columns:1fr 1fr;}
}

/* ---------- Reduced motion ---------- */
@media (prefers-reduced-motion:reduce){
  *{animation-duration:.001ms !important;transition-duration:.001ms !important;}
}
