/* Non-combat mobile chrome. These sizes are logical stage pixels; compensate
   for its scale rather than relying on a particular phone's CSS width. */
.sx-bar__equipped,.sx-map__details{display:none}
.sx-equipped{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.sx-equipped__item{min-width:0;padding:18px;border:1px solid #755b2e;border-radius:6px;background:#100e0bcc;overflow-wrap:anywhere}
.sx-equipped__item>strong{display:block;margin-bottom:10px;color:#cbb779}
.sx-equipped__item>div{font-size:25px;line-height:1.35}
.sx-map-details{font-size:32px;line-height:1.35}
.sx-map-details h3,.sx-map-details h4{color:#ffd100}

body.sp-mobile-landscape .sp-stage:not(.sp-portrait){
  --mh-touch:clamp(68px,calc(38px / var(--ui-scale,1)),118px);
  --mh-text:clamp(22px,calc(12px / var(--ui-scale,1)),38px);
  --mh-small:clamp(20px,calc(11px / var(--ui-scale,1)),34px);
  --mh-gap:clamp(6px,calc(4px / var(--ui-scale,1)),12px);
}
body.sp-mobile-landscape .sp-stage:not(.sp-portrait) .sx-bar.sx-bar{
  display:grid;grid-template-columns:minmax(190px,1.15fr) minmax(145px,.8fr) minmax(70px,.45fr) max-content max-content minmax(240px,.9fr) max-content max-content var(--mh-touch) var(--mh-touch);
  grid-template-rows:auto;grid-auto-rows:auto;align-items:center;justify-content:stretch;
  gap:8px var(--mh-gap);margin:10px calc(24px + var(--mobile-safe-right,0px)) 0 calc(24px + var(--mobile-safe-left,0px));
  padding:10px 18px;min-height:0;height:auto;box-shadow:inset 0 0 0 2px #000b,0 4px 10px #0008;
}
body.sp-mobile-landscape .sp-stage:not(.sp-portrait) .sx-bar.sx-bar>.gs-strip,
body.sp-mobile-landscape .sp-stage:not(.sp-portrait) .sx-bar.sx-bar .sx-bar__act{display:none}
body.sp-mobile-landscape .sp-stage:not(.sp-portrait) .sx-bar.sx-bar .sx-bar__who{grid-column:1;grid-row:1;min-width:0;width:auto;gap:10px;white-space:normal;flex:none}
body.sp-mobile-landscape .sp-stage:not(.sp-portrait) .sx-bar.sx-bar .sx-bar__who>div{min-width:0;line-height:1.08}
body.sp-mobile-landscape .sp-stage:not(.sp-portrait) .sx-bar.sx-bar .sx-bar__who b{font-size:var(--mh-text);line-height:1.08;white-space:normal;overflow:visible;overflow-wrap:anywhere;text-overflow:clip}
body.sp-mobile-landscape .sp-stage:not(.sp-portrait) .sx-bar.sx-bar .sx-bar__who small{display:none}
body.sp-mobile-landscape .sp-stage:not(.sp-portrait) .sx-bar.sx-bar .sx-bar__cls{width:52px;height:52px;flex:0 0 52px;border-width:2px;box-shadow:none}
body.sp-mobile-landscape .sp-stage:not(.sp-portrait) .sx-bar.sx-bar .sx-bar__hp{grid-column:2;grid-row:1;justify-self:stretch;width:auto;max-width:none;min-width:0;height:44px;margin:0}
body.sp-mobile-landscape .sp-stage:not(.sp-portrait) .sx-bar.sx-bar .sx-bar__hp span{font-size:var(--mh-small);letter-spacing:0;white-space:nowrap}
body.sp-mobile-landscape .sp-stage:not(.sp-portrait) .sx-bar.sx-bar .sx-bar__gold{grid-column:3;grid-row:1;gap:6px;font-size:var(--mh-small);justify-content:center;min-width:0}
body.sp-mobile-landscape .sp-stage:not(.sp-portrait) .sx-bar.sx-bar .sx-bar__gold img{width:30px;height:30px}
body.sp-mobile-landscape .sp-stage:not(.sp-portrait) .sx-bar.sx-bar .sx-bar__pots{grid-column:6;grid-row:1;position:relative;inset:auto;justify-self:stretch;display:flex;flex-wrap:nowrap;gap:8px;min-width:0;max-width:340px;width:auto;padding:6px;margin:0;overflow-x:auto;scrollbar-width:none}
body.sp-mobile-landscape .sp-stage:not(.sp-portrait) .sx-bar.sx-bar .sx-bar__pots .sx-bar__slot{width:64px;height:64px;flex:0 0 64px;border-width:2px}
body.sp-mobile-landscape .sp-stage:not(.sp-portrait) .sx-bar.sx-bar>.sp-wowbtn{
  --h:var(--mh-touch)!important;--cap:calc(var(--mh-touch) * .34)!important;
  grid-row:1;display:inline-flex;position:relative;inset:auto;width:auto;min-width:max-content;max-width:none;flex:none;
  height:var(--mh-touch)!important;min-height:var(--mh-touch)!important;padding:0 var(--cap)!important;margin:0;
  font-size:var(--mh-text)!important;white-space:nowrap;line-height:1;letter-spacing:0;overflow:visible;animation:none;
}
body.sp-mobile-landscape .sp-stage:not(.sp-portrait) .sx-bar.sx-bar .sx-bar__gear{grid-column:4}
body.sp-mobile-landscape .sp-stage:not(.sp-portrait) .sx-bar.sx-bar .sx-bar__equipped{grid-column:5}
body.sp-mobile-landscape .sp-stage:not(.sp-portrait) .sx-bar.sx-bar .sx-bar__deck{grid-column:7}
body.sp-mobile-landscape .sp-stage:not(.sp-portrait) .sx-bar.sx-bar :is(.sx-bar__map,.sx-bar__tal){grid-column:8}
body.sp-mobile-landscape .sp-stage:not(.sp-portrait) .sx-bar.sx-bar>.sx-bar__set{grid-column:9}
body.sp-mobile-landscape .sp-stage:not(.sp-portrait) .sx-bar.sx-bar>.sx-bar__fs{grid-column:10}
body.sp-mobile-landscape .sp-stage:not(.sp-portrait) .sx-bar.sx-bar>:is(.sx-bar__set,.sx-bar__fs){
  --cap:calc(var(--mh-touch) * .28)!important;width:var(--mh-touch)!important;min-width:var(--mh-touch)!important;max-width:var(--mh-touch)!important;flex-basis:auto!important;padding:0 var(--cap)!important;font-size:0!important;
}
body.sp-mobile-landscape .sp-stage:not(.sp-portrait) .sx-bar.sx-bar .sp-recovery-debuff{grid-column:1/-1;grid-row:2;justify-self:start;font-size:var(--mh-small);padding:0;gap:8px;line-height:1.1}
body.sp-mobile-landscape .sp-stage:not(.sp-portrait) .sx-bar.sx-bar .sp-recovery-debuff img{width:32px;height:32px}

/* The map gets its space back. Lore and mechanics remain available in a
   deliberate, readable panel instead of a three-line strip above the path. */
body.sp-mobile-landscape .sp-stage:not(.sp-portrait) .sx-map .sx-map__main{padding:8px 28px 10px;gap:6px}
body.sp-mobile-landscape .sp-stage:not(.sp-portrait) .sx-map .sx-map__side{
  display:grid;grid-template-columns:minmax(0,1fr) minmax(160px,230px) max-content max-content max-content;
  gap:10px 20px;align-items:center;padding:12px 24px;margin:0;min-height:0;--wc:24px;filter:none;
}
body.sp-mobile-landscape .sp-stage:not(.sp-portrait) .sx-map .sx-map__side h2{font-size:clamp(32px,calc(16px / var(--ui-scale,1)),48px);line-height:1.08;white-space:normal;overflow-wrap:anywhere}
body.sp-mobile-landscape .sx-map .sx-map__side>:is(h3,.sx-map__mech,.sx-map__lore,.sx-eyebrow){display:none}
body.sp-mobile-landscape .sx-map .sx-map__prog{min-width:0;width:auto;gap:6px;font-size:var(--mh-small)}
body.sp-mobile-landscape .sx-map .sx-map__prog i{height:9px}
body.sp-mobile-landscape .sp-stage:not(.sp-portrait) .sx-map .sx-map__side>.sp-wowbtn{
  --h:var(--mh-touch);--cap:calc(var(--mh-touch) * .34);display:inline-flex;height:var(--mh-touch);min-height:var(--mh-touch);width:auto;min-width:max-content;max-width:none;padding:0 var(--cap);margin:0;font-size:var(--mh-text);line-height:1;flex:none;white-space:nowrap;animation:none;
}
body.sp-mobile-landscape .sx-map .sx-map__side .sx-map__details{grid-column:3}
body.sp-mobile-landscape .sx-map .sx-map__side .sx-map-journal{grid-column:4}
body.sp-mobile-landscape .sx-map .sx-map__side .sx-map__abandon{grid-column:5}
body.sp-mobile-landscape .sx-map .sx-map__here{display:none}
body.sp-mobile-landscape .sp-stage:not(.sp-portrait) .sx-map .sx-map__legend{padding:8px 22px;margin-bottom:0;gap:12px 20px;--wc:20px;filter:none}
body.sp-mobile-landscape .sx-map .sx-map__lg{font-size:var(--mh-small);gap:6px}
body.sp-mobile-landscape .sx-map .sx-map__lg .sx-ico{--s:34px}
body.sp-mobile-landscape .sx-map .sx-map__sheet--land{inset:20px 36px 66px}

/* Loot labels can wrap; controls keep their intrinsic text width. The belt
   and Take all occupy separate grid cells, so neither squeezes the other. */
body.sp-mobile-landscape .sx-victory .sv-banner{margin-top:2px;animation:none}
body.sp-mobile-landscape .sx-victory .sv-banner h2{font-size:60px;line-height:1;animation:none}
body.sp-mobile-landscape .sx-victory .sv-banner p{font-size:28px;line-height:1.1}
body.sp-mobile-landscape .sx-victory .sv-banner::after{margin-top:6px;animation:none}
body.sp-mobile-landscape .sx-victory .sv-main{grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:24px;padding:8px 42px 18px}
body.sp-mobile-landscape .sx-victory :is(.sv-left,.sv-right){animation:none;gap:10px}
body.sp-mobile-landscape .sx-victory .sv-right{padding-right:0}
body.sp-mobile-landscape .sx-victory .lf.lf--inline{display:flex;flex-direction:column;min-height:0;width:100%;max-width:100%;margin:24px 0 0;padding:66px 18px 14px;flex:0 1 auto}
body.sp-mobile-landscape .sx-victory .lf .lf-list{flex:1 1 auto;min-height:0;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;touch-action:pan-y;scrollbar-width:thin}
body.sp-mobile-landscape .sx-victory .lf .lf-tab{font-size:var(--mh-text);height:44px;line-height:40px}
body.sp-mobile-landscape .sx-victory .lf .lf-row{min-height:86px;max-height:none;padding:9px 12px;gap:14px;overflow:visible}
body.sp-mobile-landscape .sx-victory .lf .lf-row.gone{max-height:0;min-height:0;padding-block:0;overflow:hidden}
body.sp-mobile-landscape .sx-victory .lf .lf-name{font-size:var(--mh-text);line-height:1.2;white-space:normal;overflow:visible;text-overflow:clip;overflow-wrap:anywhere}
body.sp-mobile-landscape .sx-victory .lf .lf-txt{flex:1 1 0;min-width:0}
body.sp-mobile-landscape .sx-victory .lf .lf-foot{display:grid;grid-template-columns:minmax(0,1fr) max-content;gap:10px 14px;align-items:center;margin-top:12px;flex:0 0 auto}
body.sp-mobile-landscape .sx-victory .lf .lf-foot .sp-belt{grid-column:1;grid-row:1;min-width:0;width:max-content;padding:6px;gap:10px}
body.sp-mobile-landscape .sx-victory .lf .sp-belt .sp-pot2{width:72px;height:72px}
body.sp-mobile-landscape .sp-stage:not(.sp-portrait) .sx-victory .lf .lf-all{
  --h:var(--mh-touch);--cap:calc(var(--mh-touch) * .34);grid-column:2;grid-row:1;width:max-content;min-width:max-content;max-width:none;flex:none;height:var(--mh-touch);min-height:var(--mh-touch);padding:0 var(--cap);font-size:var(--mh-text);white-space:nowrap;line-height:1;overflow:visible;
}
body.sp-mobile-landscape .sx-victory .lf .lf-hint{grid-column:1/-1;font-size:var(--mh-small);line-height:1.2;text-align:center;color:#bbb2a0}
body.sp-mobile-landscape .sx-victory .sv-hint{font-size:var(--mh-small);line-height:1.2}
body.sp-mobile-landscape .sx-victory .sx-reward__go>.sp-wowbtn{--h:var(--mh-touch);--cap:calc(var(--mh-touch) * .34);height:var(--mh-touch);min-height:var(--mh-touch);min-width:max-content;padding:0 calc(var(--cap) + 28px);font-size:var(--mh-text);animation:none}
body.sp-mobile-landscape .sx-victory .sv-done{font-size:var(--mh-text);line-height:1.25;text-align:center}
body.sp-mobile-landscape .sx-victory .sx-ribbon{font-size:var(--mh-text);padding:8px 50px}
body.sp-mobile-landscape .sx-equipped{gap:14px}
body.sp-mobile-landscape .sx-equipped__item{padding:14px;font-size:var(--mh-text)}
body.sp-mobile-landscape .sx-equipped__item>div{font-size:var(--mh-small)}
