/* v0.34 — RockyHub menus: ink surfaces, scenic banners, red navigation,
   gold milestones and cyan accents. Combat layout remains independent. */
.art-menus{--ui-base:#101216;--ui-card:#181b22;--ui-border:#343843;--ui-copy:#b5bdcb;--ui-red:#ff5365;--ui-gold:#ffd371}
.art-menus dialog{background:var(--ui-base);border:1px solid var(--ui-border);box-shadow:0 26px 90px #000a;border-radius:20px;color:#f3f2ee;scrollbar-width:thin;scrollbar-color:#50515d #101216}
.art-menus dialog::backdrop{background:#03060dd6;backdrop-filter:blur(8px)}
.art-menus dialog .primary,.art-menus .panel .primary,.art-menus #start{background:linear-gradient(120deg,#ec273c,#d81d38);border:1px solid #ff697952;border-radius:11px;color:#fff;box-shadow:0 5px 18px #d31b2e18;letter-spacing:.6px}
.art-menus dialog .primary:hover,.art-menus #start:hover{background:#f13950;box-shadow:0 5px 24px #df233333}
.art-menus dialog .secondary,.art-menus .panel .secondary{background:#20232b;border:1px solid #424650;border-radius:10px;color:#e1e4ea}
.art-menus .dialog-close{display:grid;place-items:center;background:#0b111bba;border:1px solid #ffffff30;border-radius:10px;width:36px;height:36px;font:400 25px/1 Arial;z-index:5;color:#f6f5f1;padding:0;flex-shrink:0}
.art-menus .dialog-close:hover{background:#34323a;border-color:#e6ad69}
.art-menus .dialog-build{border:1px solid #e1be5e50;border-radius:5px;color:#f4ce78;background:#12130ec2;padding:4px 7px;letter-spacing:.7px;line-height:1.2;font:700 9px/1.3 Arial,sans-serif}
.art-menus dialog .eyebrow{color:#ffd371;letter-spacing:1.6px;font-size:9px}
.art-menus dialog :is(h2,h3){font-family:Arial,Helvetica,sans-serif;font-style:normal}
.art-menus dialog :is(button,input,textarea):focus-visible{outline:2px solid #7ae1e0;outline-offset:3px}
.art-menus dialog .text-button{color:#ebcc8b}
/* Scenic page headers give every destination its own identity. */
.art-menus .menu-banner{position:relative;isolation:isolate;min-height:124px;border:1px solid #4a515b;border-radius:14px;overflow:hidden;padding:20px 24px;margin:0 0 20px;background:#141c2a}
.menu-banner .banner-art{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 42%;opacity:.85;z-index:-3}
.menu-banner:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#0a101bee 5%,#0a101b9c 55%,#0a101b25);z-index:-1;pointer-events:none}
.art-menus .menu-banner .banner-copy{position:relative;z-index:1;padding-right:50px}
.art-menus .menu-banner .dialog-build{position:absolute;top:0;right:40px;display:block;margin:0}
.art-menus .menu-banner .eyebrow{margin:0 100px 10px 0;font-size:8px;line-height:1.4;letter-spacing:1.6px}
.art-menus .menu-banner :is(h2,#training-heading,#arcade-heading,#moves-heading,#help-heading,#feedback-heading){font:900 34px/.99 Arial,sans-serif;letter-spacing:-1.2px;margin:0;color:#f8f7f1;text-wrap:balance}
.art-menus .menu-banner :is(h2,#training-heading,#arcade-heading,#moves-heading,#help-heading,#feedback-heading) em{font-style:normal;color:#ffe09b}
.art-menus .menu-banner .dialog-close{top:12px;right:12px}
.art-menus .menu-banner .arcade-intro{margin:12px 0 0;font-size:9px;letter-spacing:1.6px;color:#b8d9e7}
.banner-fighter{position:absolute;right:4%;top:0;height:190%;width:32%;object-fit:cover;object-position:center top;z-index:-2;mask-image:linear-gradient(90deg,transparent,#000 30%,#000 80%,transparent)}
.art-menus .scenic-heading{isolation:isolate;background:#151d29;position:relative;border:1px solid #414650;border-radius:12px;overflow:hidden}
.scenic-heading:before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#0d1422f5,#0d1422ad 55%,#0d142250),var(--banner-art) center 45%/cover;z-index:-1}
.art-menus .compact-dialog-header{padding:18px 58px 18px 18px;min-height:72px;top:-24px}
.art-menus .compact-dialog-header h2{font:900 25px/1 Arial,sans-serif;letter-spacing:-.8px}
.art-menus .compact-dialog-header .dialog-close{right:10px}
/* The compact lobby stays one screen. Scale the artwork, never the fighters in combat. */
body.art-menus.compact-lobby:not(.playing) #app{max-width:1400px;grid-template-columns:minmax(290px,30%) minmax(0,1fr);grid-template-rows:48px 64px minmax(0,1fr);gap:16px;padding:12px 24px 22px}
.art-menus.compact-lobby:not(.playing) .lobby-nav{padding:5px;border-color:#30333c;border-radius:15px}
.art-menus.compact-lobby:not(.playing) .lobby-nav button{display:flex;align-items:center;justify-content:center;gap:12px;text-align:left;border-radius:10px;padding:8px}
.art-menus.compact-lobby:not(.playing) .lobby-nav .ui-icon{display:block;width:20px;height:20px}
.art-menus.compact-lobby:not(.playing) .lobby-nav small{display:block;font-size:9px;margin-top:5px;color:#969daa}
.art-menus .lobby-nav button.current{color:#ff6270;border-color:#b7424d70;background:#a32c391a}
.art-menus.compact-lobby .lobby-selection{gap:16px}
.art-menus.compact-lobby .lobby-selection .experience-card{min-height:104px;border-radius:14px;padding:15px 12px}
.art-menus.compact-lobby .lobby-selection .experience-copy strong{font:900 21px/1 Arial,sans-serif;letter-spacing:-.7px}
.art-menus.compact-lobby .lobby-selection .experience-copy small{display:block;font-size:8px;margin-top:7px;letter-spacing:.2px;color:#d2d6df}
.art-menus .experience-card img{opacity:.65;filter:saturate(.85)}
.art-menus .experience-card[aria-pressed=true]{border-color:#dc687380;box-shadow:inset 0 -3px #ef5364}
.art-menus.compact-lobby .lobby-selection .fighter-select{padding:14px;background:#111419;border-color:#323743;border-radius:16px}
.art-menus.compact-lobby .lobby-selection .fighter-select-heading{margin-bottom:12px}
.art-menus.compact-lobby .lobby-selection .fighter-card{position:relative;isolation:isolate;min-height:160px;display:flex;align-items:flex-end;padding:12px;border:1px solid #3b3e47;background:#15181d;overflow:hidden}
.art-menus.compact-lobby .lobby-selection .fighter-card img{position:absolute;right:0;top:0;width:100%;height:100%;object-fit:cover;object-position:center top;z-index:-2;opacity:.9;transition:transform .2s}
.art-menus .lobby-selection .fighter-card:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#11151af5,#11151a77 35%,transparent 65%);z-index:-1}
.art-menus.compact-lobby .lobby-selection .fighter-card strong{font:900 21px/1 Arial,sans-serif;color:#ffe1ac;letter-spacing:-.5px}
.art-menus.compact-lobby .lobby-selection .fighter-card.shadow strong{color:#9be3ee}
.art-menus.compact-lobby .lobby-selection .fighter-card b{font-size:7px;letter-spacing:.4px;margin-top:6px;color:#d7d8dc}
.art-menus .lobby-selection .fighter-card[aria-pressed=true]{border-color:#e8b66c;box-shadow:inset 0 -3px #efbd6d}
.art-menus .lobby-selection .fighter-card.shadow[aria-pressed=true]{border-color:#75d2e0;box-shadow:inset 0 -3px #75d2e0}
.art-menus .lobby-selection .fighter-card[aria-pressed=true]:before{content:'✓';position:absolute;top:8px;left:8px;border:1px solid #ffffff55;border-radius:50%;width:19px;height:19px;display:grid;place-items:center;font-size:11px;background:#0a101bd9;color:#fff}
.art-menus .lobby-selection .fighter-card:hover img{transform:scale(1.04)}
.art-menus .fight-setup-button{border-color:#696047;background:linear-gradient(120deg,#29261d,#15191f);min-height:68px}
.art-menus.compact-lobby:not(.playing) #app>.arena{border-color:#464c56;border-radius:20px}
.art-menus.compact-lobby:not(.playing) .menu{padding:32px;background:#0b121d;isolation:isolate;overflow:hidden}
.art-menus.compact-lobby:not(.playing) .menu:before{content:'';position:absolute;inset:0;background:var(--menu-arena) center/cover;opacity:.8;z-index:-3}
.art-menus.compact-lobby:not(.playing)[data-fighters=apk] .menu:after{z-index:-1;background:linear-gradient(90deg,#08101ce8,#08101c50 65%),linear-gradient(0deg,#08101c 0%,#08101c88 35%,transparent 65%)}
.art-menus.compact-lobby:not(.playing) .menu .key-art{display:none!important}
.art-menus.compact-lobby:not(.playing)[data-fighters=apk] .apk-keyart{display:block;inset:0 -3% 0 25%;z-index:-2;opacity:1}
.art-menus.compact-lobby:not(.playing) .apk-keyart .lobby-portrait{width:100%;height:100%;object-fit:cover;object-position:center top;mask-image:linear-gradient(90deg,transparent,#000 35%,#000 80%,transparent);filter:none;opacity:1}
.art-menus.compact-lobby:not(.playing) .menu h1{font-style:normal;font-weight:900;font-family:Arial,sans-serif;font-size:clamp(44px,5.6vw,78px);letter-spacing:-3px;line-height:.95}
.art-menus.compact-lobby:not(.playing) .menu h1 em{font-style:normal;color:#ffe2a0}
.art-menus.compact-lobby:not(.playing) .menu .eyebrow{font-size:8px;line-height:1.4;letter-spacing:1.5px;color:#a2e0e1}
.art-menus.compact-lobby:not(.playing) .menu .bout{border-color:#ffffff30;max-width:270px}
.lobby-fighter-caption{position:absolute;left:32px;top:28px;display:flex;flex-direction:column;gap:7px;pointer-events:none}
.lobby-fighter-caption>span{font-size:8px;letter-spacing:2px;color:#d4bb7d}.lobby-fighter-caption strong{font-size:21px;letter-spacing:1px}.lobby-fighter-caption small{font-size:7px;letter-spacing:1.1px;color:#c5cbd5}
/* Cards and navigation: the same language across every menu. */
.art-menus dialog :is(.visual-filters,.progress-segments,.feedback-categories){background:#0d1015;border:1px solid #303540;border-radius:11px;padding:5px;gap:5px}
.art-menus dialog :is(.visual-filters,.progress-segments,.feedback-categories) button{background:transparent;border:1px solid transparent;border-radius:8px;color:#aeb6c5}
.art-menus dialog :is(.visual-filters,.progress-segments,.feedback-categories) button[aria-pressed=true]{background:#53252c50;color:#fff;border-color:#f0637055;box-shadow:inset 0 -2px #f25b6b}
.art-menus dialog :is(.training-choice,.visual-help-card,.moves-list>article,.command-moves>article,.character-challenge,.character-route,.fight-goal,.mastery-item){background:#191d25;border-color:#373e4a;border-radius:12px}
.art-menus dialog :is(.training-choice,.combo-practice,.title-equip):hover{border-color:#c0a878;background:#262b35}
.art-menus dialog .training-choice[aria-pressed=true]{background:linear-gradient(120deg,#4a2830,#1d232e);border-color:#e66d7c;color:#ffbec4;box-shadow:inset 3px 0 #f05a6b}
.art-menus .training-choice .drill-index{border-radius:7px;background:#0e141f;border-color:#47505f}
.art-menus .training-detail{background:linear-gradient(120deg,#111a28f5,#111a28bd),url('assets/arenas/underground-yard.webp') center/cover;border-color:#576c7b;border-radius:14px}
.art-menus .training-detail h3{color:#fff0ca;max-width:400px}
.art-menus .training-detail .input-sequence{padding:14px 0;border-top:1px solid #afc9da25;border-bottom:1px solid #afc9da25}
.art-menus .visual-help-card{border-top:2px solid #6abac0;position:relative;overflow:hidden}
.art-menus .visual-help-card:nth-child(2){border-top-color:#ee7781}.art-menus .visual-help-card:nth-child(3){border-top-color:#93afd5}.art-menus .visual-help-card:nth-child(4){border-top-color:#e2bd70}
.art-menus .visual-help-card .visual-number{font-size:36px;top:10px;color:#ffffff13}
.art-menus .visual-help-card h3{font-size:16px}
.art-menus .input-token{border-radius:8px;background:color-mix(in srgb,var(--token) 8%,#111820);box-shadow:0 3px 0 #050a10}
.art-menus .combo-practice{border:1px solid #756343;background:#30291f;border-radius:8px;color:#f2d49e}
.art-menus .moves-list>article{position:relative;border-top:2px solid #e46c7955}
.art-menus .moves-list .combo-purpose{background:#b9a06519;border-color:#b9a06540;color:#e2c17e}
.art-menus .fact-chips>span{background:#1119239c;border-color:#49606f;color:#b9ceda}
/* Arcade: arena art on every stop and a larger opponent preview. */
.art-menus .arcade-stage{background:linear-gradient(0deg,#111722 10%,#111722a8 65%,#11172240),var(--stage-art) center/cover;border:1px solid #3a4353;min-height:126px;border-radius:12px;color:#b2bdce}
.art-menus .arcade-stage.current{border-color:#e6bd6c;box-shadow:inset 0 3px #edc77c;background:linear-gradient(0deg,#25231df5,#181d27a0),var(--stage-art) center/cover}
.art-menus .arcade-stage.complete{border-color:#63b8b7;box-shadow:inset 0 3px #63b8b7}
.art-menus .stage-index{color:#f5d998;background:#0e1725c9;border:1px solid #ffffff35;font-size:13px}
.art-menus .arcade-stage strong{color:#f4f1e9;text-shadow:0 2px 4px #000;font-size:12px}
.art-menus .arcade-detail{border:1px solid #485564;background:#111924;padding:22px}
.art-menus .arcade-arena-art{opacity:.65}.art-menus .arcade-detail:before{background:linear-gradient(90deg,#0c1523f5 15%,#0c1523bd 65%,#0c152350)}
.art-menus .arcade-opponent img{width:118px;height:150px;object-fit:cover;object-position:center top;border-radius:10px;border:1px solid #dccb9850}
.art-menus .arcade-challenge{border-color:#ad915c70;background:#101823bc}
.art-menus :is(.visual-training-actions,.visual-arcade-actions,.setup-dialog-actions){background:#10141bf5;border-top-color:#3b414d;backdrop-filter:blur(8px)}
/* Progress: the roster reads as character cards, not a list of labels. */
.art-menus #progress-dialog{width:920px;background:#101216}
.art-menus #progress-dialog .progress-head{border-width:0 0 1px;border-radius:0;padding:20px 24px 14px;background:#111b29}
.art-menus #progress-dialog .progress-head h2{font-size:26px}
.art-menus #progress-dialog .progress-head>.progress-segments{background:#0d1420aa}
.art-menus #progress-dialog .progress-head .dialog-close{top:12px;right:12px}
.art-menus .mastery-roster{gap:12px;padding:0;margin-bottom:16px}
.art-menus .mastery-fighter{position:relative;isolation:isolate;overflow:hidden;min-height:126px;display:grid;grid-template-columns:1fr;align-content:end;gap:7px;padding:15px;border:1px solid #414653;border-radius:13px;background:#151922}
.art-menus .mastery-fighter:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#131b2be6,#131b2b20),linear-gradient(0deg,#131b2bee,transparent 70%)}
.art-menus .mastery-fighter img{position:absolute;inset:0 0 0 auto;width:65%;height:100%;object-fit:cover;object-position:center top;border-radius:0;z-index:-2}
.art-menus .mastery-fighter span{font-size:24px;letter-spacing:-.6px;text-transform:uppercase;color:#ffe1ae}.art-menus .mastery-fighter[data-mastery-fighter=shadow] span{color:#b3e6ef}
.art-menus .mastery-fighter small{margin:0;color:#e8e5df;font-size:10px;letter-spacing:1px}
.art-menus .mastery-fighter[aria-pressed=true]{border-color:#e7ba71;box-shadow:inset 0 -3px #e7ba71;background:#2d271d}.art-menus .mastery-fighter[data-mastery-fighter=shadow][aria-pressed=true]{border-color:#74d0e0;box-shadow:inset 0 -3px #74d0e0}
.art-menus .character-identity{grid-template-columns:100px 1fr;background:linear-gradient(110deg,#28291fe8,#111b2ae8),url('assets/apk/rooftop.png') center/cover;border-color:#5b625d;padding:16px}
.art-menus .character-identity>img{width:100px;height:124px;object-position:center top;mask-image:linear-gradient(0deg,transparent,#000 20%);border-radius:7px}
.art-menus .character-stats>div{background:#181e29;border-color:#343f4f;position:relative;overflow:hidden}
.art-menus .character-stats>div:after{content:'';position:absolute;bottom:0;right:0;width:38%;height:3px;background:#72c5cc70}
.art-menus .character-stats strong{font-size:28px;color:#e2eef1}
.art-menus .character-mode-records article{background:linear-gradient(100deg,#121b2aef,#121b2a99),url('assets/arenas/underground-yard.webp') center/cover;border-color:#424d5c}
.art-menus .character-mode-records article:last-child{background-image:linear-gradient(100deg,#151c28ef,#151c2899),url('assets/arenas/rba-indoor.webp')}
.art-menus #progress-dialog .progress-foot{background:#12161e;border-color:#353e4c}
.art-menus .character-next{background:linear-gradient(100deg,#2b281d,#1a202a);border-color:#786747}
/* Sound and feedback share the same visual finish. */
.art-menus .audio-dialog{width:820px;padding:22px}
.art-menus .audio-heading{padding:16px 18px;min-height:80px;margin-bottom:20px}
.art-menus .audio-heading h2{font-size:28px;margin-top:7px}.art-menus .audio-heading .eyebrow{font-size:8px}
.art-menus .audio-heading .dialog-close{position:static}
.art-menus .audio-grid{grid-template-columns:1fr 1.15fr;gap:24px}
.audio-cover{position:relative;isolation:isolate;overflow:hidden;min-height:135px;border:1px solid #555666;border-radius:12px;margin-bottom:18px;background:linear-gradient(90deg,#0a1222e8,#151b2580),url('assets/neon-alley.png') center/cover;padding:20px}
.audio-cover>div{position:relative;z-index:1}.audio-cover small{display:block;color:#82d9dc;font-size:7px;letter-spacing:2px;margin-bottom:8px}.audio-cover strong{font-size:25px;font-weight:900;line-height:.95;letter-spacing:-1px;display:block;color:#fff1d6}.audio-cover div>span{display:block;margin-top:9px;font-size:7px;color:#b7bfcb;letter-spacing:1px}
.record-disc{position:absolute;width:142px;height:142px;right:-23px;top:8px;border-radius:50%;border:2px solid #8698ad50;background:repeating-radial-gradient(#0c1521 0 2px,#283448 3px,#0c1521 4px 6px);box-shadow:0 0 25px #0008}
.record-disc:after{content:'RK';display:grid;place-items:center;position:absolute;inset:43px;border-radius:50%;background:#a32e3c;border:7px solid #c85b6255;font-weight:900;font-size:15px;transform:rotate(-15deg);color:#f6d694}
.art-menus .audio-track{min-height:63px;background:#181e29;border:1px solid #374152;border-radius:10px;padding:12px;margin-bottom:8px}
.art-menus .audio-track[aria-pressed=true]{background:linear-gradient(100deg,#343022,#192331);border-color:#bc9f61;box-shadow:inset 3px 0 #efd07a}
.art-menus .audio-track strong{font-size:13px}.art-menus .audio-track-number{color:#c4a76b}.art-menus .audio-footer{border-top-color:#3a414c}.art-menus .audio-level{background:#151b24;border:1px solid #343b47;border-radius:10px;padding:12px}
.art-menus #feedback-dialog{width:780px;padding:24px;max-width:calc(100vw - 24px);max-height:calc(100dvh - 24px)}
.art-menus #feedback-heading br{display:none}.art-menus #feedback-heading em{margin-left:.2em}
.art-menus .feedback-fields input,.art-menus .feedback-fields textarea{background:#0c111a;border-color:#424b59;border-radius:9px;color:#e7ebf1}
.art-menus .feedback-fields label{color:#c9d2de}.art-menus .feedback-intro{font-size:12px;line-height:1.6;color:#b3bfce}
.art-menus .panel{border:1px solid #4d5868;border-radius:18px;background:linear-gradient(130deg,#131e2cf5,#11151df5),var(--menu-arena) center/cover}
.art-menus .panel h2{font-style:normal}.art-menus #result .result-numbers>div{background:#162131;border-color:#3b4d61}.art-menus #result .result-heading h2{color:#ffe09b}
.art-menus #paused .panel{padding:24px;width:420px}.art-menus #paused .panel h2{font-size:46px;letter-spacing:-1.5px}
.art-menus .rotate-gate{background:radial-gradient(ellipse at top,#192335,#090c12 65%)}
@media(min-height:850px) and (min-width:1100px){.art-menus.compact-lobby .lobby-selection .fighter-card{min-height:210px}.art-menus.compact-lobby .lobby-selection .experience-card{min-height:124px}}
@media(max-width:600px){
 .art-menus .menu-banner{min-height:105px;padding:18px 16px;margin-bottom:15px}.art-menus .menu-banner .banner-copy{padding-right:10px}.art-menus .menu-banner :is(h2,#training-heading,#arcade-heading,#moves-heading,#help-heading,#feedback-heading){font-size:28px;max-width:240px;padding-right:10px}.art-menus .menu-banner .dialog-build{position:static;display:inline-block;margin:0 0 9px}.art-menus .menu-banner .eyebrow{font-size:7px;letter-spacing:1px;margin:0 26px 7px 0}.art-menus .menu-banner .dialog-close{top:9px;right:9px}.art-menus .menu-banner .arcade-intro{font-size:8px;letter-spacing:1px;line-height:1.4}
 .art-menus .compact-dialog-header{top:-18px;padding:14px 52px 14px 12px;min-height:65px}.art-menus .compact-dialog-header h2{font-size:22px}.art-menus .compact-dialog-header .dialog-build{font-size:8px}
 .art-menus .audio-dialog{padding:16px}.art-menus .audio-grid{grid-template-columns:1fr;gap:16px}.audio-cover{min-height:100px;padding:14px;margin-bottom:12px}.audio-cover strong{font-size:22px}.audio-cover .record-disc{right:10%;top:-10px}.art-menus .audio-track{min-height:56px}.art-menus .audio-level+.audio-level{margin-top:10px}
 .art-menus .mastery-fighter{min-height:100px;padding:12px}.art-menus .mastery-fighter span{font-size:20px}.art-menus .mastery-roster{gap:8px}.art-menus .character-identity{grid-template-columns:80px 1fr;padding:12px}.art-menus .character-identity>img{width:80px;height:105px}.art-menus #progress-dialog .progress-head{padding:14px 16px 10px}.art-menus #progress-dialog .progress-head h2{font-size:20px}.art-menus .arcade-opponent img{width:90px;height:110px}.art-menus .arcade-stage{min-height:95px}.art-menus .arcade-stage strong{font-size:9px}.art-menus #feedback-dialog{padding:18px;max-width:calc(100vw - 16px)}
}
@media(orientation:portrait){
 body.art-menus.compact-lobby:not(.playing) #app{grid-template-columns:minmax(0,1fr);grid-template-rows:46px 48px minmax(170px,1fr) auto;grid-template-areas:'header' 'nav' 'arena' 'choices';gap:10px;min-height:620px;padding:8px 12px max(12px,env(safe-area-inset-bottom))}
 .art-menus.compact-lobby:not(.playing) .lobby-nav button{display:block;text-align:center;padding:6px 3px}.art-menus.compact-lobby:not(.playing) .lobby-nav .ui-icon,.art-menus.compact-lobby:not(.playing) .lobby-nav small{display:none}.art-menus.compact-lobby:not(.playing) .lobby-nav strong{font-size:11px}
 .art-menus.compact-lobby .lobby-selection{gap:8px}.art-menus.compact-lobby .lobby-selection .experience-card{min-height:54px;padding:10px}.art-menus.compact-lobby .lobby-selection .experience-copy strong{font-size:17px}.art-menus.compact-lobby .lobby-selection .experience-copy small{display:none}
 .art-menus.compact-lobby .lobby-selection .fighter-select{padding:8px}.art-menus.compact-lobby .lobby-selection .fighter-card{min-height:67px;padding:10px;align-items:center}.art-menus.compact-lobby .lobby-selection .fighter-card img{width:52%;height:100%;object-position:center top;opacity:.85}.art-menus .lobby-selection .fighter-card:after{background:linear-gradient(90deg,#11151ae8,#11151a50)}.art-menus.compact-lobby .lobby-selection .fighter-card strong{font-size:17px}.art-menus.compact-lobby .lobby-selection .fighter-card b{font-size:6px;max-width:95px}.art-menus .lobby-selection .fighter-card[aria-pressed=true]:before{left:auto;right:5px;top:5px;width:14px;height:14px;font-size:8px}
 .art-menus .fight-setup-button{min-height:52px}.art-menus.compact-lobby:not(.playing) .menu{padding:18px}.art-menus.compact-lobby:not(.playing) .menu h1{font-size:40px;letter-spacing:-1.8px}.art-menus.compact-lobby:not(.playing) .menu .eyebrow{font-size:7px;letter-spacing:1px}.art-menus.compact-lobby:not(.playing)[data-fighters=apk] .apk-keyart{inset:0 -12% 0 17%}.art-menus.compact-lobby:not(.playing) .apk-keyart .lobby-portrait{object-position:center 20%}.lobby-fighter-caption{left:auto;right:18px;top:16px;text-align:right;gap:4px}.lobby-fighter-caption>span{font-size:6px}.lobby-fighter-caption strong{font-size:14px}.lobby-fighter-caption small{display:none}
}
@media(orientation:landscape) and (max-height:550px){
 body.art-menus.compact-lobby:not(.playing) #app{grid-template-columns:minmax(235px,34%) minmax(0,1fr);grid-template-rows:36px 40px minmax(0,1fr);gap:8px;min-height:280px;padding:6px max(12px,env(safe-area-inset-right)) 10px max(12px,env(safe-area-inset-left))}
 .art-menus.compact-lobby:not(.playing) .lobby-nav{padding:3px}.art-menus.compact-lobby:not(.playing) .lobby-nav button{min-height:32px;padding:4px;gap:7px}.art-menus.compact-lobby:not(.playing) .lobby-nav small{display:none}.art-menus.compact-lobby:not(.playing) .lobby-nav .ui-icon{width:16px;height:16px}
 .art-menus.compact-lobby .lobby-selection{gap:8px}.art-menus.compact-lobby .lobby-selection .experience-card{min-height:47px;padding:8px}.art-menus.compact-lobby .lobby-selection .experience-copy strong{font-size:16px}.art-menus.compact-lobby .lobby-selection .experience-copy small{display:none}.art-menus.compact-lobby .lobby-selection .fighter-select{padding:8px}.art-menus.compact-lobby .lobby-selection .fighter-card{min-height:68px;padding:8px;align-items:center}.art-menus.compact-lobby .lobby-selection .fighter-card img{width:55%;object-position:center top}.art-menus .lobby-selection .fighter-card:after{background:linear-gradient(90deg,#11151ae8,#11151a50)}.art-menus.compact-lobby .lobby-selection .fighter-card strong{font-size:16px}.art-menus.compact-lobby .lobby-selection .fighter-card b{font-size:6px;max-width:90px}.art-menus .lobby-selection .fighter-card[aria-pressed=true]:before{left:auto;right:5px;top:5px;width:13px;height:13px;font-size:8px}.art-menus .fight-setup-button{min-height:46px}
 .art-menus.compact-lobby:not(.playing) .menu{padding:16px 20px}.art-menus.compact-lobby:not(.playing) .menu h1{font-size:42px;letter-spacing:-2px}.lobby-fighter-caption{top:15px;left:auto;right:20px;text-align:right;gap:4px}.lobby-fighter-caption>span{font-size:6px}.lobby-fighter-caption strong{font-size:15px}.lobby-fighter-caption small{display:none}
 .art-menus .menu-banner{min-height:68px;padding:12px 16px;margin-bottom:12px}.art-menus .menu-banner .eyebrow{font-size:7px;margin:0 120px 6px 0;letter-spacing:1px}.art-menus .menu-banner :is(h2,#training-heading,#arcade-heading,#moves-heading,#help-heading,#feedback-heading){font-size:25px;letter-spacing:-.8px;line-height:1}.art-menus .menu-banner .dialog-build{right:40px;top:2px;font-size:8px}.art-menus .menu-banner .arcade-intro{font-size:7px;letter-spacing:1px;margin-top:6px}.art-menus .menu-banner .dialog-close{top:10px;right:10px}.art-menus #feedback-heading br{display:none}
 .art-menus .arcade-stage{min-height:66px}.art-menus .arcade-stage strong{font-size:10px}.art-menus .arcade-opponent img{width:70px;height:85px}.art-menus .arcade-detail{padding:14px}
 .art-menus .compact-dialog-header{padding:12px 58px 12px 14px;min-height:56px}.art-menus .compact-dialog-header h2{font-size:23px}
 .art-menus #progress-dialog .progress-head{padding:8px 56px 8px 14px}.art-menus #progress-dialog .progress-head h2{font-size:17px}.art-menus #progress-dialog .progress-head .dialog-close{top:6px;right:9px}.art-menus .mastery-roster{margin:0;gap:7px}.art-menus .mastery-fighter{min-height:57px;padding:8px;gap:3px}.art-menus .mastery-fighter span{font-size:14px}.art-menus .mastery-fighter small{font-size:8px}.art-menus .character-identity{grid-template-columns:60px 1fr;padding:10px}.art-menus .character-identity>img{width:60px;height:75px}.art-menus .character-stats strong{font-size:23px}
 .art-menus .audio-dialog{padding:14px 20px}.art-menus .audio-heading{min-height:50px;padding:10px 14px;margin-bottom:12px}.art-menus .audio-heading h2{font-size:23px;line-height:1}.art-menus .audio-heading .eyebrow{font-size:7px}.art-menus .audio-grid{gap:16px}.audio-cover{display:none}.art-menus .audio-track{min-height:44px;padding:7px 10px;margin-bottom:5px}.art-menus .audio-track strong{font-size:12px}.art-menus .audio-level{padding:8px}.art-menus .audio-level+.audio-level{margin-top:8px}.art-menus .audio-note{font-size:8px}.art-menus .audio-footer{margin-top:10px}
 .art-menus #paused .panel{padding:14px 20px}.art-menus #paused .panel h2{font-size:34px}
}
@media(orientation:landscape) and (max-height:320px){
 body.art-menus.compact-lobby:not(.playing) #app{grid-template-rows:32px 36px minmax(0,1fr);gap:6px;padding-top:4px;padding-bottom:6px}.art-menus.compact-lobby .lobby-selection{gap:6px}.art-menus.compact-lobby .lobby-selection .experience-card{min-height:40px}.art-menus.compact-lobby .lobby-selection .fighter-card{min-height:44px}.art-menus.compact-lobby .lobby-selection .fighter-card b{display:none}.art-menus.compact-lobby .lobby-selection .fighter-select{padding:6px}.art-menus .fight-setup-button{min-height:42px}.art-menus.compact-lobby:not(.playing) .menu{padding:12px 15px}.art-menus.compact-lobby:not(.playing) .menu h1{font-size:33px}.art-menus.compact-lobby:not(.playing) .menu .eyebrow{display:none}.lobby-fighter-caption{top:10px;right:15px}.lobby-fighter-caption>span{display:none}
 .art-menus .menu-banner{min-height:54px;padding:10px 12px}.art-menus .menu-banner :is(h2,#training-heading,#arcade-heading,#moves-heading,#help-heading,#feedback-heading){font-size:21px}.art-menus .menu-banner .eyebrow{margin-bottom:4px}.art-menus .audio-dialog{padding:8px 14px}.art-menus .audio-heading{min-height:44px;margin-bottom:7px;padding:8px 12px}.art-menus .audio-heading .eyebrow{display:none}.art-menus .audio-heading h2{margin:0;font-size:22px}.art-menus .audio-track{min-height:36px;padding:4px 8px}.art-menus .audio-level{padding:5px 8px}.art-menus .audio-footer{margin-top:6px}
}
@media(prefers-reduced-motion:reduce){.art-menus button,.art-menus .fighter-card img{transition:none}.art-menus .fighter-card:hover img{transform:none}}
/* Keep exits reachable while long guides scroll. */
.art-menus .menu-banner{position:sticky;top:0;z-index:7}
.art-menus .compact-dialog-header{position:sticky;z-index:7}
.art-menus #series-break .series-panel{background:linear-gradient(130deg,#131e2cf5,#11151df5),var(--menu-arena) center/cover;border-color:#4d5868}
.art-menus .audio-footer{position:sticky;bottom:-22px;margin:16px -22px -22px;padding:12px 22px;background:#10141bf5;backdrop-filter:blur(8px);z-index:4}
@media(max-width:600px){.art-menus .audio-footer{bottom:-16px;margin:12px -16px -16px;padding:10px 16px}.art-menus .arcade-stage strong{font-size:8px;word-break:normal;overflow-wrap:normal;hyphens:auto}}
@media(orientation:landscape) and (max-height:550px){.art-menus .audio-footer{bottom:-14px;margin:10px -20px -14px;padding:8px 20px}}
@media(orientation:landscape) and (max-height:320px){.art-menus .audio-footer{bottom:-8px;margin:6px -14px -8px;padding:6px 14px}}
.art-menus #paused .panel{width:min(720px,100%);display:grid;grid-template-columns:1fr 1.35fr;gap:24px;padding:24px;text-align:left;align-items:center}
.pause-identity .dialog-build{position:static;display:inline-block;margin-bottom:16px}.art-menus .pause-identity .eyebrow{justify-content:flex-start;margin:0 0 10px}.art-menus .pause-identity p{margin:12px 0;font-size:12px;line-height:1.5}.art-menus .pause-actions .primary{margin:0}.pause-aux{display:flex;gap:12px;justify-content:space-between}.art-menus .pause-aux .text-button{margin:0;flex:1;text-align:center;background:#ffffff05;border-radius:8px;padding:8px;min-height:40px}.art-menus .pause-options{margin:10px 0}
@media(max-width:560px){.art-menus #paused .panel{grid-template-columns:1fr;gap:12px;padding:18px}}
@media(orientation:landscape) and (max-height:550px){.art-menus #paused .panel{padding:18px 22px;gap:24px}.pause-identity .dialog-build{margin-bottom:12px}.art-menus .pause-options button{font-size:11px;padding:8px}.art-menus .pause-identity p{font-size:10px}}
@media(orientation:landscape) and (max-height:320px){.art-menus #paused .panel{padding:12px 16px;gap:18px}.art-menus .pause-options{margin:7px 0;gap:6px}.art-menus .pause-aux{gap:8px}.art-menus #paused .pause-identity h2{font-size:28px}}
