/* Palace Arcade: madeira, gabinete esmaltado e monitor de fósforo. */
.ar-app { --ar-cream:#f8e2a6; --ar-red:#c8322d; --ar-blue:#36b7e7; --ar-yellow:#f9dc55; color:var(--ar-cream); padding:32px 0 48px; }
.ar-app *, .ar-app *::before, .ar-app *::after { box-sizing:border-box; }
.ar-head { display:flex; align-items:end; justify-content:space-between; gap:24px; border-bottom:2px solid #b24836; padding:0 0 18px; margin-bottom:24px; }
.ar-head h2 { margin:0; color:var(--ar-cream); font:900 30px/1.1 'Courier New',monospace; letter-spacing:1px; text-shadow:3px 3px #982b24; }
.ar-head p { margin:8px 0 0; color:#c0ada0; font-size:14px; }
.ar-wallet { text-align:right; font-size:13px; white-space:nowrap; }
.ar-wallet b { display:block; color:var(--ar-yellow); font:700 21px 'Courier New',monospace; }
.ar-room { display:grid; grid-template-columns:minmax(0,540px) minmax(336px,1fr); gap:30px; align-items:start; max-width:960px; margin:auto; }
.ar-machine { min-width:0; background:#191a1b; border:7px solid #9a5328; border-bottom-width:12px; box-shadow:inset 0 0 0 3px #402c24,8px 10px 0 #070708; padding:0 18px 18px; position:relative; }
.ar-marquee { background:var(--ar-cream); border:4px solid #201f22; border-top:0; margin:0 -6px 14px; padding:14px 6px 9px; text-align:center; color:#c93229; box-shadow:0 3px 0 #08090a; }
.ar-title { display:block; font:900 47px/.95 'Courier New',monospace; letter-spacing:-3px; color:#2295c5; text-shadow:2px 2px #165276,4px 4px #cb3328; }
.ar-marquee small { display:block; font:700 10px 'Courier New',monospace; letter-spacing:2px; margin-top:10px; }
.ar-screen { background:#030404; border:10px solid #080909; border-radius:12px; box-shadow:0 0 0 2px #3a3b38,inset 0 0 20px #000; position:relative; overflow:hidden; max-width:424px; margin:auto; }
.ar-canvas { display:block; width:100%; height:auto; image-rendering:pixelated; background:#000; outline:none; }
.ar-canvas:focus-visible { outline:3px solid var(--ar-yellow); outline-offset:-3px; }
.ar-screen::after { content:''; position:absolute; inset:0; pointer-events:none; background:repeating-linear-gradient(transparent 0 3px,#0002 3px 4px); opacity:.5; }
.ar-overlay { position:absolute; left:6%; right:6%; top:38%; background:#000e; color:white; padding:15px 8px; text-align:center; font:700 15px/1.6 'Courier New',monospace; z-index:1; border-block:2px solid var(--ar-blue); }
.ar-overlay strong { display:block; color:var(--ar-yellow); font-size:20px; }
.ar-overlay small { display:block; font-size:12px; color:#d1dbdf; }
.ar-deck { padding-top:15px; }
.ar-machinebar { display:flex; justify-content:space-between; gap:8px; align-items:center; color:#a9a8a0; font:12px 'Courier New',monospace; margin-bottom:12px; }
.ar-app button { min-height:44px; border:1px solid #69635b; background:#29292a; color:var(--ar-cream); padding:8px 12px; border-radius:2px; box-shadow:0 3px 0 #080909; font-weight:700; }
.ar-app button:hover { background:#3a3530; }
.ar-app button:focus-visible, .ar-app input:focus-visible, .ar-app summary:focus-visible { outline:3px solid var(--ar-yellow); outline-offset:3px; }
.ar-app button:disabled { opacity:.45; cursor:default; }
.ar-app button:active:not(:disabled) { transform:translateY(2px); box-shadow:0 1px 0 #080909; }
.ar-controls { display:flex; justify-content:space-between; align-items:center; gap:16px; padding:10px 8px 14px; border-block:1px solid #565044; touch-action:none; user-select:none; }
.ar-pad { display:grid; grid-template:repeat(3,44px)/repeat(3,44px); gap:3px; }
.ar-pad button { padding:0; font-size:22px; border-color:#756b57; background:#353638; }
.ar-pad [data-input='1'] { grid-area:1/2; }
.ar-pad [data-input='8'] { grid-area:2/1; }
.ar-pad [data-input='2'] { grid-area:2/3; }
.ar-pad [data-input='4'] { grid-area:3/2; }
.ar-pad::after { content:'✚'; grid-area:2/2; place-self:center; color:#706657; font-size:24px; }
.ar-action { text-align:center; }
.ar-app .ar-pump { width:84px; height:84px; border-radius:50%; border:5px solid #6d1c18; background:#c9372b; box-shadow:0 5px 0 #4e1814; color:#fff5d0; font:700 12px 'Courier New',monospace; padding:0; touch-action:none; }
.ar-app .ar-pump:hover { background:#e14c3d; }
.ar-action small { display:block; font:10px 'Courier New',monospace; color:#b8ab91; margin-top:12px; }
.ar-keyhint { margin:10px 0 0; text-align:center; font:12px/1.5 'Courier New',monospace; color:#bdb4a1; }
.ar-aside { min-width:0; }
.ar-namebox { padding:20px 20px 18px; background:#201e20; border:1px solid #69513d; }
.ar-namebox h3 { margin:0; font:700 19px 'Courier New',monospace; color:var(--ar-yellow); }
.ar-namebox p { margin:8px 0 14px; font-size:13px; color:#c8b9a4; }
.ar-initials { display:grid; grid-template-columns:repeat(6,minmax(44px,1fr)); gap:6px; margin-bottom:18px; }
.ar-letter { display:grid; gap:6px; min-width:0; text-align:center; }
.ar-letter button { padding:2px; font-size:20px; }
.ar-letter input { width:100%; height:52px; text-align:center; font:700 32px 'Courier New',monospace; color:var(--ar-yellow); background:#060708; border:0; border-bottom:3px solid var(--ar-blue); border-radius:0; text-transform:uppercase; padding:0; }
.ar-starts { display:grid; gap:10px; }
.ar-app .ar-insert { background:#c73d2b; color:#fff4cf; border-color:#ed9b53; }
.ar-price { font-size:12px; line-height:1.55; color:#dbcab1; margin:12px 0 0; }
.ar-status { margin:14px 0; min-height:24px; font-size:14px; overflow-wrap:anywhere; color:#f8e2a6; }
.ar-status[data-error='true'] { color:#ffaea1; }
.ar-records { margin-top:24px; border-top:2px solid #c83c32; padding-top:14px; }
.ar-recordhead { display:flex; align-items:center; justify-content:space-between; gap:10px; }
.ar-recordhead h3 { font:700 18px 'Courier New',monospace; margin:0; color:var(--ar-blue); }
.ar-recordhead button { font-size:12px; }
.ar-recordlist { margin:10px 0 0; padding:0; list-style:none; font:700 14px/1.7 'Courier New',monospace; }
.ar-recordlist li { display:grid; grid-template-columns:25px 6ch minmax(0,1fr) 40px; gap:8px; padding:6px 0; border-bottom:1px solid #47413b; }
.ar-recordlist li:first-child { color:var(--ar-yellow); }
.ar-recordlist .ar-empty { display:block; font:14px/1.6 var(--font-ui); color:#c4b7a3; }
.ar-recordscore { text-align:right; overflow-wrap:anywhere; }
.ar-recordlevel { text-align:right; color:#c9b8a1; font-size:12px; }
.ar-guide { margin-top:24px; font-size:14px; color:#cfbfab; }
.ar-guide summary { cursor:pointer; color:var(--ar-cream); font-weight:700; padding:12px 0; min-height:44px; border-block:1px solid #69513d; }
.ar-guide p { margin:12px 0; }
.ar-guide table { width:100%; border-collapse:collapse; font-size:12px; }
.ar-guide td, .ar-guide th { border-bottom:1px solid #4a4238; text-align:left; padding:7px 3px; }
.ar-guide th { color:var(--ar-yellow); }
.ar-guide kbd { font:12px 'Courier New',monospace; color:var(--ar-yellow); }
.ar-games { display:flex; align-items:center; gap:10px; margin-top:22px; font-size:13px; color:#c5b6a1; }
.ar-games b { font:700 13px 'Courier New',monospace; color:var(--ar-yellow); border:1px solid #746243; padding:9px 14px; }
.ar-app.ar-playing .ar-namebox { opacity:.85; }
.ar-machines { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; max-width:960px; margin:0 auto 22px; }
.ar-ga-selector { grid-template-columns:repeat(3,minmax(0,1fr)); }
.ar-galaga .ar-marquee { background:#08162a; border-color:#e4be57; color:#e8d69b; }
.ar-galaga .ar-title { color:#f5e1a4; letter-spacing:1px; text-shadow:2px 2px #be323d,4px 4px #244f90; }
.ar-galaga .ar-machine { border-color:#2d4567; box-shadow:inset 0 0 0 3px #111d30,8px 10px 0 #070708; }
.ar-ga-pad { grid-template:64px / repeat(2,64px); gap:12px; }
.ar-ga-pad [data-input='8'] { grid-area:1/1; }
.ar-ga-pad [data-input='2'] { grid-area:1/2; }
.ar-ga-pad::after { content:none; }
.ar-galaga .ar-controls { padding-block:18px; }
.ar-ga-selector button[data-machine='galaga'] b { color:#a8d7f6; }
.ar-machines button { display:flex; align-items:center; justify-content:center; gap:12px; text-align:left; min-height:76px; border:2px solid #625341; }
.ar-machines button[aria-pressed='true'] { border-color:var(--ar-yellow); background:#302818; }
.ar-machines b { display:block; color:var(--ar-yellow); font:900 20px 'Courier New',monospace; }
.ar-machines small { display:block; margin-top:5px; color:#cebfa6; font-size:12px; font-weight:400; }
.ar-machines img, .ar-fred-badge img { image-rendering:pixelated; object-fit:contain; }
.ar-fred-badge { text-align:center; min-width:84px; }
.ar-fred-badge img { display:block; margin:auto; }
.ar-fred-badge small { display:block; margin-top:8px; font:700 11px 'Courier New',monospace; color:var(--ar-yellow); }
.ar-fredman .ar-marquee { background:#101a4d; border-color:#080e25; }
.ar-fredman .ar-title { color:#ffe455; text-shadow:2px 2px #a35f18,4px 4px #030923; letter-spacing:-2px; }
.ar-fredman .ar-marquee small { color:#95bcff; }
.ar-fredman .ar-machine { border-color:#213b77; box-shadow:inset 0 0 0 3px #0b1533,8px 10px 0 #070708; }
body[data-page='arcade'] #radio-dock { display:none; }

/* ---------- X1 no Palace: o placar contra o fantasma e o painel de desafios ---------- */
/* (cobre a faixa de cima do jogo: 32 dos 392 pontos da tela = 8,2%, onde ficavam 1UP e HIGH SCORE) */
.ar-x1bar { position:absolute; left:0; right:0; top:0; z-index:1; height:8.2%; display:flex; justify-content:center; align-items:center; gap:10px; padding:0 8px; background:#05060a; border-bottom:2px solid var(--ar-blue); color:#d1dbdf; font:700 12px/1.1 'Courier New',monospace; letter-spacing:1px; white-space:nowrap; pointer-events:none; }
.ar-x1bar[hidden] { display:none; }
.ar-x1bar b { color:var(--ar-cream); font-size:14px; }
.ar-x1bar i { color:#7f8a8f; font-style:normal; }
.ar-x1bar .ar-x1-na-frente b { color:var(--ar-yellow); }
.ar-x1-on .ar-machine { box-shadow:inset 0 0 0 3px #402c24,8px 10px 0 #070708,0 0 0 3px #36b7e7; }
.ar-x1 { margin-top:22px; padding:16px 16px 14px; background:#16181d; border:1px solid #3d5a6b; border-top:3px solid var(--ar-blue); }
.ar-x1:empty { display:none; }
.ar-x1 h3 { margin:0; font:700 19px 'Courier New',monospace; color:var(--ar-blue); letter-spacing:1px; }
.ar-x1 h4 { margin:16px 0 8px; font:700 14px 'Courier New',monospace; color:var(--ar-yellow); letter-spacing:1px; text-transform:uppercase; }
.ar-x1-head p { margin:6px 0 0; font-size:13px; line-height:1.5; color:#c8b9a4; }
.ar-x1-msg { margin:12px 0 0; padding:8px 10px; border-left:3px solid var(--ar-yellow); background:#2a2416; font-size:13px; color:#f8e2a6; overflow-wrap:anywhere; }
.ar-x1-novo { margin-top:14px; padding:12px; background:#202326; border:1px dashed #5a7a8b; }
.ar-x1-novo > p { margin:0 0 10px; font-size:13px; line-height:1.5; color:#dbcab1; }
.ar-x1-rev { padding:6px 8px; background:#3a1d1a; border:1px solid #c8322d; color:#ffd2c8 !important; font:700 13px 'Courier New',monospace !important; }
.ar-x1-campo { display:flex; flex-direction:column; gap:5px; font:700 11px 'Courier New',monospace; letter-spacing:1px; text-transform:uppercase; color:#a9b8c0; }
.ar-x1-campo select { min-height:44px; padding:6px 8px; border:1px solid #69635b; border-radius:2px; background:#0b0c0e; color:var(--ar-cream); font:15px var(--font-ui); text-transform:none; letter-spacing:0; }
.ar-x1-valores { display:flex; flex-wrap:wrap; gap:6px; margin:10px 0; }
.ar-app .ar-x1-valores button { flex:1 1 56px; padding:6px 4px; font:700 13px 'Courier New',monospace; }
.ar-app .ar-x1-valores button[aria-checked='true'] { background:#1f4d63; border-color:var(--ar-blue); color:#fff; }
.ar-x1-novo .ar-insert { width:100%; }
.ar-x1-novo .ar-insert small { display:block; font-weight:400; font-size:11px; opacity:.85; }
.ar-x1-lista { margin:0; padding:0; list-style:none; display:grid; gap:8px; }
.ar-x1-lista li { padding:10px; background:#1f2124; border:1px solid #3c3a37; }
.ar-x1-lista p { margin:0; font-size:13px; line-height:1.5; color:#e6d7bd; overflow-wrap:anywhere; }
.ar-x1-lista b { color:var(--ar-cream); }
.ar-x1-lista small { display:block; margin-top:2px; font-size:12px; color:#a99c88; }
.ar-x1-acoes { display:flex; flex-wrap:wrap; gap:8px; margin-top:8px; }
.ar-app .ar-x1-acoes button { flex:1 1 auto; font-size:13px; }
.ar-x1-jogando { border-color:var(--ar-blue) !important; }
.ar-x1-hist .ar-x1-v { border-left:3px solid #4fc46b; }
.ar-x1-hist .ar-x1-d { border-left:3px solid #c8322d; }
.ar-x1-hist .ar-x1-e, .ar-x1-hist .ar-x1-x { border-left:3px solid #6f6a62; }
.ar-x1-mural { margin-top:6px; }
.ar-x1-mural ol { margin:0; padding:0; list-style:none; font:13px/1.5 'Courier New',monospace; }
.ar-x1-mural li { display:grid; grid-template-columns:minmax(0,1fr) auto minmax(0,1fr); gap:6px; align-items:baseline; padding:6px 0; border-bottom:1px solid #2f3134; color:#c9bda8; }
.ar-x1-mural li span { overflow-wrap:anywhere; }
.ar-x1-mural li span:last-of-type { text-align:right; }
.ar-x1-mural li i { color:#6f7880; font-style:normal; }
.ar-x1-mural li small { grid-column:1/-1; font-size:11px; color:#8f8574; }
.ar-x1-mural .ar-x1-v { color:var(--ar-yellow); font-weight:700; }
.ar-x1-rei { margin:0 0 8px; padding:8px 10px; background:#2b2410; border:1px solid #8a6d22; color:#ffe9a3; font-size:13px; }
.ar-x1-top, .ar-x1-vazio, .ar-x1-regra { margin:8px 0 0; font-size:12px; line-height:1.5; color:#a99c88; }
.ar-x1-top b { color:var(--ar-cream); }
@media (prefers-reduced-motion:reduce) { .ar-app *, .ar-app *::before, .ar-app *::after { animation:none!important; transition:none!important; } }
