@import url('/rewards-slots-polish.css?v=20260816a');

/* DGN Reels mobile shell — iOS Safari + Android Chrome */

/* Low-pay art fallback. The core renderer falls back to .g when a raster file
   is missing; these rules turn that fallback into the real SVG reel art. */
.rw-cell[data-sym="A"] .g,
.rw-cell[data-sym="K"] .g,
.rw-cell[data-sym="Q"] .g,
.rw-cell[data-sym="J"] .g,
.rw-cell[data-sym="X"] .g{
  display:block;width:82%;height:82%;font-size:0!important;line-height:0;
  background-position:center;background-repeat:no-repeat;background-size:contain;
  filter:drop-shadow(0 2px 6px rgba(0,0,0,.6))
}
.rw-cell[data-sym="A"] .g{background-image:url('/assets/dgn-slots/set-01/low-symbols/card-a.svg')}
.rw-cell[data-sym="K"] .g{background-image:url('/assets/dgn-slots/set-01/low-symbols/card-k.svg')}
.rw-cell[data-sym="Q"] .g{background-image:url('/assets/dgn-slots/set-01/low-symbols/card-q.svg')}
.rw-cell[data-sym="J"] .g{background-image:url('/assets/dgn-slots/set-01/low-symbols/card-j.svg')}
.rw-cell[data-sym="X"] .g{background-image:url('/assets/dgn-slots/set-01/low-symbols/card-10.svg')}

/* Reduced-motion must never disable reel travel or settle timing. */
@media (prefers-reduced-motion: reduce) {
  .rw-cell.win,
  .rw-win.big b { animation:none !important; }
  .rw-strip.rolling { animation:rw-roll var(--roll,440ms) linear infinite !important; }
  .rw-strip.settle { transition:transform var(--settle,580ms) cubic-bezier(.2,1.18,.36,1) !important; }
  .rw-strip.rolling .g,
  .rw-strip.rolling img { filter:drop-shadow(0 2px 6px rgba(0,0,0,.6)) !important; }
}

.rl-gamebar { display:none; }

@media (max-width:760px) {
  html,body { min-height:100%; }
  body.slots-page { background:#050505; }

  body.slots-page .rw-slots {
    width:100%;
    max-width:none;
    padding:.3rem .45rem .75rem;
  }

  body.slots-page .rw-slots > .rw-subnav,
  body.slots-page .rw-blackjack-head,
  body.slots-page.slots-logged-in .rw-account,
  body.slots-page .rw-about,
  body.slots-page > footer { display:none; }

  .rw-slots .rw-machine {
    margin-top:.35rem;
    padding:.42rem;
    border-radius:.8rem;
    min-height:calc(70dvh - 1rem);
    min-height:calc(70vh - 1rem);
  }

  .rl-gamebar {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:.45rem;
    min-height:2.7rem;
    margin-bottom:.35rem;
    padding:.28rem .3rem .28rem .55rem;
    border:1px solid var(--line);
    border-radius:.65rem;
    background:#070807;
  }

  .rl-game-title { display:flex;align-items:baseline;gap:.45rem;min-width:0; }
  .rl-game-title b { font:900 .78rem var(--font-display);letter-spacing:.08em;text-transform:uppercase;white-space:nowrap; }
  .rl-game-title span { color:var(--subtle);font:700 .54rem var(--font-display);letter-spacing:.08em;text-transform:uppercase;white-space:nowrap; }

  .rl-game-actions { display:flex;align-items:center;gap:.32rem; }
  .rl-game-balance { display:flex;align-items:center;gap:.22rem;font:800 .7rem var(--font-display);font-variant-numeric:tabular-nums; }
  .rl-game-balance img { width:1.12rem;height:1.12rem;object-fit:contain; }

  #rwGameMode {
    min-height:2.08rem;
    padding:.34rem .52rem;
    border:1px solid var(--line-2);
    border-radius:.45rem;
    background:var(--inset);
    color:var(--ink);
    font:800 .56rem var(--font-display);
    letter-spacing:.05em;
    text-transform:uppercase;
    touch-action:manipulation;
  }

  .rl { grid-template-columns:minmax(0,1fr);gap:.35rem; }
  .rl-stage { order:1;gap:.28rem; }
  .rl-rail {
    order:2;
    display:grid;
    grid-template-columns:minmax(0,1fr) 8.4rem;
    grid-template-areas:
      "field field"
      "go modes"
      "readout readout"
      "msg msg"
      "tools tools";
    gap:.36rem;
    padding:0;
    border:0;
    background:transparent;
  }

  .rl-field { grid-area:field; }
  .rl-go { grid-area:go;min-height:3.2rem; }
  .rl-modes { grid-area:modes;padding:.2rem;min-width:0; }
  .rl-mode { min-height:2.8rem;padding:.2rem;font-size:.58rem;letter-spacing:.05em; }

  .rl-readout { grid-area:readout;grid-template-columns:repeat(3,1fr);gap:.28rem; }
  .rl-readout > div { display:grid;justify-items:center;gap:.08rem;padding:.3rem .2rem; }
  .rl-readout dt { font-size:.46rem; }
  .rl-readout dd { font-size:.72rem; }

  .rw-slots .rw-msg { grid-area:msg;text-align:center; }

  .rl-tools { grid-area:tools;grid-template-columns:repeat(4,1fr);gap:.24rem;margin:0;padding:0; }
  .rl-tools button { min-height:2.22rem;padding:.18rem;font-size:.5rem;letter-spacing:.025em; }
  .rl-tools span { display:none; }

  .rl-board {
    --gutter:0;
    grid-template-columns:minmax(0,1fr);
    gap:0;
    padding:.3rem;
    border-radius:.72rem;
  }
  .rl-nums { display:none; }
  .rw-reels { grid-column:1;gap:.16rem;padding:.2rem;border-radius:.58rem; }
  .rw-cell { border-radius:.26rem; }
  .rw-cell img { width:82%;height:82%; }

  .rw-feature { padding:.38rem .5rem;gap:.22rem .6rem;font-size:.56rem; }
  .rw-win { min-height:2rem; }
  .rw-win b { font-size:1.3rem; }
  .rw-win.zero b { font-size:.88rem; }
  .rw-lines { gap:.18rem;max-height:3rem;overflow:auto;-webkit-overflow-scrolling:touch; }
  .rw-lines li { padding:.16rem .32rem;font-size:.56rem; }
}

/* Desktop: use the full stage beside the control rail instead of leaving a
   large dead panel under a short reel window. */
@media (min-width:901px) {
  .rw-slots .rw-machine{padding:1.05rem}
  .rl{align-items:stretch;min-height:31.5rem}
  .rl-rail{height:100%}
  .rl-stage{height:100%;justify-content:center;gap:.45rem}
  .rl-board{flex:1;min-height:27rem;align-items:center;padding:.55rem .65rem}
  .rw-reels{
    width:100%;align-self:center;
    --cell:clamp(7.5rem,12vw,9.5rem)!important
  }
  .rw-cell img{width:82%;height:82%}
  .rw-win{min-height:1.6rem}
  .rw-win:empty{min-height:.25rem}
  .rw-lines:empty{display:none}
}

/* Reliable fallback for iOS Safari, with native Fullscreen API as enhancement
   on Android Chrome and browsers that expose it. */
body.slots-game-mode {
  overflow:hidden;
  overscroll-behavior:none;
  background:#050505;
  touch-action:manipulation;
}

body.slots-game-mode .site-head,
body.slots-game-mode > footer,
body.slots-game-mode .rw-slots > .rw-subnav,
body.slots-game-mode .rw-blackjack-head,
body.slots-game-mode .rw-account,
body.slots-game-mode .rw-about { display:none !important; }

body.slots-game-mode .rw-slots {
  width:100%;
  max-width:none;
  height:100vh;
  height:100dvh;
  margin:0;
  padding:0 !important;
}

body.slots-game-mode .rw-machine.slots-fullscreen {
  position:fixed;
  inset:0;
  z-index:9999;
  display:flex;
  flex-direction:column;
  width:100vw;
  height:100vh;
  height:100dvh;
  margin:0;
  padding:calc(env(safe-area-inset-top,0px) + .35rem) .45rem calc(env(safe-area-inset-bottom,0px) + .4rem);
  border:0;
  border-radius:0;
  background:#050505;
  overflow:hidden;
}

body.slots-game-mode .rl-gamebar { flex:0 0 auto;margin-bottom:.3rem; }
body.slots-game-mode .rl {
  flex:1;
  min-height:0;
  display:flex;
  flex-direction:column;
  justify-content:center;
  gap:.32rem;
  overflow:auto;
  -webkit-overflow-scrolling:touch;
}
body.slots-game-mode .rl-stage { flex:0 0 auto; }
body.slots-game-mode .rl-rail { flex:0 0 auto; }

@media (max-width:390px) {
  .rl-game-title span { display:none; }
  .rl-rail { grid-template-columns:minmax(0,1fr) 7.55rem; }
  .rl-tools button { font-size:.46rem; }
}

@media (orientation:landscape) and (max-height:520px) {
  body.slots-game-mode .rw-machine.slots-fullscreen { padding-top:calc(env(safe-area-inset-top,0px) + .18rem);padding-bottom:calc(env(safe-area-inset-bottom,0px) + .18rem); }
  body.slots-game-mode .rl-gamebar { min-height:2.25rem; }
  body.slots-game-mode .rl { display:grid;grid-template-columns:minmax(0,1.45fr) minmax(14rem,.55fr);align-items:center;gap:.45rem;overflow:hidden; }
  body.slots-game-mode .rl-stage { order:1; }
  body.slots-game-mode .rl-rail { order:2;display:flex;flex-direction:column;gap:.28rem; }
  body.slots-game-mode .rl-readout { display:none; }
  body.slots-game-mode .rl-tools { grid-template-columns:1fr 1fr; }
}
