/* Original 2048 × 1024 artwork: preserve reel coordinates and sprite proportions. */
#raStage { display:contents }
.ra-lines,.ra-meter { display:none }
.ra-hud { display:contents }
[hidden] { display:none !important }
.ra-symbol { position:relative; display:block; aspect-ratio:1 }
.ra-symbol img { position:absolute; inset:0; width:100%; height:100%; object-fit:contain }
.ra-symbol .ra-blur,.ra-symbol .ra-win { opacity:0 }
.ra-enabled { background:#110a05; --gold:#edbe53; --gold2:#be862f; --dim:#bdaf94; font-family:Arial,Helvetica,sans-serif }
.ra-enabled button { font-family:inherit }
.ra-enabled header { background:#110c08f5; border-color:#795220; position:relative; backdrop-filter:none }
.ra-enabled main { display:block; padding:12px; max-width:1800px; margin:auto }
.ra-enabled .machine { padding:0 0 14px; border:1px solid #755127; border-radius:4px; overflow:hidden; background:#211309; box-shadow:0 12px 50px #0008; scroll-margin-top:10px }
.ra-enabled .machine > .mtop { padding:6px 16px; margin:0; background:#140e09 }
.ra-enabled .machine > #gpbox { display:none }
.ra-enabled #bart { margin-left:auto; background:#282016; color:#c6ac76 }
.ra-enabled #gname { font-size:12px; letter-spacing:.7px }
.ra-enabled #raStage { display:block; position:relative; width:100%; aspect-ratio:2048/830; background:url('img/novomatic_bookofradeluxe/background.webp') center top/100% auto no-repeat }
.ra-enabled .bonus #raStage { background-image:url('img/novomatic_bookofradeluxe/background-bonus.webp') }
.ra-enabled #logo { display:block; position:absolute; left:33%; top:.2%; width:34%; height:14.5%; margin:0; text-align:center }
.ra-enabled #logo img { width:100%; height:100%; max-height:none; max-width:none; object-fit:contain; filter:drop-shadow(0 2px 2px #0009) }
.ra-enabled #reels { position:absolute; left:20.70%; top:17.1%; width:58.60%; height:80%; max-width:none; padding:0; gap:1.82%; margin:0; background:none; border:0; border-radius:0; box-shadow:none; overflow:hidden }
.ra-enabled .reel { width:18.544%; flex:0 0 18.544%; border-radius:0; background:none }
.ra-enabled .cell { width:100%; height:var(--cell); margin:0; background:none; border:0; border-radius:0; overflow:hidden }
.ra-enabled .cell::before,.ra-enabled .cell i { display:none }
.ra-enabled .cell .art { width:100%; height:100%; filter:none }
.ra-enabled .cell.win { background:none; box-shadow:inset 0 0 15px #ffb92880; animation:none }
.ra-enabled .cell.win .ra-win { opacity:1; animation:ra-win-glow .8s ease-in-out 3 }
.ra-enabled .cell.win .ra-normal { opacity:0 }
.ra-enabled .reel-spinning .ra-symbol.has-blur .ra-normal { opacity:0 }
.ra-enabled .reel-spinning .ra-symbol.has-blur .ra-blur { opacity:1 }
.ra-enabled .reel-spinning .ra-symbol:not(.has-blur) { filter:blur(2px) }
.ra-enabled .ra-lines { position:absolute; display:flex; flex-direction:column; justify-content:space-between; width:3.85%; height:78%; top:18.1% }
.ra-enabled .ra-lines.left { left:15.9% }
.ra-enabled .ra-lines.right { right:15.9% }
.ra-enabled .ra-line { display:block; width:100%; aspect-ratio:79/56; background-image:url('img/novomatic_bookofradeluxe/line-markers.webp'); background-size:100% 2000%; opacity:1 }
.ra-enabled .ra-line.inactive { filter:grayscale(.8); opacity:.38 }
.ra-enabled .ra-line.winning { filter:brightness(1.4); box-shadow:0 0 10px #ffe990 }
.ra-enabled .ra-hud { display:grid; grid-template-columns:17% 1fr 17%; gap:6px; width:70%; margin:8px auto 0 }
.ra-enabled .ra-meter,.ra-enabled #msg { display:flex; flex-direction:column; align-items:center; justify-content:center; min-height:60px; border:2px solid #6f6a62; border-radius:9px; background:linear-gradient(#39332f,#1c1917); box-shadow:inset 0 0 0 2px #1118; text-align:center }
.ra-enabled .ra-meter small { font-size:12px; color:#e7e3dc }
.ra-enabled .ra-meter b { color:#ffff00; font-size:24px; line-height:1.2; font-variant-numeric:tabular-nums }
.ra-enabled #msg { color:#fff000; font-size:18px; margin:0; padding:6px 14px; line-height:1.3 }
.ra-enabled #msg.err { color:#ff8c7d }
.ra-enabled .machine > .ctrl { width:70%; margin:8px auto 0; gap:7px }
.ra-enabled .machine > .ctrl .grp label { color:#eee2ce; font-weight:600 }
.ra-enabled .machine .step { border:2px solid #817f72; border-radius:5px; background:#080706; color:#ffff00 }
.ra-enabled .machine .step { min-height:42px }
.ra-enabled .machine .step span { flex:1 }
.ra-enabled .machine .step button { color:#1b1b17; background:linear-gradient(#eee,#777,#ccc); border-radius:2px; text-shadow:0 1px white }
.ra-enabled .machine button.main,.ra-enabled .machine button.alt { background-image:url('img/novomatic_bookofradeluxe/button-blue.webp'); background-size:100% 400%; background-position:0 0; border:0; border-radius:5px; color:#171a24; text-shadow:0 1px #fff9; box-shadow:0 2px 2px #0008 }
.ra-enabled .machine button.main { height:54px; min-width:120px; max-width:240px; margin-left:auto; letter-spacing:1px }
.ra-enabled .machine > .ctrl > .grp { flex:1 }
.ra-enabled .machine button.main:hover,.ra-enabled .machine button.alt:hover { background-position:0 33.333%; color:white; text-shadow:0 1px #000 }
.ra-enabled .machine button:focus-visible,.ra-enabled header button:focus-visible { outline:3px solid #ffdd76; outline-offset:3px }
.ra-enabled .machine button:disabled { opacity:.5; cursor:not-allowed }
.ra-enabled #gamble,.ra-enabled #modo { width:70%; margin:10px auto 0 }
.ra-enabled .machine.bonus { border-color:#dfa632; box-shadow:0 0 28px #d49b3730 }
.ra-enabled #slotPanel { margin:18px auto; max-width:1200px }
.ra-enabled #slotPanel .card { background:#19140f; border-color:#4f3b27 }
.ra-enabled.ra-focus #slotPanel { display:none }
.ra-enabled.ra-focus main { max-width: min(1800px,calc((100vh - 260px)*2.46 + 24px)) }
@keyframes ra-win-glow { 50% { filter:brightness(1.25) } }
@media (max-width:760px) {
  .ra-enabled main { padding:4px }
  .ra-enabled header { padding:8px; gap:8px }
  .ra-enabled .money { gap:10px }
  .ra-enabled .money b { font-size:15px }
  .ra-enabled #bart,.ra-enabled #bgid { display:none !important }
  .ra-enabled .ra-hud,.ra-enabled .machine > .ctrl,.ra-enabled #gamble,.ra-enabled #modo { width:96% }
  .ra-enabled #msg { font-size:13px; padding:5px; min-height:52px }
  .ra-enabled .ra-meter b { font-size:18px }
  .ra-enabled .ra-meter small { font-size:10px }
  .ra-enabled .ra-hud { grid-template-columns:19% 1fr 19% }
  .ra-enabled .machine > .ctrl .grp { flex:1 }
  .ra-enabled .machine button.main { flex:1; min-width:100px; height:45px }
  .ra-enabled.ra-focus main { max-width:100% }
}
@media (prefers-reduced-motion:reduce) {
  .ra-enabled .cell.win .ra-win { animation:none }
  .ra-enabled .machine { transition:none }
}
