/* ==========================================================================
   jililive casino — base palette stylesheet for jililivecasino.click
   Canvas: 320–430px mobile-first column, centered on wide viewports
   Palette: #1A1A1A deep ground · #ADB5BD quiet text · #FFB6C1 blush accent
   Voice: bold condensed headings + light body · small radii · dense grids
   ========================================================================== */

:root{
  --ui1e644-ink: #1A1A1A;
  --ui1e644-ink-deep: #131316;
  --ui1e644-ink-raise: #202024;
  --ui1e644-ink-lift: #26262c;
  --ui1e644-line: #33333a;
  --ui1e644-line-soft: #2a2a30;
  --ui1e644-mist: #ADB5BD;
  --ui1e644-mist-dim: #8d949c;
  --ui1e644-blush: #FFB6C1;
  --ui1e644-blush-hot: #f78ea3;
  --ui1e644-blush-wash: rgba(255,182,193,.12);
  --ui1e644-blush-line: rgba(255,182,193,.38);
  --ui1e644-blush-glow: rgba(255,182,193,.42);
  --ui1e644-r-s: 4px;
  --ui1e644-r-m: 6px;
  --ui1e644-canvas: 430px;
  --ui1e644-tap: 44px;
  --ui1e644-head-h: 54px;
  --ui1e644-nav-h: 60px;
  --ui1e644-ease: cubic-bezier(.22,.61,.36,1);
}

/* ---------- resets ---------- */
*,*::before,*::after{ box-sizing:border-box; }
html{ -webkit-text-size-adjust:100%; }
html,body{ margin:0; padding:0; max-width:100%; overflow-x:hidden; }
body{
  background:#0c0c0f;
  color:var(--ui1e644-mist);
  font:400 15px/1.65 "Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans",sans-serif;
}
img{ display:block; max-width:100%; height:auto; }
button{ font:inherit; color:inherit; background:none; border:0; padding:0; margin:0; cursor:pointer; -webkit-tap-highlight-color:transparent; }
ul,ol{ margin:0; padding:0; }
li{ list-style:none; }
h1,h2,h3,h4,p{ margin:0; overflow-wrap:break-word; }
a{ color:var(--ui1e644-blush); text-decoration:none; }
a:active{ opacity:.82; }
:focus-visible{ outline:2px solid var(--ui1e644-blush); outline-offset:2px; border-radius:2px; }
::selection{ background:var(--ui1e644-blush); color:var(--ui1e644-ink); }

/* ---------- phone canvas ---------- */
.ui1e644-shell{
  position:relative;
  max-width:430px;
  margin:0 auto;
  min-height:100vh;
  min-height:100dvh;
  background:var(--ui1e644-ink);
  border-inline:1px solid var(--ui1e644-line-soft);
}
@media (min-width:431px){
  body{ background:#08080a; }
  .ui1e644-shell{ box-shadow:0 0 46px rgba(0,0,0,.55); }
}

/* ---------- top action bar ---------- */
.ui1e644-topbar{
  position:sticky;
  top:0;
  z-index:60;
  background:linear-gradient(180deg,#1f1f24 0%,var(--ui1e644-ink) 100%);
  border-bottom:1px solid var(--ui1e644-line);
}
.ui1e644-toprow{
  display:flex;
  align-items:center;
  gap:8px;
  min-height:var(--ui1e644-head-h);
  padding:7px 10px;
}
.ui1e644-brand{
  display:flex;
  align-items:center;
  gap:8px;
  margin-right:auto;
  min-height:var(--ui1e644-tap);
  padding:3px 4px;
}
.ui1e644-brand img{
  width:30px; height:30px;
  border-radius:var(--ui1e644-r-s);
  border:1px solid var(--ui1e644-line);
  object-fit:cover;
}
.ui1e644-brand b{
  font-size:16px;
  font-weight:800;
  letter-spacing:-.02em;
  color:var(--ui1e644-blush);
  white-space:nowrap;
}

/* segmented action pair — register / login */
.ui1e644-duo{
  display:flex;
  align-items:stretch;
  border:1px solid var(--ui1e644-blush-line);
  border-radius:var(--ui1e644-r-m);
  overflow:hidden;
  flex:none;
}
.ui1e644-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:6px;
  min-height:40px;
  padding:0 13px;
  font-size:12.5px;
  font-weight:700;
  letter-spacing:.01em;
  white-space:nowrap;
}
.ui1e644-btn-solid{
  background:var(--ui1e644-blush);
  color:var(--ui1e644-ink);
}
.ui1e644-btn-solid:active{
  background:var(--ui1e644-blush-hot);
  box-shadow:0 0 14px var(--ui1e644-blush-glow);
}
.ui1e644-btn-ghost{
  color:var(--ui1e644-blush);
  border-left:1px solid var(--ui1e644-line);
  min-width:64px;
}
.ui1e644-btn-ghost:active{ background:var(--ui1e644-blush-wash); }

.ui1e644-burger{
  display:flex;
  flex-direction:column;
  justify-content:center;
  gap:4px;
  width:var(--ui1e644-tap);
  height:var(--ui1e644-tap);
  flex:none;
  align-items:center;
}
.ui1e644-burger i{
  display:block;
  width:19px; height:2px;
  border-radius:2px;
  background:var(--ui1e644-blush);
  transition:transform .22s var(--ui1e644-ease),opacity .18s ease;
}
.ui1e644-burger[aria-expanded="true"] i:nth-child(1){ transform:translateY(6px) rotate(45deg); }
.ui1e644-burger[aria-expanded="true"] i:nth-child(2){ opacity:0; }
.ui1e644-burger[aria-expanded="true"] i:nth-child(3){ transform:translateY(-6px) rotate(-45deg); }

/* ---------- layered drop menu ---------- */
.ui1e644-drawer{
  position:fixed;
  top:var(--ui1e644-head-h);
  left:50%;
  transform:translateX(-50%);
  width:100%;
  max-width:430px;
  max-height:calc(100dvh - var(--ui1e644-head-h) - var(--ui1e644-nav-h));
  overflow-y:auto;
  z-index:55;
  display:none;
  background:var(--ui1e644-ink-deep);
  border-bottom:1px solid var(--ui1e644-line);
  box-shadow:0 22px 34px rgba(0,0,0,.5);
}
.ui1e644-drawer.ui1e644-open{ display:block; }
.ui1e644-mgroup{ border-bottom:1px solid var(--ui1e644-line-soft); }
.ui1e644-mgroup:last-child{ border-bottom:0; }
.ui1e644-mhead{
  display:flex;
  width:100%;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  min-height:50px;
  padding:12px 14px;
  font-size:12px;
  font-weight:800;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:var(--ui1e644-blush);
  text-align:left;
}
.ui1e644-mhead svg{ width:14px; height:14px; flex:none; transition:transform .22s var(--ui1e644-ease); }
.ui1e644-mhead[aria-expanded="false"] svg{ transform:rotate(-90deg); }
.ui1e644-mlist{
  display:none;
  padding:0 14px 12px;
}
.ui1e644-mhead[aria-expanded="true"] + .ui1e644-mlist{ display:grid; gap:2px; }
.ui1e644-mlist a{
  display:flex;
  align-items:center;
  gap:9px;
  min-height:var(--ui1e644-tap);
  padding:6px 4px;
  font-size:13.5px;
  font-weight:600;
  color:var(--ui1e644-mist);
}
.ui1e644-mlist a:active{ color:var(--ui1e644-blush); }
.ui1e644-mdot{
  width:5px; height:5px;
  border-radius:50%;
  background:var(--ui1e644-blush);
  opacity:.55;
  flex:none;
}
.ui1e644-mnote{
  padding:10px 14px 14px;
  font-size:11.5px;
  line-height:1.6;
  color:var(--ui1e644-mist-dim);
  border-top:1px dashed var(--ui1e644-line-soft);
}

/* ---------- hero ---------- */
.ui1e644-hero{ padding:18px 14px 4px; }
.ui1e644-kicker{
  font-size:10.5px;
  font-weight:800;
  letter-spacing:.18em;
  text-transform:uppercase;
  color:var(--ui1e644-blush);
}
.ui1e644-h1{
  margin:7px 0 10px;
  font-size:25px;
  line-height:1.24;
  font-weight:800;
  letter-spacing:-.02em;
  color:var(--ui1e644-blush);
}
.ui1e644-lede{ font-size:14px; line-height:1.7; }
.ui1e644-chips{ display:flex; flex-wrap:wrap; gap:6px; margin-top:12px; }
.ui1e644-chip{
  font-size:10.5px;
  font-weight:600;
  padding:4px 10px;
  border:1px solid var(--ui1e644-line);
  border-radius:999px;
  color:var(--ui1e644-mist-dim);
  white-space:nowrap;
}
.ui1e644-heropair{ display:flex; gap:8px; margin-top:14px; }
.ui1e644-heropair .ui1e644-btn-solid{ flex:1; min-height:var(--ui1e644-tap); }
.ui1e644-heropair .ui1e644-btn-ghost{ flex:none; border:1px solid var(--ui1e644-blush-line); border-radius:var(--ui1e644-r-m); }

/* hall strip — quick anchors to on-page halls */
.ui1e644-halls{
  display:flex;
  gap:6px;
  overflow-x:auto;
  padding:14px 14px 4px;
  scrollbar-width:none;
}
.ui1e644-halls::-webkit-scrollbar{ display:none; }
.ui1e644-halls a{
  display:inline-flex;
  align-items:center;
  min-height:36px;
  padding:6px 13px;
  flex:none;
  font-size:12px;
  font-weight:700;
  border:1px solid var(--ui1e644-line);
  border-radius:999px;
  color:var(--ui1e644-mist);
  background:var(--ui1e644-ink-raise);
}
.ui1e644-halls a:active{
  color:var(--ui1e644-ink);
  background:var(--ui1e644-blush);
}

/* ---------- carousel ---------- */
.ui1e644-caro{
  position:relative;
  margin:10px 14px 2px;
  border:1px solid var(--ui1e644-line);
  border-radius:var(--ui1e644-r-m);
  overflow:hidden;
  background:var(--ui1e644-ink-raise);
}
.ui1e644-track{
  display:flex;
  transition:transform .45s var(--ui1e644-ease);
  will-change:transform;
}
.ui1e644-slide{
  position:relative;
  flex:0 0 100%;
  display:block;
  width:100%;
  text-align:left;
  touch-action:pan-y;
}
.ui1e644-slide img{
  width:100%;
  aspect-ratio:16/7;
  object-fit:cover;
}
.ui1e644-slidecap{
  position:absolute;
  left:0; right:0; bottom:0;
  display:flex;
  flex-direction:column;
  gap:2px;
  padding:30px 12px 12px;
  background:linear-gradient(180deg,rgba(26,26,26,0) 0%,rgba(26,26,26,.94) 82%);
  text-align:left;
  pointer-events:none;
}
.ui1e644-slidecap b{ font-size:14px; font-weight:800; color:var(--ui1e644-blush); }
.ui1e644-slidecap small{ font-size:11px; color:var(--ui1e644-mist); }
.ui1e644-dots{
  position:absolute;
  right:9px; bottom:9px;
  display:flex;
  gap:5px;
  z-index:2;
}
.ui1e644-dot{
  width:14px; height:14px;
  display:flex;
  align-items:center;
  justify-content:center;
}
.ui1e644-dot::before{
  content:"";
  width:7px; height:7px;
  border-radius:50%;
  background:rgba(173,181,189,.45);
  transition:background .2s ease,box-shadow .2s ease;
}
.ui1e644-dot:active::before{ background:var(--ui1e644-blush); }
.ui1e644-dot[aria-current="true"]::before{
  background:var(--ui1e644-blush);
  box-shadow:0 0 6px var(--ui1e644-blush-glow);
}

/* ---------- content sections ---------- */
.ui1e644-main{
  display:block;
  padding-bottom:6px;
}
.ui1e644-sec{ padding:20px 14px 4px; scroll-margin-top:calc(var(--ui1e644-head-h) + 8px); }
.ui1e644-h2{
  font-size:18.5px;
  line-height:1.32;
  font-weight:800;
  letter-spacing:-.015em;
  color:var(--ui1e644-blush);
  margin-bottom:7px;
}
.ui1e644-seclede{ font-size:13.5px; line-height:1.75; }
.ui1e644-seclede b{ color:var(--ui1e644-blush); font-weight:700; }
.ui1e644-secnote{
  margin-top:10px;
  font-size:11.5px;
  line-height:1.6;
  color:var(--ui1e644-mist-dim);
}
.ui1e644-h3{
  font-size:14px;
  font-weight:700;
  color:var(--ui1e644-blush);
  margin-bottom:5px;
}

/* ---------- game grid ---------- */
.ui1e644-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:8px 6px;
  margin-top:12px;
}
@media (min-width:400px){
  .ui1e644-grid{ grid-template-columns:repeat(5,minmax(0,1fr)); gap:9px 7px; }
}
.ui1e644-gcell{
  display:flex;
  flex-direction:column;
  gap:5px;
  min-width:0;
  text-align:center;
}
.ui1e644-gcell img{
  width:100%;
  aspect-ratio:1/1;
  object-fit:cover;
  border-radius:var(--ui1e644-r-s);
  border:1px solid var(--ui1e644-line-soft);
  background:var(--ui1e644-ink-raise);
  transition:border-color .15s ease,box-shadow .15s ease;
}
.ui1e644-gcell:active img{
  border-color:var(--ui1e644-blush);
  box-shadow:0 0 10px var(--ui1e644-blush-glow);
}
.ui1e644-gname{
  font-size:10.5px;
  line-height:1.3;
  font-weight:600;
  color:var(--ui1e644-mist);
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
}
.ui1e644-gcell:active .ui1e644-gname{ color:var(--ui1e644-blush); }

/* related real-page links under each hall */
.ui1e644-related{ display:flex; flex-wrap:wrap; gap:8px; margin-top:13px; }
.ui1e644-related a{
  display:inline-flex;
  align-items:center;
  gap:6px;
  min-height:40px;
  padding:7px 13px;
  font-size:12px;
  font-weight:700;
  border:1px solid var(--ui1e644-blush-line);
  border-radius:999px;
  color:var(--ui1e644-blush);
  background:var(--ui1e644-blush-wash);
}
.ui1e644-related a:active{ background:var(--ui1e644-blush); color:var(--ui1e644-ink); }

/* ---------- panel modules ---------- */
.ui1e644-panel{
  margin:14px 0 2px;
  padding:14px 13px;
  border:1px solid var(--ui1e644-line);
  border-radius:var(--ui1e644-r-m);
  background:var(--ui1e644-ink-raise);
}
.ui1e644-panel .ui1e644-h2{ font-size:17px; }

/* scenario Q&A */
.ui1e644-qa{ padding:11px 0; border-bottom:1px dashed var(--ui1e644-line-soft); }
.ui1e644-qa:last-of-type{ border-bottom:0; padding-bottom:2px; }
.ui1e644-qa p{ font-size:13px; line-height:1.7; }

/* achievements — milestone rows */
.ui1e644-mile{
  display:grid;
  grid-template-columns:36px 1fr;
  gap:11px;
  align-items:start;
  padding:10px 0;
  border-bottom:1px dashed var(--ui1e644-line-soft);
}
.ui1e644-mile:last-of-type{ border-bottom:0; }
.ui1e644-milebadge{
  width:34px; height:34px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:var(--ui1e644-r-s);
  border:1px solid var(--ui1e644-blush-line);
  background:var(--ui1e644-blush-wash);
  color:var(--ui1e644-blush);
  font-size:15px;
}
.ui1e644-mile b{
  display:block;
  font-size:13.5px;
  font-weight:700;
  color:var(--ui1e644-blush);
  margin-bottom:2px;
}
.ui1e644-mile p{ font-size:12.5px; line-height:1.65; }

/* latest winners ticker */
.ui1e644-win{
  display:grid;
  grid-template-columns:34px minmax(0,1fr) auto;
  gap:10px;
  align-items:center;
  padding:9px 0;
  border-bottom:1px dashed var(--ui1e644-line-soft);
}
.ui1e644-win:last-of-type{ border-bottom:0; }
.ui1e644-ava{
  width:30px; height:30px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:50%;
  border:1px solid var(--ui1e644-blush-line);
  background:var(--ui1e644-blush-wash);
  color:var(--ui1e644-blush);
  font-size:12px;
  font-weight:800;
}
.ui1e644-who{ min-width:0; }
.ui1e644-who b{
  display:block;
  font-size:12.5px;
  font-weight:700;
  color:var(--ui1e644-mist);
}
.ui1e644-who small{
  display:block;
  font-size:11px;
  color:var(--ui1e644-mist-dim);
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.ui1e644-amt{
  font-size:13px;
  font-weight:800;
  color:var(--ui1e644-blush);
  white-space:nowrap;
}

/* practical steps */
.ui1e644-steps{ counter-reset:ui1e644step; display:grid; gap:8px; margin:12px 0 2px; }
.ui1e644-step{
  position:relative;
  padding:10px 10px 10px 40px;
  border:1px solid var(--ui1e644-line-soft);
  border-radius:var(--ui1e644-r-s);
  background:var(--ui1e644-ink-deep);
  font-size:12.5px;
  line-height:1.65;
}
.ui1e644-step::before{
  counter-increment:ui1e644step;
  content:counter(ui1e644step);
  position:absolute;
  left:10px;
  top:12px;
  width:21px; height:21px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:50%;
  border:1px solid var(--ui1e644-blush-line);
  background:var(--ui1e644-blush-wash);
  color:var(--ui1e644-blush);
  font-size:10.5px;
  font-weight:800;
}

/* closing hint list */
.ui1e644-picks{ display:grid; gap:8px; margin-top:12px; }
.ui1e644-pick{
  display:grid;
  grid-template-columns:24px minmax(0,1fr);
  gap:10px;
  align-items:start;
  padding:10px 11px;
  border:1px solid var(--ui1e644-line-soft);
  border-radius:var(--ui1e644-r-s);
  font-size:12.5px;
  line-height:1.6;
}
.ui1e644-pick b{ color:var(--ui1e644-blush); }
.ui1e644-pick svg{ width:18px; height:18px; fill:var(--ui1e644-blush); margin-top:2px; }

/* ---------- homepage extended footer ---------- */
.ui1e644-xfoot{
  margin-top:24px;
  border-top:1px solid var(--ui1e644-line);
  background:var(--ui1e644-ink-deep);
  padding:16px 14px 4px;
}
.ui1e644-xhead{
  font-size:10.5px;
  font-weight:800;
  letter-spacing:.16em;
  text-transform:uppercase;
  color:var(--ui1e644-blush);
  margin-bottom:8px;
}
.ui1e644-xbrand p{ font-size:12.5px; line-height:1.7; }
.ui1e644-xpromo{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:8px;
  margin:16px 0;
}
.ui1e644-xact{
  display:flex;
  align-items:center;
  gap:8px;
  min-height:var(--ui1e644-tap);
  padding:8px 11px;
  border:1px solid var(--ui1e644-line);
  border-radius:var(--ui1e644-r-s);
  background:var(--ui1e644-ink-raise);
  font-size:12px;
  font-weight:700;
  color:var(--ui1e644-blush);
  text-align:left;
}
.ui1e644-xact svg{ width:16px; height:16px; fill:currentColor; flex:none; }
.ui1e644-xact:active{
  background:var(--ui1e644-blush-wash);
  border-color:var(--ui1e644-blush);
  box-shadow:0 0 12px var(--ui1e644-blush-glow);
}
.ui1e644-xact--wide{ grid-column:1 / -1; justify-content:center; }
.ui1e644-xdir{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:2px 14px;
  margin:16px 0;
}
.ui1e644-xdir a{
  display:flex;
  align-items:center;
  gap:7px;
  min-height:42px;
  font-size:12px;
  font-weight:600;
  color:var(--ui1e644-mist);
  border-bottom:1px dashed var(--ui1e644-line-soft);
}
.ui1e644-xdir a small{
  display:block;
  font-size:10.5px;
  font-weight:400;
  color:var(--ui1e644-mist-dim);
}
.ui1e644-xdir .ui1e644-mdot{ margin-top:1px; }
.ui1e644-xdisc{
  margin-top:14px;
  padding-top:12px;
  border-top:1px dashed var(--ui1e644-line-soft);
  font-size:11.5px;
  line-height:1.75;
  color:var(--ui1e644-mist-dim);
}

/* ---------- common footer ---------- */
.ui1e644-foot{
  /* bottom clearance keeps the last line clear of the fixed bottom nav */
  padding:16px 14px calc(var(--ui1e644-nav-h) + 26px + env(safe-area-inset-bottom));
  text-align:center;
  font-size:11.5px;
  line-height:1.7;
  color:var(--ui1e644-mist-dim);
  border-top:1px solid var(--ui1e644-line-soft);
}

/* ---------- fixed mobile bottom nav ---------- */
.ui1e644-bnav{
  position:fixed;
  left:50%;
  transform:translateX(-50%);
  bottom:0;
  width:100%;
  max-width:430px;
  z-index:70;
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  background:rgba(19,19,22,.97);
  border-top:1px solid var(--ui1e644-line);
  padding-bottom:env(safe-area-inset-bottom);
  backdrop-filter:blur(8px);
  -webkit-backdrop-filter:blur(8px);
}
.ui1e644-bitem{
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:3px;
  min-height:var(--ui1e644-nav-h);
  padding:4px 2px;
  font-size:10px;
  font-weight:700;
  letter-spacing:.02em;
  color:var(--ui1e644-mist-dim);
}
.ui1e644-bico{ width:21px; height:21px; fill:currentColor; }
.ui1e644-bitem:active{ color:var(--ui1e644-blush); }
.ui1e644-bitem[aria-current="page"]{ color:var(--ui1e644-blush); }
.ui1e644-bitem[aria-current="page"] .ui1e644-bico{
  filter:drop-shadow(0 0 6px var(--ui1e644-blush-glow));
}

/* ---------- motion budget ---------- */
@media (prefers-reduced-motion:reduce){
  .ui1e644-track{ transition:none; }
  .ui1e644-mhead svg,
  .ui1e644-burger i{ transition:none; }
  *{ scroll-behavior:auto; }
}
html{ scroll-behavior:smooth; }
