:root {
  --rq-primary-theme-font: Inter, Arial, sans-serif;
  --rq-cabinet-frame-border: 1px solid rgba(255,255,255,.36);
  --rq-dashboard-button-bg: linear-gradient(180deg,#263b62,#0a1225);
  --rq-dashboard-button-border: rgba(255,255,255,.42);
  --rq-active-payline-color: #ffe46b;
  --rq-background-artwork: none;
  --rq-reel-background: rgba(5,12,22,.72);
  --rq-accent-color: #ffe46b;
  --rq-accent-glow: rgba(255,228,107,.62);
  --rq-shell-max-width: 1180px;
  --rq-shell-radius: 20px;
}
.rq-universal-cabinet {
  position: relative;
  width: min(var(--rq-shell-max-width), calc(100vw - 18px));
  margin-inline: auto;
  box-sizing: border-box;
  font-family: var(--rq-primary-theme-font);
  border: var(--rq-cabinet-frame-border);
  border-radius: var(--rq-shell-radius);
  isolation: isolate;
  overflow: visible;
}
.rq-universal-cabinet::before {
  content:"";
  position:absolute;
  inset:0;
  z-index:-2;
  border-radius:inherit;
  background-image:var(--rq-background-artwork);
  background-position:center;
  background-size:cover;
  pointer-events:none;
}
.rq-game-core-viewport {
  position: relative;
  overflow: hidden;
  background: var(--rq-reel-background);
}
.rq-universal-dashboard {
  position: relative;
  z-index: 12;
  box-sizing: border-box;
}
.rq-universal-toolbar {
  position:absolute;
  z-index:80;
  top:10px;
  left:10px;
  display:flex;
  gap:6px;
  pointer-events:auto;
}
.rq-universal-toolbar > a,
.rq-universal-toolbar > button {
  width:38px;
  height:38px;
  display:grid;
  place-items:center;
  padding:0;
  border:1px solid var(--rq-dashboard-button-border);
  border-radius:9px;
  color:#fff;
  background:var(--rq-dashboard-button-bg);
  box-shadow:0 0 14px rgba(0,0,0,.48), inset 0 1px rgba(255,255,255,.18);
  text-decoration:none;
  cursor:pointer;
  font-size:19px;
  line-height:1;
}
.rq-universal-toolbar > :is(a,button):hover,
.rq-universal-toolbar > :is(a,button):focus-visible {
  border-color:var(--rq-accent-color);
  box-shadow:0 0 16px var(--rq-accent-glow), inset 0 1px rgba(255,255,255,.22);
}
.rq-universal-actions {
  display:grid !important;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:8px;
  align-items:stretch;
}
.rq-universal-action {
  min-height:62px;
  border:1px solid var(--rq-dashboard-button-border);
  border-radius:12px;
  background:var(--rq-dashboard-button-bg);
  color:#fff;
  box-shadow:inset 0 1px rgba(255,255,255,.16),0 7px 20px rgba(0,0,0,.28);
  font:800 12px/1 var(--rq-primary-theme-font);
  letter-spacing:.08em;
  text-transform:uppercase;
  cursor:pointer;
}
.rq-universal-action:is(:hover,:focus-visible):not(:disabled),
.rq-universal-action.active {
  border-color:var(--rq-accent-color);
  box-shadow:0 0 20px var(--rq-accent-glow),inset 0 1px rgba(255,255,255,.25);
}
.rq-universal-action:disabled { opacity:.42; cursor:not-allowed; filter:saturate(.45); }
.rq-gamble-actions { display:contents; }
.rq-gamble-actions[hidden] { display:none !important; }
.rq-gamble-resume {
  position:absolute;
  z-index:90;
  right:12px;
  top:12px;
  border:1px solid var(--rq-accent-color);
  border-radius:999px;
  padding:9px 14px;
  color:#fff;
  background:rgba(3,8,16,.88);
  box-shadow:0 0 18px var(--rq-accent-glow);
  font-weight:900;
  cursor:pointer;
}
.rq-gamble-resume[hidden] { display:none; }
.rq-universal-settings {
  position:fixed;
  inset:0;
  z-index:100000;
  display:grid;
  place-items:center;
  padding:18px;
  background:rgba(1,4,10,.76);
  backdrop-filter:blur(8px);
}
.rq-universal-settings[hidden] { display:none; }
.rq-universal-settings-card {
  width:min(440px,calc(100vw - 28px));
  color:#fff;
  border:var(--rq-cabinet-frame-border);
  border-radius:18px;
  padding:24px;
  background:linear-gradient(160deg,rgba(22,34,60,.98),rgba(4,9,19,.98));
  box-shadow:0 24px 90px rgba(0,0,0,.65),0 0 28px var(--rq-accent-glow);
}
.rq-universal-settings-card header { display:flex; justify-content:space-between; align-items:center; gap:16px; }
.rq-universal-settings-card h2 { margin:0; font-size:24px; }
.rq-universal-settings-card header button { border:0; background:transparent; color:#fff; font-size:24px; cursor:pointer; }
.rq-universal-setting { display:flex; align-items:center; justify-content:space-between; gap:20px; padding:16px 0; border-bottom:1px solid rgba(255,255,255,.12); }
.rq-universal-setting input { width:22px; height:22px; accent-color:var(--rq-accent-color); }
.rq-gamble-active .rq-game-core-viewport,
.rq-gamble-active .rq-universal-dashboard { pointer-events:none; }
.rq-gamble-active .rq-game-core-viewport { filter:brightness(.42) saturate(.65); }
.rq-universal-cabinet:fullscreen,
.rq-universal-cabinet.rq-pseudo-fullscreen {
  width:100vw !important;
  max-width:none !important;
  height:100vh !important;
  margin:0 !important;
  border-radius:0 !important;
  display:flex;
  flex-direction:column;
  justify-content:center;
}
@media (max-width:760px) {
  .rq-universal-cabinet { width:calc(100vw - 8px); border-radius:12px; }
  .rq-universal-toolbar { top:5px; left:5px; gap:4px; }
  .rq-universal-toolbar > a,.rq-universal-toolbar > button { width:32px;height:32px;font-size:16px; }
  .rq-universal-action { min-height:54px; font-size:10px; }
}

/* v78 universal action-state matrix. Every title presents Pharaoh's exact
   three-button normal state and four-button unresolved-win state. */
.rq-universal-dashboard.rq-shell-normalized:not(.rq-win-ready) {
  grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,1.3fr) !important;
}
.rq-universal-dashboard.rq-shell-normalized.rq-win-ready {
  grid-template-columns:minmax(0,.55fr) minmax(0,1fr) minmax(0,1fr) minmax(0,1.22fr) !important;
}
.rq-universal-dashboard.rq-shell-normalized:not(.rq-win-ready) [data-rq-role="collect"],
.rq-universal-dashboard.rq-shell-normalized:not(.rq-win-ready) [data-rq-role="ladder"],
.rq-universal-dashboard.rq-shell-normalized:not(.rq-win-ready) [data-rq-role="cards"] {
  display:none !important;
}
.rq-universal-dashboard.rq-shell-normalized.rq-win-ready [data-rq-role="max-bet"],
.rq-universal-dashboard.rq-shell-normalized.rq-win-ready [data-rq-role="auto"] {
  display:none !important;
}
.rq-universal-dashboard.rq-shell-normalized [data-rq-role="collect"] { grid-column:1; }
.rq-universal-dashboard.rq-shell-normalized [data-rq-role="ladder"] { grid-column:2; }
.rq-universal-dashboard.rq-shell-normalized [data-rq-role="cards"] { grid-column:3; }
.rq-universal-dashboard.rq-shell-normalized [data-rq-role="spin"] { grid-column:-2 / -1; }
.rq-universal-auxiliary-action,
.rq-native-shell-control { display:none !important; }

/* Pirate's original meter row is retained, while only its action buttons are
   extracted into the same shared matrix used by the other cabinets. */
.pht-controls.rq-universal-console-row {
  grid-template-columns:52px 62px minmax(140px,.82fr) 62px minmax(220px,1.25fr) minmax(300px,1.5fr) !important;
}
.pht-controls > .rq-extracted-action-host {
  min-width:0;
  align-self:stretch;
}
.pht-controls > .rq-extracted-action-host .rq-universal-action {
  min-height:80px;
}
@media(max-width:850px) and (orientation:landscape) {
  .pht-controls.rq-universal-console-row {
    grid-template-columns:36px 36px 105px 36px minmax(150px,1fr) minmax(230px,1.35fr) !important;
  }
  .pht-controls > .rq-extracted-action-host .rq-universal-action { min-height:52px; }
}

/* htdocs(81): Pharaoh's Golden Secret is the authoritative cabinet geometry.
   Game controllers still own only the contents of the reel viewport. */
body[data-rq-game-id] {
  --rq-site-hud-height:68px;
  overflow:hidden;
}
body[data-rq-game-id]:not(.pgs-page) :is(.game-main,.pht-main) {
  height:calc(100vh - var(--rq-site-hud-height)) !important;
  min-height:510px;
  padding:10px 12px 12px !important;
  box-sizing:border-box;
}
body[data-rq-game-id] .rq-universal-cabinet {
  --rq-shell-max-width:1510px;
  width:min(100%,1510px) !important;
  height:100% !important;
  min-height:0 !important;
  margin:auto !important;
  padding:7px 94px 9px !important;
  display:grid !important;
  grid-template-rows:96px minmax(0,1fr) 35px 92px !important;
  grid-template-columns:minmax(0,1fr) !important;
  gap:5px !important;
  border:3px solid var(--rq-frame-main,#d6a23a) !important;
  border-radius:9px !important;
  background:var(--rq-cabinet-background,linear-gradient(#10251f,#07140f 18%,#020907)) !important;
  box-shadow:0 0 0 4px var(--rq-frame-inner,#175e58),0 0 0 6px var(--rq-frame-outer,#ba7a1c),0 18px 55px #000,inset 0 0 28px var(--rq-accent-soft,rgba(40,210,189,.12)) !important;
  overflow:visible !important;
}
body[data-rq-game-id] .rq-universal-cabinet > :is(.arcade-topbar,.pht-title) { grid-row:1; min-height:0; }
body[data-rq-game-id] .rq-universal-cabinet > :is(.arcade-stage-wrap,.pht-reel-frame) { grid-row:2; min-height:0; }
body[data-rq-game-id] .rq-universal-cabinet > :is(.arcade-message,.pht-message) { grid-row:3; min-height:35px; height:35px; margin:0 !important; }
body[data-rq-game-id] .rq-universal-cabinet > :is(.arcade-console,.pht-controls) { grid-row:4; min-height:92px; height:92px; margin:0 !important; }
body[data-rq-game-id] .rq-game-core-viewport {
  height:100% !important;
  min-height:0 !important;
  border:3px solid var(--rq-reel-frame,#d6a23a) !important;
  border-radius:6px !important;
  box-shadow:inset 0 0 24px rgba(0,0,0,.8),0 0 16px var(--rq-accent-soft) !important;
}
body[data-rq-game-id] .rq-universal-toolbar {
  top:7px;
  left:7px;
  display:grid;
  grid-template-columns:55px;
  grid-auto-rows:44px;
  gap:6px;
}
body[data-rq-game-id] .rq-universal-toolbar > :is(a,button) {
  width:55px;
  height:44px;
  border-radius:8px;
  border-color:var(--rq-dashboard-button-border);
  background:var(--rq-dashboard-button-bg);
  color:#fff;
}
body[data-rq-game-id] .rq-universal-toolbar + :is(.arcade-topbar,.pht-title) { min-width:0; }
body[data-rq-game-id] .rq-universal-dashboard {
  height:100% !important;
  align-self:stretch;
  gap:5px !important;
}
body[data-rq-game-id] .rq-universal-action {
  width:auto !important;
  height:100% !important;
  min-width:0 !important;
  min-height:0 !important;
  padding:5px 4px !important;
  display:flex !important;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:3px;
  border:2px solid var(--rq-dashboard-button-border) !important;
  border-radius:9px !important;
  background:var(--rq-dashboard-button-bg) !important;
  color:#fff !important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.08),inset 0 -9px 18px rgba(0,0,0,.28),0 4px 10px rgba(0,0,0,.38) !important;
}
body[data-rq-game-id] .rq-universal-action svg {
  width:36px;
  height:36px;
  fill:none;
  stroke:currentColor;
  stroke-width:4;
  stroke-linecap:round;
  stroke-linejoin:round;
}
body[data-rq-game-id] .rq-universal-action > span { font-size:.62rem; font-weight:1000; letter-spacing:.06em; }
body[data-rq-game-id] .rq-universal-action > small { font-size:.45rem; opacity:.82; }
body[data-rq-game-id] .rq-universal-action[data-rq-role="spin"] {
  border-color:var(--rq-spin-border,#75cf62) !important;
  background:var(--rq-spin-background,linear-gradient(#218942,#075221)) !important;
  color:#edffe9 !important;
}
body[data-rq-game-id] .rq-universal-action[data-rq-role="collect"] {
  border-color:var(--rq-collect-border,#71c75f) !important;
  background:var(--rq-collect-background,linear-gradient(#267c38,#0b421c)) !important;
}
body[data-rq-game-id] .rq-universal-action[data-rq-role="ladder"],
body[data-rq-game-id] .rq-universal-action[data-rq-role="cards"] {
  border-color:var(--rq-gamble-border,#f0bb49) !important;
  background:var(--rq-gamble-background,linear-gradient(#8b5714,#3d2108)) !important;
  color:#fff2ae !important;
}
body[data-rq-game-id] .rq-universal-dashboard.rq-shell-normalized:not(.rq-win-ready) {
  grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,1.28fr) !important;
}
body[data-rq-game-id] .rq-universal-dashboard.rq-shell-normalized.rq-win-ready {
  grid-template-columns:minmax(0,.82fr) minmax(0,1fr) minmax(0,1fr) minmax(0,1.25fr) !important;
}
body[data-rq-game-id] .rq-universal-dashboard.rq-shell-normalized [data-rq-role="spin"] { grid-column:auto !important; }
body[data-rq-game-id] .rq-universal-dashboard.rq-shell-normalized [data-rq-role] { grid-row:1; }
body[data-rq-game-id] .rq-feature-buy-row,
body[data-rq-game-id] [id*="feature-buy"],
body[data-rq-game-id] [id$="-bonus-button"] { display:none !important; }

/* Pirate keeps all four jackpot values, but they occupy the Pharaoh top feature
   bay instead of adding another cabinet row. */
.pht-cabinet.rq-universal-cabinet > .pht-jackpots {
  position:absolute !important;
  z-index:8;
  top:16px;
  right:100px;
  width:min(52%,620px);
  height:66px;
  margin:0 !important;
}
.pht-cabinet.rq-universal-cabinet > .pht-title { padding-left:72px; padding-right:min(55%,650px); }
.pht-cabinet.rq-universal-cabinet > .pht-stage-wrap {
  display:grid !important;
  grid-template-columns:34px minmax(0,1fr) 34px !important;
  gap:4px;
  padding:0 4px;
}
.pht-stage-wrap > .pht-reel-frame { min-width:0; min-height:0; height:100% !important; }
.pht-line-markers { display:flex; flex-direction:column; justify-content:space-around; gap:2px; min-height:0; }
.pht-line-markers i {
  display:grid; place-items:center; min-height:18px; border:1px solid var(--rq-active-payline-color);
  border-radius:4px; color:#fff; background:rgba(3,20,23,.88); font:900 10px/1 var(--rq-primary-theme-font);
  box-shadow:0 0 7px var(--rq-accent-glow);
}
.pht-controls { display:grid !important; grid-template-columns:minmax(260px,.9fr) minmax(230px,1fr) minmax(280px,1.15fr) !important; gap:5px !important; }

@media(max-width:1100px) and (orientation:landscape) {
  body[data-rq-game-id] { --rq-site-hud-height:48px; }
  body[data-rq-game-id]:not(.pgs-page) :is(.game-main,.pht-main) { min-height:330px; padding:5px 8px 7px !important; }
  body[data-rq-game-id] .rq-universal-cabinet {
    padding:4px 74px 5px !important;
    grid-template-rows:56px minmax(0,1fr) 24px 61px !important;
    gap:3px !important;
  }
  body[data-rq-game-id] .rq-universal-cabinet > :is(.arcade-message,.pht-message) { height:24px; min-height:24px; }
  body[data-rq-game-id] .rq-universal-cabinet > :is(.arcade-console,.pht-controls) { height:61px; min-height:61px; }
  body[data-rq-game-id] .rq-universal-toolbar { left:7px; top:34px; grid-auto-rows:44px; }
  body[data-rq-game-id] .rq-universal-action svg { width:25px; height:25px; }
  .pht-cabinet.rq-universal-cabinet > .pht-jackpots { top:7px; right:78px; height:44px; }
  .pht-cabinet.rq-universal-cabinet > .pht-title { padding-left:62px; }
}

@media(max-width:760px) {
  body[data-rq-game-id] .rq-universal-cabinet { padding-inline:10px !important; }
  body[data-rq-game-id] .rq-universal-toolbar { display:none; }
  .pht-cabinet.rq-universal-cabinet > .pht-jackpots { right:12px; }
}

/* htdocs(82): viewport-fit and proper fixed-payline side rails.
   Fruit and Pirate use the full two-row site HUD, while Neon and Dragon keep
   the already approved cabinet dimensions. */
body[data-rq-game-id="fruit-frenzy-surprise"],
body[data-rq-game-id="pirates-hidden-treasure"] {
  --rq-site-hud-height:112px;
}

body[data-rq-game-id="pirates-hidden-treasure"] .rq-universal-cabinet {
  max-width:1220px !important;
}

body[data-rq-game-id="pirates-hidden-treasure"] .pht-title h1 {
  font-size:clamp(26px,3vw,44px);
  line-height:.92;
}

body[data-rq-game-id="neon-fortune"] .arcade-stage-wrap > .payline-rail,
body[data-rq-game-id="dragons-fire"] .arcade-stage-wrap > .payline-rail {
  height:100%;
  min-height:0;
  padding:3px 2px;
  display:grid !important;
  grid-template-rows:repeat(10,minmax(0,1fr));
  align-items:stretch;
  justify-content:stretch;
  gap:2px;
  overflow:hidden;
}

body[data-rq-game-id="neon-fortune"] .arcade-stage-wrap > .payline-rail .payline-marker,
body[data-rq-game-id="dragons-fire"] .arcade-stage-wrap > .payline-rail > i {
  width:100%;
  min-width:0;
  min-height:0;
  margin:0;
  padding:0;
  display:grid;
  place-items:center;
  border:1px solid rgba(255,255,255,.7);
  border-radius:3px;
  color:#fff;
  background:linear-gradient(
    180deg,
    color-mix(in srgb,var(--line-colour,var(--line-color,#ffd34f)) 90%,white 10%),
    color-mix(in srgb,var(--line-colour,var(--line-color,#ffd34f)) 76%,black 24%)
  );
  box-shadow:inset 0 1px 0 rgba(255,255,255,.35),inset 0 -2px 4px rgba(0,0,0,.32);
  font:1000 clamp(.52rem,.7vw,.72rem)/1 Arial,sans-serif;
  font-style:normal;
  text-shadow:0 1px 2px rgba(0,0,0,.9);
}

@media(max-width:1100px) and (orientation:landscape) {
  body[data-rq-game-id="fruit-frenzy-surprise"],
  body[data-rq-game-id="pirates-hidden-treasure"] {
    --rq-site-hud-height:88px;
  }
}

/* htdocs(83): shared Pharaoh-sized logo bay and installed page background. */
body[data-rq-game-id] {
  position:relative;
  isolation:isolate;
  background:#010706;
}
body[data-rq-game-id]::before {
  content:"";
  position:fixed;
  z-index:-2;
  inset:var(--rq-site-hud-height) 0 0;
  background-image:linear-gradient(rgba(0,5,7,.38),rgba(0,5,7,.58)),var(--rq-installed-background,none);
  background-position:center;
  background-repeat:no-repeat;
  background-size:cover;
  opacity:0;
  transition:opacity .2s ease;
  pointer-events:none;
}
body[data-rq-game-id].rq-has-installed-background::before { opacity:1; }
body[data-rq-game-id]:not(.pgs-page) :is(.game-main,.pht-main) { background:transparent !important; }
body[data-rq-game-id] .rq-universal-cabinet > .rq-logo-bay {
  position:relative !important;
  min-width:0;
  width:100%;
  height:100%;
  padding:0 8px !important;
  display:grid !important;
  grid-template-columns:1fr !important;
  place-items:center !important;
  overflow:hidden;
  background:transparent !important;
  border:0 !important;
}
body[data-rq-game-id] .rq-logo-bay > :not(.rq-slot-game-logo):not(.rq-universal-toolbar) {
  visibility:hidden !important;
  pointer-events:none !important;
}
body[data-rq-game-id] .rq-slot-game-logo {
  display:block;
  grid-area:1 / 1;
  width:min(96%,1180px);
  max-width:none;
  height:108px;
  object-fit:contain;
  object-position:center;
  filter:drop-shadow(0 4px 5px rgba(0,0,0,.58)) drop-shadow(0 0 15px var(--rq-accent-soft,rgba(255,194,59,.2)));
}
body[data-rq-game-id] .rq-slot-game-logo:not([src]) { visibility:hidden; }
body[data-rq-game-id="pirates-hidden-treasure"] .rq-universal-cabinet {
  width:min(100%,1510px) !important;
  max-width:1510px !important;
}
.pht-cabinet.rq-universal-cabinet > .pht-jackpots { display:none !important; }
.pht-cabinet.rq-universal-cabinet > .pht-title { padding:0 8px !important; }
@media(max-width:1100px) and (orientation:landscape) {
  body[data-rq-game-id] .rq-slot-game-logo { width:min(96%,820px); height:70px; }
}

/* Mobile cabinet v6 — native Merkur-style landscape stage.
   The mobile game owns the visual viewport; no website chrome or desktop
   scaling participates in the layout. */
@media (orientation:landscape) and (max-width:1100px) and (max-height:700px) {
  html {
    width:100% !important;
    height:100% !important;
    overflow:hidden !important;
    background:#020504 !important;
  }

  body[data-rq-game-id] {
    position:fixed !important;
    inset:0 !important;
    width:100% !important;
    height:100dvh !important;
    min-height:0 !important;
    margin:0 !important;
    padding:0 !important;
    overflow:hidden !important;
    overscroll-behavior:none !important;
  }

  body[data-rq-game-id] > :is(.game-header,.pht-header,.pgs-site-hud),
  body[data-rq-game-id] :is(.pgs-cabinet-toolbar,.pgs-feature-strip) {
    display:none !important;
  }

  body[data-rq-game-id] > :is(.game-main,.pht-main,.pgs-game-main),
  body[data-rq-game-id].pgs-page #game-shell,
  body[data-rq-game-id].pgs-page #game-shell > .pgs-game-main {
    position:absolute !important;
    inset:0 !important;
    box-sizing:border-box !important;
    width:100% !important;
    height:100dvh !important;
    min-height:0 !important;
    max-height:none !important;
    margin:0 !important;
    padding:0 !important;
    overflow:hidden !important;
  }

  body[data-rq-game-id] :is(.rq-universal-cabinet,.slot-cabinet,.pht-cabinet,.ck-cabinet),
  body[data-rq-game-id].pgs-page #game-cabinet {
    position:absolute !important;
    inset:0 !important;
    box-sizing:border-box !important;
    display:block !important;
    width:100% !important;
    height:100dvh !important;
    min-width:0 !important;
    min-height:0 !important;
    max-width:none !important;
    max-height:none !important;
    aspect-ratio:auto !important;
    margin:0 !important;
    padding:2px !important;
    border-radius:0 !important;
    overflow:hidden !important;
  }

  body[data-rq-game-id] :is(.arcade-topbar,.pht-topbar,.pgs-topbar,.ck-header) {
    position:absolute !important;
    inset:2px 62px auto 48px !important;
    box-sizing:border-box !important;
    width:auto !important;
    height:clamp(30px,10dvh,42px) !important;
    min-height:0 !important;
    max-height:42px !important;
    overflow:hidden !important;
  }

  body[data-rq-game-id] :is(.arcade-stage-wrap,.pht-stage-wrap,.pgs-stage-wrap,.ck-stage) {
    position:absolute !important;
    inset:calc(clamp(30px,10dvh,42px) + 4px) 62px 55px 48px !important;
    box-sizing:border-box !important;
    width:auto !important;
    height:auto !important;
    min-width:0 !important;
    min-height:0 !important;
    max-width:none !important;
    max-height:none !important;
    margin:0 !important;
    overflow:hidden !important;
  }

  body[data-rq-game-id] :is(.arcade-reel-window,.pht-reel-frame,.pgs-reel-window,.ck-reel-window,.rq-game-core-viewport),
  body[data-rq-game-id] :is(.arcade-reels,.pht-reels,.pgs-reels,.ck-reels) {
    width:100% !important;
    height:100% !important;
    min-height:0 !important;
    max-height:100% !important;
  }

  body[data-rq-game-id] :is(.arcade-message,.pht-message,.pgs-message,.ck-message) {
    position:absolute !important;
    left:48px !important;
    right:62px !important;
    bottom:42px !important;
    box-sizing:border-box !important;
    width:auto !important;
    height:13px !important;
    min-height:13px !important;
    margin:0 !important;
    padding:0 5px !important;
    font-size:8px !important;
    line-height:13px !important;
    overflow:hidden !important;
  }

  body[data-rq-game-id] :is(.arcade-console,.pht-controls,.pgs-console,.ck-console) {
    position:absolute !important;
    inset:auto 2px 2px 2px !important;
    box-sizing:border-box !important;
    width:auto !important;
    height:46px !important;
    min-height:46px !important;
    max-height:46px !important;
    margin:0 !important;
    padding:2px 62px 2px 48px !important;
    overflow:hidden !important;
  }

  body[data-rq-game-id] :is(.classic-console-left,.classic-meter-grid,.ck-meters) {
    height:34px !important;
    min-height:0 !important;
    grid-auto-rows:minmax(0,1fr) !important;
    gap:2px !important;
  }

  body[data-rq-game-id] :is(.classic-meter,.pgs-meter,.ck-meter) {
    min-height:0 !important;
    height:34px !important;
    padding:1px 4px !important;
    font-size:clamp(7px,1.5vw,11px) !important;
    line-height:1 !important;
  }

  body[data-rq-game-id] :is(.classic-utility-stack,.rq-universal-utility) {
    position:absolute !important;
    z-index:110 !important;
    left:4px !important;
    top:50% !important;
    bottom:auto !important;
    transform:translateY(-50%) !important;
    width:40px !important;
    height:auto !important;
    display:flex !important;
    flex-direction:column !important;
    gap:5px !important;
  }

  body[data-rq-game-id] :is(.classic-utility-button,.rq-universal-utility button) {
    width:38px !important;
    height:46px !important;
    min-height:46px !important;
    padding:0 !important;
    border-radius:50% !important;
  }

  body[data-rq-game-id] :is(.pgs-action-buttons,.rq-universal-dashboard,.ck-actions),
  body[data-rq-game-id] .pgs-action-buttons.gamble-actions-hidden,
  body[data-rq-game-id] .pgs-action-buttons.win-ready {
    position:absolute !important;
    z-index:110 !important;
    right:3px !important;
    top:50% !important;
    bottom:auto !important;
    transform:translateY(-50%) !important;
    width:56px !important;
    height:auto !important;
    display:flex !important;
    flex-direction:column !important;
    grid-template-columns:none !important;
    grid-template-rows:none !important;
    gap:5px !important;
    overflow:visible !important;
  }

  body[data-rq-game-id] :is(.classic-action-button,.rq-universal-action,.ck-action) {
    flex:0 0 40px !important;
    width:40px !important;
    height:40px !important;
    min-height:40px !important;
    padding:0 !important;
    border-radius:50% !important;
  }

  body[data-rq-game-id] :is(.action-spin,.rq-universal-action[data-rq-role="spin"],.ck-spin) {
    order:99 !important;
    flex-basis:54px !important;
    width:54px !important;
    height:54px !important;
    min-height:54px !important;
    margin:0 0 0 -7px !important;
  }
}

@media (orientation:landscape) and (max-width:1100px) and (max-height:390px) {
  body[data-rq-game-id] :is(.arcade-topbar,.pht-topbar,.pgs-topbar,.ck-header) {
    inset-top:2px !important;
    height:28px !important;
  }
  body[data-rq-game-id] :is(.arcade-stage-wrap,.pht-stage-wrap,.pgs-stage-wrap,.ck-stage) {
    inset:32px 58px 49px 44px !important;
  }
  body[data-rq-game-id] :is(.arcade-message,.pht-message,.pgs-message,.ck-message) {
    left:44px !important;
    right:58px !important;
    bottom:37px !important;
    height:10px !important;
    min-height:10px !important;
    line-height:10px !important;
  }
  body[data-rq-game-id] :is(.arcade-console,.pht-controls,.pgs-console,.ck-console) {
    height:35px !important;
    min-height:35px !important;
    max-height:35px !important;
    padding-left:44px !important;
    padding-right:58px !important;
  }
}

/* Mobile cabinet v2 — Merkur/Gamomat-inspired landscape arrangement.
   This is layout-only: existing game buttons, meters and handlers are reused. */
@media (orientation:landscape) and (max-width:1100px) and (max-height:700px) {
  body[data-rq-game-id] {
    --rq-site-hud-height:44px !important;
    min-width:0 !important;
    min-height:100dvh !important;
    overflow:hidden !important;
  }

  /* Landscape is the supported mobile play orientation. */
  body[data-rq-game-id] .pgs-rotate-device { display:none !important; }
  body[data-rq-game-id] :is(.pgs-site-hud,.pgs-game-main,.pgs-fullscreen-button) {
    visibility:visible !important;
  }

  body[data-rq-game-id] :is(.game-header,.pht-header,.pgs-site-hud) {
    position:relative !important;
    z-index:80;
    width:100% !important;
    height:44px !important;
    min-height:44px !important;
    padding:3px 7px !important;
    display:grid !important;
    grid-template-columns:minmax(84px,120px) minmax(0,1fr) auto !important;
    gap:5px !important;
    overflow:hidden;
  }
  body[data-rq-game-id] :is(.game-header,.pht-header,.pgs-site-hud) .brand img,
  body[data-rq-game-id] .pht-logo img { width:106px !important; max-height:35px !important; object-fit:contain; }
  body[data-rq-game-id] :is(.game-title-small,.pgs-player-badge,.pgs-hud-jackpot) { display:none !important; }
  body[data-rq-game-id] :is(.game-level-hud,.pht-level) {
    display:block !important;
    min-width:0 !important;
    width:auto !important;
    padding:2px 5px !important;
    font-size:.48rem !important;
  }
  body[data-rq-game-id] :is(.game-header-actions,.pht-header-actions) {
    min-width:0 !important;
    gap:3px !important;
  }
  body[data-rq-game-id] :is(.game-header-actions,.pht-header-actions) > :not(.chip-pill):not(strong):not(.pgs-hud-balance):not(.pgs-hud-exit) {
    display:none !important;
  }
  body[data-rq-game-id] :is(.chip-pill,.pht-header-actions strong,.pgs-hud-balance) {
    min-width:74px !important;
    height:32px !important;
    padding:3px 7px !important;
    font-size:.64rem !important;
  }
  body[data-rq-game-id] .pgs-hud-exit {
    display:grid !important;
    width:31px !important;
    height:31px !important;
  }

  body[data-rq-game-id] :is(.game-main,.pht-main,.pgs-game-main) {
    width:100% !important;
    height:calc(100dvh - 44px) !important;
    min-height:0 !important;
    padding:3px !important;
  }
  body[data-rq-game-id] .rq-universal-cabinet,
  body[data-rq-game-id].pgs-page .pgs-cabinet {
    position:relative !important;
    width:100% !important;
    max-width:none !important;
    height:100% !important;
    min-height:0 !important;
    padding:3px !important;
    grid-template-rows:clamp(54px,9dvh,78px) minmax(0,1fr) 24px clamp(78px,12dvh,104px) !important;
    grid-template-columns:minmax(0,1fr) !important;
    gap:3px !important;
    border-width:2px !important;
    border-radius:4px !important;
    overflow:hidden !important;
  }
  body[data-rq-game-id] .rq-slot-game-logo,
  body[data-rq-game-id].pgs-page .pgs-game-logo img {
    width:min(98%,720px) !important;
    height:clamp(58px,9dvh,86px) !important;
    object-fit:contain !important;
  }

  /* Reels dominate the landscape screen, with a dedicated right action rail. */
  body[data-rq-game-id] .rq-universal-cabinet > :is(.arcade-stage-wrap,.pht-stage-wrap,.pht-reel-frame),
  body[data-rq-game-id].pgs-page .pgs-stage-wrap {
    grid-row:2 !important;
    min-width:0 !important;
    min-height:0 !important;
    height:100% !important;
    margin:0 64px 0 0 !important;
  }
  body[data-rq-game-id] .rq-game-core-viewport,
  body[data-rq-game-id] :is(.arcade-reel-window,.pht-reel-frame,.pgs-reel-window) {
    min-width:0 !important;
    min-height:0 !important;
    width:100% !important;
    height:100% !important;
  }
  body[data-rq-game-id] :is(.payline-rail,.pgs-line-markers,.pht-line-markers) {
    min-width:18px !important;
    width:18px !important;
    gap:1px !important;
    padding:1px !important;
  }
  body[data-rq-game-id] :is(.payline-marker,.pgs-line-marker,.pht-line-markers i) {
    min-height:0 !important;
    padding:0 !important;
    font-size:clamp(.38rem,1.8vw,.55rem) !important;
  }

  body[data-rq-game-id] .rq-universal-cabinet > :is(.arcade-message,.pht-message),
  body[data-rq-game-id].pgs-page .pgs-message {
    grid-row:3 !important;
    height:24px !important;
    min-height:24px !important;
    margin:0 64px 0 0 !important;
    padding:3px 5px !important;
    font-size:.48rem !important;
  }

  /* Compact bottom information bar: lines, bet, win and balance. */
  body[data-rq-game-id] .rq-universal-cabinet > :is(.arcade-console,.pht-controls),
  body[data-rq-game-id].pgs-page .pgs-console {
    grid-row:4 !important;
    position:relative !important;
    width:100% !important;
    height:auto !important;
    min-height:0 !important;
    padding:3px 64px 3px 3px !important;
    display:grid !important;
    grid-template-columns:minmax(112px,.8fr) minmax(130px,1.2fr) !important;
    gap:3px !important;
    overflow:visible !important;
  }
  body[data-rq-game-id] .classic-console-left {
    min-width:0 !important;
    display:grid !important;
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:3px !important;
  }
  body[data-rq-game-id] .classic-value-tower {
    width:auto !important;
    height:100% !important;
    min-width:0 !important;
    padding:2px !important;
  }
  body[data-rq-game-id] .classic-value-tower strong { font-size:.72rem !important; }
  body[data-rq-game-id] .classic-value-tower small,
  body[data-rq-game-id] .classic-line-value,
  body[data-rq-game-id] .bet-lock-note { font-size:.38rem !important; }
  body[data-rq-game-id] .classic-win-panel {
    min-width:0 !important;
    width:auto !important;
    height:100% !important;
    padding:3px !important;
  }
  body[data-rq-game-id] .classic-win-main strong { font-size:clamp(.75rem,4vw,1.15rem) !important; }
  body[data-rq-game-id] .classic-win-details { font-size:.38rem !important; }

  /* Menu/sound/info on the left, round spin and feature actions on the right. */
  body[data-rq-game-id] .classic-utility-stack,
  body[data-rq-game-id] .rq-universal-toolbar,
  body[data-rq-game-id].pgs-page .pgs-cabinet-toolbar {
    position:absolute !important;
    z-index:45 !important;
    left:5px !important;
    top:calc(clamp(54px,9dvh,78px) + 7px) !important;
    width:42px !important;
    display:flex !important;
    flex-direction:column !important;
    gap:5px !important;
  }
  body[data-rq-game-id] .classic-utility-stack {
    left:7px !important;
    top:auto !important;
    bottom:calc(clamp(78px,12dvh,104px) + 31px) !important;
  }
  body[data-rq-game-id] :is(.classic-utility-button,.classic-auto-button,.rq-universal-toolbar>a,.rq-universal-toolbar>button,.pgs-toolbar-button) {
    width:40px !important;
    height:40px !important;
    min-height:40px !important;
    border-radius:50% !important;
    font-size:.78rem !important;
  }

  body[data-rq-game-id] .rq-universal-dashboard,
  body[data-rq-game-id].pgs-page .pgs-action-buttons {
    position:absolute !important;
    z-index:55 !important;
    right:5px !important;
    top:clamp(118px,25dvh,210px) !important;
    width:56px !important;
    height:auto !important;
    transform:none !important;
    display:flex !important;
    flex-direction:column !important;
    gap:7px !important;
  }
  body[data-rq-game-id] .rq-universal-action,
  body[data-rq-game-id].pgs-page .classic-action-button {
    flex:0 0 50px !important;
    width:50px !important;
    height:50px !important;
    min-height:50px !important;
    padding:3px !important;
    border-radius:50% !important;
  }
  body[data-rq-game-id] .rq-universal-action svg,
  body[data-rq-game-id].pgs-page .classic-action-button svg { width:25px !important; height:25px !important; }
  body[data-rq-game-id] .rq-universal-action > span,
  body[data-rq-game-id].pgs-page .classic-action-button span { font-size:.36rem !important; }
  body[data-rq-game-id] .rq-universal-action[data-rq-role="spin"],
  body[data-rq-game-id].pgs-page .action-spin {
    order:99 !important;
    flex-basis:64px !important;
    width:64px !important;
    height:64px !important;
    min-height:64px !important;
    margin-left:-7px !important;
    border-width:4px !important;
  }
  body[data-rq-game-id] .rq-universal-action[data-rq-role="spin"] svg,
  body[data-rq-game-id].pgs-page .action-spin svg { width:39px !important; height:39px !important; }

  body[data-rq-game-id] .game-disclaimer,
  body[data-rq-game-id] .pgs-fullscreen-button { display:none !important; }
}

@media (orientation:landscape) and (max-height:430px) {
  body[data-rq-game-id] .rq-universal-cabinet > :is(.arcade-stage-wrap,.pht-stage-wrap,.pht-reel-frame),
  body[data-rq-game-id].pgs-page .pgs-stage-wrap,
  body[data-rq-game-id] .rq-universal-cabinet > :is(.arcade-message,.pht-message),
  body[data-rq-game-id].pgs-page .pgs-message { margin-right:58px !important; }
  body[data-rq-game-id] .rq-universal-dashboard,
  body[data-rq-game-id].pgs-page .pgs-action-buttons { right:2px !important; }
}

/* Mobile cabinet v3 — orientation gate and short Safari landscape fit.
   iOS Safari reports a much shorter visual viewport while its address and
   navigation bars are visible.  Every fixed row and child minimum therefore
   has to participate in the same dvh budget. */
@media (orientation:portrait) and (max-width:900px) {
  html,
  body[data-rq-game-id] {
    width:100% !important;
    height:100% !important;
    min-height:100dvh !important;
    overflow:hidden !important;
    background:#020504 !important;
  }
  body[data-rq-game-id] > * {
    visibility:hidden !important;
    pointer-events:none !important;
  }
  body[data-rq-game-id]::before {
    content:"" !important;
    position:fixed !important;
    inset:0 !important;
    z-index:2147483645 !important;
    display:block !important;
    opacity:1 !important;
    background:
      radial-gradient(circle at 50% 34%,rgba(255,195,43,.24),transparent 27%),
      linear-gradient(180deg,#061411,#020504 72%) !important;
  }
  body[data-rq-game-id]::after {
    content:"↻\A ROTATE YOUR DEVICE\A This game plays in landscape mode.";
    white-space:pre-line;
    position:fixed;
    inset:0;
    z-index:2147483646;
    display:grid;
    place-content:center;
    gap:14px;
    padding:max(24px,env(safe-area-inset-top)) max(24px,env(safe-area-inset-right)) max(24px,env(safe-area-inset-bottom)) max(24px,env(safe-area-inset-left));
    box-sizing:border-box;
    color:#ffe27a;
    font:1000 clamp(1.25rem,6vw,2rem)/1.65 var(--rq-primary-theme-font);
    letter-spacing:.04em;
    text-align:center;
    text-shadow:0 3px 0 #684300,0 0 22px rgba(255,205,72,.48);
    visibility:visible !important;
    pointer-events:auto !important;
  }
  body[data-rq-game-id] .pgs-rotate-device,
  body[data-rq-game-id] .pgs-orientation-gate {
    display:none !important;
  }
}

@media (orientation:landscape) and (max-width:1100px) and (max-height:430px) {
  html,
  body[data-rq-game-id] {
    width:100% !important;
    height:100% !important;
    min-height:0 !important;
  }
  body[data-rq-game-id] {
    --rq-site-hud-height:46px !important;
  }
  body[data-rq-game-id] :is(.game-header,.pht-header,.pgs-site-hud) {
    height:46px !important;
    min-height:46px !important;
  }
  body[data-rq-game-id] :is(.game-main,.pht-main,.pgs-game-main) {
    position:relative !important;
    inset:auto !important;
    height:calc(100dvh - 38px) !important;
    min-height:0 !important;
    padding:2px !important;
    overflow:hidden !important;
  }
  body[data-rq-game-id] .rq-universal-cabinet,
  body[data-rq-game-id].pgs-page .pgs-cabinet {
    height:100% !important;
    min-height:0 !important;
    max-height:100% !important;
    padding:2px !important;
    grid-template-rows:40px minmax(0,1fr) 18px 64px !important;
    gap:2px !important;
    overflow:hidden !important;
  }
  body[data-rq-game-id] .rq-universal-cabinet > *,
  body[data-rq-game-id].pgs-page .pgs-cabinet > *,
  body[data-rq-game-id] :is(.arcade-stage-wrap,.pht-stage-wrap,.pht-reel-frame,.pgs-stage-wrap,.rq-game-core-viewport,.arcade-reel-window,.pgs-reel-window,.pgs-reels) {
    min-height:0 !important;
    max-height:100% !important;
  }
  body[data-rq-game-id] .rq-slot-game-logo,
  body[data-rq-game-id].pgs-page .pgs-game-logo img {
    height:46px !important;
  }
  body[data-rq-game-id] .rq-universal-cabinet > :is(.arcade-message,.pht-message),
  body[data-rq-game-id].pgs-page .pgs-message {
    height:18px !important;
    min-height:18px !important;
    line-height:12px !important;
  }
  body[data-rq-game-id] .rq-universal-cabinet > :is(.arcade-console,.pht-controls),
  body[data-rq-game-id].pgs-page .pgs-console {
    height:64px !important;
    min-height:0 !important;
    max-height:64px !important;
    padding-top:2px !important;
    padding-bottom:2px !important;
  }
  body[data-rq-game-id] .rq-universal-dashboard,
  body[data-rq-game-id].pgs-page .pgs-action-buttons {
    top:68px !important;
    gap:4px !important;
  }
  body[data-rq-game-id] .rq-universal-action,
  body[data-rq-game-id].pgs-page .classic-action-button {
    flex-basis:42px !important;
    width:42px !important;
    height:42px !important;
    min-height:42px !important;
  }
  body[data-rq-game-id] .rq-universal-action[data-rq-role="spin"],
  body[data-rq-game-id].pgs-page .action-spin {
    flex-basis:54px !important;
    width:54px !important;
    height:54px !important;
    min-height:54px !important;
    margin-left:-6px !important;
  }
}

/* Mobile cabinet v4 — Pharaoh's dedicated cabinet stylesheet uses ID-based
   desktop geometry. Match that specificity so the whole Merkur layout stays
   inside the iOS Safari visual viewport. */
@media (orientation:landscape) and (max-width:1100px) and (max-height:700px) {
  body[data-rq-game-id].pgs-page #game-shell {
    width:100% !important;
    height:calc(100dvh - 44px) !important;
    min-height:0 !important;
    max-height:calc(100dvh - 44px) !important;
    padding:3px !important;
    overflow:hidden !important;
  }
  body[data-rq-game-id].pgs-page #game-shell > .pgs-game-main {
    width:100% !important;
    height:100% !important;
    min-height:0 !important;
    padding:0 !important;
    overflow:hidden !important;
  }
  body[data-rq-game-id].pgs-page #game-cabinet {
    width:100% !important;
    height:100% !important;
    min-height:0 !important;
    max-width:none !important;
    max-height:100% !important;
    aspect-ratio:auto !important;
    margin:0 !important;
    padding:3px !important;
    grid-template-rows:clamp(44px,10dvh,68px) minmax(0,1fr) 22px clamp(68px,14dvh,92px) !important;
    gap:3px !important;
    overflow:hidden !important;
  }
  body[data-rq-game-id].pgs-page #game-cabinet > .pgs-topbar {
    grid-row:1 !important;
    min-height:0 !important;
    height:100% !important;
  }
  body[data-rq-game-id].pgs-page #game-cabinet > .pgs-stage-wrap {
    grid-row:2 !important;
    width:auto !important;
    height:100% !important;
    min-height:0 !important;
    margin:0 64px 0 0 !important;
    overflow:hidden !important;
  }
  body[data-rq-game-id].pgs-page #game-cabinet > .pgs-message {
    grid-row:3 !important;
    width:auto !important;
    height:22px !important;
    min-height:0 !important;
    margin:0 64px 0 0 !important;
  }
  body[data-rq-game-id].pgs-page #game-cabinet > .pgs-console {
    grid-row:4 !important;
    width:100% !important;
    height:100% !important;
    min-height:0 !important;
    max-height:100% !important;
    padding:3px 64px 3px 3px !important;
    grid-template-columns:minmax(112px,.8fr) minmax(130px,1.2fr) !important;
    gap:3px !important;
    overflow:hidden !important;
  }
  body[data-rq-game-id].pgs-page #game-cabinet .classic-console-left {
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:3px !important;
  }
  body[data-rq-game-id].pgs-page #game-cabinet .classic-utility-stack {
    position:fixed !important;
    z-index:95 !important;
    left:7px !important;
    top:auto !important;
    bottom:calc(clamp(68px,14dvh,92px) + 7px) !important;
    width:40px !important;
    height:auto !important;
    display:flex !important;
    flex-direction:column !important;
    gap:4px !important;
  }
  body[data-rq-game-id].pgs-page #game-cabinet .pgs-action-buttons,
  body[data-rq-game-id].pgs-page #game-cabinet .pgs-action-buttons.gamble-actions-hidden,
  body[data-rq-game-id].pgs-page #game-cabinet .pgs-action-buttons.win-ready {
    position:fixed !important;
    z-index:95 !important;
    right:4px !important;
    top:clamp(98px,25dvh,150px) !important;
    width:56px !important;
    height:auto !important;
    display:flex !important;
    flex-direction:column !important;
    grid-template-columns:none !important;
    grid-template-rows:none !important;
    gap:5px !important;
    overflow:visible !important;
  }
  body[data-rq-game-id].pgs-page #game-cabinet .pgs-action-buttons .classic-action-button {
    flex:0 0 44px !important;
    width:44px !important;
    height:44px !important;
    min-height:44px !important;
    border-radius:50% !important;
  }
  body[data-rq-game-id].pgs-page #game-cabinet .pgs-action-buttons .action-spin {
    order:99 !important;
    flex-basis:58px !important;
    width:58px !important;
    height:58px !important;
    min-height:58px !important;
    margin-left:-7px !important;
  }
  body[data-rq-game-id].pgs-page #game-cabinet > .pgs-feature-strip {
    display:none !important;
  }
}

@media (orientation:landscape) and (max-width:1100px) and (max-height:430px) {
  body[data-rq-game-id].pgs-page {
    --rq-site-hud-height:46px !important;
  }
  body[data-rq-game-id].pgs-page #game-shell {
    height:calc(100dvh - 38px) !important;
    max-height:calc(100dvh - 38px) !important;
    padding:2px !important;
  }
  body[data-rq-game-id].pgs-page #game-cabinet {
    padding:2px !important;
    grid-template-rows:36px minmax(0,1fr) 18px 60px !important;
    gap:2px !important;
  }
  body[data-rq-game-id].pgs-page #game-cabinet > .pgs-stage-wrap,
  body[data-rq-game-id].pgs-page #game-cabinet > .pgs-message {
    margin-right:58px !important;
  }
  body[data-rq-game-id].pgs-page #game-cabinet > .pgs-message {
    height:18px !important;
  }
  body[data-rq-game-id].pgs-page #game-cabinet > .pgs-console {
    padding:2px 58px 2px 2px !important;
  }
  body[data-rq-game-id].pgs-page #game-cabinet .pgs-action-buttons,
  body[data-rq-game-id].pgs-page #game-cabinet .pgs-action-buttons.gamble-actions-hidden,
  body[data-rq-game-id].pgs-page #game-cabinet .pgs-action-buttons.win-ready {
    top:68px !important;
    gap:3px !important;
  }
  body[data-rq-game-id].pgs-page #game-cabinet .pgs-action-buttons .classic-action-button {
    flex-basis:39px !important;
    width:39px !important;
    height:39px !important;
    min-height:39px !important;
  }
  body[data-rq-game-id].pgs-page #game-cabinet .pgs-action-buttons .action-spin {
    flex-basis:52px !important;
    width:52px !important;
    height:52px !important;
    min-height:52px !important;
  }
}

/* v6 final cascade guard: overrides every earlier experimental mobile rule. */
@media (orientation:landscape) and (max-width:1100px) and (max-height:700px) {
  html,
  body[data-rq-game-id] {
    position:fixed !important;
    inset:0 !important;
    width:100% !important;
    height:100dvh !important;
    min-height:0 !important;
    overflow:hidden !important;
  }
  body[data-rq-game-id] > :is(.game-header,.pht-header,.pgs-site-hud) {
    display:none !important;
  }
  body[data-rq-game-id] > :is(.game-main,.pht-main,.pgs-game-main),
  body[data-rq-game-id].pgs-page #game-shell,
  body[data-rq-game-id].pgs-page #game-shell > .pgs-game-main {
    position:absolute !important;
    inset:0 !important;
    width:100% !important;
    height:100dvh !important;
    min-height:0 !important;
    max-height:none !important;
    margin:0 !important;
    padding:0 !important;
    overflow:hidden !important;
  }
  body[data-rq-game-id] :is(.slot-cabinet,.pht-cabinet,.ck-cabinet),
  body[data-rq-game-id].pgs-page #game-cabinet {
    position:absolute !important;
    inset:0 !important;
    display:block !important;
    box-sizing:border-box !important;
    width:100% !important;
    height:100dvh !important;
    min-height:0 !important;
    max-width:none !important;
    max-height:none !important;
    aspect-ratio:auto !important;
    margin:0 !important;
    padding:2px !important;
    border-radius:0 !important;
    overflow:hidden !important;
  }
  body[data-rq-game-id] :is(.pgs-cabinet-toolbar,.pgs-feature-strip) {
    display:none !important;
  }
  body[data-rq-game-id] :is(.arcade-topbar,.pht-topbar,.pgs-topbar,.ck-header) {
    position:absolute !important;
    inset:2px 62px auto 48px !important;
    width:auto !important;
    height:46px !important;
    min-height:0 !important;
    max-height:46px !important;
  }
  body[data-rq-game-id] :is(.arcade-stage-wrap,.pht-stage-wrap,.pgs-stage-wrap,.ck-stage) {
    position:absolute !important;
    inset:42px 62px 55px 48px !important;
    box-sizing:border-box !important;
    width:auto !important;
    height:auto !important;
    min-width:0 !important;
    min-height:0 !important;
    max-height:none !important;
    margin:0 !important;
    overflow:hidden !important;
  }
  body[data-rq-game-id] :is(.arcade-reel-window,.pht-reel-frame,.pgs-reel-window,.ck-reel-window,.rq-game-core-viewport),
  body[data-rq-game-id] :is(.arcade-reels,.pht-reels,.pgs-reels,.ck-reels,.pgs-reel) {
    height:100% !important;
    min-height:0 !important;
    max-height:100% !important;
  }
  body[data-rq-game-id] :is(.arcade-message,.pht-message,.pgs-message,.ck-message) {
    position:absolute !important;
    inset:auto 62px 42px 48px !important;
    width:auto !important;
    height:13px !important;
    min-height:13px !important;
    margin:0 !important;
    padding:0 5px !important;
    font-size:8px !important;
    line-height:13px !important;
  }
  body[data-rq-game-id] :is(.arcade-console,.pht-controls,.pgs-console,.ck-console) {
    position:absolute !important;
    inset:auto 2px 2px 2px !important;
    box-sizing:border-box !important;
    width:auto !important;
    height:46px !important;
    min-height:46px !important;
    max-height:46px !important;
    margin:0 !important;
    padding:2px 62px 2px 48px !important;
    overflow:hidden !important;
  }
  body[data-rq-game-id] :is(.classic-utility-stack,.rq-universal-utility) {
    position:absolute !important;
    z-index:110 !important;
    left:4px !important;
    top:50% !important;
    bottom:auto !important;
    transform:translateY(-50%) !important;
  }
  body[data-rq-game-id] :is(.pgs-action-buttons,.rq-universal-dashboard,.ck-actions),
  body[data-rq-game-id] .pgs-action-buttons.gamble-actions-hidden,
  body[data-rq-game-id] .pgs-action-buttons.win-ready {
    position:absolute !important;
    z-index:110 !important;
    right:3px !important;
    top:50% !important;
    bottom:auto !important;
    transform:translateY(-50%) !important;
  }
}

/* Mobile cabinet v5 — deterministic short-landscape geometry.
   The reel stage is absolutely bounded instead of relying on a flexible grid
   track, preventing iOS Safari from collapsing the track to zero height. */
@media (orientation:landscape) and (max-width:1100px) and (max-height:430px) {
  body[data-rq-game-id].pgs-page #game-shell {
    box-sizing:border-box !important;
    height:calc(100dvh - 38px) !important;
    max-height:calc(100dvh - 38px) !important;
  }

  body[data-rq-game-id].pgs-page #game-shell > .pgs-game-main,
  body[data-rq-game-id].pgs-page #game-cabinet {
    position:relative !important;
    box-sizing:border-box !important;
    width:100% !important;
    height:100% !important;
    min-height:0 !important;
    max-height:100% !important;
  }

  body[data-rq-game-id].pgs-page #game-cabinet {
    display:block !important;
    padding:2px !important;
  }

  body[data-rq-game-id].pgs-page #game-cabinet > .pgs-topbar {
    position:absolute !important;
    inset:2px 2px auto 2px !important;
    box-sizing:border-box !important;
    width:auto !important;
    height:36px !important;
    min-height:36px !important;
    max-height:36px !important;
  }

  body[data-rq-game-id].pgs-page #game-cabinet > .pgs-stage-wrap {
    position:absolute !important;
    inset:40px 60px 82px 2px !important;
    box-sizing:border-box !important;
    width:auto !important;
    height:auto !important;
    min-width:0 !important;
    min-height:96px !important;
    max-height:none !important;
    margin:0 !important;
    display:grid !important;
    grid-template-columns:24px minmax(0,1fr) 24px !important;
    grid-template-rows:minmax(0,1fr) !important;
    overflow:hidden !important;
  }

  body[data-rq-game-id].pgs-page #game-cabinet > .pgs-stage-wrap > .pgs-reel-window,
  body[data-rq-game-id].pgs-page #game-cabinet > .pgs-stage-wrap > .pgs-line-markers,
  body[data-rq-game-id].pgs-page #game-cabinet .pgs-reels,
  body[data-rq-game-id].pgs-page #game-cabinet .pgs-reel {
    height:100% !important;
    min-height:0 !important;
    max-height:100% !important;
  }

  body[data-rq-game-id].pgs-page #game-cabinet > .pgs-message {
    position:absolute !important;
    inset:auto 60px 62px 2px !important;
    box-sizing:border-box !important;
    width:auto !important;
    height:18px !important;
    min-height:18px !important;
    max-height:18px !important;
    margin:0 !important;
  }

  body[data-rq-game-id].pgs-page #game-cabinet > .pgs-console {
    position:absolute !important;
    inset:auto 2px 2px 2px !important;
    box-sizing:border-box !important;
    width:auto !important;
    height:58px !important;
    min-height:58px !important;
    max-height:58px !important;
    margin:0 !important;
    padding:2px 58px 2px 2px !important;
  }

  body[data-rq-game-id].pgs-page #game-cabinet .pgs-action-buttons,
  body[data-rq-game-id].pgs-page #game-cabinet .pgs-action-buttons.gamble-actions-hidden,
  body[data-rq-game-id].pgs-page #game-cabinet .pgs-action-buttons.win-ready {
    position:absolute !important;
    right:3px !important;
    top:42px !important;
    bottom:auto !important;
  }
}

/* htdocs(84): Pirate desktop cabinet viewport-fit repair.
   The original Pirate stage still carried a taller natural reel height than the
   shared Pharaoh shell, which pushed the console below the viewport on some
   desktop resolutions. Force the title, stage, message and console into the
   same four-row geometry used by Pharaoh and let the reel window flex instead
   of dictating the cabinet height. */
body[data-rq-game-id="pirates-hidden-treasure"] .pht-main {
  height: calc(100vh - var(--rq-site-hud-height)) !important;
  min-height: 0 !important;
  padding: 8px 12px 10px !important;
  box-sizing: border-box !important;
}
body[data-rq-game-id="pirates-hidden-treasure"] .rq-universal-cabinet {
  padding: 7px 88px 8px !important;
  grid-template-rows: 88px minmax(0,1fr) 33px 88px !important;
  gap: 4px !important;
}
body[data-rq-game-id="pirates-hidden-treasure"] .rq-universal-cabinet > .pht-title {
  min-height: 0 !important;
  height: 88px !important;
  display: grid !important;
  align-items: center !important;
}
body[data-rq-game-id="pirates-hidden-treasure"] .pht-stage-wrap,
body[data-rq-game-id="pirates-hidden-treasure"] .pht-reel-frame,
body[data-rq-game-id="pirates-hidden-treasure"] .pht-reels,
body[data-rq-game-id="pirates-hidden-treasure"] .pht-reel {
  min-height: 0 !important;
  height: 100% !important;
}
body[data-rq-game-id="pirates-hidden-treasure"] .pht-reels {
  grid-auto-rows: minmax(0,1fr) !important;
}
body[data-rq-game-id="pirates-hidden-treasure"] .pht-controls {
  height: 88px !important;
  min-height: 88px !important;
  padding: 2px !important;
  gap: 4px !important;
  grid-template-columns: minmax(250px,.92fr) minmax(230px,1fr) minmax(290px,1.18fr) !important;
  align-items: stretch !important;
}
body[data-rq-game-id="pirates-hidden-treasure"] .pht-controls.rq-universal-console-row {
  grid-template-columns: 52px 62px minmax(132px,.76fr) 62px minmax(235px,1.3fr) minmax(88px,.7fr) minmax(110px,.9fr) !important;
}
body[data-rq-game-id="pirates-hidden-treasure"] .classic-console-left,
body[data-rq-game-id="pirates-hidden-treasure"] .classic-win-panel,
body[data-rq-game-id="pirates-hidden-treasure"] .pht-action-buttons,
body[data-rq-game-id="pirates-hidden-treasure"] .rq-extracted-action-host,
body[data-rq-game-id="pirates-hidden-treasure"] .rq-universal-dashboard {
  min-height: 0 !important;
  height: 100% !important;
  align-self: stretch !important;
}
body[data-rq-game-id="pirates-hidden-treasure"] .classic-console-left {
  grid-template-columns: 52px 62px minmax(132px,1fr) !important;
  gap: 4px !important;
}
body[data-rq-game-id="pirates-hidden-treasure"] .classic-utility-stack {
  position: static !important;
  width: auto !important;
  display: grid !important;
  grid-template-columns: 1fr !important;
  grid-template-rows: 1fr !important;
  gap: 0 !important;
}
body[data-rq-game-id="pirates-hidden-treasure"] .classic-value-tower,
body[data-rq-game-id="pirates-hidden-treasure"] .classic-win-panel,
body[data-rq-game-id="pirates-hidden-treasure"] .rq-universal-action,
body[data-rq-game-id="pirates-hidden-treasure"] .pht-controls button {
  min-height: 0 !important;
  height: 100% !important;
}
body[data-rq-game-id="pirates-hidden-treasure"] .classic-value-tower {
  padding: 4px 3px !important;
}
body[data-rq-game-id="pirates-hidden-treasure"] .classic-value-tower strong {
  font-size: .92rem !important;
}
body[data-rq-game-id="pirates-hidden-treasure"] .classic-value-tower small,
body[data-rq-game-id="pirates-hidden-treasure"] .classic-line-value,
body[data-rq-game-id="pirates-hidden-treasure"] .bet-lock-note {
  font-size: .48rem !important;
}
body[data-rq-game-id="pirates-hidden-treasure"] .classic-win-main strong,
body[data-rq-game-id="pirates-hidden-treasure"] .pht-win b {
  font-size: clamp(1.55rem,2.55vw,2.2rem) !important;
}
body[data-rq-game-id="pirates-hidden-treasure"] .rq-universal-dashboard.rq-shell-normalized:not(.rq-win-ready) {
  grid-template-columns: minmax(0,1fr) minmax(0,1fr) minmax(0,1.2fr) !important;
}
body[data-rq-game-id="pirates-hidden-treasure"] .rq-universal-dashboard.rq-shell-normalized.rq-win-ready {
  grid-template-columns: minmax(0,.8fr) minmax(0,1fr) minmax(0,1fr) minmax(0,1.16fr) !important;
}
@media (max-width: 1400px) {
  body[data-rq-game-id="pirates-hidden-treasure"] .rq-universal-cabinet {
    padding-inline: 82px !important;
    grid-template-rows: 82px minmax(0,1fr) 31px 82px !important;
  }
  body[data-rq-game-id="pirates-hidden-treasure"] .pht-controls,
  body[data-rq-game-id="pirates-hidden-treasure"] .pht-controls.rq-universal-console-row {
    height: 82px !important;
    min-height: 82px !important;
  }
}

/* 2026-07-24 Pirates viewport-safe cabinet repair.
   The platform jackpot strip is injected after page load, so fixed 68/112px
   assumptions can leave the console below the visible viewport. JS updates
   --rq-actual-site-hud-height from the real rendered header + strip height. */
body[data-rq-game-id="pirates-hidden-treasure"] {
  --rq-actual-site-hud-height: 112px;
}
body[data-rq-game-id="pirates-hidden-treasure"] .pht-main {
  height: calc(100dvh - var(--rq-actual-site-hud-height)) !important;
  max-height: calc(100dvh - var(--rq-actual-site-hud-height)) !important;
  min-height: 0 !important;
  overflow: hidden !important;
  padding: 6px 10px 8px !important;
}
body[data-rq-game-id="pirates-hidden-treasure"] .rq-universal-cabinet {
  height: 100% !important;
  max-height: 100% !important;
  min-height: 0 !important;
  overflow: hidden !important;
  grid-template-rows: clamp(68px,10.5vh,82px) minmax(0,1fr) 31px clamp(68px,10vh,78px) !important;
  padding-top: 6px !important;
  padding-bottom: 6px !important;
}
body[data-rq-game-id="pirates-hidden-treasure"] .pht-stage-wrap,
body[data-rq-game-id="pirates-hidden-treasure"] .pht-reel-frame,
body[data-rq-game-id="pirates-hidden-treasure"] .pht-reels,
body[data-rq-game-id="pirates-hidden-treasure"] .pht-reel {
  min-height: 0 !important;
  max-height: 100% !important;
  overflow: hidden !important;
}
body[data-rq-game-id="pirates-hidden-treasure"] .pht-controls,
body[data-rq-game-id="pirates-hidden-treasure"] .pht-controls.rq-universal-console-row {
  height: 100% !important;
  min-height: 0 !important;
  max-height: 78px !important;
}
body[data-rq-game-id="pirates-hidden-treasure"] .classic-console-left,
body[data-rq-game-id="pirates-hidden-treasure"] .classic-win-panel,
body[data-rq-game-id="pirates-hidden-treasure"] .pht-action-buttons,
body[data-rq-game-id="pirates-hidden-treasure"] .rq-extracted-action-host,
body[data-rq-game-id="pirates-hidden-treasure"] .rq-universal-dashboard,
body[data-rq-game-id="pirates-hidden-treasure"] .classic-value-tower,
body[data-rq-game-id="pirates-hidden-treasure"] .pht-controls button {
  min-height: 0 !important;
  max-height: 100% !important;
}
@media (max-height: 800px) and (min-width: 851px) {
  body[data-rq-game-id="pirates-hidden-treasure"] .rq-universal-cabinet {
    grid-template-rows: 66px minmax(0,1fr) 27px 70px !important;
    gap: 3px !important;
    padding-top: 4px !important;
    padding-bottom: 4px !important;
  }
  body[data-rq-game-id="pirates-hidden-treasure"] .pht-controls,
  body[data-rq-game-id="pirates-hidden-treasure"] .pht-controls.rq-universal-console-row {
    max-height: 70px !important;
  }
  body[data-rq-game-id="pirates-hidden-treasure"] .pht-message {
    height: 27px !important;
    min-height: 27px !important;
  }
}


/* 2026-07-24 Pirates cabinet aligned to PGS layout */
body[data-rq-game-id="pirates-hidden-treasure"] .rq-universal-cabinet{
  grid-template-rows:clamp(68px,10.5vh,82px) minmax(0,1fr) 31px clamp(72px,10.5vh,82px)!important;
  gap:4px!important;
  padding-inline:84px!important;
}
body[data-rq-game-id="pirates-hidden-treasure"] .pht-title{
  min-height:0!important;
  padding:0 10px!important;
}
body[data-rq-game-id="pirates-hidden-treasure"] .pht-controls,
body[data-rq-game-id="pirates-hidden-treasure"] .pht-controls.rq-universal-console-row{
  height:100%!important;
  min-height:0!important;
  max-height:none!important;
  padding:3px!important;
  gap:4px!important;
  grid-template-columns:29% minmax(0,1fr) 39%!important;
  align-items:stretch!important;
}
body[data-rq-game-id="pirates-hidden-treasure"] .classic-console-left{
  grid-template-columns:minmax(44px,.24fr) minmax(66px,.46fr) minmax(0,1fr)!important;
  gap:4px!important;
  min-width:0!important;
}
body[data-rq-game-id="pirates-hidden-treasure"] .classic-value-tower,
body[data-rq-game-id="pirates-hidden-treasure"] .classic-win-panel,
body[data-rq-game-id="pirates-hidden-treasure"] .pht-action-buttons,
body[data-rq-game-id="pirates-hidden-treasure"] .rq-universal-dashboard,
body[data-rq-game-id="pirates-hidden-treasure"] .rq-universal-action,
body[data-rq-game-id="pirates-hidden-treasure"] .pht-controls > button{
  min-height:0!important;
  height:100%!important;
  max-height:100%!important;
}
body[data-rq-game-id="pirates-hidden-treasure"] .classic-value-tower,
body[data-rq-game-id="pirates-hidden-treasure"] .classic-win-panel{
  border-radius:6px!important;
}
body[data-rq-game-id="pirates-hidden-treasure"] .classic-value-tower{
  padding:4px 4px!important;
}
body[data-rq-game-id="pirates-hidden-treasure"] .classic-value-tower strong{
  font-size:1rem!important;
}
body[data-rq-game-id="pirates-hidden-treasure"] .classic-value-tower small,
body[data-rq-game-id="pirates-hidden-treasure"] .classic-line-value,
body[data-rq-game-id="pirates-hidden-treasure"] .bet-lock-note{
  font-size:.5rem!important;
}
body[data-rq-game-id="pirates-hidden-treasure"] .classic-win-main strong,
body[data-rq-game-id="pirates-hidden-treasure"] .pht-win b{
  font-size:clamp(1.55rem,2.4vw,2.2rem)!important;
  white-space:nowrap!important;
}
body[data-rq-game-id="pirates-hidden-treasure"] .pht-action-buttons,
body[data-rq-game-id="pirates-hidden-treasure"] .rq-universal-dashboard{
  display:grid!important;
  align-items:stretch!important;
  gap:4px!important;
}
body[data-rq-game-id="pirates-hidden-treasure"] .rq-universal-dashboard.rq-shell-normalized:not(.rq-win-ready){
  grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,1.28fr)!important;
}
body[data-rq-game-id="pirates-hidden-treasure"] .rq-universal-dashboard.rq-shell-normalized.rq-win-ready,
body[data-rq-game-id="pirates-hidden-treasure"] .pht-action-buttons.win-ready,
body[data-rq-game-id="pirates-hidden-treasure"] .pht-action-buttons.rq-win-ready{
  grid-template-columns:minmax(46px,.55fr) minmax(62px,1fr) minmax(62px,1fr) minmax(84px,1.22fr)!important;
}
body[data-rq-game-id="pirates-hidden-treasure"] .pht-action-buttons .action-collect,
body[data-rq-game-id="pirates-hidden-treasure"] .rq-universal-dashboard .action-collect{grid-column:1!important}
body[data-rq-game-id="pirates-hidden-treasure"] .pht-action-buttons .action-ladder,
body[data-rq-game-id="pirates-hidden-treasure"] .rq-universal-dashboard .action-ladder{grid-column:2!important}
body[data-rq-game-id="pirates-hidden-treasure"] .pht-action-buttons .action-cards,
body[data-rq-game-id="pirates-hidden-treasure"] .rq-universal-dashboard .action-cards{grid-column:3!important}
body[data-rq-game-id="pirates-hidden-treasure"] .pht-action-buttons .action-spin,
body[data-rq-game-id="pirates-hidden-treasure"] .pht-action-buttons .pht-spin,
body[data-rq-game-id="pirates-hidden-treasure"] .rq-universal-dashboard .action-spin,
body[data-rq-game-id="pirates-hidden-treasure"] .rq-universal-dashboard .pht-spin{grid-column:4!important}
body[data-rq-game-id="pirates-hidden-treasure"] .classic-action-button,
body[data-rq-game-id="pirates-hidden-treasure"] .rq-universal-action{
  border-radius:8px!important;
  padding:4px!important;
}
body[data-rq-game-id="pirates-hidden-treasure"] .action-spin,
body[data-rq-game-id="pirates-hidden-treasure"] .pht-spin{
  min-width:0!important;
}
@media (max-height:800px) and (min-width:851px){
  body[data-rq-game-id="pirates-hidden-treasure"] .rq-universal-cabinet{
    grid-template-rows:66px minmax(0,1fr) 27px 70px!important;
    gap:3px!important;
    padding-inline:74px!important;
  }
  body[data-rq-game-id="pirates-hidden-treasure"] .pht-controls,
  body[data-rq-game-id="pirates-hidden-treasure"] .pht-controls.rq-universal-console-row{
    padding:2px!important;
    grid-template-columns:30% minmax(0,1fr) 40%!important;
  }
  body[data-rq-game-id="pirates-hidden-treasure"] .classic-value-tower strong{font-size:.88rem!important}
  body[data-rq-game-id="pirates-hidden-treasure"] .classic-win-main strong,
  body[data-rq-game-id="pirates-hidden-treasure"] .pht-win b{font-size:clamp(1.3rem,2.2vw,1.9rem)!important}
}


/* 2026-07-24 universal hamburger utility menu + PGS-sized Pirates cabinet */
body[data-rq-game-id] .rq-universal-toolbar.rq-hamburger-ready,
body[data-rq-game-id].pgs-page .pgs-cabinet-toolbar.rq-hamburger-ready{
  position:absolute!important;
  z-index:250!important;
  left:8px!important;
  top:8px!important;
  width:46px!important;
  height:46px!important;
  display:block!important;
  transform:none!important;
  grid-template-columns:none!important;
  grid-auto-rows:auto!important;
  gap:0!important;
  overflow:visible!important;
}
body[data-rq-game-id] .rq-hamburger-ready>.rq-toolbar-menu-toggle{
  width:46px!important;
  height:46px!important;
  min-width:46px!important;
  min-height:46px!important;
  display:grid!important;
  grid-template-rows:1fr auto!important;
  place-items:center!important;
  padding:5px 3px 4px!important;
  border:1px solid var(--rq-dashboard-button-border)!important;
  border-radius:9px!important;
  color:#fff!important;
  background:var(--rq-dashboard-button-bg)!important;
  box-shadow:0 0 14px rgba(0,0,0,.5),inset 0 1px rgba(255,255,255,.18)!important;
  cursor:pointer!important;
  line-height:1!important;
}
body[data-rq-game-id] .rq-hamburger-ready>.rq-toolbar-menu-toggle span{
  font-size:23px!important;
  line-height:.8!important;
}
body[data-rq-game-id] .rq-hamburger-ready>.rq-toolbar-menu-toggle small{
  font-size:7px!important;
  font-weight:1000!important;
  letter-spacing:.08em!important;
}
body[data-rq-game-id] .rq-hamburger-ready.rq-menu-open>.rq-toolbar-menu-toggle,
body[data-rq-game-id] .rq-hamburger-ready>.rq-toolbar-menu-toggle:is(:hover,:focus-visible){
  border-color:var(--rq-accent-color)!important;
  box-shadow:0 0 18px var(--rq-accent-glow),inset 0 1px rgba(255,255,255,.22)!important;
}
body[data-rq-game-id] .rq-universal-toolbar-menu{
  position:fixed!important;
  z-index:2147483000!important;
  left:8px!important;
  top:64px!important;
  width:190px!important;
  max-width:min(190px,calc(100vw - 24px))!important;
  max-height:min(330px,calc(100dvh - 130px))!important;
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:5px!important;
  padding:7px!important;
  overflow:auto!important;
  border:1px solid var(--rq-accent-color)!important;
  border-radius:10px!important;
  background:linear-gradient(180deg,rgba(16,31,37,.98),rgba(4,10,13,.98))!important;
  box-shadow:0 16px 42px rgba(0,0,0,.72),0 0 16px var(--rq-accent-glow)!important;
  backdrop-filter:blur(5px)!important;
}
body[data-rq-game-id] .rq-universal-toolbar-menu[hidden]{display:none!important}
body[data-rq-game-id] .rq-universal-toolbar-menu>:is(a,button){
  width:100%!important;
  height:42px!important;
  min-height:42px!important;
  display:grid!important;
  grid-template-columns:32px minmax(0,1fr)!important;
  align-items:center!important;
  justify-items:center!important;
  gap:6px!important;
  padding:0 10px!important;
  border:1px solid rgba(255,255,255,.2)!important;
  border-radius:7px!important;
  color:#fff!important;
  background:linear-gradient(180deg,rgba(47,66,89,.95),rgba(9,18,31,.98))!important;
  box-shadow:inset 0 1px rgba(255,255,255,.12)!important;
  text-decoration:none!important;
  font-size:18px!important;
  line-height:1!important;
  transform:none!important;
}
body[data-rq-game-id] .rq-universal-toolbar-menu>:is(a,button)::after{
  content:attr(data-rq-menu-label)!important;
  justify-self:start!important;
  font:900 11px/1 var(--rq-primary-theme-font)!important;
  letter-spacing:.08em!important;
  text-transform:uppercase!important;
}
body[data-rq-game-id] .rq-universal-toolbar-menu>:is(a,button):is(:hover,:focus-visible){
  border-color:var(--rq-accent-color)!important;
  background:linear-gradient(180deg,rgba(86,76,35,.98),rgba(34,28,10,.98))!important;
  outline:none!important;
  box-shadow:0 0 12px var(--rq-accent-glow),inset 0 1px rgba(255,255,255,.2)!important;
}
/* The menu replaces the clipped vertical utility strip on every cabinet. */
body[data-rq-game-id] .rq-hamburger-ready .pgs-toolbar-button{
  border-radius:7px!important;
}
/* Pirates now uses the same maximum cabinet width and centered footprint as PGS. */
body[data-rq-game-id="pirates-hidden-treasure"] .pht-main{
  display:grid!important;
  place-items:stretch center!important;
}
body[data-rq-game-id="pirates-hidden-treasure"] .rq-universal-cabinet,
body[data-rq-game-id="pirates-hidden-treasure"] .pht-cabinet{
  width:min(calc(100vw - 28px),1100px)!important;
  max-width:1100px!important;
  margin-inline:auto!important;
  padding-inline:74px!important;
}
body[data-rq-game-id="pirates-hidden-treasure"] .pht-controls,
body[data-rq-game-id="pirates-hidden-treasure"] .pht-controls.rq-universal-console-row{
  grid-template-columns:30% minmax(0,1fr) 39%!important;
}
@media(max-width:1100px) and (orientation:landscape){
  body[data-rq-game-id] .rq-universal-toolbar.rq-hamburger-ready,
  body[data-rq-game-id].pgs-page .pgs-cabinet-toolbar.rq-hamburger-ready{
    left:5px!important;
    top:5px!important;
    width:40px!important;
    height:40px!important;
  }
  body[data-rq-game-id] .rq-hamburger-ready>.rq-toolbar-menu-toggle{
    width:40px!important;
    height:40px!important;
    min-width:40px!important;
    min-height:40px!important;
  }
  body[data-rq-game-id] .rq-hamburger-ready>.rq-toolbar-menu-toggle span{font-size:20px!important}
  body[data-rq-game-id] .rq-universal-toolbar-menu{top:46px!important;width:176px!important}
  body[data-rq-game-id="pirates-hidden-treasure"] .rq-universal-cabinet,
  body[data-rq-game-id="pirates-hidden-treasure"] .pht-cabinet{
    width:calc(100vw - 16px)!important;
    max-width:1100px!important;
    padding-inline:64px!important;
  }
}
@media(max-width:760px){
  body[data-rq-game-id] .rq-universal-toolbar.rq-hamburger-ready,
  body[data-rq-game-id].pgs-page .pgs-cabinet-toolbar.rq-hamburger-ready{display:block!important}
}


/* 2026-07-24 top-level toolbar menu overlay repair */
body[data-rq-game-id] > .rq-universal-toolbar-menu,
:fullscreen > .rq-universal-toolbar-menu{
  position:fixed!important;
  z-index:2147483000!important;
  isolation:isolate!important;
  transform:none!important;
  contain:none!important;
  opacity:1!important;
  visibility:visible!important;
  pointer-events:auto!important;
}
body[data-rq-game-id] > .rq-universal-toolbar-menu[hidden],
:fullscreen > .rq-universal-toolbar-menu[hidden]{display:none!important}
body[data-rq-game-id] .rq-universal-toolbar.rq-menu-open>.rq-toolbar-menu-toggle,
body[data-rq-game-id].pgs-page .pgs-cabinet-toolbar.rq-menu-open>.rq-toolbar-menu-toggle{
  position:relative!important;
  z-index:2147483001!important;
}

/* =====================================================================
   Shared cabinet reliability and display polish — 2026-07-28
   ===================================================================== */
body[data-rq-game-id] .rq-universal-dashboard.rq-shell-normalized:not(.rq-gamble-inline-controls){
  grid-auto-flow:column!important;
  grid-template-rows:minmax(0,1fr)!important;
  overflow:hidden!important;
}
body[data-rq-game-id] .rq-universal-dashboard.rq-shell-normalized:not(.rq-gamble-inline-controls):not(.rq-win-ready){
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
}
body[data-rq-game-id] .rq-universal-dashboard.rq-shell-normalized:not(.rq-gamble-inline-controls).rq-win-ready{
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
}
body[data-rq-game-id] .rq-universal-dashboard:not(.rq-gamble-inline-controls):not(.rq-win-ready) [data-rq-role="max-bet"],
body[data-rq-game-id] .rq-universal-dashboard:not(.rq-gamble-inline-controls):not(.rq-win-ready) [data-rq-role="auto"],
body[data-rq-game-id] .rq-universal-dashboard:not(.rq-gamble-inline-controls) [data-rq-role="spin"],
body[data-rq-game-id] .rq-universal-dashboard:not(.rq-gamble-inline-controls).rq-win-ready [data-rq-role="collect"],
body[data-rq-game-id] .rq-universal-dashboard:not(.rq-gamble-inline-controls).rq-win-ready [data-rq-role="ladder"],
body[data-rq-game-id] .rq-universal-dashboard:not(.rq-gamble-inline-controls).rq-win-ready [data-rq-role="cards"]{
  display:flex!important;
  visibility:visible!important;
  opacity:1!important;
  min-width:0!important;
  max-width:none!important;
}
body[data-rq-game-id] .rq-universal-dashboard:not(.rq-gamble-inline-controls):not(.rq-win-ready) [data-rq-role="collect"],
body[data-rq-game-id] .rq-universal-dashboard:not(.rq-gamble-inline-controls):not(.rq-win-ready) [data-rq-role="ladder"],
body[data-rq-game-id] .rq-universal-dashboard:not(.rq-gamble-inline-controls):not(.rq-win-ready) [data-rq-role="cards"],
body[data-rq-game-id] .rq-universal-dashboard:not(.rq-gamble-inline-controls).rq-win-ready [data-rq-role="max-bet"],
body[data-rq-game-id] .rq-universal-dashboard:not(.rq-gamble-inline-controls).rq-win-ready [data-rq-role="auto"]{
  display:none!important;
}
body[data-rq-game-id] .rq-universal-dashboard:not(.rq-gamble-inline-controls) [data-rq-role]{
  position:relative!important;
  grid-row:1!important;
  width:100%!important;
  min-width:0!important;
  max-width:none!important;
  overflow:hidden!important;
  box-sizing:border-box!important;
}
body[data-rq-game-id] .rq-universal-dashboard:not(.rq-gamble-inline-controls):not(.rq-win-ready) [data-rq-role="max-bet"]{grid-column:1!important}
body[data-rq-game-id] .rq-universal-dashboard:not(.rq-gamble-inline-controls):not(.rq-win-ready) [data-rq-role="auto"]{grid-column:2!important}
body[data-rq-game-id] .rq-universal-dashboard:not(.rq-gamble-inline-controls):not(.rq-win-ready) [data-rq-role="spin"]{grid-column:3!important}
body[data-rq-game-id] .rq-universal-dashboard:not(.rq-gamble-inline-controls).rq-win-ready [data-rq-role="collect"]{grid-column:1!important}
body[data-rq-game-id] .rq-universal-dashboard:not(.rq-gamble-inline-controls).rq-win-ready [data-rq-role="ladder"]{grid-column:2!important}
body[data-rq-game-id] .rq-universal-dashboard:not(.rq-gamble-inline-controls).rq-win-ready [data-rq-role="cards"]{grid-column:3!important}
body[data-rq-game-id] .rq-universal-dashboard:not(.rq-gamble-inline-controls).rq-win-ready [data-rq-role="spin"]{grid-column:4!important}

/* Free-spin counters alternate inside the large WIN display instead of
   permanently consuming the compact details row beside BALANCE. */
body[data-rq-game-id] .classic-win-main.rq-win-swap-host{
  position:relative!important;
  isolation:isolate!important;
}
body[data-rq-game-id] .rq-free-detail-hidden{
  display:none!important;
}
body[data-rq-game-id] .rq-win-feature-swap{
  position:absolute!important;
  inset:0!important;
  z-index:5!important;
  display:flex!important;
  flex-direction:row!important;
  align-items:center!important;
  justify-content:center!important;
  gap:.45em!important;
  color:#f4fbff!important;
  background:inherit!important;
  opacity:0!important;
  transform:translateY(8px) scale(.97)!important;
  pointer-events:none!important;
  transition:opacity .28s ease,transform .28s ease!important;
}
body[data-rq-game-id] .rq-win-feature-swap span{
  font-size:clamp(.72rem,1.35vw,1.22rem)!important;
  font-weight:1000!important;
  letter-spacing:.06em!important;
  white-space:nowrap!important;
  color:#86ebff!important;
  text-shadow:0 0 12px rgba(82,218,255,.52)!important;
}
body[data-rq-game-id] .rq-win-feature-swap strong{
  font-size:clamp(1.45rem,3vw,2.7rem)!important;
  line-height:1!important;
  color:#fff56e!important;
  text-shadow:0 0 15px rgba(255,228,74,.55)!important;
}
body[data-rq-game-id] .rq-win-swap-host.rq-show-feature-swap > :not(.rq-win-feature-swap){
  opacity:0!important;
}
body[data-rq-game-id] .rq-win-swap-host.rq-show-feature-swap .rq-win-feature-swap{
  opacity:1!important;
  transform:translateY(0) scale(1)!important;
}
body[data-rq-game-id] .classic-win-details:has(.rq-free-detail-hidden){
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
}

/* Large values must shrink before they touch the tower edge. */
body[data-rq-game-id] .classic-value-tower{
  min-width:0!important;
  overflow:hidden!important;
  box-sizing:border-box!important;
}
body[data-rq-game-id] .classic-value-tower > strong{
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  padding-inline:2px!important;
  white-space:nowrap!important;
  overflow:visible!important;
  text-align:center!important;
  font-variant-numeric:tabular-nums!important;
  box-sizing:border-box!important;
}
body[data-rq-game-id] .classic-value-tower.rq-value-compact > strong{font-size:clamp(.72rem,1.05vw,1rem)!important;letter-spacing:-.025em!important}
body[data-rq-game-id] .classic-value-tower.rq-value-ultra-compact > strong{font-size:clamp(.62rem,.9vw,.86rem)!important;letter-spacing:-.045em!important}
body[data-rq-game-id] .classic-value-tower.rq-value-extreme-compact > strong{font-size:clamp(.52rem,.76vw,.72rem)!important;letter-spacing:-.06em!important}
body[data-rq-game-id] .classic-line-value{
  left:3px!important;
  right:3px!important;
  max-width:calc(100% - 6px)!important;
  overflow:hidden!important;
  white-space:nowrap!important;
  text-align:center!important;
  text-overflow:clip!important;
  font-variant-numeric:tabular-nums!important;
}
body[data-rq-game-id] .classic-line-value.rq-line-value-compact{font-size:clamp(.34rem,.5vw,.5rem)!important;letter-spacing:-.035em!important}

/* AUTO ON must be unmistakable, not just a tiny text change. */
body[data-rq-game-id] [data-rq-role="auto"]::after{
  content:'';
  position:absolute;
  top:7px;
  right:7px;
  width:9px;
  height:9px;
  border-radius:50%;
  background:rgba(153,166,195,.42);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.25);
  transition:.2s ease;
}
body[data-rq-game-id] [data-rq-role="auto"].rq-auto-engaged,
body[data-rq-game-id] [data-rq-role="auto"][aria-pressed="true"]{
  border-color:var(--rq-auto-on-border,#70f5d0)!important;
  background:var(--rq-auto-on-background,linear-gradient(180deg,#167f73,#06473f))!important;
  color:#f1fffb!important;
  filter:brightness(1.15) saturate(1.25)!important;
  box-shadow:
    inset 0 2px rgba(255,255,255,.26),
    inset 0 -10px 18px rgba(0,0,0,.22),
    0 0 0 2px rgba(69,255,211,.14),
    0 0 20px var(--rq-auto-on-glow,rgba(56,255,208,.5))!important;
}
body[data-rq-game-id] [data-rq-role="auto"].rq-auto-engaged::after,
body[data-rq-game-id] [data-rq-role="auto"][aria-pressed="true"]::after{
  background:#75ffd5;
  box-shadow:0 0 5px #fff,0 0 14px #54ffd0;
  animation:rqAutoPulse 1s ease-in-out infinite alternate;
}
body[data-rq-game-id] [data-rq-role="auto"].rq-auto-engaged > small,
body[data-rq-game-id] [data-rq-role="auto"][aria-pressed="true"] > small{
  color:#a8ffe8!important;
  font-weight:1000!important;
  text-shadow:0 0 8px rgba(94,255,213,.8)!important;
}
@keyframes rqAutoPulse{from{transform:scale(.78);opacity:.72}to{transform:scale(1.22);opacity:1}}
