/* One photographic poster per ruleset. Mounted in menus only, never over a live fight. */
body{--circuit:#83e3d9;--circuit-soft:#153535;--circuit-muted:#a3d6ce;--circuit-line:#557f7c}
body[data-experience=rba]{--circuit:#f4cf87;--circuit-soft:#382922;--circuit-muted:#e8cfaa;--circuit-line:#977855}
body.art-menus.compact-lobby:not(.playing) #app>.arena{border:1px solid var(--circuit-line);box-shadow:0 16px 48px #0004}
body.art-menus.compact-lobby:not(.playing)[data-fighters=apk] #menu .apk-keyart{display:none}
body.art-menus.compact-lobby:not(.playing) #menu:before{background:var(--circuit-cover) 57% var(--poster-floor,82%)/cover no-repeat;opacity:1}
body.art-menus.compact-lobby:not(.playing)[data-fighters=apk] #menu:after{background:linear-gradient(90deg,#061b20e8,#07171e82 42%,transparent 75%),linear-gradient(0deg,#061014d9,transparent 43%);inset:0;opacity:1}
body.art-menus.compact-lobby[data-experience=rba]:not(.playing)[data-fighters=apk] #menu:after{background:linear-gradient(90deg,#1b1419e6,#281b2199 32%,#18152015 70%),linear-gradient(0deg,#100e1bdc,transparent 48%)}
body.art-menus.compact-lobby:not(.playing) #menu h1{font-family:Impact,'Arial Black',system-ui,sans-serif;font-weight:900;font-size:clamp(45px,6.4vw,96px);line-height:.87;letter-spacing:-.055em;text-shadow:0 3px 18px #0007}
body.art-menus.compact-lobby:not(.playing) #menu h1 em{color:var(--circuit);font-style:italic}
body.art-menus.compact-lobby[data-experience=rba]:not(.playing) #menu h1{font-family:Georgia,'Times New Roman',serif;font-weight:700;letter-spacing:-.07em}
body.art-menus.compact-lobby[data-experience=rba]:not(.playing) #menu h1 em{font-style:normal}
#menu .title-dot{color:var(--circuit)}
body.art-menus.compact-lobby:not(.playing) #menu .menu-copy>.eyebrow{color:#fff3da;max-width:max-content;display:block;margin:0 0 12px;letter-spacing:.13em;text-shadow:0 1px 6px black}
#menu .eyebrow>span{display:none}
.circuit-mast{position:absolute;top:6%;left:4.4%;right:4.4%;display:flex;align-items:center;gap:9px;color:#fff8e9;pointer-events:none;font:750 10px/1.2 system-ui;letter-spacing:.22em}
.circuit-mast i{display:block;height:1px;flex:1;background:linear-gradient(90deg,var(--circuit),transparent 75%);opacity:.62}
.mast-index{padding:5px 7px;line-height:1;color:var(--circuit);border:1px solid var(--circuit-line);background:#10191cc4;letter-spacing:.08em}
.circuit-crest,.street-stamp{pointer-events:none;position:absolute;right:5%;top:20%;color:#fff4cd;text-shadow:0 2px 6px #000;opacity:.95}
.circuit-crest{display:none;text-align:center;padding:9px 12px;border-top:3px double currentColor;border-bottom:3px double currentColor;background:linear-gradient(90deg,transparent,#25202d7d,transparent);transform:rotate(-4deg)}
.circuit-crest span,.circuit-crest small,.circuit-crest b{display:block}.circuit-crest span{font:800 clamp(15px,2.7vw,40px)/1 Georgia,serif}.circuit-crest b{font:700 8px/1.5 system-ui;letter-spacing:.25em}.circuit-crest small{font:9px/1.2 system-ui}
.street-stamp{display:flex;align-items:center;gap:4px;transform:rotate(-6deg);color:#c9ffef}.street-stamp i{height:23px;width:4px;transform:skewX(-24deg);background:currentColor}.street-stamp b{font:900 italic 10px/.95 system-ui;letter-spacing:.05em;margin-left:6px}
[data-experience=rba] .street-stamp{display:none}[data-experience=rba] .circuit-crest{display:block}
body.art-menus.compact-lobby:not(.playing) #menu #start{background:var(--circuit);color:#102224;border:1px solid #ffffff6b;box-shadow:0 4px 18px #0005;letter-spacing:.055em}
body.art-menus.compact-lobby[data-experience=rba]:not(.playing) #menu #start{background:linear-gradient(105deg,#f7dfaa,#d8ab5e);color:#291d10}
body.art-menus.compact-lobby:not(.playing) #menu .bout{width:max-content;max-width:100%;border-top:1px solid var(--circuit-line);background:#071015a6;padding:7px 13px 6px 0;color:white}
.art-menus .lobby-nav button.current{border-color:var(--circuit-line);color:var(--circuit);background:var(--circuit-soft)}
.art-menus .lobby-selection .experience-card[data-experience=street-fights]{--tile:#86e0cf}.art-menus .lobby-selection .experience-card[data-experience=rba]{--tile:#f1cc85}
.art-menus .lobby-selection .experience-card[aria-pressed=true]{border-color:var(--tile);box-shadow:inset 0 -3px var(--tile)}.art-menus .lobby-selection .experience-check{background:var(--tile);color:#0b1e20}
.art-menus .experience-card img{opacity:.86}.art-menus .experience-card:after{background:linear-gradient(0deg,#080b11dd,transparent 93%),linear-gradient(90deg,#070b1455,transparent)}
.art-menus .experience-card.rba-card .experience-copy strong{font-family:Georgia,serif}
.art-menus .fight-setup-button{border-color:var(--circuit-line);background:linear-gradient(112deg,var(--circuit-soft),#11161b 90%)}.art-menus .fight-setup-button>span{color:var(--circuit-muted)}
.fighter-tools{display:flex;align-items:stretch;gap:5px;width:100%}
.art-menus.compact-lobby .fighter-tools :is(#moves-open,#fighter-room-open){width:auto;flex:1;white-space:nowrap;min-height:36px;margin:0;padding:5px 2px;font:700 11px/1.2 system-ui;border:0;background:transparent;color:#d2d6dc}
.art-menus.compact-lobby .fighter-tools #fighter-room-open{color:var(--circuit);border-right:1px solid #ffffff24;border-radius:0}
.art-menus .menu-banner,.art-menus .scenic-heading{border-color:var(--circuit-line)}
.art-menus .menu-banner .banner-art{opacity:.98}.art-menus .menu-banner:after{background:linear-gradient(90deg,#0c131aea,#10182090 52%,#0c121a24)}
.art-menus .scenic-heading:before{background:linear-gradient(90deg,#0e1524e8,#0c1121a0 46%,#0e132340),var(--banner-art) 58% 50%/cover}.art-menus .menu-banner h2 em{color:var(--circuit)}
.venue-shelves,.wk-mode-filters{display:flex;gap:6px;margin:0 0 10px}
.venue-shelves button,.wk-mode-filters button{min-height:35px;padding:6px 12px;background:#171c22;border:1px solid #424952;color:#d6d9de;border-radius:7px;font:700 11px/1.15 system-ui}
.venue-shelves button[aria-pressed=true],.wk-mode-filters button[aria-pressed=true]{background:var(--circuit-soft);color:var(--circuit);border-color:var(--circuit-line)}
.wk-mode-filters button[data-shop-mode=rba][aria-pressed=true]{background:#342b20;color:#f3d6a0;border-color:#937a53}.wk-mode-filters button[data-shop-mode=street-fights][aria-pressed=true]{background:#17312f;color:#a8e8d6;border-color:#547c71}
.wk-mode-filters b{margin-left:4px;font-size:.85em;opacity:.7}
#fight-setup-dialog #arena-options{grid-template-columns:repeat(3,minmax(0,1fr))}
#fight-setup-dialog #arena-options[data-shelf=passes]{grid-template-columns:repeat(4,minmax(0,1fr))}
#fight-setup-dialog #arena-options [hidden],#wk-mode-filters[hidden]{display:none!important}
#fight-setup-dialog .arena-card{min-width:0}.arena-options .arena-card-copy strong{overflow-wrap:anywhere}
#weekly-dialog .wk-head{isolation:isolate;position:relative;padding-left:12px;min-height:64px;overflow:hidden;border:1px solid var(--circuit-line);border-radius:10px;background:linear-gradient(90deg,#121b25ed,#12182376),var(--circuit-cover) center 48%/cover}
#weekly-dialog .wk-head .dialog-close{inset:50% 3px auto auto;transform:translateY(-50%)}
#weekly-dialog .wk-head small{color:var(--circuit)}#weekly-dialog .wk-head .dialog-build{position:static}
#weekly-dialog .wk-feature[data-kind=top] #wk-exhibit canvas{width:56%;height:100%;object-fit:contain}
#wk-room{color:var(--circuit);margin:6px 0 2px}
.playing:not([data-stage=rooftop],[data-stage=alley],[data-stage=yard],[data-stage=rba]) .backdrop{filter:brightness(.88) saturate(.91)}
/* Character scouting: portrait contact sheets and an in-engine wardrobe. */
#fighter-room{width:min(960px,calc(100vw - 24px));max-width:none;max-height:calc(100dvh - 20px);padding:16px;border:1px solid #4b515a;border-radius:18px;color:#f4f3ed;background:#0e1218;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin}
#fighter-room button:focus-visible,.venue-shelves button:focus-visible,.wk-mode-filters button:focus-visible{outline:2px solid #fff2bd;outline-offset:2px}
.fr-header{display:flex;align-items:center;gap:12px;padding:12px 14px;background:linear-gradient(95deg,#0a181eec,#0b1821b3 55%,#13222276),url('assets/arenas/last-train.webp') center 52%/cover;border:1px solid #496161;border-radius:10px}
.fr-header>div{flex:1}.fr-header small,.fr-row small,.fr-details>small{font:750 9px/1.4 system-ui;letter-spacing:.13em;color:#a6d5cd;text-transform:uppercase}
#fighter-room .fr-header h2{font:850 clamp(26px,4vw,42px)/1 system-ui;letter-spacing:-.06em;margin:3px 0 0}
.fr-header h2 span{color:#8ce0cc}
#fighter-room .fr-header .dialog-build,#fighter-room .fr-header .dialog-close{position:static;margin:0;flex:none}
.fr-main{display:grid;grid-template-columns:1.14fr 1fr;gap:15px;margin-top:13px}
.fr-gallery,.fr-dossier{min-width:0}
.fr-row,.fr-wishes{display:flex;align-items:center;justify-content:space-between;gap:7px;margin-bottom:9px}.fr-row h3{font:720 18px/1.2 system-ui;margin:0;letter-spacing:-.04em}.fr-row small{font-size:8px;color:#b4b8c0}
#fr-roster{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}
.fr-card{display:block;min-width:0;position:relative;isolation:isolate;overflow:hidden;border-radius:9px;padding:0;border:1px solid #3c414a;background:#15191c;color:white;text-align:left;aspect-ratio:.63}
.fr-card img{width:100%;height:100%;object-fit:cover;object-position:50% 27%;transition:filter .18s}
.fr-card.fr-active img{object-position:center top}.fr-prospect img{filter:saturate(.36) brightness(.68) blur(.35px)}
.fr-card[aria-pressed=true]{border-color:var(--ink);box-shadow:0 0 0 1px var(--ink)}.fr-card[aria-pressed=true] img,.fr-card:hover img{filter:saturate(.55) brightness(.88)}
.fr-card:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#090c11fa,#0b101aa6 21%,transparent 52%)}
.fr-num,.fr-mark,.fr-name{position:absolute;z-index:1}.fr-num{top:6px;left:6px;font:650 8px/1.1 ui-monospace,monospace;color:#e2e1da;background:#15191da8;padding:3px 4px;border-radius:3px}.fr-mark{top:6px;right:6px;font-size:13px;color:#fff1c0;display:none}.fr-card.wished .fr-mark{display:block}
.fr-name{bottom:8px;left:7px;right:2px}.fr-name strong,.fr-name small{display:block}.fr-name strong{font:800 clamp(13px,1.8vw,19px)/1 system-ui;letter-spacing:-.045em;color:var(--ink)}.fr-name small{font:600 8px/1.25 system-ui;color:#dfdfe0;margin-top:3px}
.fr-wishes{margin:7px 0;color:#b9c5ca;font:650 10px/1.3 system-ui}
.fr-link{min-height:34px;color:#a1e0d4;background:none;border:0;font:700 11px system-ui}.fr-link:disabled{color:#92999f}
.fr-dossier{border:1px solid #454d54;border-radius:11px;overflow:hidden;background:#181e23}
.fr-preview{position:relative;isolation:isolate;height:clamp(145px,22vh,230px);background:radial-gradient(ellipse at 50% 55%,#3e514f,#1e292e 51%,#151b22 80%);border-bottom:1px solid #475359;overflow:hidden}
.fr-preview:before{content:'';position:absolute;inset:0;z-index:-1;background:repeating-linear-gradient(0deg,transparent,transparent 30px,#a6d9d00a 31px,#a6d9d00a 32px),linear-gradient(90deg,transparent 28%,#b9e5db13 28.3%,transparent 28.6%,transparent 70%,#b9e5db13 70.3%,transparent 70.6%)}
#fr-canvas{position:absolute;inset:0;margin:auto;width:auto;max-width:100%;height:100%;object-fit:contain}
.fr-chip,.fr-place{position:absolute;left:10px;color:#dbe8df;font:750 8px/1.25 system-ui;letter-spacing:.10em;text-transform:uppercase;padding:4px 6px;border:1px solid #77827f70;background:#11191bbf;border-radius:3px}.fr-chip{top:9px}.fr-place{bottom:9px}
.fr-concept{height:100%;width:100%;object-fit:contain;object-position:center center;filter:saturate(.46) brightness(.86);background:radial-gradient(ellipse,#252626,#111419 78%)}
.fr-poses{position:absolute;bottom:7px;right:7px;display:flex;gap:3px}
.fr-action{background:#262e34;color:#e5e9e5;border:1px solid #49545d;border-radius:6px;min-height:35px;padding:6px 9px;font:700 11px/1.2 system-ui}
.fr-poses .fr-action{background:#11191bd9;min-height:30px;padding:3px 7px;font-size:10px}
#fighter-room .fr-action[aria-pressed=true]{border-color:var(--ink);color:var(--ink)}
.fr-details{padding:10px 12px 11px}.fr-details>small{font-size:8px;color:var(--ink)}#fighter-room .fr-details h3{font:850 28px/1.05 system-ui;color:#f6f4ec;letter-spacing:-.055em;margin:3px 0 8px}
.fr-details>b{font:700 12px/1.3 system-ui;color:var(--ink)}.fr-details>p{font:450 12px/1.45 system-ui;margin:4px 0 9px;color:#d4dadd}
.fr-buttons,.fr-swatches{display:flex;align-items:center;flex-wrap:wrap;gap:5px}.fr-buttons .fr-primary{background:var(--ink);border-color:var(--ink);color:#131d22}.fr-buttons .fr-primary[aria-pressed=true]{background:#29383a}.fr-buttons svg{width:13px;height:13px;vertical-align:-2px;margin-right:5px}
.fr-swatches{margin-bottom:8px}.fr-swatches .fr-action{min-height:29px;font-size:10px;padding:4px 6px}.fr-swatches .fr-action:before{content:'';display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--chip);margin-right:4px}
#fr-goal:not(:empty){margin-top:10px;padding-top:8px;border-top:1px solid #47515a;display:grid;grid-template-columns:1fr auto;align-items:center;gap:3px 6px}#fr-goal span,#fr-goal small{font:600 10px/1.2 system-ui;color:#e5d9b9}#fr-goal small{grid-column:1;font-weight:400;color:#bcc7ca}#fr-goal button{grid-row:1/3;grid-column:2;min-height:30px;font-size:9px}
#fr-status{font:600 11px/1.4 system-ui;margin:7px 0 0;color:#b2e2d5;overflow-wrap:anywhere}#fr-status:empty{display:none}
@media(max-width:720px){#fight-setup-dialog #arena-options[data-shelf=passes]{grid-template-columns:repeat(2,minmax(0,1fr))}.fr-name small{font-size:7px}}
@media(orientation:portrait) and (max-width:610px){
 #fighter-room{width:calc(100vw - 10px);max-height:calc(100dvh - 10px);padding:9px;border-radius:12px}.fr-header{padding:7px 9px}.fr-header small{font-size:7px}.fr-row{margin:2px 0 7px}.fr-row h3{font-size:15px}
 .fr-main{grid-template-columns:1fr;gap:6px;margin-top:8px}.fr-card{aspect-ratio:.77}.fr-name{left:5px;bottom:5px}.fr-name strong{font-size:13px}.fr-row small{font-size:7px}.fr-wishes{margin:2px 0}.fr-preview{height:160px}
 .fr-dossier.scouted{display:grid;grid-template-columns:37% 1fr}.scouted .fr-preview{height:100%;min-height:154px}.scouted .fr-chip,.scouted .fr-place{font-size:6px;left:4px}.fr-dossier{scroll-margin-top:7px}
 body.art-menus.compact-lobby:not(.playing) #menu h1{font-size:clamp(34px,10vw,54px)}
 .circuit-mast{top:12px;font-size:7px;gap:4px}.circuit-crest,.street-stamp{top:23px;right:17px}.circuit-crest{padding:4px 7px}
 body.art-menus.compact-lobby:not(.playing) #menu .menu-copy>.eyebrow{display:none}
 #fight-setup-dialog #arena-options{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(orientation:landscape) and (max-height:550px){
 body.art-menus.compact-lobby:not(.playing) #menu h1{font-size:clamp(35px,6vw,59px)}
 body.art-menus.compact-lobby:not(.playing) #menu .menu-copy>.eyebrow{font-size:7px;margin-bottom:6px}.circuit-mast{top:10px;left:4%;font-size:7px;gap:6px}.mast-index{padding:3px 5px}.circuit-crest,.street-stamp{top:19%;right:5%}.circuit-crest{padding:4px 7px}.circuit-crest span{font-size:22px}.circuit-crest b,.circuit-crest small{font-size:6px}
 .art-menus.compact-lobby .fighter-tools :is(#fighter-room-open,#moves-open){min-height:29px;font-size:10px}
 #fighter-room{padding:9px 12px;max-height:calc(100dvh - 8px)}.fr-header{padding:5px 9px}.fr-header small{font-size:7px}#fighter-room .fr-header h2{font-size:23px}
 .fr-main{gap:10px;margin-top:7px}.fr-row{margin:0 0 5px}.fr-row h3{font-size:14px}.fr-row small{font-size:7px}#fr-roster{gap:4px}.fr-card{aspect-ratio:auto;height:clamp(69px,24.5dvh,107px)}.fr-name{bottom:5px}.fr-num{top:4px;left:4px}
 .fr-preview{height:clamp(95px,32dvh,175px)}.fr-details{padding:7px 9px}#fighter-room .fr-details h3{font-size:21px;margin:2px 0 5px}
 .fr-swatches{gap:3px;margin-bottom:5px}.fr-swatches .fr-action{font-size:9px;min-height:25px}.fr-buttons .fr-action{min-height:31px;padding:5px 8px}.fr-details>p{font-size:11px;margin:2px 0 5px}.fr-wishes{margin:0}
 #weekly-dialog .wk-head{min-height:43px}
}
@media(orientation:landscape) and (max-height:330px){
 body.art-menus.compact-lobby:not(.playing) #menu h1{font-size:32px}
 body.art-menus.compact-lobby:not(.playing) #menu .menu-copy>.eyebrow{display:none}.circuit-mast{top:6px}
 .art-menus.compact-lobby .fighter-tools :is(#fighter-room-open,#moves-open){min-height:23px;font-size:9px}.fr-preview{height:84px}.fr-card{height:64px}.fr-row h3{font-size:12px}
}
@media(prefers-reduced-motion:reduce){.fr-card img{transition:none}}
body.art-menus:not(.playing) dialog .primary:not(:disabled){background:linear-gradient(105deg,var(--circuit),color-mix(in srgb,var(--circuit) 79%,#688a95));color:#122020;border-color:var(--circuit-line);box-shadow:0 4px 12px #0003}
body.art-menus[data-experience=rba] .menu-banner :is(h2,#training-heading,#arcade-heading,#moves-heading,#help-heading){font-family:Georgia,'Times New Roman',serif}
body.art-menus .menu-banner .eyebrow,.art-menus .compact-dialog-header h2{color:var(--circuit-muted)}
#weekly-dialog .wk-head{background:linear-gradient(90deg,#121b25ef,#12182372),var(--desk-cover,var(--circuit-cover)) center 48%/cover}
#league-dialog .league-heading{padding-left:12px;border-left:3px solid var(--circuit);background:linear-gradient(90deg,var(--circuit-soft),transparent)}
@media(orientation:landscape) and (max-height:550px){
 body.art-menus.compact-lobby:not(.playing) #menu .menu-copy>.eyebrow{display:none}
 .circuit-mast{left:auto;right:4%;max-width:48%}.circuit-mast i{display:none}
}
