@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@600;700;800;900&family=Space+Grotesk:wght@400;500;600;700&display=swap');
:root{--bg:#0b0915;--panel:#151220;--line:#30283f;--ink:#f4efff;--muted:#a29aaf;--acid:#dcff58;--pink:#fd4da5;--cyan:#56e1f4}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font-family:'Space Grotesk',Arial,sans-serif}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer;border:1px solid var(--line);color:inherit;background:transparent;border-radius:5px}button:hover{border-color:var(--acid);color:var(--acid)}button:focus-visible,a:focus-visible{outline:3px solid var(--cyan);outline-offset:4px}header{height:82px;max-width:1450px;margin:auto;padding:0 4%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.brand{text-decoration:none;color:var(--ink);font-size:15px;font-weight:700;letter-spacing:1px;display:flex;gap:12px;align-items:center}.brandmark{background:var(--acid);color:#12151b;padding:9px 7px;font-size:16px;font-style:italic;font-weight:900;transform:skew(-8deg)}.smalltag{font-size:9px;color:var(--muted);border:1px solid var(--line);padding:5px}.topright{display:flex;align-items:center;gap:12px}.topright button{padding:10px 13px;font-size:11px;font-weight:600}.online{font-size:10px;letter-spacing:1.5px;color:var(--muted);margin-right:10px}.online i{display:inline-block;background:var(--acid);width:6px;height:6px;border-radius:100%;margin-right:6px}main{max-width:1450px;margin:auto;padding:30px 4% 0}.hero{min-height:510px;border:1px solid #443356;position:relative;overflow:hidden;background:#18102b;border-radius:7px}.heroart{position:absolute;inset:0;background:linear-gradient(90deg,#130d22 0%,#130d22bb 34%,#130d2210 70%),url('assets/keyart.png') 65% 45%/cover no-repeat}.heroart:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#0d0919aa,transparent 40%)}.scan{position:absolute;inset:0;pointer-events:none;opacity:.12;background:repeating-linear-gradient(transparent 0px,transparent 3px,#000 4px)}.herocopy{position:relative;z-index:1;padding:43px 45px 50px}.eyebrow{font-size:10px;letter-spacing:2px;color:var(--acid);font-weight:700;display:flex;align-items:center;gap:10px}.eyebrow span{width:20px;height:2px;background:var(--acid)}h1{font-family:'Barlow Condensed',Impact,'Arial Narrow',sans-serif;font-size:106px;line-height:.79;margin:25px 0 21px;font-weight:900;letter-spacing:-2px;font-style:italic;text-shadow:5px 5px 0 #291130}h1 em{color:var(--acid);font-style:italic}.subtitle{font-size:16px;font-weight:700;letter-spacing:1.2px}.subtitle span{color:var(--pink)}.herocopy p{font-size:13px;line-height:1.9;color:#c5bbd3;margin:17px 0 23px}.primary{background:var(--acid);border:0;color:#12141b;border-radius:4px;padding:17px 24px;font-size:12px;letter-spacing:.8px;font-weight:800;box-shadow:0 4px 0 #779c21}.primary:hover{background:#e9ff91;color:#12141b;transform:translateY(-1px)}.heronote{font-size:9px;letter-spacing:1.5px;color:#afa1bb;margin-top:20px}.heronote b{margin:0 9px;color:var(--acid)}.artcaption{position:absolute;right:22px;bottom:20px;font-size:9px;letter-spacing:2px;color:#fff;display:flex;gap:25px}.artcaption span{color:var(--acid)}.setup{display:grid;grid-template-columns:1.13fr 1fr;gap:30px;margin:30px 0 34px}.sectionlabel{font-size:10px;letter-spacing:1.7px;font-weight:700;display:flex;justify-content:space-between;align-items:center;gap:10px}.sectionlabel small{font-size:10px;font-weight:400;letter-spacing:0;color:var(--muted)}.fighters{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:14px}.fighter{position:relative;display:flex;text-align:left;align-items:center;gap:12px;padding:10px;border:1px solid var(--line);background:var(--panel);min-height:101px}.fighter.selected{border-color:var(--acid);background:#d8ff5809;box-shadow:inset 0 -3px 0 var(--acid)}.fighter img{width:56px;height:76px;object-fit:cover;object-position:50% 18%;filter:grayscale(.35)}.fighter strong{display:block;font-family:'Barlow Condensed',Impact,sans-serif;font-size:21px;letter-spacing:.2px;margin:5px 0}.fighter small{font-size:8px;letter-spacing:1px;color:var(--pink)}.fighter span{display:block;font-size:9px;color:var(--muted)}.fighter b{position:absolute;right:8px;top:7px;font-size:9px;color:var(--acid)}.controlsinfo{padding-left:26px;border-left:1px solid var(--line)}.sectionlabel button{font-size:8px;border:0;color:var(--muted)}.keysline{display:flex;gap:13px;margin-top:25px;font-size:10px;align-items:center}.keysline span{display:flex;align-items:center;gap:5px}kbd{background:#211a2f;padding:5px 7px;border:1px solid #45384f;border-bottom:2px solid #594563;font:10px 'Space Grotesk',monospace;border-radius:3px;color:#e8def7}.controlsinfo p{font-size:10px;color:var(--muted);margin:20px 0}.controlsinfo>small{font-size:9px;color:#7f748e}.routeheader{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}.routeheader>span{font-size:10px;color:var(--acid);font-variant-numeric:tabular-nums}.route{display:grid;grid-template-columns:repeat(5,1fr);gap:10px}.stagecard{text-align:left;padding:17px 16px;position:relative;overflow:hidden;background:linear-gradient(145deg,#211629,#11101d);border:1px solid var(--line);border-radius:5px;min-height:100px}.stagecard small{font-size:8px;letter-spacing:1.5px;color:var(--pink)}.stagecard strong{display:block;font-family:'Barlow Condensed',Impact,sans-serif;font-size:22px;margin:9px 0 4px}.stagecard span{font-size:9px;color:var(--muted)}.stagecard:disabled{cursor:default;opacity:.6}.stagecard:disabled:hover{color:inherit;border-color:var(--line)}footer{display:flex;justify-content:space-between;gap:20px;font-size:9px;color:#73697e;border-top:1px solid var(--line);margin-top:28px;padding:20px 0 24px;line-height:1.7}footer span{white-space:nowrap;color:#a395ac}#game{max-width:1200px;margin:auto}.gamebar{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.gamebar button{padding:10px 14px;font-size:10px}.gamebar>span{font-size:11px;letter-spacing:1px;color:var(--acid)}.screen{position:relative;border:1px solid #544066;border-radius:6px;overflow:hidden;box-shadow:0 20px 100px #34135825;background:#100d21}canvas{display:block;width:100%;aspect-ratio:1100/620;image-rendering:pixelated;outline:0;touch-action:none}.overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:#0c071bba;backdrop-filter:blur(7px);z-index:2}.overlay[hidden],[hidden]{display:none!important}.modal{max-width:550px;padding:35px;text-align:center}.modal .eyebrow{justify-content:center}.modal h2,dialog h2{font-family:'Barlow Condensed',Impact,sans-serif;font-size:52px;line-height:1;margin:16px 0;text-transform:uppercase}.modal p{font-size:13px;line-height:1.8;color:#c9bed7}.modal .primary{margin:15px 5px 5px}.secondary{display:block;margin:15px auto;padding:9px 15px;font-size:10px}.underbar{display:flex;justify-content:space-between;padding:18px 5px;color:var(--muted);font-size:9px;letter-spacing:.5px}.underbar b{color:var(--ink)}#touch{display:flex;justify-content:space-between;gap:15px;user-select:none;touch-action:none;padding-bottom:20px}.dpad{display:grid;grid-template-columns:repeat(3,46px);grid-template-rows:repeat(2,43px);gap:4px}.dpad .up{grid-column:2}.dpad .left{grid-column:1;grid-row:2}.dpad .down{grid-column:2;grid-row:2}.dpad .right{grid-column:3;grid-row:2}.actionpad{display:grid;grid-template-columns:repeat(3,70px);gap:5px}.actionpad button{font-size:9px;letter-spacing:.4px;background:#241630;border-color:#4a3058}.actionpad .special{color:var(--acid);border-color:#859f3b}#touch button:active,#touch button.held{background:var(--acid);color:#111}dialog{background:#171020;border:1px solid #5d396d;color:var(--ink);max-width:550px;width:90%;padding:35px;border-radius:8px}dialog::backdrop{background:#000b;backdrop-filter:blur(6px)}dialog p{font-size:13px;line-height:1.8;color:#b5a7c4}dl{display:grid;grid-template-columns:1fr 1.5fr;gap:13px;font-size:12px}dt{color:var(--acid)}dd{margin:0}.close{float:right;border:0;font-size:18px}@media(min-width:1000px) and (pointer:fine){#touch{display:none}}@media(max-width:1000px){.setup{grid-template-columns:1fr}.controlsinfo{border:0;padding:0}.heroart{background-position:60%;opacity:.75}.herocopy{padding:35px}.route{gap:6px}.stagecard{padding:12px}.stagecard strong{font-size:18px}.artcaption{display:none}}@media(max-width:600px){header{height:65px;padding:0 5%}.brand{font-size:11px;gap:8px}.smalltag,.online{display:none}.topright{gap:6px}.topright button{padding:8px;font-size:9px}main{padding:18px 4% 0}.hero{min-height:505px}.herocopy{padding:32px 23px}.heroart{background-position:63%;background-image:linear-gradient(90deg,#130d22ed,#130d2277),url('assets/keyart.png')}.eyebrow{font-size:8px;letter-spacing:1.4px}h1{font-size:91px;margin-top:30px}.subtitle{font-size:11px;letter-spacing:.6px}.herocopy p{font-size:11px;max-width:270px}.herocopy p br{display:none}.primary{font-size:10px;padding:16px 18px}.heronote{font-size:7px;letter-spacing:1px}.setup{gap:25px}.fighter{gap:8px;padding:8px}.fighter img{width:43px;height:70px}.fighter strong{font-size:17px}.fighter span{font-size:8px}.fighter small{font-size:7px}.sectionlabel{font-size:9px}.sectionlabel small{font-size:8px}.route{grid-template-columns:repeat(2,1fr)}.stagecard:last-child{grid-column:1/-1}.stagecard{min-height:88px}footer{display:block}footer span{display:block;margin-top:10px}.gamebar>span{font-size:8px;letter-spacing:0}.gamebar button{padding:8px;font-size:8px}.underbar{font-size:7px;line-height:1.8;gap:10px;padding:12px 0}.modal{padding:15px}.modal h2{font-size:30px;margin:9px 0}.modal p{font-size:10px;margin:8px 0;line-height:1.4}.modal .primary{padding:11px 17px;margin:5px}.modal .secondary{margin:7px auto;padding:5px}.dpad{grid-template-columns:repeat(3,40px);grid-template-rows:repeat(2,42px)}.actionpad{grid-template-columns:repeat(3,60px)}.screen:fullscreen{width:100%;height:100%;display:flex;align-items:center;background:#0b0915}.screen:fullscreen canvas{max-height:100vh;object-fit:contain}}

.upgradebanner{display:flex;align-items:center;gap:18px;padding:15px 18px;margin-bottom:28px;border:1px solid #665332;background:linear-gradient(90deg,#ffcf5810,#f2549a0a);border-radius:5px}.upgradebanner span{font-size:10px;color:#ffcf58;font-weight:700;white-space:nowrap}.upgradebanner p{margin:0;font-size:11px;color:#c6b9ce}.upgradebanner b{margin-left:auto;font-size:9px;color:var(--pink)}.routeportrait{position:absolute;width:49px;height:68px;right:10px;top:13px;object-fit:cover;opacity:.5}.stagecard small,.stagecard strong,.stagecard span{position:relative;z-index:1}.actionpad .pickup{color:#ffcf58;border-color:#796444}.soundcontrols{display:flex;gap:10px;margin:18px 0}.soundcontrols button{font-size:10px;padding:11px;color:var(--acid)}#musicDialog label{font-size:11px;color:#ddd0e8}#playlistForm{display:flex;gap:6px;margin-top:8px}#playlistUrl{min-width:0;flex:1;background:#0d0915;color:#eee;border:1px solid #584566;border-radius:4px;padding:12px;font:11px 'Space Grotesk',sans-serif}#playlistForm button{font-size:10px;padding:9px}#musicStatus{font-size:11px;min-height:36px}.spotifyLink{display:inline-block;background:#1ed760;color:#061b0d;border-radius:4px;padding:13px 17px;text-decoration:none;font-size:11px;font-weight:700}.findMusic{display:block;color:#bbafce;font-size:12px;margin:17px 0}.musicnote{font-size:10px!important;line-height:1.6!important;color:#95879f!important}@media(max-width:600px){.upgradebanner{align-items:flex-start;gap:10px;flex-direction:column}.upgradebanner b{margin:0}.topright button{padding:7px 5px;font-size:8px}.brand{font-size:9px;gap:5px}.brandmark{padding:8px 5px}.actionpad{grid-template-columns:repeat(4,48px)}.actionpad button{font-size:7px}#touch{gap:7px}.dpad{grid-template-columns:repeat(3,35px)}.soundcontrols{flex-wrap:wrap}}

.setup{grid-template-columns:1.5fr 1fr;gap:22px}.fighters{grid-template-columns:repeat(3,1fr)}.fighter{gap:8px}.fighter img{width:43px}.fighter strong{font-size:18px}.fighter:disabled{cursor:default;opacity:.5}.fighter:disabled:hover{border-color:var(--line);color:inherit}.hero:before{content:'ACT V • 30 STAGES';position:absolute;z-index:2;right:20px;top:20px;background:#0b0915b0;border:1px solid #77529b;padding:8px 12px;font-size:9px;letter-spacing:1.5px;color:#e79cff}@media(max-width:1150px){.setup{grid-template-columns:1fr}.controlsinfo{border-left:0;padding-left:0}}@media(max-width:600px){.fighters{grid-template-columns:1fr 1fr}.fighter[data-hero="2"]{grid-column:1/-1}.fighter[data-hero="2"] img{height:65px}.hero:before{font-size:7px;top:12px;padding:6px}.upgradebanner b{font-size:8px}}

.setup{grid-template-columns:1fr}.controlsinfo{padding-left:0;border-left:0}.fighters{grid-template-columns:repeat(3,1fr)}.fighter div{min-width:0}.fighter strong{font-size:20px;line-height:1.1}.fighter span{line-height:1.4}.castavatar{display:flex!important;align-items:center;justify-content:center;width:43px;height:76px;flex-shrink:0;font-size:24px!important;font-weight:800;background:linear-gradient(135deg,#252035,#49304b);color:var(--cast)!important;border-bottom:3px solid var(--cast)}.controlsinfo .keysline{margin-top:15px}#cutsceneWrap{margin:16px 0 4px}#cutscene{width:100%;height:auto;aspect-ratio:660/250;border:1px solid #6f4e84;border-radius:5px}#unlockCard{padding:11px;color:#dcff58;font-size:10px;letter-spacing:.5px;line-height:1.5}.celebration .modal{max-width:700px;padding:18px 28px}.celebration .modal h2{font-size:36px;margin:12px 0}.celebration .modal p{font-size:12px;line-height:1.5;margin:10px 0}.celebration .modal .primary{margin:8px}.screen .celebration{background:#0c071be8}@media(max-width:600px){.fighters{grid-template-columns:1fr 1fr}.fighter[data-hero="2"]{grid-column:auto}.fighter:last-child{grid-column:1/-1}.fighter strong{font-size:15px}.fighter span{font-size:8px}.fighter img,.castavatar{width:36px}.castavatar{font-size:19px!important}.celebration{position:fixed;inset:0;width:100vw;height:100dvh;overflow:auto;z-index:20;align-items:center}.celebration .modal{padding:18px;max-width:100%;}.celebration .modal h2{font-size:30px}.celebration .modal p{font-size:11px}#unlockCard{font-size:9px}}

/* App shell and controls: keep browser gestures off the play surface only. */
html{overscroll-behavior-y:none}#game{user-select:none;-webkit-user-select:none;-webkit-touch-callout:none;touch-action:none}#game button{touch-action:none}#joystick{position:relative;width:116px;height:116px;flex-shrink:0;border:2px solid #796293;border-radius:50%;background:radial-gradient(circle,#44305288 0 30%,#21152bcc 31% 63%,#49315c 64% 66%,#171020 67%);touch-action:none}#stickKnob{position:absolute;left:50%;top:50%;width:48px;height:48px;border-radius:50%;background:linear-gradient(145deg,#bba1d7,#6c508b);border:2px solid #dfc4ef;transform:translate(-50%,-50%);box-shadow:0 5px 15px #0007;pointer-events:none}#joystick span{position:absolute;bottom:8px;width:100%;text-align:center;font:8px monospace;letter-spacing:2px;color:#ddc8ef;pointer-events:none}.actionpad{grid-template-columns:repeat(4,minmax(45px,1fr));grid-template-rows:repeat(2,50px);gap:6px;max-width:300px}.actionpad button{min-width:45px;min-height:45px;font-size:9px;font-weight:700}.actionpad .special{grid-column:3/5}#controllerStatus{font-size:9px;color:#64e2fa;max-width:150px}#rotatePrompt{position:fixed;inset:0;background:#0b0915f5;z-index:100;display:grid;place-items:center;padding:28px;text-align:center}#rotatePrompt>div{max-width:380px}#rotatePrompt h2{font-family:'Barlow Condensed',Impact,sans-serif;font-size:36px}#rotatePrompt p{color:#c4b1d4;line-height:1.7}.rotateIcon{font-size:80px;color:var(--acid)}dialog{max-height:90dvh;overflow:auto}#installApp{color:var(--acid)}
body.in-game.touch-device{overflow:hidden;height:100dvh}body.in-game.touch-device>header{display:none}body.in-game.touch-device main{padding:0}body.in-game.touch-device #game{position:fixed;inset:0;max-width:none;padding:max(6px,env(safe-area-inset-top)) max(8px,env(safe-area-inset-right)) max(6px,env(safe-area-inset-bottom)) max(8px,env(safe-area-inset-left));overflow:hidden;display:flex;flex-direction:column;gap:8px}body.in-game.touch-device .gamebar{flex-shrink:0;margin:0;min-height:32px}body.in-game.touch-device .underbar{display:none}body.in-game.touch-device #touch{display:flex;margin-top:auto;padding:6px 4px 0;gap:12px}body.in-game.touch-device .screen{flex-shrink:0}body.in-game.touch-device .overlay{position:fixed;inset:0;overflow:auto;z-index:30;align-items:safe center;padding:12px}body.in-game.touch-device .modal{padding:12px;max-width:600px}body.in-game.touch-device .modal h2{font-size:30px}body.in-game.touch-device .modal p{font-size:12px}body.in-game.touch-device #cutscene{max-height:35dvh;width:auto;max-width:100%;margin:auto}body.in-game.touch-device .gamebar button{min-height:32px}body.in-game.touch-device #controllerStatus{font-size:8px;max-width:100px}
@media(orientation:landscape){body.in-game.touch-device #game{display:grid;grid-template-columns:120px minmax(0,1fr) 170px;grid-template-rows:32px minmax(0,1fr);gap:6px}body.in-game.touch-device .gamebar{grid-column:1/-1;grid-row:1}body.in-game.touch-device .screen{grid-column:2;grid-row:2;align-self:center;justify-self:center;width:min(100%,calc((100dvh - 64px) * 1.774));}body.in-game.touch-device #touch{display:contents}body.in-game.touch-device #joystick{grid-column:1;grid-row:2;align-self:center;justify-self:center;width:110px;height:110px}body.in-game.touch-device .actionpad{grid-column:3;grid-row:2;align-self:center;grid-template-columns:repeat(3,50px);grid-template-rows:repeat(3,48px);gap:5px}body.in-game.touch-device .actionpad .special{grid-column:1/4}body.in-game.touch-device .actionpad button{font-size:8px}body.in-game.touch-device #cutscene{max-height:33dvh}body.in-game.touch-device .celebration .modal{padding:8px;max-width:610px}body.in-game.touch-device #cutsceneWrap{margin:4px 0}body.in-game.touch-device #unlockCard{padding:3px;font-size:9px}body.in-game.touch-device .modal h2{font-size:26px;margin:5px}body.in-game.touch-device .modal .primary{padding:10px 18px;margin:6px}}
@media(max-width:600px){#installApp{font-size:7px;padding:6px}.topright{gap:3px}.brand .smalltag{display:none}.actionpad{grid-template-columns:repeat(4,45px)}#joystick{width:104px;height:104px}}
@media(display-mode:standalone){header{padding-top:env(safe-area-inset-top);height:calc(70px + env(safe-area-inset-top))}}

@media(max-width:360px) and (orientation:portrait){body.in-game.touch-device .actionpad{grid-template-columns:repeat(3,45px);grid-template-rows:repeat(3,45px)}body.in-game.touch-device .actionpad .special{grid-column:1/4}}

/* Lock the root scroller as well as the controls during two-thumb play. */
html.game-touch-active,html.game-touch-active body{width:100%;height:100%;overflow:hidden;overscroll-behavior:none;touch-action:none;-webkit-text-size-adjust:100%;text-size-adjust:100%}
html.game-touch-active #game,html.game-touch-active #game *{touch-action:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}
html.game-touch-active dialog,html.game-touch-active dialog *{touch-action:pan-y}

#inventoryDialog{width:min(950px,95vw);max-width:950px;padding:25px;background:linear-gradient(145deg,#20162d,#100d1c);border-color:#736080}#inventoryDialog .inventory-top{display:flex;justify-content:space-between;gap:15px;align-items:start}#inventoryDialog h2{font-size:38px;margin:12px 0}#inventorySummary{margin:0;color:#c6b7d7;font-size:12px}.inventory-tabs{display:flex;flex-wrap:wrap;gap:6px;margin:20px 0;border-bottom:1px solid #493650;padding-bottom:16px}.inventory-tabs button{padding:10px;font-size:10px;min-height:40px;color:#c6b7d7}.inventory-tabs button[aria-pressed=true]{background:#382543;color:var(--crew);border-color:var(--crew)}.inventory-heading{display:flex;align-items:center;justify-content:space-between;gap:15px}.inventory-heading h3{font-family:'Barlow Condensed',Impact,sans-serif;font-size:27px;margin:0}.inventory-heading p{margin:4px 0;font-size:11px;color:var(--acid)}#defaultOutfit{font-size:9px;padding:10px;min-height:42px;color:var(--acid)}#inventoryHint{font-size:12px;line-height:1.6;margin:12px 0 17px}.inventory-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.keepsake{display:flex;flex-direction:column;min-width:0;background:#171121;border:1px solid #40304c;border-radius:7px;overflow:hidden}.keepsake.found{border-color:#7b627f}.keepsake.pad-selected{box-shadow:inset 0 0 0 1px #99bc50}.keepsake-icon{display:grid;place-items:center;height:90px;background:radial-gradient(ellipse,#55335277,transparent 75%);font-size:45px}.missing .keepsake-icon{font-family:monospace;color:#5c486f;background:#15111e;font-size:35px}.keepsake-copy{padding:13px;display:flex;flex-direction:column;flex:1}.keepsake-copy small{font-size:8px;letter-spacing:1.4px;color:var(--acid)}.missing small{color:#8e7ca2}.keepsake h3{font-size:15px;margin:7px 0}.keepsake p{font-size:11px;line-height:1.5;margin:0 0 12px}.keepsake-tally{font-size:9px;color:#a9cda9;margin-top:auto}.keepsake button{margin-top:12px;font-size:10px;min-height:40px;padding:9px;color:var(--acid);border-color:#66743c}.keepsake button:disabled{color:#81728b;border-color:#3e3149;cursor:default}.inventory-footer{display:flex;align-items:center;justify-content:space-between;gap:15px;border-top:1px solid #47324e;margin-top:20px;padding-top:18px}.inventory-footer span{color:#a391b6;font-size:10px;line-height:1.7}.inventory-footer .primary{font-size:10px;flex-shrink:0}#inventoryButton{color:var(--acid)}
@media(max-width:650px){#inventoryDialog{padding:16px;max-height:95dvh}#inventoryDialog h2{font-size:27px}.inventory-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.inventory-tabs{gap:5px;margin:12px 0}.inventory-tabs button{padding:7px;font-size:9px;min-height:40px}.keepsake-icon{height:68px;font-size:35px}.keepsake-copy{padding:10px}.keepsake h3{font-size:13px}.inventory-footer{align-items:stretch;flex-direction:column}.inventory-heading h3{font-size:23px}.topright{flex-wrap:wrap;justify-content:flex-end;max-width:65%}.topright #inventoryButton,.topright #installApp{font-size:7px}.gamebar #gameInventory{font-size:9px;padding:8px}}
@media(max-height:500px) and (orientation:landscape){#inventoryDialog{max-height:96dvh;padding:14px}#inventoryDialog h2{font-size:25px}.inventory-tabs{margin:10px 0;padding-bottom:9px}.keepsake-icon{height:60px;font-size:32px}.inventory-footer{padding-top:10px;margin-top:12px}}

/* Keep faces legible in the rescued crew cards. */
.fighter img{width:64px;height:82px;flex-shrink:0;filter:none;border-radius:3px;border:1px solid #67516e;object-position:center 24%}.fighter[data-hero='3'] img{object-position:center 30%}.fighter[data-hero='4'] img{object-position:45% 20%}.fighter[data-hero='5'] img{object-position:48% 28%}.fighter[data-hero='8'] img{object-position:center 24%}

/* Cinematics live above the arena so no screen container can crop them. */
#overlay.celebration{position:fixed;inset:0;width:100%;height:100dvh;overflow-y:auto;z-index:60;align-items:safe center;padding:20px;background:#080611f5}
#overlay.celebration .modal{width:min(900px,100%);max-width:900px;padding:20px;flex-shrink:0}
#overlay.celebration #cutsceneWrap{display:flex;flex-direction:column;align-items:center;gap:6px;margin:10px 0}
#overlay.celebration #cutscene{width:min(100%,calc(52dvh * 2.64));height:auto;max-height:52dvh;aspect-ratio:660/250;image-rendering:auto;object-fit:contain}
#overlay.celebration h2{font-size:32px;margin:8px 0}#overlay.celebration p{margin:8px 0;line-height:1.5}
#overlayAction:disabled{opacity:.45;cursor:default;transform:none}
#canvas{image-rendering:auto}
.hero-progress{display:block;color:#91cead;font-size:8px;font-style:normal;margin-top:6px;line-height:1.4}#saveStatus{font-size:9px;color:#91cead;letter-spacing:1px;margin:0 0 13px}
@media(max-height:500px) and (orientation:landscape){#overlay.celebration{padding:7px}#overlay.celebration .modal{padding:6px}#overlay.celebration h2{font-size:22px;margin:4px}#overlay.celebration p{font-size:10px;margin:5px}#overlay.celebration #cutscene{max-height:43dvh;width:min(100%,calc(43dvh * 2.64))}#overlay.celebration #unlockCard{font-size:8px;padding:3px}#overlay.celebration .primary{padding:9px 16px;margin:4px}}

.coop-setup{display:flex;gap:15px;align-items:center;flex-wrap:wrap;padding:18px;margin-top:22px;border:1px solid #475339;background:#161925;border-radius:6px}.coop-setup>button{padding:14px;color:#dcff58;min-height:44px;font-size:12px}.coop-setup p{flex:1;min-width:200px;font-size:11px;line-height:1.6;color:#b5a7c4;margin:0}.coop-setup label{font-size:10px;color:#84e7ff}.coop-setup select{display:block;background:#22172f;color:#eee1f4;padding:9px;border:1px solid #645275;border-radius:4px;margin-top:5px;max-width:220px}.bonus-arcade{display:flex;align-items:center;gap:10px;padding:18px;background:#21162e;border:1px solid #654b76;border-radius:5px;margin:24px 0}.bonus-arcade>div{margin-right:auto}.bonus-arcade strong{display:block;font-size:14px;color:#dcff58}.bonus-arcade span{display:block;font-size:10px;color:#b8a6cb;margin-top:6px}.bonus-arcade button{min-height:48px;padding:12px;font-size:10px;color:#ebc4e8}.collection-reward{padding:14px;margin-bottom:16px;border:1px solid #92874a;background:#c7bb3810;display:flex;gap:12px;align-items:center;flex-wrap:wrap}.collection-reward strong{color:#dcff58;font-size:12px}.collection-reward span{flex:1;min-width:180px;font-size:11px}.collection-reward button{padding:10px;color:#dcff58;font-size:10px}.collection-reward button:disabled{opacity:.4}.actionpad .special,.actionpad .team{grid-column:auto}.actionpad .team,#teamButton{color:#84edcf;border-color:#4e9179}button:disabled{cursor:default}
@media(max-width:700px){.bonus-arcade{flex-wrap:wrap}.bonus-arcade>div{width:100%;margin-bottom:6px}.bonus-arcade button{flex:1}.coop-setup{padding:12px}.coop-setup p{font-size:10px}}
@media(orientation:landscape){body.in-game.touch-device .actionpad .special{grid-column:auto}body.in-game.touch-device .actionpad .team{grid-column:span 2}}

.bonus-arcade{flex-wrap:wrap}.bonus-arcade>div{flex-basis:100%;margin-bottom:6px}.bonus-arcade button{flex:1 1 220px}.bonus-arcade button small{display:block;margin-top:6px;color:#a8d7c3;font-size:9px}

.discovery-journal{margin:20px 0;padding:18px;border:1px solid #6a6150;border-radius:6px;background:#d0ae4310}.journal-heading{display:flex;gap:12px;justify-content:space-between;flex-wrap:wrap}.journal-heading strong{color:#ffe0a0;font-size:13px}.journal-heading span,.discovery-journal>p{font-size:11px;color:#c7b6cf;line-height:1.6}.journal-eggs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.journal-eggs article{padding:12px;border:1px solid #594260;background:#181322;border-radius:5px}.journal-eggs article>span{display:block;font-size:24px;margin-bottom:8px}.journal-eggs article>strong{font-size:11px;color:#f4d699}.journal-eggs article>p{font-size:10px;line-height:1.6;color:#d4c1db}.journal-eggs .undiscovered{opacity:.5}@media(max-width:600px){.journal-eggs{grid-template-columns:repeat(2,minmax(0,1fr))}.discovery-journal{padding:12px}}

.guestportrait{width:43px;height:60px;flex-shrink:0;border-radius:4px}.secret-clues{padding:16px;border:1px solid #676945;background:#bad24b0d;border-radius:6px;margin:20px 0}.secret-clues>strong{font-size:13px;color:#dcff87}.secret-clues>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:12px}.secret-clues b{font-size:11px;color:#e3c7f0}.secret-clues p{font-size:11px;line-height:1.6;color:#c0b0ca}@media(max-width:600px){.secret-clues>div{grid-template-columns:1fr}}
