/* ========================================================================
   BOMBARERA V87 — SURVIVAL / ENDLESS MODE
   Cinematic, colorful, readable and fully responsive survival landing page.
   Scope is intentionally limited to #screenSurvival so gameplay stays intact.
   ======================================================================== */

#screenSurvival{
  --sv87-red:#ff466d;
  --sv87-hot:#ff6a3d;
  --sv87-pink:#ff4bc7;
  --sv87-violet:#8c67ff;
  --sv87-cyan:#62e7ff;
  --sv87-gold:#ffd96a;
  --sv87-green:#62f0b0;
  --sv87-ink:#07111f;
  --sv87-panel:rgba(9,21,40,.90);
  --sv87-line:rgba(115,198,255,.18);
  --sv87-text:#f7f9ff;
  --sv87-muted:#aab9d1;
  position:relative;
  overflow:hidden!important;
  background:
    radial-gradient(circle at 12% 15%,rgba(255,54,103,.10),transparent 30%),
    radial-gradient(circle at 88% 12%,rgba(122,91,255,.13),transparent 34%),
    linear-gradient(180deg,#08111f 0%,#06101d 54%,#050c17 100%)!important;
}
#screenSurvival::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  opacity:.16;
  background-image:
    linear-gradient(rgba(97,201,255,.05) 1px,transparent 1px),
    linear-gradient(90deg,rgba(97,201,255,.05) 1px,transparent 1px);
  background-size:48px 48px;
  mask-image:linear-gradient(to bottom,black,transparent 70%);
}

/* Section bar */
#screenSurvival .survival-v87__header{
  position:relative;
  z-index:5;
  min-height:82px!important;
  padding:12px clamp(18px,2vw,34px)!important;
  gap:14px!important;
  background:
    linear-gradient(90deg,rgba(14,47,73,.97),rgba(9,29,55,.97) 48%,rgba(25,22,63,.97))!important;
  border-bottom:1px solid rgba(96,216,255,.18)!important;
  box-shadow:0 14px 34px rgba(0,0,0,.22)!important;
}
#screenSurvival .survival-v87__header::after{
  content:"";
  position:absolute;
  left:0;right:0;bottom:0;
  height:2px;
  background:linear-gradient(90deg,transparent,var(--sv87-cyan),var(--sv87-violet),var(--sv87-red),transparent);
  opacity:.55;
}
#screenSurvival .survival-v87__back{
  flex:0 0 auto;
  min-width:96px;
  min-height:46px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  border-radius:13px!important;
  border:1px solid rgba(117,205,255,.18)!important;
  background:rgba(4,16,30,.58)!important;
  color:#eaf7ff!important;
  font-size:.78rem!important;
  font-weight:800!important;
}
#screenSurvival .survival-v87__back .ui-icon{width:17px;height:17px;color:#77e8ff}
#screenSurvival .survival-v87__identity{
  display:flex!important;
  align-items:center!important;
  gap:12px!important;
  min-width:0;
}
#screenSurvival .survival-v87__section-icon{
  width:48px;
  height:48px;
  flex:0 0 48px;
  display:grid;
  place-items:center;
  border-radius:15px;
  color:#ff6689;
  background:
    radial-gradient(circle at 30% 20%,rgba(255,255,255,.16),transparent 32%),
    linear-gradient(145deg,rgba(255,65,105,.22),rgba(139,92,246,.18));
  border:1px solid rgba(255,100,145,.30);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.09),0 8px 22px rgba(255,54,103,.12);
}
#screenSurvival .survival-v87__section-icon.ui-icon{width:48px;height:48px;padding:12px}
#screenSurvival .survival-v87__section-copy{display:flex;flex-direction:column;gap:2px;min-width:0}
#screenSurvival .survival-v87__section-copy .campaign-header__title{
  margin:0!important;
  color:#fff!important;
  font-size:1.12rem!important;
  line-height:1!important;
  letter-spacing:.015em!important;
}
#screenSurvival .survival-v87__section-copy .mode-header__meta{
  color:#70dcff!important;
  font-size:.58rem!important;
  line-height:1.2!important;
  letter-spacing:.11em!important;
  font-weight:800!important;
}
#screenSurvival .survival-v87__header-status{
  flex:0 0 auto;
  min-width:126px;
  min-height:46px;
  display:flex;
  align-items:center;
  gap:9px;
  padding:7px 12px;
  border-radius:14px;
  background:rgba(4,16,31,.48);
  border:1px solid rgba(115,206,255,.17);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04);
}
#screenSurvival .survival-v87__header-status > span:last-child{display:flex;flex-direction:column;gap:1px}
#screenSurvival .survival-v87__header-status small{color:#8197b5;font-size:.48rem;font-weight:800;letter-spacing:.12em}
#screenSurvival .survival-v87__header-status strong{color:#fff;font-size:.73rem;letter-spacing:.08em}
#screenSurvival .survival-v87__header-pulse{
  width:10px;height:10px;border-radius:50%;background:#ff5278;
  box-shadow:0 0 0 5px rgba(255,82,120,.09),0 0 18px rgba(255,82,120,.65);
  animation:sv87Pulse 2.1s ease-in-out infinite;
}

/* Page shell */
#screenSurvival .survival-content.survival-v87{
  position:relative;
  z-index:1;
  flex:1 1 auto!important;
  width:100%!important;
  max-width:none!important;
  min-height:0!important;
  margin:0!important;
  padding:clamp(12px,1.55vw,24px) clamp(14px,2vw,32px) clamp(14px,1.6vw,24px)!important;
  overflow:auto!important;
  scrollbar-gutter:stable;
}
#screenSurvival .survival-start{
  width:100%!important;
  min-height:100%!important;
  display:block!important;
  padding:0!important;
}
#screenSurvival .survival-v87__shell{
  width:min(1600px,100%);
  min-height:100%;
  margin:0 auto;
  display:grid;
  grid-template-rows:auto auto auto;
  gap:12px;
}

/* Hero */
#screenSurvival .survival-v87__hero{
  position:relative;
  min-height:390px;
  display:grid;
  grid-template-columns:minmax(0,1.36fr) minmax(250px,.64fr);
  grid-template-rows:1fr auto;
  gap:0 clamp(16px,2vw,34px);
  overflow:hidden;
  border-radius:28px;
  border:1px solid rgba(117,208,255,.24);
  background:#08182b;
  box-shadow:
    0 24px 58px rgba(0,0,0,.30),
    inset 0 1px 0 rgba(255,255,255,.07),
    0 0 0 1px rgba(255,69,114,.035);
  isolation:isolate;
}
#screenSurvival .survival-v87__hero::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:-2;
  background:
    linear-gradient(90deg,rgba(5,13,25,.98) 0%,rgba(7,18,33,.94) 37%,rgba(9,19,35,.63) 58%,rgba(7,15,28,.50) 100%),
    linear-gradient(180deg,rgba(5,12,23,.04),rgba(5,12,23,.52));
}
#screenSurvival .survival-v87__hero::after{
  content:"";
  position:absolute;
  left:0;right:0;top:0;
  height:4px;
  z-index:4;
  background:linear-gradient(90deg,var(--sv87-red),var(--sv87-hot),var(--sv87-pink),var(--sv87-violet),var(--sv87-cyan));
  box-shadow:0 0 22px rgba(255,75,144,.32);
}
#screenSurvival .survival-v87__hero-art{
  position:absolute;
  z-index:-3;
  inset:0;
  background-image:url('/assets/menu/generated/survival-card-bg-v14.webp');
  background-size:cover;
  background-position:center 43%;
  filter:saturate(1.10) contrast(1.03);
  transform:scale(1.015);
}
#screenSurvival .survival-v87__hero-grid{
  position:absolute;inset:0;z-index:-1;pointer-events:none;opacity:.13;
  background-image:
    linear-gradient(rgba(105,219,255,.12) 1px,transparent 1px),
    linear-gradient(90deg,rgba(105,219,255,.12) 1px,transparent 1px);
  background-size:42px 42px;
  mask-image:linear-gradient(90deg,black,transparent 72%);
}
#screenSurvival .survival-v87__flare{position:absolute;z-index:-1;pointer-events:none;border-radius:50%;filter:blur(14px)}
#screenSurvival .survival-v87__flare--one{width:260px;height:260px;left:-120px;top:-120px;background:rgba(255,57,107,.18)}
#screenSurvival .survival-v87__flare--two{width:320px;height:320px;right:12%;bottom:-240px;background:rgba(121,86,255,.16)}
#screenSurvival .survival-v87__copy{
  min-width:0;
  padding:clamp(26px,3vw,46px) 0 18px clamp(26px,3vw,48px)!important;
  align-self:center;
  position:relative;
  z-index:2;
}
#screenSurvival .survival-v87__eyebrow{
  width:max-content;
  max-width:100%;
  display:inline-flex;
  align-items:center;
  gap:8px;
  min-height:29px;
  padding:6px 11px;
  border-radius:999px;
  color:#ffe7ef;
  background:linear-gradient(90deg,rgba(255,63,105,.16),rgba(255,82,189,.10));
  border:1px solid rgba(255,91,134,.27);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.05);
  font-size:.62rem;
  font-weight:900;
  letter-spacing:.11em;
}
#screenSurvival .survival-v87__eyebrow .ui-icon{width:15px;height:15px;color:#ff718d}
#screenSurvival .survival-v87__title{
  max-width:820px;
  margin:14px 0 10px!important;
  color:#fff!important;
  font-size:clamp(2rem,3.1vw,3.7rem)!important;
  line-height:.98!important;
  letter-spacing:-.035em!important;
  font-weight:900!important;
  text-wrap:balance;
  text-shadow:0 4px 28px rgba(0,0,0,.28)!important;
}
#screenSurvival .survival-v87__title span{
  color:transparent;
  background:linear-gradient(90deg,#ff5d7e 0%,#ff9659 38%,#ff5bc6 70%,#a77cff 100%);
  -webkit-background-clip:text;background-clip:text;
  filter:drop-shadow(0 4px 18px rgba(255,72,126,.15));
}
#screenSurvival .survival-v87__desc{
  max-width:760px!important;
  margin:0!important;
  color:#c5d1e2!important;
  font-size:clamp(.86rem,1.02vw,1rem)!important;
  line-height:1.55!important;
  font-weight:500!important;
  text-shadow:0 2px 10px rgba(0,0,0,.4);
}
#screenSurvival .survival-v87__tags{
  display:flex;
  flex-wrap:wrap;
  gap:7px;
  margin-top:16px;
}
#screenSurvival .survival-v87__tags > span{
  display:inline-flex;
  align-items:center;
  gap:6px;
  min-height:29px;
  padding:5px 9px;
  border-radius:9px;
  color:#d9e6f6;
  background:rgba(4,14,27,.56);
  border:1px solid rgba(130,205,255,.13);
  backdrop-filter:blur(8px);
  font-size:.55rem;
  font-weight:800;
  letter-spacing:.055em;
}
#screenSurvival .survival-v87__tags .ui-icon{width:14px;height:14px;color:#76e7ff}
#screenSurvival .survival-v87__tags > span:nth-child(2) .ui-icon{color:#ff7f9a}
#screenSurvival .survival-v87__tags > span:nth-child(3) .ui-icon{color:#ffd66b}

#screenSurvival .survival-v87__actions{
  display:grid!important;
  grid-template-columns:minmax(250px,390px) minmax(150px,190px)!important;
  align-items:stretch!important;
  gap:9px!important;
  max-width:600px!important;
  margin-top:20px!important;
}
#screenSurvival .survival-v87__start{
  position:relative;
  min-height:64px!important;
  display:grid!important;
  grid-template-columns:24px minmax(0,1fr) 20px!important;
  align-items:center!important;
  gap:10px!important;
  padding:9px 14px!important;
  overflow:hidden;
  border-radius:16px!important;
  border:1px solid rgba(255,149,175,.34)!important;
  background:
    radial-gradient(circle at 18% 0%,rgba(255,255,255,.18),transparent 34%),
    linear-gradient(110deg,#ff365f 0%,#ff4b79 42%,#b955e9 100%)!important;
  box-shadow:0 13px 30px rgba(255,45,101,.24),inset 0 1px 0 rgba(255,255,255,.18)!important;
  color:#fff!important;
  text-align:left!important;
}
#screenSurvival .survival-v87__start::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:linear-gradient(105deg,transparent 18%,rgba(255,255,255,.16) 48%,transparent 70%);
  transform:translateX(-130%);
  transition:transform .55s ease;
}
#screenSurvival .survival-v87__start:hover::before{transform:translateX(130%)}
#screenSurvival .survival-v87__start > .ui-icon{width:23px;height:23px}
#screenSurvival .survival-v87__start > span:nth-child(2){display:flex;flex-direction:column;gap:2px}
#screenSurvival .survival-v87__start small{color:rgba(255,255,255,.72);font-size:.48rem;line-height:1;font-weight:800;letter-spacing:.12em}
#screenSurvival .survival-v87__start strong{color:#fff;font-size:.86rem;line-height:1.15;font-weight:900;letter-spacing:.035em}
#screenSurvival .survival-v87__start-arrow{font-style:normal;font-size:1.7rem;line-height:1;color:#fff;opacity:.85}
#screenSurvival .survival-v87__record{
  min-width:0!important;
  min-height:64px!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
  align-items:flex-start!important;
  padding:8px 13px!important;
  border-radius:16px!important;
  background:rgba(5,16,30,.70)!important;
  border:1px solid rgba(255,217,106,.20)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04)!important;
  backdrop-filter:blur(8px);
}
#screenSurvival .survival-v87__record .survival-record__label{color:#d7b65c!important;font-size:.46rem!important;letter-spacing:.10em!important}
#screenSurvival .survival-v87__record strong{display:flex;align-items:baseline;gap:3px;margin:3px 0 1px!important;color:#fff!important;font-size:1.25rem!important;line-height:1!important}
#screenSurvival .survival-v87__record strong small{color:#ffd96a;font-size:.52rem;letter-spacing:.06em}
#screenSurvival .survival-v87__record em{color:#8295b0;font-size:.50rem;font-style:normal;font-weight:700}

/* Fighter card */
#screenSurvival .survival-v87__fighter{
  position:relative;
  z-index:2;
  align-self:stretch!important;
  min-height:0!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  padding:24px clamp(18px,2vw,30px) 18px!important;
  margin:16px 16px 16px 0;
  overflow:hidden;
  border-radius:22px;
  border:1px solid rgba(118,213,255,.20);
  background:
    radial-gradient(circle at 50% 32%,rgba(86,221,255,.14),transparent 35%),
    linear-gradient(160deg,rgba(8,26,47,.88),rgba(13,20,43,.82));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.06),0 18px 38px rgba(0,0,0,.20);
  backdrop-filter:blur(12px);
}
#screenSurvival .survival-v87__fighter::before{
  content:"";position:absolute;inset:0;pointer-events:none;opacity:.18;
  background:repeating-linear-gradient(135deg,transparent 0 14px,rgba(104,221,255,.12) 14px 15px);
  mask-image:linear-gradient(to bottom,black,transparent 68%);
}
#screenSurvival .survival-v87__fighter-label{
  position:absolute;
  left:13px;top:12px;
  display:inline-flex;align-items:center;gap:6px;
  color:#8beaff;
  font-size:.52rem;font-weight:900;letter-spacing:.10em;
}
#screenSurvival .survival-v87__fighter-label .ui-icon{width:14px;height:14px}
#screenSurvival .survival-v87__fighter-stage{
  position:relative;
  width:min(230px,100%);
  height:205px;
  display:grid;
  place-items:center;
  margin-top:4px;
}
#screenSurvival .survival-v87__fighter-stage::after{
  content:"";position:absolute;left:16%;right:16%;bottom:7px;height:20px;border-radius:50%;
  background:rgba(0,0,0,.55);filter:blur(7px);z-index:0;
}
#screenSurvival .survival-v87__fighter-ring{
  position:absolute;left:50%;top:48%;border-radius:50%;transform:translate(-50%,-50%);pointer-events:none;
  border:1px solid rgba(102,226,255,.20);
}
#screenSurvival .survival-v87__fighter-ring--a{width:174px;height:174px;box-shadow:0 0 34px rgba(80,217,255,.08) inset}
#screenSurvival .survival-v87__fighter-ring--b{width:128px;height:128px;border-color:rgba(174,111,255,.19)}
#screenSurvival .survival-v87__fighter .survival-fighter__glow{
  position:absolute!important;left:50%!important;top:49%!important;width:145px!important;height:145px!important;
  transform:translate(-50%,-50%)!important;border-radius:50%!important;
  background:radial-gradient(circle,rgba(71,220,255,.28),rgba(142,86,255,.10) 48%,transparent 70%)!important;
  filter:blur(14px)!important;opacity:.9!important;
}
#screenSurvival .survival-v87__fighter canvas{
  position:relative;z-index:2;
  width:190px!important;height:auto!important;max-height:205px!important;
  filter:drop-shadow(0 10px 10px rgba(0,0,0,.30));
}
#screenSurvival .survival-v87__equipped{
  position:relative;z-index:2;
  width:100%;
  min-height:34px;
  display:flex!important;
  justify-content:center!important;
  margin-top:-2px;
}
#screenSurvival .survival-v87__equipped .survival-skin-pill{
  max-width:100%;
  min-height:32px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:7px!important;
  padding:6px 10px!important;
  border-radius:10px!important;
  color:#f5fbff!important;
  background:rgba(6,17,32,.70)!important;
  border:1px solid rgba(105,222,255,.14)!important;
}
#screenSurvival .survival-v87__equipped .survival-skin-pill b{display:grid;place-items:center;color:#67e6ff!important}
#screenSurvival .survival-v87__equipped .survival-skin-pill em{max-width:150px!important;color:#f5fbff!important;font-size:.68rem!important;font-style:normal!important;font-weight:800!important;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
#screenSurvival .survival-v87__wardrobe{
  position:relative;z-index:2;
  width:100%;
  min-height:38px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:7px!important;
  margin-top:7px!important;
  padding:7px 10px!important;
  border-radius:11px!important;
  color:#8feaff!important;
  background:linear-gradient(90deg,rgba(67,210,255,.07),rgba(137,92,246,.07))!important;
  border:1px solid rgba(99,217,255,.17)!important;
  font-size:.58rem!important;
  font-weight:900!important;
  letter-spacing:.055em!important;
  text-decoration:none!important;
  transition:transform .18s ease,border-color .18s ease,background .18s ease;
}
#screenSurvival .survival-v87__wardrobe:hover{transform:translateY(-1px);border-color:rgba(99,217,255,.36)!important;background:linear-gradient(90deg,rgba(67,210,255,.12),rgba(137,92,246,.11))!important}
#screenSurvival .survival-v87__wardrobe .ui-icon{width:15px;height:15px}
#screenSurvival .survival-v87__wardrobe i{margin-left:auto;font-size:1rem;font-style:normal}

/* Run path inside hero */
#screenSurvival .survival-v87__path{
  grid-column:1 / -1;
  position:relative;
  z-index:3;
  max-width:none!important;
  min-height:70px;
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:0!important;
  align-items:center!important;
  margin:0!important;
  padding:10px clamp(18px,2.2vw,34px)!important;
  border-radius:0!important;
  border:0!important;
  border-top:1px solid rgba(121,207,255,.13)!important;
  background:linear-gradient(90deg,rgba(4,14,27,.88),rgba(9,18,36,.84),rgba(12,15,36,.88))!important;
  backdrop-filter:blur(12px);
}
#screenSurvival .survival-v87__path .survival-run-path__line{
  position:absolute!important;
  left:10%!important;right:10%!important;top:34px!important;height:2px!important;
  opacity:1!important;
  background:linear-gradient(90deg,#56dfbe,#69ddff,#b06cff,#ff5c7e)!important;
  box-shadow:0 0 12px rgba(105,221,255,.22)!important;
}
#screenSurvival .survival-v87__path .survival-run-step{
  position:relative;z-index:2;
  display:grid!important;
  grid-template-columns:38px minmax(0,1fr)!important;
  align-items:center!important;
  justify-content:start!important;
  gap:8px!important;
  min-width:0;
}
#screenSurvival .survival-v87__path .survival-run-step b{
  width:38px!important;height:38px!important;min-width:38px!important;
  display:grid!important;place-items:center!important;
  border-radius:12px!important;
  color:#fff!important;
  background:#10253a!important;
  border:1px solid rgba(103,224,255,.28)!important;
  box-shadow:0 5px 14px rgba(0,0,0,.24)!important;
  font-size:.72rem!important;font-weight:900!important;
}
#screenSurvival .survival-v87__path .survival-run-step:nth-of-type(4) b{border-color:rgba(175,108,255,.35)!important;background:#201d43!important}
#screenSurvival .survival-v87__path .survival-run-step.is-boss b{border-color:rgba(255,92,126,.48)!important;background:#381b2d!important;color:#ffb1c2!important}
#screenSurvival .survival-v87__path .survival-run-step:last-child b{border-color:rgba(255,145,86,.38)!important;background:#38231f!important;color:#ffc09e!important}
#screenSurvival .survival-v87__path .survival-run-step > span{
  min-width:0;
  display:flex!important;
  flex-direction:column!important;
  gap:2px!important;
  color:inherit!important;
  font-size:inherit!important;
}
#screenSurvival .survival-v87__path .survival-run-step strong{color:#f5f8ff;font-size:.58rem;line-height:1;font-weight:900;letter-spacing:.07em}
#screenSurvival .survival-v87__path .survival-run-step small{color:#7f92ad;font-size:.50rem;line-height:1.15;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

/* Explanation / colorful rule cards */
#screenSurvival .survival-v87__brief{
  position:relative;
  overflow:hidden;
  padding:16px;
  border-radius:22px;
  border:1px solid rgba(112,201,255,.16);
  background:
    radial-gradient(circle at 5% 0%,rgba(73,213,255,.07),transparent 28%),
    radial-gradient(circle at 95% 100%,rgba(255,73,129,.07),transparent 30%),
    linear-gradient(145deg,rgba(9,23,42,.92),rgba(8,17,33,.94));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.035);
}
#screenSurvival .survival-v87__brief-head{
  display:grid;
  grid-template-columns:minmax(300px,.72fr) minmax(380px,1.28fr);
  align-items:end;
  gap:28px;
  padding:2px 4px 13px;
}
#screenSurvival .survival-v87__brief-kicker{display:block;margin-bottom:5px;color:#71dff6;font-size:.50rem;font-weight:900;letter-spacing:.12em}
#screenSurvival .survival-v87__brief-head h4{margin:0;color:#f7f9ff;font-size:clamp(1.05rem,1.4vw,1.35rem);line-height:1.15;font-weight:900;letter-spacing:-.015em}
#screenSurvival .survival-v87__brief-head h4 span{color:#ff6f92}
#screenSurvival .survival-v87__brief-head p{margin:0!important;color:#91a3bc!important;font-size:.72rem!important;line-height:1.45!important;max-width:780px;justify-self:end}
#screenSurvival .survival-v87__rules{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:10px!important;
}
#screenSurvival .survival-v87__rule{
  position:relative;
  min-height:104px!important;
  display:grid!important;
  grid-template-columns:48px minmax(0,1fr)!important;
  align-items:center!important;
  gap:11px!important;
  padding:13px 42px 13px 13px!important;
  overflow:hidden;
  border-radius:16px!important;
  border:1px solid rgba(255,255,255,.08)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04)!important;
  transition:transform .18s ease,border-color .18s ease,filter .18s ease;
}
#screenSurvival .survival-v87__rule:hover{transform:translateY(-2px);filter:brightness(1.06)}
#screenSurvival .survival-v87__rule--build{
  background:radial-gradient(circle at 0 50%,rgba(73,220,255,.16),transparent 38%),linear-gradient(135deg,rgba(12,41,60,.96),rgba(10,25,43,.96))!important;
  border-color:rgba(90,224,255,.18)!important;
}
#screenSurvival .survival-v87__rule--events{
  background:radial-gradient(circle at 0 50%,rgba(174,94,255,.18),transparent 38%),linear-gradient(135deg,rgba(39,26,66,.96),rgba(17,24,47,.96))!important;
  border-color:rgba(180,108,255,.20)!important;
}
#screenSurvival .survival-v87__rule--boss{
  background:radial-gradient(circle at 0 50%,rgba(255,67,105,.18),transparent 38%),linear-gradient(135deg,rgba(58,25,43,.96),rgba(26,22,42,.96))!important;
  border-color:rgba(255,87,126,.22)!important;
}
#screenSurvival .survival-v87__rule .survival-rule-card__icon{
  width:48px!important;height:48px!important;display:grid!important;place-items:center!important;
  border-radius:14px!important;
  background:rgba(255,255,255,.055)!important;
  border:1px solid rgba(255,255,255,.08)!important;
}
#screenSurvival .survival-v87__rule .survival-rule-card__icon.ui-icon{padding:12px}
#screenSurvival .survival-v87__rule--build .survival-rule-card__icon{color:#65e9ff!important}
#screenSurvival .survival-v87__rule--events .survival-rule-card__icon{color:#c188ff!important}
#screenSurvival .survival-v87__rule--boss .survival-rule-card__icon{color:#ff7693!important}
#screenSurvival .survival-v87__rule small{display:block;color:#7890af!important;font-size:.49rem!important;line-height:1!important;font-weight:900!important;letter-spacing:.09em!important}
#screenSurvival .survival-v87__rule strong{display:block;margin-top:5px!important;color:#fff!important;font-size:.82rem!important;line-height:1.05!important;font-weight:900!important}
#screenSurvival .survival-v87__rule p{margin:5px 0 0!important;color:#9aabc1!important;font-size:.66rem!important;line-height:1.35!important;font-weight:500!important}
#screenSurvival .survival-v87__rule-number{
  position:absolute;right:10px;top:9px;
  color:rgba(255,255,255,.11);
  font-size:1.5rem;line-height:1;font-weight:900;letter-spacing:-.04em;
}

/* Tip */
#screenSurvival .survival-v87__tip{
  min-height:50px;
  display:grid!important;
  grid-template-columns:28px minmax(0,1fr) auto!important;
  align-items:center!important;
  gap:10px!important;
  padding:9px 13px!important;
  border-radius:15px!important;
  color:#a8b7cb!important;
  background:linear-gradient(90deg,rgba(255,211,106,.055),rgba(12,23,41,.82) 36%,rgba(255,80,120,.045))!important;
  border:1px solid rgba(255,210,103,.13)!important;
}
#screenSurvival .survival-v87__tip > .ui-icon{width:21px;height:21px;color:#ffd96a}
#screenSurvival .survival-v87__tip p{margin:0!important;color:#98a9c0!important;font-size:.66rem!important;line-height:1.35!important}
#screenSurvival .survival-v87__tip strong{color:#f3f6fb!important}
#screenSurvival .survival-v87__tip-danger{display:flex;align-items:center;gap:7px;color:#8294ad;font-size:.46rem;font-weight:900;letter-spacing:.08em;white-space:nowrap}
#screenSurvival .survival-v87__tip-danger i{position:relative;width:72px;height:5px;overflow:hidden;border-radius:99px;background:rgba(255,255,255,.08)}
#screenSurvival .survival-v87__tip-danger i b{display:block;width:76%;height:100%;border-radius:inherit;background:linear-gradient(90deg,#ffd96a,#ff744f,#ff456f);box-shadow:0 0 10px rgba(255,77,108,.35)}
#screenSurvival .survival-v87__tip-danger em{color:#ff718f;font-style:normal}

/* Laptop / compact desktop */
@media (min-width:901px) and (max-width:1440px){
  #screenSurvival .survival-v87__header{min-height:72px!important;padding-top:9px!important;padding-bottom:9px!important}
  #screenSurvival .survival-content.survival-v87{padding:10px 16px 12px!important}
  #screenSurvival .survival-v87__shell{gap:9px}
  #screenSurvival .survival-v87__hero{min-height:330px;grid-template-columns:minmax(0,1.42fr) minmax(225px,.58fr);border-radius:22px}
  #screenSurvival .survival-v87__copy{padding:22px 0 12px 28px!important}
  #screenSurvival .survival-v87__title{font-size:clamp(1.85rem,3vw,2.9rem)!important;margin-top:10px!important}
  #screenSurvival .survival-v87__desc{font-size:.78rem!important;line-height:1.43!important;max-width:700px!important}
  #screenSurvival .survival-v87__tags{margin-top:11px}
  #screenSurvival .survival-v87__actions{margin-top:13px!important;grid-template-columns:minmax(230px,350px) 160px!important}
  #screenSurvival .survival-v87__start,#screenSurvival .survival-v87__record{min-height:56px!important}
  #screenSurvival .survival-v87__fighter{margin:11px 11px 11px 0;padding:19px 15px 12px!important;border-radius:18px}
  #screenSurvival .survival-v87__fighter-stage{height:170px}
  #screenSurvival .survival-v87__fighter canvas{width:158px!important;max-height:170px!important}
  #screenSurvival .survival-v87__fighter-ring--a{width:145px;height:145px}
  #screenSurvival .survival-v87__fighter-ring--b{width:105px;height:105px}
  #screenSurvival .survival-v87__path{min-height:58px;padding:7px 25px!important}
  #screenSurvival .survival-v87__path .survival-run-path__line{top:29px!important}
  #screenSurvival .survival-v87__path .survival-run-step{grid-template-columns:32px minmax(0,1fr)!important}
  #screenSurvival .survival-v87__path .survival-run-step b{width:32px!important;height:32px!important;min-width:32px!important;border-radius:10px!important}
  #screenSurvival .survival-v87__brief{padding:11px;border-radius:18px}
  #screenSurvival .survival-v87__brief-head{padding:0 3px 9px;gap:18px}
  #screenSurvival .survival-v87__brief-head p{font-size:.65rem!important}
  #screenSurvival .survival-v87__rule{min-height:86px!important;padding:10px 35px 10px 10px!important;grid-template-columns:40px minmax(0,1fr)!important}
  #screenSurvival .survival-v87__rule .survival-rule-card__icon{width:40px!important;height:40px!important;border-radius:12px!important}
  #screenSurvival .survival-v87__rule .survival-rule-card__icon.ui-icon{padding:10px}
  #screenSurvival .survival-v87__rule p{font-size:.60rem!important;margin-top:3px!important}
  #screenSurvival .survival-v87__tip{min-height:43px;padding:7px 11px!important}
}

/* Short desktop: keep everything on screen without crushing typography. */
@media (min-width:901px) and (max-height:820px){
  #screenSurvival .survival-v87__header{min-height:66px!important}
  #screenSurvival .survival-v87__section-icon{width:42px;height:42px;flex-basis:42px;border-radius:13px}
  #screenSurvival .survival-v87__section-icon.ui-icon{width:42px;height:42px;padding:11px}
  #screenSurvival .survival-content.survival-v87{padding-top:7px!important;padding-bottom:8px!important}
  #screenSurvival .survival-v87__hero{min-height:286px}
  #screenSurvival .survival-v87__copy{padding-top:16px!important;padding-bottom:9px!important}
  #screenSurvival .survival-v87__title{font-size:clamp(1.65rem,2.55vw,2.5rem)!important;margin:8px 0 7px!important}
  #screenSurvival .survival-v87__desc{font-size:.72rem!important;line-height:1.38!important}
  #screenSurvival .survival-v87__tags{margin-top:8px}
  #screenSurvival .survival-v87__tags > span{min-height:25px;padding:4px 8px;font-size:.49rem}
  #screenSurvival .survival-v87__actions{margin-top:9px!important}
  #screenSurvival .survival-v87__start,#screenSurvival .survival-v87__record{min-height:50px!important}
  #screenSurvival .survival-v87__fighter-stage{height:145px}
  #screenSurvival .survival-v87__fighter canvas{width:140px!important;max-height:145px!important}
  #screenSurvival .survival-v87__fighter-ring--a{width:124px;height:124px}
  #screenSurvival .survival-v87__fighter-ring--b{width:90px;height:90px}
  #screenSurvival .survival-v87__wardrobe{min-height:32px!important;margin-top:3px!important}
  #screenSurvival .survival-v87__path{min-height:50px!important;padding-top:5px!important;padding-bottom:5px!important}
  #screenSurvival .survival-v87__path .survival-run-path__line{top:25px!important}
  #screenSurvival .survival-v87__path .survival-run-step b{width:29px!important;height:29px!important;min-width:29px!important}
  #screenSurvival .survival-v87__brief{padding:9px}
  #screenSurvival .survival-v87__brief-head{display:none}
  #screenSurvival .survival-v87__rule{min-height:70px!important;padding-top:8px!important;padding-bottom:8px!important}
  #screenSurvival .survival-v87__rule p{display:none!important}
  #screenSurvival .survival-v87__tip{display:none!important}
}

/* Tablet */
@media (max-width:900px){
  #screenSurvival{overflow:auto!important}
  #screenSurvival .survival-v87__header{min-height:68px!important;padding:9px 12px!important}
  #screenSurvival .survival-v87__header-status{display:none}
  #screenSurvival .survival-v87__section-copy .mode-header__meta{white-space:normal}
  #screenSurvival .survival-content.survival-v87{overflow:visible!important;padding:10px 12px 16px!important}
  #screenSurvival .survival-v87__hero{grid-template-columns:minmax(0,1fr) 210px;min-height:0;border-radius:22px}
  #screenSurvival .survival-v87__hero::before{background:linear-gradient(90deg,rgba(5,13,25,.98),rgba(7,18,33,.88) 60%,rgba(7,15,28,.60))}
  #screenSurvival .survival-v87__copy{padding:24px 0 15px 24px!important}
  #screenSurvival .survival-v87__title{font-size:clamp(1.8rem,5vw,2.8rem)!important}
  #screenSurvival .survival-v87__desc{font-size:.78rem!important}
  #screenSurvival .survival-v87__actions{grid-template-columns:1fr!important;max-width:420px!important}
  #screenSurvival .survival-v87__record{display:grid!important;grid-template-columns:1fr auto!important;align-items:center!important;min-height:48px!important}
  #screenSurvival .survival-v87__record .survival-record__label{grid-column:1;grid-row:1}
  #screenSurvival .survival-v87__record strong{grid-column:2;grid-row:1 / 3}
  #screenSurvival .survival-v87__record em{grid-column:1;grid-row:2}
  #screenSurvival .survival-v87__fighter{margin:12px 12px 12px 0}
  #screenSurvival .survival-v87__path{grid-template-columns:repeat(4,minmax(0,1fr))!important;padding-left:15px!important;padding-right:15px!important}
  #screenSurvival .survival-v87__path .survival-run-step{grid-template-columns:34px minmax(0,1fr)!important;gap:5px!important}
  #screenSurvival .survival-v87__path .survival-run-step b{width:34px!important;height:34px!important;min-width:34px!important}
  #screenSurvival .survival-v87__path .survival-run-step small{display:none}
  #screenSurvival .survival-v87__brief-head{grid-template-columns:1fr;gap:7px;align-items:start}
  #screenSurvival .survival-v87__brief-head p{justify-self:start}
  #screenSurvival .survival-v87__rules{grid-template-columns:1fr!important}
  #screenSurvival .survival-v87__rule{min-height:88px!important}
  #screenSurvival .survival-v87__tip-danger{display:none}
}

/* Mobile */
@media (max-width:680px){
  #screenSurvival .survival-v87__header{gap:8px!important;min-height:62px!important}
  #screenSurvival .survival-v87__back{min-width:44px;min-height:42px;padding:0 10px!important;font-size:0!important}
  #screenSurvival .survival-v87__back .ui-icon{width:19px;height:19px}
  #screenSurvival .survival-v87__section-icon{width:42px;height:42px;flex-basis:42px;border-radius:12px}
  #screenSurvival .survival-v87__section-icon.ui-icon{width:42px;height:42px;padding:11px}
  #screenSurvival .survival-v87__section-copy .campaign-header__title{font-size:.96rem!important}
  #screenSurvival .survival-v87__section-copy .mode-header__meta{font-size:.48rem!important;letter-spacing:.06em!important}
  #screenSurvival .survival-content.survival-v87{padding:8px!important}
  #screenSurvival .survival-v87__shell{gap:8px}
  #screenSurvival .survival-v87__hero{display:flex;flex-direction:column;border-radius:18px}
  #screenSurvival .survival-v87__hero-art{background-position:64% center;opacity:.58}
  #screenSurvival .survival-v87__hero::before{background:linear-gradient(180deg,rgba(5,13,25,.82),rgba(5,13,25,.95) 48%,rgba(5,13,25,.99))}
  #screenSurvival .survival-v87__copy{order:1;padding:22px 16px 12px!important}
  #screenSurvival .survival-v87__eyebrow{font-size:.54rem}
  #screenSurvival .survival-v87__title{font-size:clamp(1.75rem,9vw,2.5rem)!important;line-height:1.01!important;margin:11px 0 9px!important}
  #screenSurvival .survival-v87__desc{font-size:.76rem!important;line-height:1.45!important}
  #screenSurvival .survival-v87__tags{gap:5px;margin-top:11px}
  #screenSurvival .survival-v87__tags > span{font-size:.47rem;min-height:26px;padding:4px 7px}
  #screenSurvival .survival-v87__actions{max-width:none!important;margin-top:14px!important}
  #screenSurvival .survival-v87__start{min-height:58px!important}
  #screenSurvival .survival-v87__fighter{order:2;min-height:245px!important;margin:0 12px 12px!important;padding:22px 14px 13px!important}
  #screenSurvival .survival-v87__fighter-stage{height:165px}
  #screenSurvival .survival-v87__fighter canvas{width:155px!important;max-height:165px!important}
  #screenSurvival .survival-v87__path{order:3;grid-template-columns:repeat(4,minmax(0,1fr))!important;min-height:68px!important;padding:8px 10px!important}
  #screenSurvival .survival-v87__path .survival-run-path__line{left:12%!important;right:12%!important;top:26px!important}
  #screenSurvival .survival-v87__path .survival-run-step{display:flex!important;flex-direction:column!important;justify-content:center!important;gap:5px!important;text-align:center}
  #screenSurvival .survival-v87__path .survival-run-step b{width:32px!important;height:32px!important;min-width:32px!important}
  #screenSurvival .survival-v87__path .survival-run-step > span{align-items:center}
  #screenSurvival .survival-v87__path .survival-run-step strong{font-size:.46rem}
  #screenSurvival .survival-v87__brief{padding:12px;border-radius:17px}
  #screenSurvival .survival-v87__brief-head{padding:0 1px 10px}
  #screenSurvival .survival-v87__brief-head h4{font-size:1rem}
  #screenSurvival .survival-v87__brief-head p{font-size:.67rem!important}
  #screenSurvival .survival-v87__rule{min-height:84px!important;padding:10px 34px 10px 10px!important;grid-template-columns:42px minmax(0,1fr)!important}
  #screenSurvival .survival-v87__rule .survival-rule-card__icon{width:42px!important;height:42px!important}
  #screenSurvival .survival-v87__rule strong{font-size:.76rem!important}
  #screenSurvival .survival-v87__rule p{font-size:.61rem!important}
  #screenSurvival .survival-v87__tip{grid-template-columns:24px minmax(0,1fr)!important;border-radius:13px!important}
  #screenSurvival .survival-v87__tip p{font-size:.61rem!important}
}

@media (max-width:420px){
  #screenSurvival .survival-v87__section-copy .mode-header__meta{display:none}
  #screenSurvival .survival-v87__copy{padding-left:13px!important;padding-right:13px!important}
  #screenSurvival .survival-v87__title{font-size:1.72rem!important}
  #screenSurvival .survival-v87__tags > span:nth-child(2){display:none}
  #screenSurvival .survival-v87__fighter{margin-left:8px!important;margin-right:8px!important}
  #screenSurvival .survival-v87__path .survival-run-step strong{font-size:.41rem}
  #screenSurvival .survival-v87__brief-head p{display:none}
}

@media (prefers-reduced-motion:reduce){
  #screenSurvival .survival-v87__header-pulse{animation:none}
  #screenSurvival .survival-v87__start::before{display:none}
  #screenSurvival .survival-v87__rule,#screenSurvival .survival-v87__wardrobe{transition:none}
}

@keyframes sv87Pulse{
  0%,100%{opacity:.72;transform:scale(.92)}
  50%{opacity:1;transform:scale(1.08)}
}
