/* Original Rabbit Party layout; scoped to its provider mount. */
#games-hub #rabbit-party-panel[hidden] { display: none; }
#games-hub #rabbit-party-panel .rpframe {
    position: relative; display: flex; flex-direction: column; gap: 10px; padding: 12px; border-radius: 18px; overflow: hidden;
    background: radial-gradient(4px 4px at 12% 18%, #ff7aa8 50%, transparent 52%), radial-gradient(4px 4px at 82% 12%, #ffd25a 50%, transparent 52%), radial-gradient(3px 3px at 64% 30%, #3ddc84 50%, transparent 52%), radial-gradient(4px 4px at 30% 8%, #8fd0ff 50%, transparent 52%),
      radial-gradient(120% 60% at 50% 0%, #6b3cff 0%, #2a2a9e 42%, #11185a 78%, #080e30 100%);
    border: 1px solid #5a4ac0; transition: box-shadow .4s ease, border-color .4s ease;
  }
#games-hub #rabbit-party-panel .rpframe.fs { border-color: #ff7aa8; box-shadow: 0 0 34px rgba(255, 122, 168, .45); background: radial-gradient(4px 4px at 12% 18%, #ffd25a 50%, transparent 52%), radial-gradient(4px 4px at 82% 12%, #8fd0ff 50%, transparent 52%), radial-gradient(120% 60% at 50% 0%, #c43cff 0%, #6a2ab8 42%, #241a6e 78%, #0c0e34 100%); }
#games-hub #rabbit-party-panel .rp-head { position: relative; display: flex; align-items: center; justify-content: center; gap: 12px; min-height: 62px; }
#games-hub #rabbit-party-panel .rp-head .lg { width: 44px; height: 48px; flex: none; background: var(--logo) center / contain no-repeat; filter: drop-shadow(0 0 8px #ff9ad0); }
#games-hub #rabbit-party-panel .rp-head svg { width: 46px; height: 56px; flex: none; }
#games-hub #rabbit-party-panel .rp-title { font-family: var(--font-display); font-weight: 800; text-transform: uppercase; line-height: .9; text-align: center; }
#games-hub #rabbit-party-panel .rp-title i { display: block; font-style: normal; font-size: 22px; color: #fff; text-shadow: 0 3px 0 #2142fe, 0 0 14px rgba(140, 170, 255, .8); }
#games-hub #rabbit-party-panel .rp-title b { display: block; font-size: 28px; color: #ffd25a; text-shadow: 0 3px 0 #c43c7a, 0 0 16px rgba(255, 120, 200, .7); letter-spacing: .02em; }
#games-hub #rabbit-party-panel .rpgrid { position: relative; aspect-ratio: 1; overflow: hidden; border-radius: 14px; background: linear-gradient(180deg, rgba(20, 16, 80, .92), rgba(8, 12, 46, .95)); box-shadow: inset 0 0 0 2px #ff7aa8, 0 0 0 3px rgba(255, 210, 90, .35); }
#games-hub #rabbit-party-panel .rpcells { position: absolute; inset: 4px; }
#games-hub #rabbit-party-panel .rpc { position: absolute; left: 0; top: 0; width: 14.2857%; height: 14.2857%; transition: transform var(--pt, 400ms) cubic-bezier(.3, .9, .35, 1.08); will-change: transform; }
#games-hub #rabbit-party-panel .rps { position: relative; width: 100%; height: 100%; padding: 7%; display: grid; place-items: center; }
#games-hub #rabbit-party-panel .rps svg { width: 100%; height: 100%; display: block; filter: drop-shadow(0 2px 2px rgba(0, 0, 0, .45)); }
#games-hub #rabbit-party-panel .rpc.win .rps { animation: br-slot-zglow .45s ease-in-out infinite alternate; z-index: 2; }
#games-hub #rabbit-party-panel .rpc.pop .rps { animation: br-slot-zpop .28s ease-in forwards; }
#games-hub #rabbit-party-panel .rpx { position: absolute; left: 50%; top: 50%; z-index: 3; transform: translate(-50%, -50%); padding: 1px 5px; border-radius: 8px; background: radial-gradient(circle at 35% 30%, #ffe680, #ff9a2b); color: #3a1800; font-family: var(--font-display); font-weight: 800; font-style: normal; font-size: calc(var(--pc, 44px) * .3); line-height: 1.3; box-shadow: 0 0 10px rgba(255, 190, 60, .9), 0 2px 0 rgba(0, 0, 0, .3); animation: br-slot-pop .3s cubic-bezier(.3, 1.5, .5, 1); white-space: nowrap; }
#games-hub #rabbit-party-panel .rp-cmult { position: absolute; z-index: 4; transform: translate(-50%, -50%); padding: 3px 10px; border-radius: 12px; background: rgba(12, 14, 52, .9); border: 2px solid #ffd25a; color: #ffd25a; font-family: var(--font-display); font-weight: 800; font-size: clamp(14px, 4.4vw, 22px); white-space: nowrap; pointer-events: none; animation: br-slot-pop .35s cubic-bezier(.3, 1.5, .5, 1); font-variant-numeric: tabular-nums; }
#games-hub #rabbit-party-panel .rp-list { display: flex; flex-direction: column; gap: 4px; min-height: 30px; }
#games-hub #rabbit-party-panel .rp-list:empty::before { content: "Здесь появятся выигрыши"; color: var(--muted); font-size: 12px; font-weight: 700; text-align: center; padding: 6px 0; }
#games-hub #rabbit-party-panel .rp-list div { display: flex; align-items: center; gap: 8px; padding: 4px 10px; border-radius: 10px; background: rgba(6, 11, 29, .62); border: 1px solid rgba(255, 122, 168, .35); font-size: 12px; font-weight: 800; font-variant-numeric: tabular-nums; animation: br-slot-pop .3s cubic-bezier(.3, 1.5, .5, 1); }
#games-hub #rabbit-party-panel .rp-list div svg { width: 22px; height: 22px; flex: none; }
#games-hub #rabbit-party-panel .rp-list div em { font-style: normal; color: #ffd25a; }
#games-hub #rabbit-party-panel .rp-list div b { margin-left: auto; color: #fff; }
#games-hub #rabbit-party-panel .rp-pt { display: grid; grid-template-columns: 44px repeat(5, 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-party-panel .rp-pt .h { color: var(--muted); font-size: 11px; }
#games-hub #rabbit-party-panel .rp-pt .s { height: 40px; }
#games-hub #rabbit-party-panel .rp-pt .s .rps { padding: 2px; }

@media (prefers-reduced-motion: reduce) {
#games-hub #rabbit-party-panel .rpc { transition: none; }
#games-hub #rabbit-party-panel .rpc.win .rps,
#games-hub #rabbit-party-panel .rpx,
#games-hub #rabbit-party-panel .rp-cmult,
#games-hub #rabbit-party-panel .rp-list div { animation: none; }
#games-hub #rabbit-party-panel .rpc.pop .rps { animation: none; opacity: 0; }
 
}


/* Scene-led original-inspired presentation. Native grid coordinates and replay hooks stay intact. */
#games-hub #rabbit-party-panel .rpframe {
  --slot-accent:#f3dc9a; --slot-edge:#d8bf7c; --slot-caption:#fff3d6; --slot-surface:#5d7949;
  display:flex; flex-direction:column; gap:0; padding:0; overflow:visible; border:1px solid #d8bf7c; border-radius:18px;
  color:#fff8e7; background:#314b33; box-shadow:0 12px 34px #0004; isolation:isolate;
}
#games-hub #rabbit-party-panel .rpframe.fs, #games-hub #rabbit-party-panel .rpframe.fs2, #games-hub #rabbit-party-panel .rpframe.rain { background:#314b33; 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-party-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-party-panel .rpframe.fs .br-slot-playfield, #games-hub #rabbit-party-panel .rpframe.fs2 .br-slot-playfield { background-image:url('./assets/scene-bonus.svg'); }
#games-hub #rabbit-party-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-party-panel .rp-head { grid-area:heading; justify-self:center; width:min(100%,480px); min-height:64px; margin:0; z-index:1; }
#games-hub #rabbit-party-panel .rp-head .lg, #games-hub #rabbit-party-panel .rp-head .rp-god, #games-hub #rabbit-party-panel .rp-head > svg:not(.rh-roof), #games-hub #rabbit-party-panel .rh-lg { display:none; }
#games-hub #rabbit-party-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:#5d5b42; text-shadow:0 1px 2px #0009; font-size:11px; line-height:1.4; letter-spacing:.035em; }
#games-hub #rabbit-party-panel .br-slot-context { grid-area:context; align-self:center; display:grid; gap:10px; min-width:0; z-index:2; }
#games-hub #rabbit-party-panel .br-slot-context .z-hud { grid-template-columns:minmax(0,1fr); gap:10px; }
#games-hub #rabbit-party-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),#5d5b42); box-shadow:inset 0 0 0 1px #fff2,0 3px 8px #0003; text-align:center; }
#games-hub #rabbit-party-panel .br-slot-context .z-box small { color:var(--slot-caption); font-size:10px; line-height:1.4; letter-spacing:.035em; }
#games-hub #rabbit-party-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-party-panel .rpgrid { grid-area:board; width:100%; min-width:0; margin:0; z-index:2; border:4px solid var(--slot-edge); border-radius:7px; background:#f2ead4; box-shadow:inset 0 0 22px #0004,0 0 0 1px #fff7,0 5px 14px #0005; }
#games-hub #rabbit-party-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-party-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,#314b33,#161b22); }
#games-hub #rabbit-party-panel .br-slot-actions .z-winbar { margin:0; min-width:0; }
#games-hub #rabbit-party-panel .br-slot-actions .z-winbar small { color:var(--slot-caption); }
#games-hub #rabbit-party-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-party-panel .br-slot-actions .z-stats { min-width:0; }
#games-hub #rabbit-party-panel .br-slot-actions button { min-height:44px; }
#games-hub #rabbit-party-panel .br-slot-actions input { font-size:16px; }
#games-hub #rabbit-party-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-party-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-party-panel .rp-head { min-height:64px; max-width:100%; padding-inline:42px; }
  #games-hub #rabbit-party-panel .br-slot-context { align-self:auto; width:100%; gap:7px; }
  #games-hub #rabbit-party-panel .br-slot-context .z-hud { grid-template-columns:repeat(2,minmax(0,1fr)); gap:7px; }
  #games-hub #rabbit-party-panel .br-slot-context .z-box { min-height:54px; padding:6px; border-width:1px; }
  #games-hub #rabbit-party-panel .br-slot-context .z-box small { font-size:9px; }
  #games-hub #rabbit-party-panel .br-slot-context .z-box b { font-size:16px; }
  #games-hub #rabbit-party-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-party-panel .br-slot-actions { padding:12px; }
  #games-hub #rabbit-party-panel .z-banner { min-height:32px; font-size:10px; padding:5px 7px; }
  #games-hub #rabbit-party-panel .rpgrid { border-width:3px; }
}
@media (max-width:380px) {
  #games-hub #rabbit-party-panel .br-slot-playfield { padding:10px 8px 14px; }
  #games-hub #rabbit-party-panel .br-slot-context .z-box small { font-size:9px; letter-spacing:0; }
  #games-hub #rabbit-party-panel .br-slot-context .z-box b { font-size:14px; }
  #games-hub #rabbit-party-panel .br-slot-actions { padding:10px 8px; }
}

#games-hub #rabbit-party-panel .br-slot-playfield { grid-template-columns:minmax(140px,.29fr) minmax(0,1fr) minmax(92px,.16fr); }
#games-hub #rabbit-party-panel .rp-head { justify-content:center; }
#games-hub #rabbit-party-panel .rp-title i { font-family:Arial,sans-serif; font-style:normal; color:#fff2b9; font-size:27px; -webkit-text-stroke:1px #718344; paint-order:stroke fill; text-shadow:0 2px #718344; }
#games-hub #rabbit-party-panel .rp-title b { font-family:Arial,sans-serif; color:#f5c876; font-size:38px; letter-spacing:.01em; -webkit-text-stroke:1px #a56546; paint-order:stroke fill; text-shadow:0 2px #a56546; }
#games-hub #rabbit-party-panel .rpgrid { width:100%; max-width:670px; justify-self:center; border:4px solid #d1b078; background:linear-gradient(180deg,#fff9e8,#eae6d2); box-shadow:inset 0 0 20px #adad8e55,0 0 0 1px #fff7,0 5px 14px #38542e66; }
#games-hub #rabbit-party-panel .rpframe.fs .rpgrid { background:linear-gradient(180deg,#fff1eb,#ece0ec); border-color:#d3a1a3; }
#games-hub #rabbit-party-panel .rpcells { background:repeating-linear-gradient(90deg,transparent 0,transparent calc(14.2857% - 1px),#a4a48922 calc(14.2857% - 1px),#a4a48922 14.2857%); }
#games-hub #rabbit-party-panel .rps svg { filter:drop-shadow(0 2px 1px #746a5e44); }
#games-hub #rabbit-party-panel .rp-list { gap:4px; min-height:0; }
#games-hub #rabbit-party-panel .rp-list:empty { display:none; }
#games-hub #rabbit-party-panel .rp-list div { padding:6px; flex-wrap:wrap; gap:5px; border:1px solid #ede2b680; border-radius:5px; background:#465a39df; color:#fff6dd; font-size:11px; }
#games-hub #rabbit-party-panel .rp-list div b { color:#fff4ca; }
#games-hub #rabbit-party-panel .rp-list div em { color:#fff4ca; }
#games-hub #rabbit-party-panel .rp-list div svg { width:20px; height:20px; }
#games-hub #rabbit-party-panel .br-slot-mascot { max-height:335px; }
@media(max-width:760px) {
 #games-hub #rabbit-party-panel .br-slot-playfield { grid-template-columns:minmax(0,1fr); }
 #games-hub #rabbit-party-panel .rp-title i { font-size:22px; } #games-hub #rabbit-party-panel .rp-title b { font-size:32px; }
 #games-hub #rabbit-party-panel .rpgrid { border-width:3px; }
 #games-hub #rabbit-party-panel .rp-list { flex-direction:row; flex-wrap:wrap; gap:5px; }
 #games-hub #rabbit-party-panel .rp-list div { flex:1 1 80px; min-width:0; font-size:10px; }
}

/* A short visual cue keeps this title's mechanic visible beside the primary controls. */
#games-hub #rabbit-party-panel[data-rules="1"] .br-slot-mechanic { display:none; }
#games-hub #rabbit-party-panel[data-rules="2"] .br-slot-playfield { grid-template-areas:"heading heading heading" ". banner ." "context board mascot" "hint hint hint"; }
#games-hub #rabbit-party-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 #ffe79045; border-radius:9px; background:#27352ceb; color:#fff6df; }
#games-hub #rabbit-party-panel[data-rules="2"] .br-slot-mechanic-art { display:flex; align-items:center; gap:5px; flex:none; color:#ffe790; }
#games-hub #rabbit-party-panel[data-rules="2"] .br-slot-mechanic-art b { display:grid; place-items:center; width:29px; height:29px; border:1px solid #ffe79088; border-radius:7px; background:#ffffff0a; font:800 13px/1 Arial,sans-serif; }
#games-hub #rabbit-party-panel[data-rules="2"] .br-slot-mechanic-art i { font-style:normal; opacity:.65; }
#games-hub #rabbit-party-panel[data-rules="2"] .br-slot-mechanic p { margin:0; font-size:12px; line-height:1.45; text-wrap:pretty; }
#games-hub #rabbit-party-panel[data-rules="2"] .br-slot-actions .sl-pill.buy { background:transparent; color:#ffe790; box-shadow:inset 0 0 0 1px #ffe79077; }
#games-hub #rabbit-party-panel[data-rules="2"] .br-slot-actions .sl-pill.buy:not(:disabled):hover { background:#ffe7901f; }
@media(max-width:760px) {
 #games-hub #rabbit-party-panel[data-rules="2"] .br-slot-playfield { grid-template-areas:"heading" "context" "banner" "board" "hint"; }
 #games-hub #rabbit-party-panel[data-rules="2"] .br-slot-mechanic { gap:8px; padding:8px 9px; justify-content:flex-start; }
 #games-hub #rabbit-party-panel[data-rules="2"] .br-slot-mechanic p { font-size:11px; }
 #games-hub #rabbit-party-panel[data-rules="2"] .br-slot-mechanic-art { gap:3px; }
 #games-hub #rabbit-party-panel[data-rules="2"] .br-slot-mechanic-art b { width:24px; height:27px; font-size:11px; }
}
