/* Touch landscape keeps the 1920 × 1080 battlefield. Sizes compensate for the
   stage scale, so the red controls remain usable on a real phone. */
body.sp-mobile-landscape .sp-stage{
  --ml-touch:clamp(88px,calc(42px / var(--ui-scale,1)),145px);
  --ml-text:clamp(28px,calc(13px / var(--ui-scale,1)),45px);
  --ml-small:clamp(24px,calc(11px / var(--ui-scale,1)),39px);
  --ml-title:clamp(42px,calc(18px / var(--ui-scale,1)),62px);
  -webkit-tap-highlight-color:transparent;
}
body.sp-mobile-landscape .sp-stage :is(button,a,summary,input,select,textarea){-webkit-tap-highlight-color:#dcb65828}
body.sp-mobile-landscape .sp-stage :is(button,a,summary):focus-visible{outline:3px solid #f8d789;outline-offset:5px}
body.sp-mobile-landscape .sp-stage :is(.journey-panel,.social-list,.social-chat-messages,.pm-content-body,.arena-table-wrap,.arena-profile){overscroll-behavior:contain;-webkit-overflow-scrolling:touch;touch-action:pan-y}

/* Combat: three familiar buttons, readable health and a full-size turn action.
   The paper-doll strip remains available through Bolsa instead of filling the
   small top bar with tiny duplicate item icons. */
body.sp-mobile-landscape .sp-stage:not(.sp-portrait) .sp-topbar{height:192px;gap:16px;padding:10px 22px 14px;align-items:center}
body.sp-mobile-landscape .sp-topbar .sp-relics2{display:none}
body.sp-mobile-landscape .sp-tb__hero{gap:8px;flex:0 0 auto}
body.sp-mobile-landscape :is(.sp-pvp-stage,.sp-combat--coop) .sp-tb__hero{display:none}
body.sp-mobile-landscape .sp-pvp-stage .sp-potions2{display:none}
body.sp-mobile-landscape .sp-tb__id{display:none}
body.sp-mobile-landscape .sp-tb__name{font-size:17px;height:18px;top:22px}
body.sp-mobile-landscape .sp-pf .sp-hp__txt,body.sp-mobile-landscape .sp-pf .sp-pw__txt{font-size:16px}
body.sp-mobile-landscape .sp-tb__gold{padding:9px 12px;gap:8px;flex:none}
body.sp-mobile-landscape .sp-tb__gold b{font-size:var(--ml-text)}
body.sp-mobile-landscape .sp-potions2{padding:7px;gap:8px;flex:none}
body.sp-mobile-landscape .sp-pot2{width:clamp(82px,calc(39px / var(--ui-scale,1)),132px);height:clamp(82px,calc(39px / var(--ui-scale,1)),132px)}
body.sp-mobile-landscape .sp-stage:not(.sp-portrait) .sp-tb__right{grid-template-columns:repeat(3,158px) repeat(2,var(--ml-touch));gap:10px;margin-left:auto}
body.sp-mobile-landscape .sp-stage:not(.sp-portrait) .sp-combat--coop .sp-tb__right{grid-template-columns:repeat(3,158px) repeat(2,var(--ml-touch)) 158px}
body.sp-mobile-landscape .sp-stage:not(.sp-portrait) .sp-tb__right .sp-wowbtn:not(.sp-settings-icon):not(.sp-wowbtn--fs){--h:var(--ml-touch);width:158px;min-width:158px;flex-basis:158px;font-size:var(--ml-text);padding-inline:18px}
body.sp-mobile-landscape .sp-stage:not(.sp-portrait) .sp-tb__right :is(.sp-settings-icon,.sp-wowbtn--fs){--h:var(--ml-touch);width:var(--ml-touch);min-width:var(--ml-touch);flex-basis:var(--ml-touch);padding-inline:24px}
body.sp-mobile-landscape .sp-settings-icon__art{width:46px;height:46px}
body.sp-mobile-landscape .sp-stage:not(.sp-portrait) .sp-tb__where{gap:20px;align-items:center;justify-content:flex-end}
body.sp-mobile-landscape .sp-tb__zone{font-size:var(--ml-small);max-width:360px!important}
body.sp-mobile-landscape .sp-tb__turn{font-size:var(--ml-small)}
body.sp-mobile-landscape .sp-wowbtn--end{--h:var(--ml-touch);min-width:300px;font-size:var(--ml-text);right:32px;bottom:180px}
body.sp-mobile-landscape .sp-combat-stage .sp-wowbtn--end{--h:var(--ml-touch)!important;height:var(--ml-touch);min-height:var(--ml-touch);font-size:var(--ml-text);min-width:300px}
body.sp-mobile-landscape .sp-combat-stage .sp-topbar .sp-wowbtn{--h:var(--ml-touch)!important;height:var(--ml-touch);min-height:var(--ml-touch)}
body.sp-mobile-landscape .sp-pvp-end{bottom:180px}
body.sp-mobile-landscape .sp-hint2{font-size:var(--ml-text);bottom:320px;max-width:1100px;left:50%;transform:translateX(-50%);text-align:center}
body.sp-mobile-landscape .sp-pvp-notice{font-size:var(--ml-small);top:200px!important;left:22%;right:22%}
body.sp-mobile-landscape .sp-int__n{font-size:52px}
body.sp-mobile-landscape .sp-int__x{font-size:35px}
body.sp-mobile-landscape .sp-eplate .sp-ep__name{font-size:var(--ml-small)}
body.sp-mobile-landscape .sp-np .sp-hp__txt{font-size:29px}
body.sp-mobile-landscape .sp-wow-unit .sp-party-name{min-height:37px;padding-right:12px}
body.sp-mobile-landscape .sp-wow-unit .sp-party-name strong{font-size:31px}
body.sp-mobile-landscape .sp-wow-unit .sp-party-state{font-size:25px}
body.sp-mobile-landscape .sp-wow-unit .sp-np .sp-hp__txt{font-size:30px}
body.sp-mobile-landscape .sp-unit-hand{font-size:30px}
body.sp-mobile-landscape .sp-unit-energy-number{font-size:27px}
body.sp-mobile-landscape .sp-unit-energy i{width:19px;height:19px}
body.sp-mobile-landscape .sp-unit-bottom{height:36px;gap:10px}
body.sp-mobile-landscape .sp-unit-effects .sp-pip{width:42px;height:42px}
body.sp-mobile-landscape .sp-unit-effects .sp-pip b{font-size:25px}
body.sp-mobile-landscape .sp-pile{width:110px;height:145px}
body.sp-mobile-landscape .sp-pile--exhaust{width:90px;height:120px;right:154px}
body.sp-mobile-landscape .sp-pile__lbl{font-size:var(--ml-small);letter-spacing:0}
body.sp-mobile-landscape .sp-pile__n{font-size:50px}
body.sp-mobile-landscape .sp-group-menu{top:206px;right:24px;max-height:740px;width:680px;overflow-y:auto;font-size:var(--ml-small)}
body.sp-mobile-landscape .sp-group-menu .sp-wowbtn{--h:var(--ml-touch);font-size:var(--ml-text)}
body.sp-mobile-landscape .sp-group-menu--details .sp-group-details h3{font-size:var(--ml-title)}
body.sp-mobile-landscape .sp-group-menu--details .sp-group-details :is(.sp-group-member__head b,.sp-group-detail,.sp-group-signal){font-size:var(--ml-text)}
body.sp-mobile-landscape .sp-group-menu--details .sp-group-details :is(.sp-group-member__head small,.sp-group-member p,.sp-group-leader,.sp-group-room,.sp-group-comms-label){font-size:var(--ml-small)}
body.sp-mobile-landscape .sp-group-menu--details .sp-group-member__health{height:38px}
body.sp-mobile-landscape .sp-group-menu--details .sp-group-member__health span{font-size:var(--ml-small);line-height:38px}
body.sp-mobile-landscape .sp-group-menu--details .sp-group-details .sp-wowbtn{--h:var(--ml-touch)!important;font-size:var(--ml-text)}
body.sp-mobile-landscape:has(.sp-combat-stage) .sp-coopbar.sp-coopbar--compact{display:none}

/* Common adventure toolbar outside combat. */
body.sp-mobile-landscape .sp-stage:not(.sp-portrait) .sx-bar{min-height:135px;gap:12px;padding:12px 20px}
body.sp-mobile-landscape .sp-stage:not(.sp-portrait) .sx-bar .sp-wowbtn{--h:var(--ml-touch);font-size:var(--ml-text)}
body.sp-mobile-landscape .sp-stage:not(.sp-portrait) .sx-bar :is(.sx-bar__gear,.sx-bar__deck,.sx-bar__map,.sx-bar__tal){width:170px;min-width:170px;flex-basis:170px;font-size:var(--ml-text)}
body.sp-mobile-landscape .sp-stage:not(.sp-portrait) .sx-bar :is(.sx-bar__set,.sx-bar__fs){width:112px;min-width:112px;flex-basis:112px}
body.sp-mobile-landscape .sx-bar__who{font-size:var(--ml-small)}
body.sp-mobile-landscape .sx-bar__strip{display:none}
body.sp-mobile-landscape .sx-bar__act{font-size:var(--ml-small)!important}

/* Hero hub: model at the left, three clear mode rows at the right. */
body.sp-mobile-landscape .sp-hero-hub{padding:24px 34px}
body.sp-mobile-landscape .sp-hero-hub-head{height:110px}
body.sp-mobile-landscape .sp-hero-hub-head .sp-wowbtn{--h:var(--ml-touch);font-size:var(--ml-text);min-width:280px}
body.sp-mobile-landscape .sp-hero-hub-portrait{left:30px;top:165px;width:570px;bottom:190px}
body.sp-mobile-landscape .sp-hero-hub-model{inset:0 0 135px}
body.sp-mobile-landscape .sp-hero-hub-name h1{font-size:58px}
body.sp-mobile-landscape .sp-hero-hub-name p{font-size:var(--ml-small);margin:10px 0}
body.sp-mobile-landscape .sp-hero-modes{left:640px;right:34px;top:150px;bottom:190px;gap:18px}
body.sp-mobile-landscape .sp-hero-mode{padding:20px 25px;gap:12px}
body.sp-mobile-landscape .sp-hero-mode h2{font-size:var(--ml-title);max-width:49%}
body.sp-mobile-landscape .sp-hero-mode small{font-size:var(--ml-small);line-height:1.25;max-width:47%}
body.sp-mobile-landscape .sp-hero-mode .sp-wowbtn{--h:var(--ml-touch);font-size:var(--ml-text);right:24px;bottom:28px;min-width:440px;max-width:47%;padding-inline:20px}
body.sp-mobile-landscape .sp-hero-mode .sp-hero-mode-options{position:relative;inset:auto;min-width:0;width:max-content;max-width:49%;--h:70px;font-size:var(--ml-small);margin-top:6px}
body.sp-mobile-landscape .sp-hero-hub-tools{left:34px;right:34px;bottom:28px;gap:14px}
body.sp-mobile-landscape .sp-hero-hub-tools .sp-wowbtn{--h:var(--ml-touch);font-size:var(--ml-text);min-width:240px;flex:1}
body.sp-mobile-landscape .sp-hero-hub-tools .sp-hero-unlock{min-width:300px;margin-left:0;padding:15px;flex:1.4}
body.sp-mobile-landscape .sp-hero-unlock :is(span,b){font-size:var(--ml-small)}

/* Cooperative entry and the spirit healer retain their hero scene. */
body.sp-mobile-landscape .journey-screen{font-size:var(--ml-text)}
body.sp-mobile-landscape .journey-screen:before{inset:18px}
body.sp-mobile-landscape .journey-heading{top:34px;left:45px;right:40px}
body.sp-mobile-landscape .journey-heading h1{font-size:57px;margin:8px 0}
body.sp-mobile-landscape .journey-heading p{font-size:var(--ml-small)}
body.sp-mobile-landscape .journey-scene{left:30px;top:190px;width:560px;bottom:180px}
body.sp-mobile-landscape .journey-model{inset:0 20px 130px}
body.sp-mobile-landscape .journey-halo{left:45px;top:25px}
body.sp-mobile-landscape .journey-name h2{font-size:50px}
body.sp-mobile-landscape .journey-name p{font-size:var(--ml-small)}
body.sp-mobile-landscape .journey-panel{left:630px;right:40px;width:auto;top:175px;bottom:185px;max-height:none;padding:27px 34px;overflow-y:auto}
body.sp-mobile-landscape .journey-panel h2{font-size:var(--ml-title);margin:12px 0 18px}
body.sp-mobile-landscape .journey-intro{font-size:var(--ml-text);line-height:1.4;margin-bottom:20px}
body.sp-mobile-landscape .journey-screen .sp-wowbtn{--h:var(--ml-touch);font-size:var(--ml-text);min-width:300px}
body.sp-mobile-landscape .journey-screen .journey-secondary{--h:var(--ml-touch);font-size:var(--ml-text)}
body.sp-mobile-landscape .journey-footer{left:45px;right:40px;bottom:28px}
body.sp-mobile-landscape .journey-details{font-size:var(--ml-small)}
body.sp-mobile-landscape .journey-details summary{padding:22px 0;min-height:var(--ml-touch)}
body.sp-mobile-landscape .journey-details p{max-height:320px}
body.sp-mobile-landscape .journey-label{font-size:var(--ml-small)}
body.sp-mobile-landscape .journey-join input{font-size:var(--ml-text);min-height:var(--ml-touch);padding:15px}
body.sp-mobile-landscape .journey-party{grid-template-columns:1fr 1fr;gap:22px;padding:20px}
body.sp-mobile-landscape .journey-feature{gap:15px}
body.sp-mobile-landscape .journey-feature b{font-size:var(--ml-text)}
body.sp-mobile-landscape .journey-feature span{font-size:var(--ml-small)}
body.sp-mobile-landscape .journey-code{font-size:55px}
body.sp-mobile-landscape .journey-treasures{gap:20px}
body.sp-mobile-landscape .journey-treasures .journey-feature{flex-direction:column;text-align:center}
body.sp-mobile-landscape .journey-treasures .journey-feature b{font-size:var(--ml-text)}
body.sp-mobile-landscape .journey-treasures .journey-feature span{font-size:var(--ml-small)}
body.sp-mobile-landscape :is(.journey-kept,.journey-fatigue p){font-size:var(--ml-small)}

/* Social: slim navigation at the left, readable list or conversation at right. */
body.sp-mobile-landscape .sp-social-hall{padding:22px 30px;font-size:var(--ml-text)}
body.sp-mobile-landscape .social-header{min-height:105px;gap:20px}
body.sp-mobile-landscape .social-heading{gap:16px}
body.sp-mobile-landscape .social-heading small{display:none}
body.sp-mobile-landscape .social-heading h1{font-size:var(--ml-title)}
body.sp-mobile-landscape .social-crest{width:70px;height:70px;font-size:42px}
body.sp-mobile-landscape .sp-social-hall .sp-wowbtn{--h:var(--ml-touch);font-size:var(--ml-text);min-width:220px}
body.sp-mobile-landscape .social-body{left:30px;right:30px;top:150px;bottom:26px;grid-template-columns:300px minmax(0,1fr);gap:20px}
body.sp-mobile-landscape .social-sidebar{padding:18px 15px;overflow-y:auto}
body.sp-mobile-landscape .social-self{padding:5px 0 18px}
body.sp-mobile-landscape .social-self img{width:90px;height:90px}
body.sp-mobile-landscape .social-self h2{font-size:var(--ml-title);margin:13px 0 8px}
body.sp-mobile-landscape :is(.social-self p,.social-tag){font-size:var(--ml-small)}
body.sp-mobile-landscape .social-tabs{gap:16px;padding:18px 0}
body.sp-mobile-landscape .social-sidebar-note{display:none}
body.sp-mobile-landscape .social-search-card{padding:18px 24px;grid-template-columns:1fr minmax(540px,1.2fr);gap:14px 20px}
body.sp-mobile-landscape .social-search-card h2,body.sp-mobile-landscape .social-roster h2{font-size:var(--ml-title)}
body.sp-mobile-landscape :is(.social-search-card>div>p,.social-summary,.social-presence,.social-person p,.social-error){font-size:var(--ml-small)}
body.sp-mobile-landscape :is(.social-search-form input,.social-filter){min-height:var(--ml-touch);font-size:var(--ml-text);padding:12px 18px}
body.sp-mobile-landscape .social-search-card .social-search-button{min-width:230px}
body.sp-mobile-landscape .social-main{gap:18px}
body.sp-mobile-landscape .social-roster{padding:20px 24px}
body.sp-mobile-landscape .social-roster>header{padding-bottom:15px}
body.sp-mobile-landscape .social-person{grid-template-columns:80px minmax(0,1fr) auto;gap:18px;padding:22px 12px}
body.sp-mobile-landscape .social-portrait{width:80px;height:80px}
body.sp-mobile-landscape .social-person h3{font-size:var(--ml-text)}
body.sp-mobile-landscape .social-friend-row{padding-right:110px}
body.sp-mobile-landscape .social-friend-row .social-person-actions{grid-template-columns:repeat(2,245px);gap:14px}
body.sp-mobile-landscape .sp-social-hall .social-person .sp-wowbtn{--h:var(--ml-touch);font-size:var(--ml-text);min-width:0}
body.sp-mobile-landscape .social-friend-row .social-remove{width:85px;height:var(--ml-touch);font-size:var(--ml-title);right:5px;top:22px}
body.sp-mobile-landscape .social-chat{grid-template-columns:300px minmax(0,1fr)}
body.sp-mobile-landscape .social-chat-contact{padding:20px 12px}
body.sp-mobile-landscape .social-chat-contact strong{font-size:var(--ml-text)}
body.sp-mobile-landscape .social-chat-contact small{font-size:var(--ml-small)}
body.sp-mobile-landscape .social-chat-pane{padding:20px}
body.sp-mobile-landscape .social-chat-title{padding-bottom:15px}
body.sp-mobile-landscape .social-chat-title h2{font-size:var(--ml-title);margin-bottom:8px}
body.sp-mobile-landscape :is(.social-chat-title span,.social-chat-message b){font-size:var(--ml-text)}
body.sp-mobile-landscape .social-chat-message p{font-size:var(--ml-text);line-height:1.45}
body.sp-mobile-landscape :is(.social-chat-message time,.social-chat-message>small,.social-chat-counter,.social-chat-day){font-size:var(--ml-small)}
body.sp-mobile-landscape .social-chat-composer{display:grid;grid-template-columns:minmax(0,1fr)250px;gap:12px;padding-top:15px}
body.sp-mobile-landscape .social-chat-composer>div{display:contents}
body.sp-mobile-landscape .social-chat-input{grid-column:1;grid-row:1/3;min-height:150px;max-height:190px;font-size:var(--ml-text);padding:15px}
body.sp-mobile-landscape .social-chat-composer .sp-wowbtn{grid-column:2;grid-row:1;min-width:0}
body.sp-mobile-landscape .social-chat-counter{grid-column:2;grid-row:2;text-align:center}
body.sp-mobile-landscape .social-chat-hint{display:none}
body.sp-mobile-landscape :is(.social-chat-older,.social-chat-new,.social-chat-retry){font-size:var(--ml-small);min-height:90px;padding:15px 22px}

/* Settings fit the horizontal screen; content scrolls, header and actions stay. */
body.sp-mobile-landscape .pm-panel.pm-reforged{width:calc(100% - 45px);height:calc(100% - 45px);max-height:none;font-size:var(--ml-text)}
body.sp-mobile-landscape .pm-reforged .pm-header{min-height:100px;padding:12px 25px;gap:18px}
body.sp-mobile-landscape .pm-reforged .pm-title{font-size:var(--ml-title)}
body.sp-mobile-landscape .pm-eyebrow,body.sp-mobile-landscape .pm-crest{display:none}
body.sp-mobile-landscape .pm-reforged .pm-close{--h:var(--ml-touch)!important;min-width:110px;font-size:54px}
body.sp-mobile-landscape .pm-layout{grid-template-columns:300px minmax(0,1fr)}
body.sp-mobile-landscape .pm-nav{padding:15px;gap:10px}
body.sp-mobile-landscape .pm-tab{min-height:var(--ml-touch);padding:15px;gap:12px}
body.sp-mobile-landscape .pm-tab strong{font-size:var(--ml-text)}
body.sp-mobile-landscape .pm-tab small,body.sp-mobile-landscape .pm-tab b{display:none}
body.sp-mobile-landscape .pm-tab .pm-tab-icon{width:50px;height:50px}
body.sp-mobile-landscape .pm-content{padding:18px 25px 0}
body.sp-mobile-landscape .pm-content>h3{font-size:var(--ml-title)}
body.sp-mobile-landscape .pm-intro{font-size:var(--ml-small);margin:8px 0 18px}
body.sp-mobile-landscape .pm-card{padding:18px 25px;margin-bottom:20px}
body.sp-mobile-landscape .pm-card-head h4,body.sp-mobile-landscape .pm-setting strong,body.sp-mobile-landscape .pm-slider-row strong{font-size:var(--ml-text)}
body.sp-mobile-landscape :is(.pm-setting small,.pm-slider-row small,.pm-card-head p,.pm-presets>span,.pm-key-list dd,.pm-key-list kbd,.pm-storage-status){font-size:var(--ml-small)}
body.sp-mobile-landscape .pm-setting{min-height:var(--ml-touch);gap:25px;padding:18px 0}
body.sp-mobile-landscape .pm-slider-row{grid-template-columns:minmax(350px,.8fr)minmax(450px,1fr);min-height:150px;gap:30px;padding:20px 0}
body.sp-mobile-landscape .pm-reforged .pm-select{min-height:var(--ml-touch);font-size:var(--ml-text)}
body.sp-mobile-landscape .pm-reforged .sx-check{width:var(--ml-touch);height:var(--ml-touch)}
body.sp-mobile-landscape .pm-reforged .sx-check:checked:after{font-size:70px}
body.sp-mobile-landscape .pm-value{font-size:var(--ml-text);min-width:100px}
/* Keep a full finger target while the visible fader stays fine and compact. */
body.sp-mobile-landscape .pm-reforged .pm-range{height:calc(42px / var(--ui-scale,1));min-height:calc(42px / var(--ui-scale,1));margin:0;padding:0;background:transparent;border:0;border-radius:0;box-shadow:none;touch-action:manipulation}
body.sp-mobile-landscape .pm-reforged .pm-range::-webkit-slider-runnable-track{height:calc(4px / var(--ui-scale,1));border:0;border-radius:calc(2px / var(--ui-scale,1));background:linear-gradient(90deg,#bd974e var(--range-fill),#35312a var(--range-fill));box-shadow:0 calc(1px / var(--ui-scale,1)) calc(2px / var(--ui-scale,1)) #000b}
body.sp-mobile-landscape .pm-reforged .pm-range::-moz-range-track{height:calc(4px / var(--ui-scale,1));border:0;border-radius:calc(2px / var(--ui-scale,1));background:linear-gradient(90deg,#bd974e var(--range-fill),#35312a var(--range-fill));box-shadow:0 calc(1px / var(--ui-scale,1)) calc(2px / var(--ui-scale,1)) #000b}
body.sp-mobile-landscape .pm-reforged .pm-range::-webkit-slider-thumb{appearance:none;box-sizing:border-box;width:calc(14px / var(--ui-scale,1));height:calc(20px / var(--ui-scale,1));margin-top:calc(-8px / var(--ui-scale,1));border:calc(1px / var(--ui-scale,1)) solid #ddbd79;border-radius:calc(3px / var(--ui-scale,1));background:linear-gradient(90deg,#6e542e,#d9bd82 40%,#a17c3e 60%,#503b20);box-shadow:0 calc(2px / var(--ui-scale,1)) calc(3px / var(--ui-scale,1)) #0009,inset 0 0 0 calc(1px / var(--ui-scale,1)) #19140b55}
body.sp-mobile-landscape .pm-reforged .pm-range::-moz-range-thumb{box-sizing:border-box;width:calc(14px / var(--ui-scale,1));height:calc(20px / var(--ui-scale,1));border:calc(1px / var(--ui-scale,1)) solid #ddbd79;border-radius:calc(3px / var(--ui-scale,1));background:linear-gradient(90deg,#6e542e,#d9bd82 40%,#a17c3e 60%,#503b20);box-shadow:0 calc(2px / var(--ui-scale,1)) calc(3px / var(--ui-scale,1)) #0009,inset 0 0 0 calc(1px / var(--ui-scale,1)) #19140b55}
body.sp-mobile-landscape .pm-footer{min-height:145px;padding:15px 25px}
body.sp-mobile-landscape .pm-footer .pm-save-hint{display:none}
body.sp-mobile-landscape .pm-reforged .pm-btns{width:100%;justify-content:flex-end;gap:18px}
body.sp-mobile-landscape .pm-reforged .pm-btn{--h:var(--ml-touch)!important;min-width:340px;font-size:var(--ml-text)}
body.sp-mobile-landscape .pm-reforged .sp-wowbtn--sm{--h:var(--ml-touch)!important;font-size:var(--ml-text)}

/* Selection and modal dialogs use their existing two-column composition. */
body.sp-mobile-landscape .cc.cc--list .cc-listpanel{top:30px;bottom:180px;right:35px;width:620px;padding:24px}
body.sp-mobile-landscape .cc.cc--list .cc-model--list{top:100px;bottom:300px;left:100px;right:720px}
body.sp-mobile-landscape .cc.cc--list .cc-identity-dock{left:45px;right:700px;bottom:35px;gap:18px}
body.sp-mobile-landscape .cc.cc--list .cc-who b{font-size:var(--ml-title)}
body.sp-mobile-landscape .cc.cc--list .cc-identity-meta span{font-size:var(--ml-text)}
body.sp-mobile-landscape .cc.cc--list .cc-enterbtn{--h:var(--ml-touch);--btn-h:var(--ml-touch);font-size:var(--ml-text)}
body.sp-mobile-landscape .cc.cc--list .cc-row{min-height:170px;padding:22px;gap:20px}
body.sp-mobile-landscape .cc.cc--list .cc-row__t b{font-size:var(--ml-text)}
body.sp-mobile-landscape .cc.cc--list .cc-row__t :is(em,small){font-size:var(--ml-small)}
body.sp-mobile-landscape .cc.cc--list .cc-foot--list{right:35px;bottom:30px;width:620px}
body.sp-mobile-landscape .cc.cc--list .cc-foot--list .sp-wowbtn,body.sp-mobile-landscape .cc.cc--list .cc-listbtns .sp-wowbtn{--h:var(--ml-touch);--btn-h:var(--ml-touch);font-size:var(--ml-text)}
body.sp-mobile-landscape .cc.cc--list .sp-profile-summary{font-size:var(--ml-small);gap:14px}
body.sp-mobile-landscape .cc.cc--list .sp-profile-summary small{font-size:var(--ml-small)}
body.sp-mobile-landscape .sx-modal{max-width:calc(100% - 50px);max-height:calc(100% - 50px)}
body.sp-mobile-landscape .sx-modal__head h3{font-size:var(--ml-title)}
body.sp-mobile-landscape .sx-modal__head .sp-wowbtn{--h:var(--ml-touch);font-size:var(--ml-text);min-width:220px}
body.sp-mobile-landscape .social-chat-window-frame.sx-modal{max-width:calc(100% - 50px);height:calc(100% - 50px);max-height:none}
body.sp-mobile-landscape .social-chat-window .sp-wowbtn{--h:var(--ml-touch);font-size:var(--ml-text)}

/* The arena keeps profile and standings side by side with independent scroll. */
body.sp-mobile-landscape .sp-arena-hall{padding:22px 30px;font-size:var(--ml-text)}
body.sp-mobile-landscape .arena-hall-header{height:110px;gap:20px}
body.sp-mobile-landscape .arena-hall-header h1{font-size:var(--ml-title);margin:0}
body.sp-mobile-landscape .arena-eyebrow{display:none}
body.sp-mobile-landscape .arena-hall-body{left:30px;right:30px;top:150px;bottom:25px;grid-template-columns:470px minmax(0,1fr);gap:20px}
body.sp-mobile-landscape .sp-arena-hall .sp-wowbtn{--h:var(--ml-touch);font-size:var(--ml-text);min-width:220px}
body.sp-mobile-landscape .arena-profile,body.sp-mobile-landscape .arena-ladder{padding:22px}
body.sp-mobile-landscape .arena-profile :is(p,small,.arena-rules-box,.arena-friendly-hint,.arena-queue-status,.arena-rank-progress small){font-size:var(--ml-small)}
body.sp-mobile-landscape .arena-profile h2{font-size:var(--ml-title)}
body.sp-mobile-landscape .arena-personal-stats{grid-template-columns:1fr 1fr;gap:18px}
body.sp-mobile-landscape .arena-personal-stats b{font-size:var(--ml-text)}
body.sp-mobile-landscape .arena-tabs .sp-wowbtn{min-width:0;font-size:var(--ml-text)}
body.sp-mobile-landscape .arena-table-toolbar{flex-wrap:wrap;font-size:var(--ml-small);gap:15px}
body.sp-mobile-landscape .arena-table-toolbar input[type=search]{min-height:var(--ml-touch);font-size:var(--ml-text);max-width:none}
body.sp-mobile-landscape .arena-table-toolbar input[type=checkbox]{width:70px;height:70px}
body.sp-mobile-landscape .arena-table{min-width:1040px}
body.sp-mobile-landscape .arena-table td{font-size:var(--ml-text);padding:22px 14px}
body.sp-mobile-landscape .arena-table :is(th,small){font-size:var(--ml-small);letter-spacing:0}
body.sp-mobile-landscape .arena-queue-card{display:block;padding:25px}
body.sp-mobile-landscape .arena-queue-card .arena-queue-actions{margin-top:20px}

/* The origin and class panels scroll independently around a compact 3D preview.
   Race, class and appearance choices keep the same physical touch targets. */
body.sp-mobile-landscape .studio-header{inset:22px 32px auto;padding-bottom:16px;min-height:110px}
body.sp-mobile-landscape .studio-header h1{font-size:var(--ml-title)}
body.sp-mobile-landscape .studio-header .studio-kicker{display:none}
body.sp-mobile-landscape .studio-layout{inset:150px 30px 175px;grid-template-columns:minmax(0,1fr) 390px minmax(0,1.15fr);gap:20px}
body.sp-mobile-landscape .studio-panel{min-height:0;padding:20px;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;touch-action:pan-y}
body.sp-mobile-landscape .studio-panel:before{display:none}
body.sp-mobile-landscape .studio .studio-heading{gap:12px;padding-bottom:15px;margin-bottom:20px}
body.sp-mobile-landscape .studio .studio-heading>span{width:55px;height:55px;font-size:var(--ml-small);flex-shrink:0}
body.sp-mobile-landscape .studio .studio-heading h2{font-size:var(--ml-text)}
body.sp-mobile-landscape .studio .studio-heading p{font-size:var(--ml-small);margin-top:8px}
body.sp-mobile-landscape .studio h3,body.sp-mobile-landscape .studio .studio-name-label{font-size:var(--ml-text);margin:22px 0 16px}
body.sp-mobile-landscape .studio :is(.studio-race,.studio-class,.studio-faction,.studio-swatch){min-height:var(--ml-touch);height:auto;font-size:var(--ml-text);padding:12px;gap:12px}
body.sp-mobile-landscape .studio :is(.studio-races,.studio-classes){grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
body.sp-mobile-landscape .studio :is(.studio-race,.studio-class){flex-direction:row;text-align:left;justify-content:flex-start;line-height:1.2}
body.sp-mobile-landscape .studio :is(.studio-race,.studio-class) img{width:58px;height:58px;flex-shrink:0}
body.sp-mobile-landscape .studio .studio-faction img{width:45px;height:45px}
body.sp-mobile-landscape .studio .studio-check{width:28px;height:28px;font-size:22px}
body.sp-mobile-landscape .studio .studio-factions{gap:14px;margin-bottom:20px}
body.sp-mobile-landscape .studio .sp-wowbtn{--h:var(--ml-touch);height:var(--ml-touch);min-height:var(--ml-touch);font-size:var(--ml-text);padding-inline:24px}
body.sp-mobile-landscape .studio .studio-random{min-width:340px;padding-inline:calc(var(--ml-touch) * .5)}
body.sp-mobile-landscape .studio .studio-segment{gap:14px}
body.sp-mobile-landscape .studio .studio-swatches{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;padding:5px}
body.sp-mobile-landscape .studio .studio-swatch{font-size:var(--ml-title)}
body.sp-mobile-landscape .studio .studio-name-input{min-height:var(--ml-touch);font-size:var(--ml-text)!important;padding:14px}
body.sp-mobile-landscape .studio .studio-name-row .sp-wowbtn{width:var(--ml-touch);flex-shrink:0;font-size:var(--ml-title)}
body.sp-mobile-landscape .studio :is(.studio-hint,.studio-lore,.studio-class-info p,.studio-racial p,.studio-class-stats span,.studio-racial .studio-kicker){font-size:var(--ml-small);line-height:1.45}
body.sp-mobile-landscape .studio .studio-details summary{font-size:var(--ml-text);min-height:var(--ml-touch);padding:20px 0}
body.sp-mobile-landscape .studio .studio-class-info,body.sp-mobile-landscape .studio .studio-racial{padding:18px;margin-top:20px}
body.sp-mobile-landscape .studio .studio-racial h3{margin:10px 0 15px;font-size:var(--ml-text)}
body.sp-mobile-landscape .studio .studio-racial h3 img{width:45px;height:45px}
body.sp-mobile-landscape .studio .studio-identity .studio-kicker{display:none}
body.sp-mobile-landscape .studio .studio-hero-name{font-size:var(--ml-title);line-height:1.15}
body.sp-mobile-landscape .studio .studio-hero-tag{font-size:var(--ml-small);line-height:1.4}
body.sp-mobile-landscape .studio .studio-model{top:155px;bottom:175px;left:-15px;right:-15px}
body.sp-mobile-landscape .studio .studio-pedestal{bottom:160px}
body.sp-mobile-landscape .studio .studio-model-status{bottom:160px;font-size:var(--ml-small);flex-wrap:wrap}
body.sp-mobile-landscape .studio .studio-outfit-preview{bottom:0;gap:14px}
body.sp-mobile-landscape .studio .studio-full-gear{font-size:var(--ml-small);min-width:0;width:100%;padding-inline:calc(var(--ml-touch) * .5)}
body.sp-mobile-landscape .studio .studio-outfit-preview small{font-size:var(--ml-small);text-align:center}
body.sp-mobile-landscape .studio .studio-footer{inset:auto 32px 26px;padding-top:20px;min-height:140px;gap:20px}
body.sp-mobile-landscape .studio .studio-footer .sp-wowbtn{--h:var(--ml-touch);font-size:var(--ml-text);min-width:280px}
body.sp-mobile-landscape .studio .studio-footer .studio-primary{min-width:440px}
body.sp-mobile-landscape .studio .studio-status{font-size:var(--ml-small);line-height:1.35}

/* Archive tabs share the width above collection and detail, so each entry can
   be read without squeezing three text columns onto a phone. */
body.sp-mobile-landscape .hero-codex{padding:20px 30px;font-size:var(--ml-text)}
body.sp-mobile-landscape .hero-codex-header{height:115px;padding-bottom:15px;gap:20px}
body.sp-mobile-landscape .hero-codex-header h1{font-size:var(--ml-title);margin:0}
body.sp-mobile-landscape .hero-codex .sp-wowbtn{--h:var(--ml-touch);height:var(--ml-touch);min-height:var(--ml-touch);font-size:var(--ml-text);min-width:260px}
body.sp-mobile-landscape .hero-codex-layout{inset:160px 30px 24px;grid-template-columns:minmax(0,1.22fr)minmax(0,.78fr);grid-template-rows:auto minmax(0,1fr);gap:20px}
body.sp-mobile-landscape .hero-codex-sidebar{grid-column:1/-1;display:flex;flex-direction:row;align-items:center;gap:20px;border:0;padding:0}
body.sp-mobile-landscape .hero-codex-profile{display:none}
body.sp-mobile-landscape .hero-codex-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;flex:1;min-width:0}
body.sp-mobile-landscape .hero-codex-tabs button{min-height:var(--ml-touch);font-size:var(--ml-text);gap:10px;padding:14px;line-height:1.15}
body.sp-mobile-landscape .hero-codex-tabs img{width:45px;height:45px;flex-shrink:0}
body.sp-mobile-landscape .hero-codex-progress{margin:0;width:225px;flex-shrink:0;font-size:var(--ml-small)}
body.sp-mobile-landscape .hero-codex-count{margin:0 0 12px;line-height:1.3}
body.sp-mobile-landscape .hero-codex-progress>div{height:14px}
body.sp-mobile-landscape .hero-codex-collection{grid-column:1;grid-row:2}
body.sp-mobile-landscape .hero-codex-filters{gap:14px;margin-bottom:18px}
body.sp-mobile-landscape .hero-codex-filters input[type=search]{height:var(--ml-touch);min-width:300px;font-size:var(--ml-text);padding:14px 18px}
body.sp-mobile-landscape .hero-codex-filters label{min-height:var(--ml-touch);font-size:var(--ml-small);gap:15px}
body.sp-mobile-landscape .hero-codex-filters input[type=checkbox]{width:var(--ml-touch);height:var(--ml-touch)}
body.sp-mobile-landscape .hero-codex-filters select{min-height:var(--ml-touch);font-size:var(--ml-text);padding:12px}
body.sp-mobile-landscape .hero-codex-grid{grid-auto-rows:minmax(160px,1fr);gap:14px;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;touch-action:pan-y}
body.sp-mobile-landscape .hero-codex-entry{padding:16px 12px;gap:12px;min-height:var(--ml-touch)}
body.sp-mobile-landscape .hero-codex-entry>img{width:65px;height:65px}
body.sp-mobile-landscape .hero-codex-entry b{font-size:var(--ml-text)}
body.sp-mobile-landscape .hero-codex-entry :is(small,em){font-size:var(--ml-small);line-height:1.25;margin-top:10px}
body.sp-mobile-landscape .hero-codex-pager{height:var(--ml-touch);gap:20px;margin-top:18px;font-size:var(--ml-small)}
body.sp-mobile-landscape .hero-codex-detail{grid-column:2;grid-row:2;min-height:0;padding:22px;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;touch-action:pan-y}
body.sp-mobile-landscape .hero-codex-detail h2{font-size:var(--ml-title)}
body.sp-mobile-landscape .hero-codex-description{font-size:var(--ml-text);line-height:1.45}
body.sp-mobile-landscape :is(.hero-codex-kicker,.hero-codex-label,.hero-codex-note,.hero-codex-set){font-size:var(--ml-small);line-height:1.4}
body.sp-mobile-landscape .hero-codex-set h3{font-size:var(--ml-text)}

/* Route and reward controls keep their positions and card layouts. */
body.sp-mobile-landscape .sp-stage .sx-map :is(.sx-map__abandon,.sx-map-journal),
body.sp-mobile-landscape .sp-stage :is(.sx-reward,.sx-shop,.sx-event,.sx-rest) .sp-wowbtn{--h:var(--ml-touch);height:var(--ml-touch);min-height:var(--ml-touch);font-size:var(--ml-text)}
body.sp-mobile-landscape .sx-map__prog{font-size:var(--ml-small)}
body.sp-mobile-landscape .sp-stage:not(.sp-portrait) .sx-map__mech p{font-size:var(--ml-small)}
body.sp-mobile-landscape .sx-map__lg{font-size:var(--ml-small)}
body.sp-mobile-landscape :is(.sx-reward__note,.sv-hint,.sx-shop__foot,.sx-ware__body b){font-size:var(--ml-text)}
body.sp-mobile-landscape :is(.sx-reward .sx-plate__x,.sx-ware__body small,.sx-vendor__name small){font-size:var(--ml-small)}
body.sp-mobile-landscape .sx-ware__tag{min-height:var(--ml-touch)}
body.sp-mobile-landscape .sx-price{min-height:90px;font-size:var(--ml-text);padding:12px 18px}
