/* ========================================================================
   BOMBARERA V88 — SURVIVAL FIT / RESPONSIVE CORRECTION
   Fixes V87 vertical overflow and layout drift. The landing screen uses the
   available shell height on desktop and switches to one deliberate scroll
   surface on tablets/mobile.
   ======================================================================== */

/* Route bar: stable 3-column geometry, no wrapped status badge. */
#screenSurvival .survival-v87__header{
  box-sizing:border-box!important;
  width:100%!important;
  min-height:54px!important;
  height:54px!important;
  flex:0 0 54px!important;
  display:grid!important;
  grid-template-columns:auto minmax(0,1fr) auto!important;
  align-items:center!important;
  gap:14px!important;
  padding:6px 16px!important;
  margin:0 0 8px!important;
  overflow:hidden!important;
}
#screenSurvival .survival-v87__header .campaign-header__spacer{display:none!important}
#screenSurvival .survival-v87__identity{
  justify-self:start!important;
  min-width:0!important;
  display:flex!important;
  align-items:center!important;
  gap:10px!important;
}
#screenSurvival .survival-v87__section-icon,
#screenSurvival .survival-v87__section-icon.ui-icon{
  width:38px!important;
  height:38px!important;
  min-width:38px!important;
  flex-basis:38px!important;
  padding:9px!important;
  border-radius:11px!important;
}
#screenSurvival .survival-v87__section-copy{gap:1px!important}
#screenSurvival .survival-v87__section-copy .campaign-header__title{font-size:1rem!important;line-height:1.05!important}
#screenSurvival .survival-v87__section-copy .mode-header__meta{
  min-height:0!important;
  padding:0!important;
  border:0!important;
  background:none!important;
  font-size:10px!important;
  line-height:1.15!important;
  letter-spacing:.055em!important;
}
#screenSurvival .survival-v87__back{
  min-width:90px!important;
  min-height:36px!important;
  height:36px!important;
  padding:0 12px!important;
  border-radius:10px!important;
  font-size:12px!important;
}
#screenSurvival .survival-v87__header-status{
  justify-self:end!important;
  min-width:112px!important;
  min-height:36px!important;
  height:36px!important;
  padding:5px 10px!important;
  border-radius:11px!important;
}
#screenSurvival .survival-v87__header-status small{font-size:9px!important;letter-spacing:.08em!important}
#screenSurvival .survival-v87__header-status strong{font-size:11px!important;line-height:1!important}
#screenSurvival .survival-v87__header-pulse{width:8px!important;height:8px!important}

/* Desktop: one fixed composition that actually fits the application shell. */
@media (min-width:901px){
  #screenSurvival .survival-content.survival-v87{
    box-sizing:border-box!important;
    flex:1 1 auto!important;
    width:100%!important;
    max-width:none!important;
    height:auto!important;
    min-height:0!important;
    margin:0!important;
    padding:0 16px 8px!important;
    overflow:hidden!important;
  }
  #screenSurvival .survival-start{
    width:100%!important;
    max-width:none!important;
    height:100%!important;
    min-height:0!important;
    margin:0!important;
    overflow:hidden!important;
  }
  #screenSurvival .survival-v87__shell{
    width:min(1600px,100%)!important;
    height:100%!important;
    min-height:0!important;
    margin:0 auto!important;
    display:grid!important;
    grid-template-rows:minmax(0,1fr) auto auto!important;
    gap:8px!important;
    overflow:hidden!important;
  }

  #screenSurvival .survival-v87__hero{
    min-height:0!important;
    height:100%!important;
    grid-template-columns:minmax(0,1.48fr) minmax(270px,.52fr)!important;
    grid-template-rows:minmax(0,1fr) 54px!important;
    column-gap:18px!important;
    border-radius:22px!important;
  }
  #screenSurvival .survival-v87__copy{
    min-height:0!important;
    align-self:center!important;
    padding:18px 0 12px 28px!important;
  }
  #screenSurvival .survival-v87__eyebrow{
    min-height:25px!important;
    padding:4px 9px!important;
    font-size:10px!important;
    letter-spacing:.075em!important;
  }
  #screenSurvival .survival-v87__title{
    max-width:760px!important;
    margin:10px 0 8px!important;
    font-size:clamp(2rem,2.75vw,3.15rem)!important;
    line-height:.96!important;
    letter-spacing:-.032em!important;
  }
  #screenSurvival .survival-v87__desc{
    max-width:760px!important;
    font-size:clamp(12px,.88vw,15px)!important;
    line-height:1.42!important;
  }
  #screenSurvival .survival-v87__tags{margin-top:10px!important;gap:6px!important}
  #screenSurvival .survival-v87__tags > span{
    min-height:25px!important;
    padding:4px 8px!important;
    font-size:10px!important;
    letter-spacing:.04em!important;
  }
  #screenSurvival .survival-v87__actions{
    grid-template-columns:minmax(240px,360px) 160px!important;
    gap:8px!important;
    max-width:528px!important;
    margin-top:12px!important;
  }
  #screenSurvival .survival-v87__start,
  #screenSurvival .survival-v87__record{
    min-height:52px!important;
    height:52px!important;
    border-radius:13px!important;
  }
  #screenSurvival .survival-v87__start{padding:7px 12px!important;grid-template-columns:20px minmax(0,1fr) 18px!important}
  #screenSurvival .survival-v87__start > .ui-icon{width:19px!important;height:19px!important}
  #screenSurvival .survival-v87__start small{font-size:9px!important}
  #screenSurvival .survival-v87__start strong{font-size:13px!important}
  #screenSurvival .survival-v87__record{padding:6px 11px!important}
  #screenSurvival .survival-v87__record .survival-record__label{font-size:9px!important}
  #screenSurvival .survival-v87__record strong{font-size:18px!important;margin:2px 0 0!important}
  #screenSurvival .survival-v87__record em{font-size:9px!important}

  #screenSurvival .survival-v87__fighter{
    min-height:0!important;
    height:auto!important;
    align-self:stretch!important;
    margin:12px 12px 12px 0!important;
    padding:24px 14px 12px!important;
    border-radius:18px!important;
  }
  #screenSurvival .survival-v87__fighter-label{font-size:9px!important;top:10px!important;left:11px!important}
  #screenSurvival .survival-v87__fighter-stage{
    width:100%!important;
    height:min(168px,22vh)!important;
    min-height:120px!important;
    margin:0!important;
  }
  #screenSurvival .survival-v87__fighter canvas{
    width:min(155px,74%)!important;
    max-height:160px!important;
  }
  #screenSurvival .survival-v87__fighter-ring--a{width:136px!important;height:136px!important}
  #screenSurvival .survival-v87__fighter-ring--b{width:98px!important;height:98px!important}
  #screenSurvival .survival-v87__equipped{min-height:30px!important;margin-top:-2px!important}
  #screenSurvival .survival-v87__equipped .survival-skin-pill{min-height:29px!important;padding:4px 8px!important}
  #screenSurvival .survival-v87__equipped .survival-skin-pill em{font-size:11px!important}
  #screenSurvival .survival-v87__wardrobe{
    min-height:32px!important;
    height:32px!important;
    margin-top:5px!important;
    padding:5px 9px!important;
    font-size:10px!important;
  }

  #screenSurvival .survival-v87__path{
    min-height:54px!important;
    height:54px!important;
    padding:6px 24px!important;
  }
  #screenSurvival .survival-v87__path .survival-run-path__line{top:27px!important}
  #screenSurvival .survival-v87__path .survival-run-step{
    grid-template-columns:30px minmax(0,1fr)!important;
    gap:7px!important;
  }
  #screenSurvival .survival-v87__path .survival-run-step b{
    width:30px!important;height:30px!important;min-width:30px!important;border-radius:9px!important;font-size:11px!important;
  }
  #screenSurvival .survival-v87__path .survival-run-step strong{font-size:10px!important}
  #screenSurvival .survival-v87__path .survival-run-step small{font-size:9px!important}

  /* Compact rules strip: informative but no longer consumes half the screen. */
  #screenSurvival .survival-v87__brief{
    flex:0 0 auto!important;
    padding:9px!important;
    border-radius:16px!important;
  }
  #screenSurvival .survival-v87__brief-head{
    grid-template-columns:minmax(260px,.8fr) minmax(0,1.2fr)!important;
    gap:18px!important;
    padding:0 3px 7px!important;
  }
  #screenSurvival .survival-v87__brief-kicker{margin-bottom:2px!important;font-size:9px!important;letter-spacing:.08em!important}
  #screenSurvival .survival-v87__brief-head h4{font-size:16px!important;line-height:1.1!important}
  #screenSurvival .survival-v87__brief-head p{font-size:10px!important;line-height:1.3!important;max-width:680px!important}
  #screenSurvival .survival-v87__rules{gap:7px!important}
  #screenSurvival .survival-v87__rule{
    min-height:66px!important;
    grid-template-columns:36px minmax(0,1fr)!important;
    gap:8px!important;
    padding:7px 30px 7px 8px!important;
    border-radius:12px!important;
  }
  #screenSurvival .survival-v87__rule .survival-rule-card__icon{
    width:36px!important;height:36px!important;border-radius:10px!important;
  }
  #screenSurvival .survival-v87__rule .survival-rule-card__icon.ui-icon{padding:9px!important}
  #screenSurvival .survival-v87__rule small{font-size:9px!important;letter-spacing:.055em!important}
  #screenSurvival .survival-v87__rule strong{margin-top:3px!important;font-size:12px!important}
  #screenSurvival .survival-v87__rule p{margin-top:3px!important;font-size:10px!important;line-height:1.22!important}
  #screenSurvival .survival-v87__rule-number{right:8px!important;top:7px!important;font-size:18px!important}

  #screenSurvival .survival-v87__tip{
    min-height:40px!important;
    height:40px!important;
    grid-template-columns:22px minmax(0,1fr) auto!important;
    gap:8px!important;
    padding:6px 10px!important;
    border-radius:12px!important;
  }
  #screenSurvival .survival-v87__tip > .ui-icon{width:18px!important;height:18px!important}
  #screenSurvival .survival-v87__tip p{font-size:10px!important;line-height:1.25!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
  #screenSurvival .survival-v87__tip-danger{font-size:9px!important}
}

/* The exact class of desktop shown in the report: keep the full landing page visible. */
@media (min-width:1100px) and (max-height:900px){
  #screenSurvival .survival-v87__shell{gap:7px!important}
  #screenSurvival .survival-v87__hero{grid-template-rows:minmax(0,1fr) 50px!important}
  #screenSurvival .survival-v87__copy{padding-top:12px!important;padding-bottom:9px!important}
  #screenSurvival .survival-v87__title{font-size:clamp(1.85rem,2.5vw,2.7rem)!important;margin:7px 0 6px!important}
  #screenSurvival .survival-v87__desc{font-size:12px!important;line-height:1.34!important;max-width:720px!important}
  #screenSurvival .survival-v87__tags{margin-top:7px!important}
  #screenSurvival .survival-v87__actions{margin-top:8px!important}
  #screenSurvival .survival-v87__start,#screenSurvival .survival-v87__record{height:48px!important;min-height:48px!important}
  #screenSurvival .survival-v87__fighter{margin-top:8px!important;margin-bottom:8px!important;padding-top:20px!important;padding-bottom:8px!important}
  #screenSurvival .survival-v87__fighter-stage{height:130px!important;min-height:110px!important}
  #screenSurvival .survival-v87__fighter canvas{width:128px!important;max-height:132px!important}
  #screenSurvival .survival-v87__fighter-ring--a{width:116px!important;height:116px!important}
  #screenSurvival .survival-v87__fighter-ring--b{width:84px!important;height:84px!important}
  #screenSurvival .survival-v87__path{height:50px!important;min-height:50px!important;padding-top:4px!important;padding-bottom:4px!important}
  #screenSurvival .survival-v87__path .survival-run-path__line{top:25px!important}
  #screenSurvival .survival-v87__brief{padding:7px!important}
  #screenSurvival .survival-v87__brief-head{display:none!important}
  #screenSurvival .survival-v87__rule{min-height:56px!important}
  #screenSurvival .survival-v87__rule p{display:none!important}
  #screenSurvival .survival-v87__tip{height:36px!important;min-height:36px!important}
}

/* Very short desktop: preserve the core interaction and use one scroll surface. */
@media (min-width:901px) and (max-height:700px){
  #screenSurvival .survival-content.survival-v87{overflow-y:auto!important;overflow-x:hidden!important;overscroll-behavior:contain!important}
  #screenSurvival .survival-start{height:auto!important;min-height:540px!important;overflow:visible!important}
  #screenSurvival .survival-v87__shell{height:auto!important;min-height:540px!important;overflow:visible!important}
  #screenSurvival .survival-v87__hero{min-height:330px!important;height:auto!important}
  #screenSurvival .survival-v87__tip{display:none!important}
}

/* Tablet/mobile: one intentional page scroll, no nested clipping. */
@media (max-width:900px){
  #screenSurvival{overflow-y:auto!important;overflow-x:hidden!important}
  #screenSurvival .survival-v87__header{
    position:sticky!important;top:0!important;z-index:20!important;
    height:auto!important;min-height:58px!important;grid-template-columns:auto minmax(0,1fr)!important;
    padding:7px 10px!important;margin-bottom:7px!important;
  }
  #screenSurvival .survival-v87__header-status{display:none!important}
  #screenSurvival .survival-v87__section-icon,#screenSurvival .survival-v87__section-icon.ui-icon{width:36px!important;height:36px!important;min-width:36px!important;flex-basis:36px!important}
  #screenSurvival .survival-content.survival-v87{height:auto!important;min-height:0!important;overflow:visible!important;padding:0 10px 14px!important}
  #screenSurvival .survival-start{height:auto!important;min-height:0!important;overflow:visible!important}
  #screenSurvival .survival-v87__shell{height:auto!important;min-height:0!important;overflow:visible!important;gap:8px!important}
  #screenSurvival .survival-v87__hero{min-height:0!important;height:auto!important}
}

@media (max-width:680px){
  #screenSurvival .survival-v87__header{grid-template-columns:42px minmax(0,1fr)!important;gap:8px!important}
  #screenSurvival .survival-v87__back{min-width:42px!important;width:42px!important;height:38px!important;padding:0!important;font-size:0!important}
  #screenSurvival .survival-v87__identity{gap:8px!important}
  #screenSurvival .survival-v87__section-copy .mode-header__meta{font-size:9px!important;white-space:normal!important}
  #screenSurvival .survival-content.survival-v87{padding-left:7px!important;padding-right:7px!important}
  #screenSurvival .survival-v87__copy{padding-top:18px!important}
  #screenSurvival .survival-v87__title{font-size:clamp(1.72rem,8.5vw,2.35rem)!important}
  #screenSurvival .survival-v87__fighter{min-height:220px!important}
  #screenSurvival .survival-v87__brief-head{grid-template-columns:1fr!important}
}
