/* GP013 RC · cabinet-specific arcade presentation and generous interaction targets. */
#title-screen{isolation:isolate;background:#090c1a!important}
#title-screen::before{content:'';position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,#080b22ed,#080b2277,#080b22e8),url('/assets/street-litigator/arenas.webp') left top/200% 200%;opacity:.64;pointer-events:none}
body[data-cabinet=moral-kontempt] #title-screen::before{background-image:linear-gradient(90deg,#08050aec,#08050a88,#08050aee),url('/assets/moral-kontempt/arenas.webp');filter:saturate(.8)}
body[data-cabinet=x-parte] #title-screen::before{background-image:linear-gradient(90deg,#060b20ef,#060b2077,#060b20ed),url('/assets/x-parte/arenas.webp')}
.title-copy{position:relative;z-index:2}
.cast-strip{display:block;width:min(700px,94%);height:auto;max-height:160px;object-fit:contain;margin:4px auto -8px;pointer-events:none}
@media(min-width:951px){body[data-cabinet=street-litigator] .cast-strip{position:absolute;left:5vw;top:330px;width:46vw;max-height:150px;margin:0}body[data-cabinet=street-litigator] .arcade-mood{position:absolute;left:5vw;top:476px;width:46vw;margin:0;padding:0;font-size:10px}}
@media(min-width:951px){body[data-cabinet=moral-kontempt] .moore-fun-banner,body[data-cabinet=moral-kontempt] .difficulty-picker,body[data-cabinet=moral-kontempt] .depravity-picker{left:6vw;transform:none;width:45vw;max-width:600px;margin:0}body[data-cabinet=moral-kontempt] .moore-fun-banner{bottom:100px}body[data-cabinet=moral-kontempt] .difficulty-picker{bottom:61px}body[data-cabinet=moral-kontempt] .depravity-picker{bottom:21px}}
body[data-cabinet=moral-kontempt] .cast-strip{position:absolute;left:6vw;top:40px;width:45vw;max-height:140px;margin:0}
body[data-cabinet=moral-kontempt] .arcade-mood{position:absolute;left:6vw;top:190px;width:45vw;margin:0;padding:0;font-size:10px}
@media(max-width:950px){body[data-cabinet=street-litigator] .cast-strip,body[data-cabinet=moral-kontempt] .cast-strip{display:none}body[data-cabinet=street-litigator] .arcade-mood,body[data-cabinet=moral-kontempt] .arcade-mood{display:none}}
body[data-cabinet=moral-kontempt] .cast-strip{filter:drop-shadow(0 0 9px #bd285c45)}
body[data-cabinet=x-parte] .cast-strip{filter:drop-shadow(0 5px 0 #070d26)}
.arcade-mood{font:800 11px/1.7 ui-monospace,monospace;color:#f6e3a2;text-align:center;letter-spacing:.045em;padding:3px 12px;margin:8px auto;max-width:620px}
.record-onboard{font-size:12px;max-width:620px;border-left:0;border-bottom:2px solid var(--record-accent,#ffe06a);padding:10px 16px}
.record-quickstart{font-size:13px;padding:16px 20px;min-height:56px;box-shadow:0 0 22px #ffcd4e22,4px 4px 0 #000;background:linear-gradient(#ffe373,#ffb945);border-color:#fff1a0;color:#17172b;transition:transform .12s,filter .12s}
.record-quickstart:hover{filter:brightness(1.13);transform:translateY(-2px)}
.record-quickstart:active{transform:translateY(2px)}
body[data-cabinet=moral-kontempt] .record-quickstart{background:linear-gradient(#f38170,#b93044);border-color:#ffa09e;color:#fff8e0;box-shadow:0 0 23px #f7424425,4px 4px 0 #000}
body[data-cabinet=x-parte] .title-actions .record-quickstart{background:linear-gradient(#b1f4ff,#54cadf);border-color:#dbfbff;color:#07162d;box-shadow:0 0 23px #42ebff25,4px 4px 0 #000}
.title-actions button,.menu-options button,.menu button,.primary-button,.secondary-button{min-height:46px;transition:filter .12s,transform .12s}
.title-actions button:hover,.menu-options button:hover,.menu button:hover{filter:brightness(1.16)}
.fighter-card,.character-card{transition:transform .14s,border-color .14s,box-shadow .14s}
.fighter-card:hover,.character-card:hover{transform:translateY(-3px);box-shadow:0 4px 12px #0007}
.fighter-card.selected,.character-card.selected,.fighter-card.picked{box-shadow:0 0 0 2px var(--record-accent,#ffe06a),0 0 16px #ffc2453b}
body[data-cabinet=x-parte] .fighter-card .portrait{overflow:hidden;background:transparent}
body[data-cabinet=x-parte] .fighter-card .portrait canvas{position:relative!important;inset:auto!important;width:100%;height:100%;display:block;object-fit:cover;transform:none!important}
body[data-cabinet=x-parte] .fighter-card .portrait::before,body[data-cabinet=x-parte] .fighter-card .portrait::after{display:none}
body[data-cabinet=street-litigator] .fighter-card canvas{image-rendering:pixelated}
.fight-stage canvas,#fight-canvas{image-rendering:auto}
#fight-screen{background:radial-gradient(ellipse at 50% 85%,#17213c,#060810 68%)}
body[data-cabinet=street-litigator] #fight-canvas{image-rendering:pixelated}
.hp-bar,.health-bar,.meter-bar{box-shadow:inset 0 2px 0 #ffffff36,inset 0 -3px 0 #0006}
.announcer,.fight-message,.combo-callout{text-shadow:3px 3px 0 #000,-1px -1px 0 #000}
.result-card{border-radius:3px;box-shadow:0 20px 70px #0009}
.result-actions button,#rematch-button,#result-rematch{min-height:48px}
.record-share-image{border:3px solid var(--record-accent,#ffe06a);box-shadow:6px 6px 0 #000}
.touch-controls button,.mobile-controls button{box-shadow:inset 0 2px 0 #ffffff45,0 4px 0 #0006}
.touch-controls button.active,.mobile-controls button.active{transform:translateY(3px);filter:brightness(1.35);box-shadow:inset 0 2px 0 #fff5}
.cabinet-screen{background-size:200% 200%!important;background-position:left top!important}
.street-screen{background-image:linear-gradient(#10164033,#101640aa),url('/assets/street-litigator/arenas.webp')!important}
.moral-screen{background-image:linear-gradient(#08030933,#080309aa),url('/assets/moral-kontempt/arenas.webp')!important}
.xparte-screen,.x-parte-screen{background-image:linear-gradient(#070d2233,#070d22aa),url('/assets/x-parte/arenas.webp')!important}
.book-variant{background:transparent!important}.book-variant>strong{font-size:15px!important;opacity:.65}.book-variant>em{font-size:12px!important;text-shadow:2px 2px #000}
@media(max-width:760px){.cast-strip{max-height:116px;margin:0 auto}.arcade-mood{font-size:9px;margin:5px auto}.record-onboard{font-size:10px;margin:6px auto;padding:7px}.record-quickstart{font-size:11px;min-height:50px;padding:13px 12px}.fighter-card:hover,.character-card:hover{transform:none}}
@media(orientation:landscape) and (max-height:540px){.cast-strip{display:none}.arcade-mood{font-size:9px;margin:4px auto}.record-onboard{padding:6px;margin:4px auto}.record-quickstart{min-height:44px;padding:10px}.record-menu{margin:8px auto!important}}
@media(prefers-reduced-motion:reduce){*{transition:none!important}.fighter-card:hover,.character-card:hover,.record-quickstart:hover{transform:none}}

@media(max-width:760px) and (orientation:portrait){
  body[data-cabinet=street-litigator] .fight-shell canvas,body[data-cabinet=x-parte] #fight-canvas,body[data-cabinet=moral-kontempt] #game-canvas{height:75vw!important;max-height:calc(100% - 330px)!important;width:100%!important;object-fit:fill!important}
  body[data-cabinet=street-litigator] .announcer{height:75vw}
}

body[data-cabinet=moral-kontempt] .fight-shell{background:radial-gradient(ellipse at 50% 85%,#17213c,#060810 68%)}

@media(min-width:951px){body[data-cabinet=street-litigator] .title-logo h1{font-size:82px}body[data-cabinet=street-litigator] .cast-strip{top:390px;max-height:110px}body[data-cabinet=street-litigator] .arcade-mood{display:none}}
