/* Original The Rabbit House layout; scoped to its provider mount. */
#games-hub #rabbit-house-panel[hidden] { display: none; }
#games-hub #rabbit-house-panel .rhframe {
    position: relative; display: flex; flex-direction: column; gap: 10px; padding: 12px; border-radius: 18px; overflow: hidden;
    background: radial-gradient(120% 60% at 50% 0%, #2a47c9 0%, #16247a 42%, #0c1546 78%, #070d2a 100%);
    border: 1px solid #3b4aa0; transition: box-shadow .4s ease, border-color .4s ease;
  }
#games-hub #rabbit-house-panel .rhframe.fs { border-color: #ffd25a; box-shadow: 0 0 30px rgba(255, 210, 90, .35); background: radial-gradient(120% 60% at 50% 0%, #4b2a9e 0%, #241c74 45%, #0c1546 80%, #070d2a 100%); }
#games-hub #rabbit-house-panel .rhframe.rain { background: radial-gradient(120% 60% at 50% 0%, #1d6fd0 0%, #173a8f 45%, #0c1546 80%, #070d2a 100%); }
#games-hub #rabbit-house-panel .rh-head { position: relative; display: flex; align-items: flex-end; justify-content: space-between; gap: 8px; min-height: 70px; padding: 0 2px; }
#games-hub #rabbit-house-panel .rh-roof { position: absolute; left: 50%; top: 0; width: 210px; height: 70px; transform: translateX(-50%); pointer-events: none; }
#games-hub #rabbit-house-panel .rh-title { position: relative; flex: 1; text-align: center; font-family: var(--font-display); font-weight: 800; text-transform: uppercase; line-height: .92; padding-top: 18px; }
#games-hub #rabbit-house-panel .rh-title i { display: block; font-style: normal; font-size: 11px; letter-spacing: .3em; color: #ffd25a; }
#games-hub #rabbit-house-panel .rh-title b { display: block; font-size: 25px; color: #fff; text-shadow: 0 3px 0 #7a2a12, 0 0 16px rgba(255, 170, 90, .55); letter-spacing: -.01em; }
#games-hub #rabbit-house-panel .rh-ways { position: relative; flex: none; min-width: 78px; padding: 5px 8px; border-radius: 10px; text-align: center; background: linear-gradient(180deg, #7a4420, #4f2810); border: 2px solid #c98a4a; box-shadow: inset 0 -2px 0 rgba(0, 0, 0, .3); }
#games-hub #rabbit-house-panel .rh-ways small { display: block; font-size: 9px; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; color: #ffd9a8; }
#games-hub #rabbit-house-panel .rh-ways b { display: block; font-family: var(--font-display); font-size: 14px; font-variant-numeric: tabular-nums; color: #fff; }
#games-hub #rabbit-house-panel .rh-lg { position: relative; flex: none; width: 46px; height: 50px; background: var(--logo) center / contain no-repeat; filter: drop-shadow(0 0 8px #8fb0ff); }
#games-hub #rabbit-house-panel .rhgrid { position: relative; aspect-ratio: 6 / 5.4; border-radius: 12px; overflow: hidden; padding: 5px; background: linear-gradient(180deg, #8a4a22, #5a2e12); box-shadow: inset 0 0 0 2px #d79a52, 0 6px 18px rgba(0, 0, 0, .35); }
#games-hub #rabbit-house-panel .rhreels { position: absolute; inset: 5px; display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 3px; }
#games-hub #rabbit-house-panel .rhreel { position: relative; overflow: hidden; border-radius: 7px; background: linear-gradient(180deg, #1a2766, #0d1745); min-width: 0; }
#games-hub #rabbit-house-panel .rhstrip { position: absolute; left: 0; right: 0; top: 0; display: flex; flex-direction: column; will-change: transform; }
#games-hub #rabbit-house-panel .rhstrip.moving { filter: blur(1.2px); }
#games-hub #rabbit-house-panel .rhblock { flex: 1 1 0; display: flex; flex-direction: column; min-height: 0; }
#games-hub #rabbit-house-panel .rhc { position: relative; flex: 1 1 0; min-height: 0; display: grid; place-items: center; padding: 3px; transition: opacity .2s ease; }
#games-hub #rabbit-house-panel .rhc + .rhc { border-top: 1px solid rgba(255, 255, 255, .05); }
#games-hub #rabbit-house-panel .rhs { position: relative; width: 100%; height: 100%; display: grid; place-items: center; }
#games-hub #rabbit-house-panel .rhs svg { width: 100%; height: 100%; display: block; filter: drop-shadow(0 2px 2px rgba(0, 0, 0, .45)); }
#games-hub #rabbit-house-panel .rhs b { position: absolute; right: 2%; bottom: 2%; padding: 0 4px; border-radius: 5px; background: #ff4d6d; color: #fff; font-family: var(--font-display); font-weight: 800; font-size: clamp(9px, calc(var(--rhc, 40px) * .26), 15px); line-height: 1.35; box-shadow: 0 2px 0 rgba(0, 0, 0, .3); }
#games-hub #rabbit-house-panel .rhs.w b { background: #ffd25a; color: #3a2500; }
#games-hub #rabbit-house-panel .rhreels.hasWin .rhc:not(.win) { opacity: .3; }
#games-hub #rabbit-house-panel .rhc.win .rhs { animation: br-slot-zglow .45s ease-in-out infinite alternate; }
#games-hub #rabbit-house-panel .rhover { position: absolute; inset: 5px; pointer-events: none; z-index: 2; }
#games-hub #rabbit-house-panel .rhw { position: absolute; padding: 3px; display: grid; place-items: center; transition: transform .45s cubic-bezier(.3, .9, .35, 1.1), opacity .3s ease; }
#games-hub #rabbit-house-panel .rhw .rhs { border-radius: 8px; }
#games-hub #rabbit-house-panel .rhw.st .rhs { box-shadow: 0 0 0 2px #ffd25a, 0 0 14px rgba(255, 210, 90, .7); background: rgba(255, 210, 90, .12); }
#games-hub #rabbit-house-panel .rhw.drop .rhs { box-shadow: 0 0 0 2px #8fd0ff, 0 0 16px rgba(143, 208, 255, .8); }
#games-hub #rabbit-house-panel .rhframe > #rhOverlay { grid-column: 1 / -1; grid-row: 1 / -1; border-radius: 18px; z-index: 6; place-items: start center; padding-top: 84px; }
#games-hub #rabbit-house-panel .rhframe > .sl-overlay .ov-card { max-width: 420px; }
#games-hub #rabbit-house-panel .rh-choice { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; width: 100%; }
#games-hub #rabbit-house-panel .rh-choice button { display: flex; flex-direction: column; align-items: center; gap: 6px; min-width: 0; padding: 12px 8px; border: 2px solid #c98a4a; border-radius: 14px; background: linear-gradient(180deg, #7a4420, #4f2810); color: #fff; }
#games-hub #rabbit-house-panel .rh-choice button:hover { border-color: #ffd25a; }
#games-hub #rabbit-house-panel .rh-choice svg { width: 52px; height: 52px; }
#games-hub #rabbit-house-panel .rh-choice b { font-family: var(--font-display); font-size: 13px; line-height: 1.2; }
#games-hub #rabbit-house-panel .rh-choice big { font-family: var(--font-display); font-size: 26px; font-weight: 800; color: #ffd25a; line-height: 1; }
#games-hub #rabbit-house-panel .rh-choice small { font-size: 11px; color: #ffd9a8; font-weight: 700; line-height: 1.3; }
#games-hub #rabbit-house-panel .rh-pt { display: grid; grid-template-columns: 44px repeat(4, minmax(0, 1fr)); gap: 4px 6px; align-items: center; font-size: 12px; font-weight: 700; font-variant-numeric: tabular-nums; text-align: center; }
#games-hub #rabbit-house-panel .rh-pt .h { color: var(--muted); font-size: 11px; }
#games-hub #rabbit-house-panel .rh-pt .s { height: 40px; }

@media (prefers-reduced-motion: reduce) {
#games-hub #rabbit-house-panel .rhw { transition: none; }
#games-hub #rabbit-house-panel .rhc.win .rhs { animation: none; }
#games-hub #rabbit-house-panel .rhstrip.moving { filter: none; }
 
}


/* Scene-led original-inspired presentation. Native grid coordinates and replay hooks stay intact. */
#games-hub #rabbit-house-panel .rhframe {
  --slot-accent:#edc590; --slot-edge:#a97441; --slot-caption:#f9e4bf; --slot-surface:#704936;
  display:flex; flex-direction:column; gap:0; padding:0; overflow:visible; border:1px solid #a97441; border-radius:18px;
  color:#fff8e7; background:#30221c; box-shadow:0 12px 34px #0004; isolation:isolate;
}
#games-hub #rabbit-house-panel .rhframe.fs, #games-hub #rabbit-house-panel .rhframe.fs2, #games-hub #rabbit-house-panel .rhframe.rain { background:#30221c; border-color:var(--slot-accent); box-shadow:0 12px 34px #0004,0 0 22px color-mix(in srgb,var(--slot-accent) 18%,transparent); }
#games-hub #rabbit-house-panel .br-slot-playfield {
  position:relative; display:grid; grid-template-columns:minmax(108px,.22fr) minmax(0,1fr) minmax(110px,.25fr);
  grid-template-areas:"heading heading heading" ". banner ." "context board mascot";
  align-items:center; column-gap:14px; row-gap:8px; min-width:0; padding:18px 18px 24px;
  border-radius:17px 17px 0 0; background:#5d5074 url('./assets/scene-base.svg') center/cover no-repeat; overflow:hidden;
}
#games-hub #rabbit-house-panel .rhframe.fs .br-slot-playfield, #games-hub #rabbit-house-panel .rhframe.fs2 .br-slot-playfield { background-image:url('./assets/scene-bonus.svg'); }
#games-hub #rabbit-house-panel .br-slot-playfield::after { content:""; position:absolute; inset:0; border-radius:inherit; pointer-events:none; box-shadow:inset 0 -25px 28px -24px #000b; z-index:3; }
#games-hub #rabbit-house-panel .rh-head { grid-area:heading; justify-self:center; width:min(100%,480px); min-height:64px; margin:0; z-index:1; }
#games-hub #rabbit-house-panel .rh-head .lg, #games-hub #rabbit-house-panel .rh-head .rh-god, #games-hub #rabbit-house-panel .rh-head > svg:not(.rh-roof), #games-hub #rabbit-house-panel .rh-lg { display:none; }
#games-hub #rabbit-house-panel .z-banner { grid-area:banner; align-self:stretch; z-index:2; display:grid; place-items:center; width:100%; min-height:32px; margin:0; padding:5px 12px; border:1px solid var(--slot-edge); border-radius:4px; color:var(--slot-caption); background:#4c2921; text-shadow:0 1px 2px #0009; font-size:11px; line-height:1.4; letter-spacing:.035em; }
#games-hub #rabbit-house-panel .br-slot-context { grid-area:context; align-self:center; display:grid; gap:10px; min-width:0; z-index:2; }
#games-hub #rabbit-house-panel .br-slot-context .z-hud { grid-template-columns:minmax(0,1fr); gap:10px; }
#games-hub #rabbit-house-panel .br-slot-context .z-box { justify-content:center; align-items:center; min-height:83px; padding:10px 7px; border:2px solid var(--slot-edge); border-radius:7px; color:#fff7e4; background:linear-gradient(180deg,var(--slot-surface),#4c2921); box-shadow:inset 0 0 0 1px #fff2,0 3px 8px #0003; text-align:center; }
#games-hub #rabbit-house-panel .br-slot-context .z-box small { color:var(--slot-caption); font-size:10px; line-height:1.4; letter-spacing:.035em; }
#games-hub #rabbit-house-panel .br-slot-context .z-box b { color:var(--slot-accent); font-size:clamp(16px,1.7vw,25px); line-height:1.2; overflow-wrap:anywhere; }
#games-hub #rabbit-house-panel .rhgrid { grid-area:board; width:100%; min-width:0; margin:0; z-index:2; border:4px solid var(--slot-edge); border-radius:7px; background:#6e3d31; box-shadow:inset 0 0 22px #0004,0 0 0 1px #fff7,0 5px 14px #0005; }
#games-hub #rabbit-house-panel .br-slot-mascot { grid-area:mascot; align-self:end; justify-self:center; display:block; width:100%; height:auto; max-height:450px; min-width:0; margin:0; z-index:1; object-fit:contain; object-position:center bottom; filter:drop-shadow(0 6px 4px #0004); pointer-events:none; user-select:none; }
#games-hub #rabbit-house-panel .br-slot-actions { position:relative; z-index:4; min-width:0; padding:12px 18px 14px; border-top:1px solid var(--slot-edge); border-radius:0 0 17px 17px; background:linear-gradient(180deg,#30221c,#161b22); }
#games-hub #rabbit-house-panel .br-slot-actions .z-winbar { margin:0; min-width:0; }
#games-hub #rabbit-house-panel .br-slot-actions .z-winbar small { color:var(--slot-caption); }
#games-hub #rabbit-house-panel .br-slot-actions .z-winbar b { color:var(--slot-accent); font-size:clamp(20px,2.3vw,29px); overflow-wrap:anywhere; text-shadow:0 1px 5px #0008; }
#games-hub #rabbit-house-panel .br-slot-actions .z-stats { min-width:0; }
#games-hub #rabbit-house-panel .br-slot-actions button { min-height:44px; }
#games-hub #rabbit-house-panel .br-slot-actions input { font-size:16px; }
#games-hub #rabbit-house-panel .br-slot-context .lr-mode { color:#fff0c4; background:#664126; border-color:#bc9768; flex-wrap:wrap; text-align:center; justify-content:center; }
@media (max-width:760px) {
  #games-hub #rabbit-house-panel .br-slot-playfield { grid-template-columns:minmax(0,1fr); grid-template-areas:"heading" "context" "banner" "board"; padding:12px 12px 18px; column-gap:0; row-gap:9px; }
  #games-hub #rabbit-house-panel .rh-head { min-height:64px; max-width:100%; padding-inline:42px; }
  #games-hub #rabbit-house-panel .br-slot-context { align-self:auto; width:100%; gap:7px; }
  #games-hub #rabbit-house-panel .br-slot-context .z-hud { grid-template-columns:repeat(2,minmax(0,1fr)); gap:7px; }
  #games-hub #rabbit-house-panel .br-slot-context .z-box { min-height:54px; padding:6px; border-width:1px; }
  #games-hub #rabbit-house-panel .br-slot-context .z-box small { font-size:9px; }
  #games-hub #rabbit-house-panel .br-slot-context .z-box b { font-size:16px; }
  #games-hub #rabbit-house-panel .br-slot-mascot { position:absolute; grid-area:auto; right:9px; top:7px; width:51px; height:83px; max-height:none; object-fit:cover; object-position:top; clip-path:inset(0 0 18px 0); }
  #games-hub #rabbit-house-panel .br-slot-actions { padding:12px; }
  #games-hub #rabbit-house-panel .z-banner { min-height:32px; font-size:10px; padding:5px 7px; }
  #games-hub #rabbit-house-panel .rhgrid { border-width:3px; }
}
@media (max-width:380px) {
  #games-hub #rabbit-house-panel .br-slot-playfield { padding:10px 8px 14px; }
  #games-hub #rabbit-house-panel .br-slot-context .z-box small { font-size:9px; letter-spacing:0; }
  #games-hub #rabbit-house-panel .br-slot-context .z-box b { font-size:14px; }
  #games-hub #rabbit-house-panel .br-slot-actions { padding:10px 8px; }
}

#games-hub #rabbit-house-panel .br-slot-playfield { grid-template-columns:minmax(110px,.2fr) minmax(0,1fr) minmax(100px,.18fr); }
#games-hub #rabbit-house-panel .rh-head { width:min(100%,600px); min-height:78px; padding-right:92px; padding-left:92px; }
#games-hub #rabbit-house-panel .rh-roof { width:246px; height:82px; top:-7px; }
#games-hub #rabbit-house-panel .rh-title { color:#fff5dd; padding-top:19px; }
#games-hub #rabbit-house-panel .rh-title i { color:#ffe6b0; }
#games-hub #rabbit-house-panel .rh-title b { font-family:Georgia,serif; font-size:28px; text-shadow:0 2px #6b3226; }
#games-hub #rabbit-house-panel .rh-ways { position:absolute; right:0; bottom:1px; min-width:84px; border-radius:4px; }
#games-hub #rabbit-house-panel .rhgrid { border-width:6px; border-color:#9e5f34; background:#8c552f; box-shadow:inset 0 0 0 2px #e5b36f,0 0 0 1px #563a25,0 5px 14px #0005; }
#games-hub #rabbit-house-panel .rhreel { background:linear-gradient(180deg,#65352e,#452a26); border-radius:3px; }
#games-hub #rabbit-house-panel .rhreel:nth-child(even) { background:linear-gradient(180deg,#794135,#502d27); }
#games-hub #rabbit-house-panel .rhframe.fs .rhreel { background:linear-gradient(180deg,#6a3d4d,#422c36); }
#games-hub #rabbit-house-panel .rhframe.rain .rhreel { background:linear-gradient(180deg,#3e6571,#2b424f); }
#games-hub #rabbit-house-panel .rhc + .rhc { border-top-color:#e7d2ac1a; }
#games-hub #rabbit-house-panel .br-slot-mascot { max-height:350px; }
#games-hub #rabbit-house-panel .rhframe > #rhOverlay { border-radius:17px; padding-top:70px; }
@media(max-width:760px) {
 #games-hub #rabbit-house-panel .br-slot-playfield { grid-template-columns:minmax(0,1fr); }
 #games-hub #rabbit-house-panel .rh-head { padding-inline:0; padding-bottom:0; min-height:89px; align-items:flex-start; }
 #games-hub #rabbit-house-panel .rh-title { padding-top:24px; }
 #games-hub #rabbit-house-panel .rh-title b { font-size:24px; }
 #games-hub #rabbit-house-panel .rh-ways { bottom:0; right:0; min-width:66px; padding:3px 5px; }
 #games-hub #rabbit-house-panel .rh-ways small { font-size:8px; }
 #games-hub #rabbit-house-panel .rh-ways b { font-size:12px; }
 #games-hub #rabbit-house-panel .br-slot-mascot { right:auto; left:7px; top:16px; width:46px; height:78px; }
 #games-hub #rabbit-house-panel .rhgrid { border-width:4px; }
}

/* A short visual cue keeps this title's mechanic visible beside the primary controls. */
#games-hub #rabbit-house-panel[data-rules="1"] .br-slot-mechanic { display:none; }
#games-hub #rabbit-house-panel[data-rules="2"] .br-slot-playfield { grid-template-areas:"heading heading heading" ". banner ." "context board mascot" "hint hint hint"; }
#games-hub #rabbit-house-panel[data-rules="2"] .br-slot-mechanic { grid-area:hint; position:relative; z-index:2; display:flex; align-items:center; justify-content:center; gap:12px; min-width:0; margin:6px 0 0; padding:9px 12px; border:1px solid #efd28d45; border-radius:9px; background:#352a24eb; color:#fff6df; }
#games-hub #rabbit-house-panel[data-rules="2"] .br-slot-mechanic-art { display:flex; align-items:center; gap:5px; flex:none; color:#efd28d; }
#games-hub #rabbit-house-panel[data-rules="2"] .br-slot-mechanic-art b { display:grid; place-items:center; width:29px; height:29px; border:1px solid #efd28d88; border-radius:7px; background:#ffffff0a; font:800 13px/1 Arial,sans-serif; }
#games-hub #rabbit-house-panel[data-rules="2"] .br-slot-mechanic-art i { font-style:normal; opacity:.65; }
#games-hub #rabbit-house-panel[data-rules="2"] .br-slot-mechanic p { margin:0; font-size:12px; line-height:1.45; text-wrap:pretty; }
#games-hub #rabbit-house-panel[data-rules="2"] .br-slot-actions .sl-pill.buy { background:transparent; color:#efd28d; box-shadow:inset 0 0 0 1px #efd28d77; }
#games-hub #rabbit-house-panel[data-rules="2"] .br-slot-actions .sl-pill.buy:not(:disabled):hover { background:#efd28d1f; }
@media(max-width:760px) {
 #games-hub #rabbit-house-panel[data-rules="2"] .br-slot-playfield { grid-template-areas:"heading" "context" "banner" "board" "hint"; }
 #games-hub #rabbit-house-panel[data-rules="2"] .br-slot-mechanic { gap:8px; padding:8px 9px; justify-content:flex-start; }
 #games-hub #rabbit-house-panel[data-rules="2"] .br-slot-mechanic p { font-size:11px; }
 #games-hub #rabbit-house-panel[data-rules="2"] .br-slot-mechanic-art { gap:3px; }
 #games-hub #rabbit-house-panel[data-rules="2"] .br-slot-mechanic-art b { width:24px; height:27px; font-size:11px; }
}
