/* =========================================================
   PALACE ARCADE · SALA DOS FUNDOS — o cassino (cassino.js), na página da Melvald's.
   Só existe em Hawkins (.t-h). Prefixo próprio: .pa-
   Depois da loja de papel e madeira, uma porta leva à sala escura do fliperama:
   carpete de fliperama, letreiro de neon e máquinas com tela de tubo.
   Celular: bloco "CASSINO" no mobile.css (só dentro das consultas de celular).
   ========================================================= */
.pa {
  --pa-ink: #efe6ff; --pa-muted: #b7aad3; --pa-dim: #8a7ea8;
  --pa-panel: #1b1329; --pa-panel-2: #241836; --pa-edge: #3b2a57; --pa-screen: #07050c;
  --pa-pink: #ff5a9e; --pa-cyan: #45e3ea; --pa-gold: #ffc94a; --pa-green: #6dffa4; --pa-red: #ff5a4f;
  --pa-cond: "Barlow Condensed", "Arial Narrow", var(--font-ui);
  margin-top: 30px; color: var(--pa-ink);
}
.pa[hidden] { display: none; }
.pa-room {
  position: relative; overflow: hidden; padding: 0 clamp(12px, 2.2vw, 24px) 22px; border-radius: 3px;
  background:
    radial-gradient(circle at 20% 30%, rgba(69, 227, 234, 0.10) 0 2px, transparent 3px) 0 0 / 46px 46px,
    radial-gradient(circle at 70% 62%, rgba(255, 90, 158, 0.10) 0 2px, transparent 3px) 0 0 / 58px 58px,
    radial-gradient(circle at 42% 82%, rgba(255, 201, 74, 0.08) 0 1.5px, transparent 2.5px) 0 0 / 37px 37px,
    linear-gradient(#1b1229, #110b1a);
  box-shadow: 0 0 0 1px #06030a, inset 0 0 0 4px #2a1c10, inset 0 0 0 5px #4a3220, 0 24px 50px rgba(0, 0, 0, 0.55);
}
.pa :focus-visible { outline: 2px solid var(--pa-cyan); outline-offset: 2px; }

/* ---------- letreiro ---------- */
.pa-sign { position: relative; display: flex; flex-direction: column; align-items: center; margin: 0 calc(-1 * clamp(12px, 2.2vw, 24px)) 14px; padding: 26px 16px 16px; background: #0a0610; border-bottom: 3px solid #2b1d40; text-align: center; }
.pa-bulbs { position: absolute; left: 12px; right: 12px; top: 9px; display: flex; justify-content: space-between; }
.pa-bulbs i { width: 7px; height: 7px; border-radius: 50%; background: #ffd46b; box-shadow: 0 0 6px #ffb347, 0 0 2px #fff4c9; animation: paChase 1.2s steps(1, end) infinite; animation-delay: calc(var(--i) * -0.3s); }
@keyframes paChase { 0%, 49% { opacity: 1; } 50%, 100% { opacity: 0.22; box-shadow: none; } }
.pa-kicker, .pa-sub { font: 700 11px var(--font-small); letter-spacing: 0.22em; text-transform: uppercase; color: #cbb9e8; }
.pa-name { margin: 6px 0 4px; font: 800 clamp(34px, 5.4vw, 56px)/1 var(--pa-cond); letter-spacing: 0.12em; text-transform: uppercase; }
.pa-name span:first-child { color: #ffd9ea; text-shadow: 0 0 4px #ff8fbf, 0 0 14px var(--pa-pink), 0 0 30px rgba(255, 60, 140, 0.55); }
.pa-name span:last-child { color: #d9fcff; text-shadow: 0 0 4px #9ff4f8, 0 0 14px var(--pa-cyan), 0 0 30px rgba(40, 210, 230, 0.5); animation: paFlicker 7s linear infinite; }
@keyframes paFlicker { 0%, 91%, 93%, 96%, 100% { opacity: 1; } 92%, 95% { opacity: 0.45; } }
.pa-intro { max-width: 720px; margin: 0 auto 16px; font: 13px/1.6 var(--font-type); color: var(--pa-muted); text-align: center; }
.pa-intro em { color: var(--pa-gold); }

/* ---------- barra: dinheiro, jogadas e fichas ---------- */
.pa-bar { display: grid; grid-template-columns: minmax(150px, 0.8fr) minmax(190px, 1fr) minmax(0, 1.6fr); gap: 12px; align-items: stretch; margin-bottom: 14px; }
.pa-bar > div { display: flex; flex-direction: column; justify-content: center; gap: 4px; min-width: 0; padding: 10px 14px; border: 1px solid var(--pa-edge); border-radius: 4px; background: var(--pa-panel); box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.05); }
.pa-bar > div > span { font: 700 10px var(--font-small); letter-spacing: 0.18em; text-transform: uppercase; color: var(--pa-dim); }
.pa-cash b { font: 30px/1 var(--font-crt); color: var(--pa-green); text-shadow: 0 0 8px rgba(109, 255, 164, 0.5); overflow-wrap: anywhere; }
.pa-plays b { font: 700 18px/1.1 var(--pa-cond); letter-spacing: 0.04em; }
.pa-pips { display: flex; flex-wrap: wrap; gap: 3px; }
.pa-pips u { width: 8px; height: 8px; border-radius: 1px; background: #3a2c52; }
.pa-pips u.on { background: var(--pa-pink); box-shadow: 0 0 4px rgba(255, 90, 158, 0.7); }
.pa-pips u.meio { background: rgba(255, 90, 158, 0.42); }
.pa-chips { display: flex; flex-wrap: wrap; gap: 8px; }
.pa-chip { --chip: #e8e2d4; --chip-ink: #2a2233; position: relative; display: grid; place-items: center; width: 46px; height: 46px; padding: 0; border: 0; border-radius: 50%; background: var(--chip); color: var(--chip-ink); cursor: pointer; box-shadow: inset 0 0 0 4px var(--chip), inset 0 0 0 6px rgba(255, 255, 255, 0.85), 0 3px 0 rgba(0, 0, 0, 0.45); transition: transform 0.12s, box-shadow 0.12s; }
.pa-chip::before { content: ""; position: absolute; inset: 2px; border-radius: 50%; border: 3px dashed rgba(255, 255, 255, 0.7); }
.pa-chip span { position: relative; font: 800 13px var(--pa-cond); letter-spacing: 0.02em; }
.pa-chip[data-v="100"] { --chip: #2f63c4; --chip-ink: #fff; }
.pa-chip[data-v="500"] { --chip: #c2342c; --chip-ink: #fff; }
.pa-chip[data-v="1000"] { --chip: #1c1a1f; --chip-ink: var(--pa-gold); }
.pa-chip[data-v="2500"] { --chip: #2d8a4e; --chip-ink: #fff; }
.pa-chip[data-v="5000"] { --chip: #c8641e; --chip-ink: #fff; }
.pa-chip[data-v="10000"] { --chip: #5b3a99; --chip-ink: #fff; }
.pa-chip[data-v="20000"] { --chip: #e3b23c; --chip-ink: #2a1c05; }
.pa-chip[data-v="30000"] { --chip: #b8326e; --chip-ink: #fff; }
.pa-chip[data-v="50000"] { --chip: #0f5f63; --chip-ink: var(--pa-gold); }
.pa-chip:hover:not(:disabled) { transform: translateY(-2px); }
.pa-chip.on { transform: translateY(-4px); box-shadow: inset 0 0 0 4px var(--chip), inset 0 0 0 6px rgba(255, 255, 255, 0.85), 0 7px 0 rgba(0, 0, 0, 0.4), 0 0 0 2px var(--pa-gold), 0 0 14px rgba(255, 201, 74, 0.6); }
.pa-chip:disabled { cursor: default; opacity: 0.55; }

/* ---------- as máquinas (abas) ---------- */
.pa-tabs { display: grid; grid-template-columns: repeat(7, minmax(0, 1fr)); gap: 8px; margin-bottom: 12px; }
.pa-tab { display: flex; flex-direction: column; align-items: center; gap: 2px; min-width: 0; padding: 10px 6px 9px; border: 1px solid var(--pa-edge); border-top: 4px solid #3b2a57; border-radius: 4px 4px 2px 2px; background: linear-gradient(#231733, #170f22); color: var(--pa-muted); cursor: pointer; text-align: center; transition: transform 0.12s, border-color 0.15s, color 0.15s; }
.pa-tab-ico { font-size: 22px; line-height: 1.1; filter: saturate(0.7); }
.pa-tab-name { font: 700 14px/1.1 var(--pa-cond); letter-spacing: 0.03em; color: var(--pa-ink); }
.pa-tab-max { font: 11px var(--font-type); color: var(--pa-dim); }
.pa-tab:hover:not(:disabled) { transform: translateY(-2px); border-color: #5a4180; }
.pa-tab.on { border-color: var(--pa-pink); border-top-color: var(--pa-pink); background: linear-gradient(#3a1f41, #1f1229); color: var(--pa-ink); box-shadow: 0 0 0 1px rgba(255, 90, 158, 0.35), 0 0 16px rgba(255, 90, 158, 0.25); }
.pa-tab.on .pa-tab-ico { filter: none; }
.pa-tab.on .pa-tab-max { color: var(--pa-gold); }
.pa-tab:disabled { cursor: not-allowed; opacity: 0.45; }

/* ---------- o palco: tela da máquina + controles ---------- */
.pa-stage { padding: 14px; border: 1px solid var(--pa-edge); border-radius: 6px; background: var(--pa-panel-2); box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.05), 0 10px 22px rgba(0, 0, 0, 0.35); transition: box-shadow 0.3s; }
.pa-stage:focus { outline: none; }
.pa-game { display: grid; grid-template-columns: minmax(0, 1.55fr) minmax(220px, 0.85fr); gap: 16px; align-items: start; }
.pa-screen { position: relative; overflow: hidden; display: flex; flex-direction: column; align-items: center; gap: 12px; min-height: 290px; padding: 16px 14px 12px; border-radius: 8px; background: radial-gradient(ellipse at 50% 30%, #1d1430, var(--pa-screen) 75%); box-shadow: inset 0 0 0 2px #000, inset 0 0 26px rgba(0, 0, 0, 0.9), 0 0 0 5px #2c2040, 0 0 0 6px #4a3868; }
.pa-screen::after { content: ""; position: absolute; inset: 0; pointer-events: none; background: repeating-linear-gradient(0deg, transparent 0 3px, rgba(0, 0, 0, 0.18) 3px 4px); }
.pa-side { display: flex; flex-direction: column; gap: 12px; min-width: 0; }
.pa-msg { position: relative; z-index: 1; min-height: 42px; margin: auto 0 0; padding: 0 6px; font: 14px/1.5 var(--font-type); color: var(--pa-muted); text-align: center; overflow-wrap: anywhere; }
.pa-msg b, .pa-msg strong { color: var(--pa-ink); }
.pa-msg small { display: block; color: var(--pa-dim); }
.pa-msg-win { color: var(--pa-green); } .pa-msg-win b { color: #eafff1; }
.pa-msg-big { color: var(--pa-gold); } .pa-msg-big strong { color: #fff3c4; letter-spacing: 0.06em; }
.pa-msg-bad { color: #ffb0aa; }
.pa-msg-meh { color: #d9cfee; }
.pa-msg-wait { color: var(--pa-cyan); }
.pa-flash-win { animation: paWin 1.2s ease-out; }
.pa-flash-big { animation: paBig 0.5s ease-in-out 5 alternate; }
@keyframes paWin { 0% { box-shadow: 0 0 0 2px var(--pa-green), 0 0 30px rgba(109, 255, 164, 0.55); } 100% { box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.05), 0 10px 22px rgba(0, 0, 0, 0.35); } }
@keyframes paBig { from { box-shadow: 0 0 0 2px var(--pa-gold), 0 0 18px rgba(255, 201, 74, 0.4); } to { box-shadow: 0 0 0 3px #fff3c4, 0 0 44px rgba(255, 201, 74, 0.8); } }

/* o botão grande de cada máquina (e o verde de sacar/parar) */
.pa-go { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 1px; min-height: 56px; padding: 8px 12px; border: 0; border-radius: 6px; background: linear-gradient(#e0453a, #b52a22); color: #fff4ea; font: 800 18px/1.1 var(--pa-cond); letter-spacing: 0.06em; text-transform: uppercase; cursor: pointer; box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.35), 0 5px 0 #6e140f, 0 8px 14px rgba(0, 0, 0, 0.45); transition: transform 0.08s, box-shadow 0.08s, filter 0.15s; }
.pa-go small { font: 700 13px var(--font-type); letter-spacing: 0; text-transform: none; opacity: 0.9; }
.pa-go:hover:not(:disabled) { filter: brightness(1.08); }
.pa-go:active:not(:disabled) { transform: translateY(4px); box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.3), 0 1px 0 #6e140f, 0 3px 6px rgba(0, 0, 0, 0.4); }
.pa-go:disabled { cursor: default; background: linear-gradient(#5a4a66, #43354f); color: #cfc3e0; box-shadow: 0 5px 0 #2a1f33; }
.pa-go-cash { background: linear-gradient(#35b865, #23864a); box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.35), 0 5px 0 #104a26, 0 8px 14px rgba(0, 0, 0, 0.45); }
.pa-go-cash:not(:disabled) { animation: paPulse 1.1s ease-in-out infinite; }
@keyframes paPulse { 50% { filter: brightness(1.18); } }
.pa-go[hidden] { display: none; }
.pa-note, .pa-odds { margin: 0; font: 12px/1.55 var(--font-type); color: var(--pa-dim); }
.pa-odds { padding: 0 0 0 16px; }
.pa-odds b { color: var(--pa-muted); }

/* tabelas de pagamento */
.pa-pay { width: 100%; border-collapse: collapse; font: 13px var(--font-type); color: var(--pa-muted); }
.pa-pay caption { padding-bottom: 6px; font: 700 10px var(--font-small); letter-spacing: 0.18em; text-transform: uppercase; color: var(--pa-dim); text-align: left; }
.pa-pay td { padding: 4px 6px; border-top: 1px solid rgba(255, 255, 255, 0.06); vertical-align: middle; }
.pa-pay td:last-child { text-align: right; white-space: nowrap; color: var(--pa-gold); font-weight: 700; }
.pa-pay .pa-sym { font-size: 17px; margin-right: 2px; }
.pa-pay .pa-sub-row td { color: var(--pa-dim); font-size: 12px; text-align: left; font-weight: 400; }

/* ---------- 1. caça-níquel ---------- */
.pa-slot .pa-screen { --pa-cell: 66px; }
.pa-reels { position: relative; z-index: 1; display: grid; grid-template-columns: repeat(3, minmax(0, 96px)); gap: 10px; padding: 12px; border-radius: 8px; background: linear-gradient(#3a2a18, #22170c); box-shadow: inset 0 0 0 3px #6b4a22, inset 0 0 0 5px #22170c, 0 6px 16px rgba(0, 0, 0, 0.6); }
.pa-reel { position: relative; overflow: hidden; height: calc(var(--pa-cell) * 3); border-radius: 4px; background: linear-gradient(#bdb3a0, #fbf7ec 30%, #fbf7ec 70%, #bdb3a0); box-shadow: inset 0 0 12px rgba(0, 0, 0, 0.55); }
.pa-strip { will-change: transform; }
.pa-cell { display: grid; place-items: center; height: var(--pa-cell); }
.pa-sym { display: inline-grid; place-items: center; font-size: 38px; line-height: 1; }
.pa-sym-sete b { font: 900 1.05em/1 var(--font-logo); color: #d11d1d; text-shadow: 0 2px 0 #6e0d0d, 0 0 1px #000; }
.pa-any { width: 1.05em; color: var(--pa-dim); font: 700 14px var(--font-type); }
.pa-line { position: absolute; left: 4px; right: 4px; top: 50%; height: 3px; margin-top: -1.5px; background: rgba(209, 29, 29, 0.65); box-shadow: 0 0 6px rgba(255, 60, 60, 0.6); pointer-events: none; }
.pa-hit .pa-line { animation: paLine 0.3s steps(1) 8; }
@keyframes paLine { 50% { background: #ffe066; box-shadow: 0 0 14px #ffd23f; } }
.pa-tense .pa-screen { animation: paTense 0.5s ease-in-out infinite alternate; }
@keyframes paTense { to { box-shadow: inset 0 0 0 2px #000, inset 0 0 26px rgba(0, 0, 0, 0.9), 0 0 0 5px #7a2c52, 0 0 0 6px var(--pa-pink), 0 0 26px rgba(255, 90, 158, 0.5); } }

/* ---------- o POTE DO PALACE: o letreiro em neon (sobe ao vivo) ---------- */
.pa-pote { position: relative; display: grid; justify-items: center; gap: 3px; margin: -2px 0 14px; padding: 12px 14px; border: 1px solid #5a3f12; border-radius: 6px; background: radial-gradient(ellipse at 50% 0%, rgba(255, 201, 74, 0.16), transparent 70%), #0c0712; box-shadow: inset 0 0 0 1px rgba(255, 201, 74, 0.18), 0 0 22px rgba(255, 170, 40, 0.12); text-align: center; }
.pa-pote[hidden] { display: none; }
.pa-pote-k { font: 800 13px var(--pa-cond); letter-spacing: 0.32em; color: #ffe7a8; text-shadow: 0 0 6px rgba(255, 190, 60, 0.7); }
.pa-pote-v { font: clamp(40px, 6vw, 60px)/1 var(--font-crt); color: #fff1c2; text-shadow: 0 0 4px #ffd36b, 0 0 16px #ffb02e, 0 0 34px rgba(255, 150, 20, 0.6); font-variant-numeric: tabular-nums; overflow-wrap: anywhere; }
.pa-pote-teto { font: 700 14px var(--pa-cond); letter-spacing: 0.12em; text-transform: uppercase; color: var(--pa-pink); }
.pa-pote-regra, .pa-pote-ult { max-width: 640px; font: 12px/1.45 var(--font-type); color: var(--pa-muted); }
.pa-pote-ult[hidden] { display: none; }
.pa-pote-ult b { color: var(--pa-ink); }
.pa-pote-adm { width: 100%; max-width: 580px; margin-top: 6px; text-align: left; font: 13px var(--font-type); color: var(--pa-muted); }
.pa-pote-adm[hidden] { display: none; }
.pa-pote-adm summary { cursor: pointer; color: var(--pa-cyan); }
.pa-pote-form { display: flex; flex-wrap: wrap; align-items: flex-end; gap: 10px; margin: 8px 0 6px; }
.pa-pote-form label { flex: 0 0 auto; display: flex; flex-direction: column; gap: 4px; font: 700 11px var(--font-small); letter-spacing: 0.08em; text-transform: uppercase; color: var(--pa-dim); }
.pa-pote-form select, .pa-pote-form input { min-height: 38px; padding: 4px 8px; border: 1px solid var(--pa-edge); border-radius: 4px; background: #0e0916; color: var(--pa-ink); font: 16px var(--font-type); }
.pa-pote-form input { width: 9em; }
.pa-pote-msg { font: 12px var(--font-type); color: var(--pa-gold); }

/* ---------- 1b. Palace Deluxe: 5 rolos, 9 linhas e o bônus da Lanterna ---------- */
.pa-dlx .pa-screen { --pa-dcell: 66px; gap: 10px; }
.pa-dlx-pote { position: relative; z-index: 1; display: flex; flex-wrap: wrap; justify-content: center; align-items: baseline; gap: 2px 10px; padding: 4px 14px; border-radius: 4px; background: #160c05; box-shadow: inset 0 0 0 1px #6a4a14; }
.pa-dlx-pote span { font: 800 11px var(--pa-cond); letter-spacing: 0.26em; color: #ffd98a; }
.pa-dlx-pote b { font: 26px/1 var(--font-crt); color: #fff1c2; text-shadow: 0 0 10px #ffb02e; font-variant-numeric: tabular-nums; }
.pa-dlx-box { position: relative; z-index: 1; padding: 10px; border-radius: 8px; background: linear-gradient(#3a2a18, #22170c); box-shadow: inset 0 0 0 3px #6b4a22, inset 0 0 0 5px #22170c, 0 6px 16px rgba(0, 0, 0, 0.6); transition: box-shadow 0.3s; }
.pa-dlx-reels { display: grid; grid-template-columns: repeat(5, var(--pa-dcell)); }
.pa-dlx-reel { height: calc(var(--pa-dcell) * 3); border-radius: 0; box-shadow: inset -1px 0 0 rgba(0, 0, 0, 0.35), inset 0 0 12px rgba(0, 0, 0, 0.45); }
.pa-dlx-reel:first-child { border-radius: 4px 0 0 4px; }
.pa-dlx-reel:last-child { border-radius: 0 4px 4px 0; box-shadow: inset 0 0 12px rgba(0, 0, 0, 0.45); }
.pa-dlx .pa-cell { height: var(--pa-dcell); transition: background 0.2s; }
.pa-dlx .pa-cell.pa-dlx-hit { background: rgba(255, 210, 63, 0.38); box-shadow: inset 0 0 0 2px #ffd23f; }
.pa-dsym { display: inline-grid; place-items: center; font-size: calc(var(--pa-dcell, 40px) * 0.56); line-height: 1; }
.pa-dsym-palace { gap: 0; padding: 2px 3px; border-radius: 4px; background: #1a0b16; box-shadow: 0 0 0 1px var(--pa-pink), 0 0 8px rgba(255, 90, 158, 0.7); }
.pa-dsym-palace b { font: 800 calc(var(--pa-dcell, 40px) * 0.24)/0.95 var(--pa-cond); letter-spacing: 0.06em; color: #ffd9ea; text-shadow: 0 0 6px var(--pa-pink); }
.pa-dlx-cor { position: absolute; top: 10px; left: 10px; width: calc(100% - 20px); height: calc(100% - 20px); display: grid; grid-template-columns: repeat(5, 1fr); grid-template-rows: repeat(3, 1fr); pointer-events: none; }
.pa-dlx-cor i { display: grid; place-items: center; align-content: center; gap: 1px; font-style: normal; }
.pa-dlx-cor i.on { border-radius: 4px; background: radial-gradient(circle, rgba(255, 236, 150, 0.95), rgba(255, 190, 40, 0.5) 62%, rgba(255, 190, 40, 0.15) 74%); box-shadow: inset 0 0 0 2px #ffd23f, 0 0 14px rgba(255, 210, 63, 0.7); }
.pa-dlx-cor i small { padding: 0 3px; border-radius: 2px; background: #ffd23f; color: #3d2600; font: 800 9px var(--pa-cond); letter-spacing: 0.1em; text-transform: uppercase; }
.pa-dlx-cor i.nova { animation: paNova 0.5s ease-out; }
@keyframes paNova { from { transform: scale(1.6); opacity: 0; } }
.pa-dlx-linhas { position: absolute; top: 10px; left: 10px; width: calc(100% - 20px); height: calc(100% - 20px); overflow: visible; pointer-events: none; }
.pa-dlx-linhas polyline { fill: none; stroke: var(--c); stroke-width: 4; vector-effect: non-scaling-stroke; stroke-linecap: round; stroke-linejoin: round; opacity: 0; filter: drop-shadow(0 0 4px var(--c)); transition: opacity 0.2s; }
.pa-dlx-linhas polyline.on { opacity: 0.95; }
.pa-dlx-modo-bonus .pa-dlx-box { box-shadow: inset 0 0 0 3px #ffd23f, inset 0 0 0 5px #22170c, 0 0 26px rgba(255, 210, 63, 0.5); }
.pa-dlx-bonus { position: relative; z-index: 1; display: flex; flex-wrap: wrap; justify-content: center; align-items: baseline; gap: 4px 12px; padding: 6px 14px; border-radius: 4px; background: #2a1d05; box-shadow: inset 0 0 0 1px #ffd23f; font: 13px var(--font-type); color: #ffe9a8; }
.pa-dlx-bonus[hidden] { display: none; }
.pa-dlx-bonus b { font: 800 15px var(--pa-cond); letter-spacing: 0.14em; color: #ffd23f; }
.pa-dlx-bonus em { font: 22px/1 var(--font-crt); font-style: normal; color: var(--pa-green); }
.pa-dlx-jackpot .pa-dlx-reel .pa-cell:nth-child(2) .pa-dsym-palace { animation: paBig 0.3s ease-in-out 12 alternate; }
.pa-dlx-jackpot .pa-dlx-box { box-shadow: inset 0 0 0 3px #ff5a9e, inset 0 0 0 5px #22170c, 0 0 34px rgba(255, 90, 158, 0.65); }
.pa-dlx-min { padding: 8px 10px; border-left: 3px solid var(--pa-gold); background: rgba(255, 201, 74, 0.06); }
.pa-dlx-min b { color: var(--pa-gold); }
.pa-dpay th { padding: 2px 6px 4px; font: 700 10px var(--font-small); letter-spacing: 0.12em; color: var(--pa-dim); text-align: center; }
.pa-dpay th:first-child { text-align: left; }
.pa-dpay td { text-align: center; }
.pa-dpay td:first-child { text-align: left; }
.pa-dpay td:not(:first-child) { color: var(--pa-gold); font-weight: 700; white-space: nowrap; }
.pa-dpay .pa-dsym { --pa-dcell: 34px; }
.pa-dpay .pa-dpay-top td:last-child { color: var(--pa-pink); letter-spacing: 0.06em; }
.pa-dpay .pa-sub-row td { text-align: left; white-space: normal; color: var(--pa-dim); font-weight: 400; }
.pa-dpay .pa-sub-row b { color: var(--pa-muted); }
.pa-dpay .pa-sub-row .pa-dsym { --pa-dcell: 26px; vertical-align: middle; }
.pa-dlx-mapa { font: 12px var(--font-type); color: var(--pa-muted); }
.pa-dlx-mapa summary { cursor: pointer; color: var(--pa-cyan); }
.pa-dlx-mapa ol { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 6px; margin: 8px 0 0; padding: 0; list-style: none; }
.pa-dlx-mapa li { display: flex; align-items: center; gap: 6px; }
.pa-dlx-mapa svg { width: 54px; height: 32px; }
.pa-dlx-mapa rect { fill: #2a2238; }
.pa-dlx-mapa rect.on { fill: var(--c); }

/* ---------- quem levou o pote: a faixa (qualquer página) e o cupom de papel térmico (fora da sala: sem as variáveis .pa) ---------- */
.pa-faixa { position: fixed; z-index: 9000; left: 50%; top: 12px; transform: translateX(-50%); display: flex; align-items: center; gap: 8px; width: max-content; max-width: min(92vw, 720px); padding: 8px 8px 8px 18px; border-radius: 6px; background: #120a1c; color: #fff1c2; box-shadow: 0 0 0 2px #ffc94a, 0 0 26px rgba(255, 190, 60, 0.55), 0 12px 30px rgba(0, 0, 0, 0.6); font: 700 16px/1.3 "Barlow Condensed", "Arial Narrow", sans-serif; letter-spacing: 0.06em; animation: paFaixa 0.5s ease-out; }
.pa-faixa b { color: #ffd36b; }
.pa-faixa-x { flex: 0 0 auto; min-width: 36px; min-height: 36px; border: 0; border-radius: 4px; background: transparent; color: #fff1c2; font-size: 16px; cursor: pointer; }
.pa-faixa-x:focus-visible { outline: 2px solid #45e3ea; }
.pa-faixa.sai { opacity: 0; transition: opacity 0.4s; }
@keyframes paFaixa { from { transform: translate(-50%, -30px); opacity: 0; } }
.pa-cupom { width: min(92vw, 340px); max-height: 92vh; padding: 0; border: 0; background: transparent; overflow: auto; }
.pa-cupom::backdrop { background: rgba(5, 2, 10, 0.78); }
.pa-cupom-papel { padding: 18px 16px 20px; border-bottom: 3px dashed #cfc7b4; background: #fbf8f1; color: #2a2723; font: 14px/1.45 "Courier Prime", "Courier New", monospace; text-align: center; box-shadow: 0 18px 40px rgba(0, 0, 0, 0.6); }
.pa-cupom-papel p { margin: 0 0 4px; overflow-wrap: anywhere; }
.pa-cupom-topo { font-weight: 700; letter-spacing: 0.14em; }
.pa-cupom-topo small { font-weight: 400; letter-spacing: 0; }
.pa-cupom-tra { color: #8a8478; letter-spacing: -0.02em; overflow: hidden; white-space: nowrap; }
.pa-cupom-tit { font-weight: 700; }
.pa-cupom-v { margin: 6px 0 8px !important; font: 700 34px/1.1 "Courier Prime", "Courier New", monospace; }
.pa-cupom-fim { font-weight: 700; }
.pa-cupom form { display: flex; justify-content: center; padding: 14px 0 4px; }

/* ---------- 2. roda da fortuna ---------- */
.pa-wheel-box { position: relative; z-index: 1; width: min(100%, 290px); aspect-ratio: 1; margin-top: 8px; }
.pa-wheel-svg { display: block; width: 100%; height: 100%; filter: drop-shadow(0 8px 16px rgba(0, 0, 0, 0.7)); }
.pa-wheel-rot { transform-origin: 0 0; }
.pa-rim { fill: #120b1c; stroke: var(--pa-gold); stroke-width: 4; }
.pa-hub { fill: #1a1226; stroke: var(--pa-gold); stroke-width: 3; }
.pa-slice path { stroke: #0b0712; stroke-width: 1; }
.pa-slice text { font: 800 11px var(--pa-cond); letter-spacing: 0.04em; }
.pa-t-P path { fill: #251a36; } .pa-t-P text { fill: #9c8db8; font-size: 9.5px; }
.pa-t-H path { fill: #2d6170; } .pa-t-H text { fill: #d6f6fb; }
.pa-t-U path { fill: #2d4d92; } .pa-t-U text { fill: #e2ebff; }
.pa-t-D path { fill: #2f7d49; } .pa-t-D text { fill: #e5ffec; }
.pa-t-T path { fill: #bd6d1d; } .pa-t-T text { fill: #fff2df; }
.pa-t-C path { fill: #b3285e; } .pa-t-C text { fill: #ffe6f1; }
.pa-t-J path { fill: #e0ad28; } .pa-t-J text { fill: #3d2600; font-size: 14px; }
.pa-pointer { position: absolute; left: 50%; top: -6px; width: 0; height: 0; margin-left: -11px; border: 11px solid transparent; border-top: 22px solid var(--pa-red); filter: drop-shadow(0 2px 2px rgba(0, 0, 0, 0.8)); }
.pa-d20 { position: absolute; inset: 22%; display: grid; place-items: center; align-content: center; gap: 2px; border-radius: 22%; background: radial-gradient(circle at 35% 30%, #ffe89b, #d9a521 60%, #8a620f); color: #3d2600; box-shadow: 0 0 0 3px #fff3c4, 0 0 36px rgba(255, 201, 74, 0.85); clip-path: polygon(50% 0, 93% 25%, 93% 75%, 50% 100%, 7% 75%, 7% 25%); }
.pa-d20[hidden] { display: none; }
.pa-d20 span { font: 700 11px var(--font-small); letter-spacing: 0.2em; text-transform: uppercase; }
.pa-d20 b { font: 800 46px/1 var(--pa-cond); }
.pa-d20-top { animation: paBig 0.3s ease-in-out 6 alternate; }
.pa-key { display: inline-grid; place-items: center; min-width: 36px; padding: 1px 4px; margin-right: 4px; border-radius: 3px; font: 800 11px var(--pa-cond); }
.pa-key.pa-t-P { background: #251a36; color: #b3a6d0; } .pa-key.pa-t-H { background: #2d6170; color: #d6f6fb; } .pa-key.pa-t-U { background: #2d4d92; color: #e2ebff; }
.pa-key.pa-t-D { background: #2f7d49; color: #e5ffec; } .pa-key.pa-t-T { background: #bd6d1d; color: #fff2df; } .pa-key.pa-t-C { background: #b3285e; color: #ffe6f1; } .pa-key.pa-t-J { background: #e0ad28; color: #3d2600; }

/* ---------- 3. crash: as luzes de Natal ---------- */
.pa-crash-screen { background: radial-gradient(ellipse at 50% 40%, rgb(calc(26 + 60 * var(--pa-heat, 0)) 16 44), var(--pa-screen) 75%); }
.pa-wire { position: relative; z-index: 1; width: 100%; height: auto; overflow: visible; }
.pa-cord { fill: none; stroke: #0f1a0f; stroke-width: 2.5; }
.pa-bulb rect { fill: #2c3a2c; }
.pa-bulb path { fill: var(--c); opacity: 0.16; transition: opacity 0.12s; }
.pa-bulb.on path { opacity: 1; filter: drop-shadow(0 0 5px var(--c)) drop-shadow(0 0 10px var(--c)); }
.pa-bulb.ghost path { opacity: 0.42; }
.pa-bulb.dead path { fill: #5b5566; opacity: 0.55; filter: none; }
.pa-mult { position: relative; z-index: 1; font: 76px/1 var(--font-crt); letter-spacing: 0.02em; color: color-mix(in srgb, #ffc94a calc(100% * var(--pa-heat, 0)), #ffffff); text-shadow: 0 0 14px rgba(255, 220, 140, calc(0.2 + 0.6 * var(--pa-heat, 0))); font-variant-numeric: tabular-nums; }
.pa-burst .pa-mult { color: var(--pa-red); text-shadow: 0 0 14px rgba(255, 60, 60, 0.7); }
.pa-cashed .pa-mult { color: var(--pa-green); text-shadow: 0 0 14px rgba(109, 255, 164, 0.6); }
.pa-burst .pa-crash-screen { animation: paBurst 0.45s ease-out; }
@keyframes paBurst { 0% { background: #fff8e0; } 30% { background: #7a1d1d; } 100% { background: var(--pa-screen); } }
.pa-graph { position: relative; z-index: 1; width: 100%; height: 70px; }
.pa-graph-line { fill: none; stroke: var(--pa-gold); stroke-width: 2.5; vector-effect: non-scaling-stroke; }
.pa-graph-ghost { fill: none; stroke: rgba(255, 201, 74, 0.45); stroke-width: 2; stroke-dasharray: 4 4; vector-effect: non-scaling-stroke; }
.pa-auto { display: flex; flex-direction: column; gap: 4px; font: 700 11px var(--font-small); letter-spacing: 0.14em; text-transform: uppercase; color: var(--pa-dim); }
.pa-auto small { letter-spacing: 0; text-transform: none; font-weight: 400; }
.pa-auto span { display: flex; align-items: center; border: 1px solid var(--pa-edge); border-radius: 4px; background: #0e0916; }
.pa-auto i { padding: 0 2px 0 10px; font: 700 18px var(--font-crt); font-style: normal; color: var(--pa-muted); }
.pa-auto input { flex: 1; min-width: 0; min-height: 40px; padding: 6px 10px 6px 2px; border: 0; background: transparent; color: var(--pa-ink); font: 22px var(--font-crt); letter-spacing: 0.04em; }
.pa-auto input:focus { outline: none; }
.pa-auto span:focus-within { border-color: var(--pa-cyan); box-shadow: 0 0 0 1px var(--pa-cyan); }

/* ---------- 4. roleta russa de cartas ---------- */
.pa-cards .pa-screen { background: radial-gradient(ellipse at 50% 35%, #1f5a37, #0f2d1b 70%, #081a0f); }
.pa-table { position: relative; z-index: 1; display: grid; grid-template-columns: repeat(6, minmax(0, 76px)); gap: 10px; justify-content: center; width: 100%; padding-top: 10px; perspective: 700px; }
.pa-card { position: relative; aspect-ratio: 5 / 7; padding: 0; border: 0; background: none; cursor: pointer; }
.pa-card:disabled { cursor: default; }
.pa-card-in { position: absolute; inset: 0; transform-style: preserve-3d; transition: transform 0.45s cubic-bezier(.3,.8,.3,1); }
.pa-card.flip .pa-card-in { transform: rotateY(180deg); }
.pa-card-back, .pa-card-face { position: absolute; inset: 0; display: grid; place-items: center; border-radius: 6px; backface-visibility: hidden; box-shadow: 0 4px 10px rgba(0, 0, 0, 0.55); }
.pa-card-back { background: repeating-linear-gradient(45deg, #8a1f2b 0 6px, #7a1823 6px 12px); box-shadow: inset 0 0 0 3px #f3e7d0, inset 0 0 0 5px #8a1f2b, 0 4px 10px rgba(0, 0, 0, 0.55); }
.pa-card-back i { font: 800 16px var(--pa-cond); font-style: normal; letter-spacing: 0.12em; color: #f3e7d0; padding: 3px 5px; border: 1px solid #f3e7d0; border-radius: 3px; background: #7a1823; }
.pa-card:not(:disabled):hover .pa-card-in { transform: translateY(-5px); }
.pa-card.pa-lift .pa-card-in { transform: translateY(-9px) rotate(-2deg); }
.pa-card-face { transform: rotateY(180deg); align-content: center; gap: 2px; background: #fbf5e6; color: #1e6b3c; }
.pa-card-face i { font: 700 30px/1 var(--font-ui); font-style: normal; }
.pa-card-face span { font: 800 12px var(--pa-cond); letter-spacing: 0.12em; text-transform: uppercase; }
.pa-card.queimada .pa-card-face { background: radial-gradient(circle at 50% 40%, #ff6a3d, #b3121a 70%); color: #fff2e4; box-shadow: 0 0 18px rgba(255, 70, 40, 0.7); }
.pa-card.pa-dim { opacity: 0.5; }
.pa-card.pa-dim.queimada { opacity: 0.85; }
.pa-ladder { position: relative; z-index: 1; display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 6px; width: 100%; max-width: 480px; margin: 0; padding: 0; list-style: none; }
.pa-ladder li { display: flex; flex-direction: column; align-items: center; padding: 5px 2px; border: 1px solid rgba(255, 255, 255, 0.12); border-radius: 4px; background: rgba(0, 0, 0, 0.3); font: 11px var(--font-type); color: #b9d8c4; }
.pa-ladder b { font: 22px/1 var(--font-crt); color: #e9ffef; }
.pa-ladder li.on { border-color: var(--pa-gold); background: rgba(255, 201, 74, 0.16); box-shadow: 0 0 10px rgba(255, 201, 74, 0.35); }
.pa-ladder li.on b { color: var(--pa-gold); }

/* ---------- 5. 7 da sorte ---------- */
.pa-box { position: relative; z-index: 1; display: flex; justify-content: center; gap: 22px; margin-top: 18px; padding: 26px 34px; border-radius: 10px; background: radial-gradient(ellipse at 50% 30%, #3b2a1a, #1d130a); box-shadow: inset 0 0 0 5px #6b4a26, inset 0 0 0 7px #2a1a0b, inset 0 10px 22px rgba(0, 0, 0, 0.7), 0 10px 20px rgba(0, 0, 0, 0.6); }
.pa-die { --r: 0deg; display: grid; grid-template-columns: repeat(3, 1fr); gap: 5px; width: 74px; height: 74px; padding: 11px; border-radius: 13px; background: linear-gradient(145deg, #fffdf6, #e4dccb); box-shadow: inset 0 -3px 0 rgba(0, 0, 0, 0.15), 0 6px 0 #a89c85, 0 10px 16px rgba(0, 0, 0, 0.55); transform: rotate(var(--r)); transition: transform 0.2s; }
.pa-die i { border-radius: 50%; }
.pa-die i.on { background: radial-gradient(circle at 35% 35%, #5a1d1d, #1b0707); }
.pa-shake { animation: paShake 0.16s linear infinite; }
@keyframes paShake { 25% { transform: translate(-4px, 2px) rotate(-1.5deg); } 75% { transform: translate(4px, -2px) rotate(1.5deg); } }
.pa-sum { position: relative; z-index: 1; font: 30px var(--font-crt); color: var(--pa-muted); }
.pa-sum b { font-size: 44px; color: var(--pa-ink); }
.pa-picks { display: flex; flex-direction: column; gap: 8px; }
.pa-pick { display: grid; grid-template-columns: minmax(0, 1fr) auto; grid-template-areas: "n x" "d x"; align-items: center; column-gap: 10px; min-height: 48px; padding: 7px 12px; border: 1px solid var(--pa-edge); border-radius: 5px; background: var(--pa-panel); color: var(--pa-ink); cursor: pointer; text-align: left; transition: border-color 0.15s, background 0.15s; }
.pa-pick b { grid-area: n; font: 700 16px/1.15 var(--pa-cond); letter-spacing: 0.02em; overflow-wrap: anywhere; }
.pa-pick small { grid-area: d; font: 11px var(--font-type); color: var(--pa-dim); }
.pa-pick em { grid-area: x; font: 700 22px var(--font-crt); font-style: normal; color: var(--pa-gold); }
.pa-pick:hover:not(:disabled) { border-color: #5a4180; }
.pa-pick.on { border-color: var(--pa-cyan); background: #152b35; box-shadow: 0 0 0 1px var(--pa-cyan), 0 0 12px rgba(69, 227, 234, 0.25); }

/* ---------- 6. corrida de cavalos ---------- */
.pa-track { justify-content: flex-start; }
.pa-lanes { position: relative; z-index: 1; width: 100%; border-radius: 4px; overflow: hidden; box-shadow: 0 0 0 3px #f2efe6, 0 6px 14px rgba(0, 0, 0, 0.5); }
.pa-lane { position: relative; height: 38px; background: #8a5a31; border-bottom: 2px solid #f2efe6; }
.pa-lane:nth-child(even) { background: #7d5029; }
.pa-lane:last-of-type { border-bottom: 0; }
.pa-lane .pa-lane-n { position: absolute; left: 6px; top: 50%; transform: translateY(-50%); }
.pa-lane-n { display: inline-grid; place-items: center; width: 22px; height: 22px; border-radius: 3px; background: var(--c); color: #fff; font: 800 13px var(--pa-cond); box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.4); }
.pa-runner { position: absolute; left: 34px; top: 3px; display: flex; align-items: center; will-change: transform; }
.pa-horse { display: inline-block; font-size: 28px; line-height: 1; transform: scaleX(-1); filter: drop-shadow(0 2px 1px rgba(0, 0, 0, 0.4)); }
.pa-silk { position: absolute; left: 12px; top: 13px; width: 8px; height: 8px; border-radius: 50%; background: var(--c); box-shadow: 0 0 0 1px #fff; }
.pa-finish { position: absolute; top: 0; bottom: 0; right: 10px; width: 6px; background: repeating-linear-gradient(0deg, #fff 0 6px, #111 6px 12px); opacity: 0.9; }
.pa-lane.pa-mine { box-shadow: inset 0 0 0 2px var(--pa-cyan); }
.pa-lane.pa-won { background: #b8842f; box-shadow: inset 0 0 0 2px var(--pa-gold), inset 0 0 18px rgba(255, 201, 74, 0.5); }
.pa-horses .pa-pick { grid-template-columns: auto minmax(0, 1fr) auto; grid-template-areas: "c n x" "c d x"; min-height: 44px; padding: 5px 10px; }
.pa-horses .pa-lane-n { grid-area: c; }
.pa-horses .pa-pick b { font-size: 15px; }

/* ---------- placar e regras ---------- */
.pa-foot { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 14px; margin-top: 14px; }
.pa-foot > div { padding: 12px 14px; border: 1px solid var(--pa-edge); border-radius: 4px; background: rgba(12, 8, 18, 0.7); }
.pa-foot h3 { margin: 0 0 8px; font: 700 15px var(--pa-cond); letter-spacing: 0.12em; text-transform: uppercase; color: var(--pa-gold); }
.pa-foot h3 small { font: 400 11px var(--font-type); letter-spacing: 0; text-transform: none; color: var(--pa-dim); }
.pa-board ol { display: flex; flex-direction: column; gap: 6px; margin: 0; padding: 0; list-style: none; }
.pa-board li { display: grid; grid-template-columns: minmax(0, 1fr) auto; grid-template-areas: "n p" "j t"; column-gap: 10px; padding: 6px 8px; border-radius: 3px; background: rgba(255, 255, 255, 0.04); font: 12px var(--font-type); }
.pa-board li b { grid-area: n; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; color: var(--pa-ink); }
.pa-board li span { grid-area: j; color: var(--pa-dim); }
.pa-board li em { grid-area: p; font: 20px/1 var(--font-crt); font-style: normal; color: var(--pa-green); text-align: right; }
.pa-board li small { grid-area: t; color: var(--pa-dim); text-align: right; }
.pa-board li.pa-empty { display: block; background: none; color: var(--pa-dim); }
.pa-rules ul { margin: 0; padding-left: 18px; font: 12px/1.6 var(--font-type); color: var(--pa-muted); }
.pa-rules b { color: var(--pa-ink); }

/* uma jogada em andamento: as fichas e as outras máquinas esperam */
.pa-busy .pa-chip { pointer-events: none; }

@media (prefers-reduced-motion: reduce) {
  .pa-bulbs i, .pa-name span:last-child, .pa-go-cash:not(:disabled), .pa-tense .pa-screen, .pa-hit .pa-line, .pa-flash-big, .pa-d20-top { animation: none; }
  .pa-dlx-cor i.nova, .pa-dlx-jackpot .pa-dlx-reel .pa-cell:nth-child(2) .pa-dsym-palace, .pa-faixa { animation: none; }
  .pa-dlx-linhas polyline, .pa-dlx .pa-cell, .pa-faixa.sai { transition: none; }
  .pa-card-in, .pa-chip, .pa-tab, .pa-die { transition: none; }
}

/* ---------- perks da quinta leva (2026-10-03): Ficha da casa, Sexto sentido e Dobro ou nada (as cores das fichas da Mesa alta ficam com as outras, lá em cima) ---------- */
.pa-perks { display: flex; flex-wrap: wrap; gap: 8px; margin: -4px 0 12px; }
.pa-pk { display: inline-flex; align-items: center; gap: 6px; min-height: 40px; padding: 6px 14px; border: 1px solid var(--pa-edge); border-radius: 20px; background: var(--pa-panel-2); color: var(--pa-ink); font: 700 14px var(--pa-cond); letter-spacing: 0.04em; cursor: pointer; }
.pa-pk small { color: var(--pa-muted); font-weight: 600; }
.pa-pk:hover:not(:disabled) { border-color: var(--pa-gold); }
.pa-pk.on { border-color: var(--pa-gold); background: rgba(255, 201, 74, 0.16); color: var(--pa-gold); }
.pa-pk-hot { border-color: var(--pa-pink); color: #ffd9ea; box-shadow: 0 0 10px rgba(255, 90, 158, 0.45); }
.pa-pk:disabled { opacity: 0.55; cursor: default; }
