/* 24ORB ReactMan — original mini arcade, scoped to the homepage game only. */
#orb24-reactman{
  --rm-ink:#071023;
  --rm-white:#f7f9ff;
  --rm-muted:#d1def5;
  --rm-border:rgba(148,187,255,.28);
  position:relative;isolation:isolate;
  width:min(1190px,calc(100% - 40px));max-width:1190px;
  box-sizing:border-box;margin:46px auto 76px;
  padding:clamp(20px,3vw,36px);
  color:var(--rm-white);
  border:1px solid rgba(156,196,255,.35);
  border-radius:26px;
  background:
    radial-gradient(ellipse at 15% 0%,rgba(25,94,181,.29),transparent 45%),
    radial-gradient(ellipse at 91% 82%,rgba(95,42,160,.24),transparent 47%),
    linear-gradient(139deg,#0d1833 0%,#10162b 45%,#0b142b 100%);
  box-shadow:0 35px 95px rgba(0,0,0,.38),inset 0 1px rgba(240,249,255,.15);
  font-family:inherit;
}
#orb24-reactman::before{
  content:'';position:absolute;inset:0;pointer-events:none;z-index:-1;
  border-radius:inherit;
  background:repeating-linear-gradient(0deg,transparent 0,transparent 5px,rgba(255,255,255,.012) 6px,transparent 7px);
}
#orb24-reactman *{box-sizing:border-box}
#orb24-reactman button{font-family:inherit}
#orb24-reactman .orb24-reactman-header{
  display:flex;align-items:center;justify-content:space-between;gap:28px;margin:0 0 25px
}
#orb24-reactman .orb24-reactman-kicker{
  margin:0 0 9px!important;font-size:clamp(.8rem,1.1vw,.94rem)!important;
  font-weight:850!important;letter-spacing:.19em;line-height:1.4!important;color:#bce8ff!important;
}
#orb24-reactman .orb24-reactman-kicker span{color:#ffd58e}
#orb24-reactman h2{
  display:flex;align-items:center;gap:8px;flex-wrap:wrap;
  margin:0!important;padding:0!important;
  font-family:inherit;font-size:clamp(2.25rem,5vw,4.45rem)!important;
  font-weight:950!important;line-height:1.08!important;letter-spacing:-.05em;
  color:#fff!important;text-shadow:0 2px 12px rgba(0,0,0,.35);
}
#orb24-reactman h2>span{
  color:#8ee7ff!important;
  background:linear-gradient(105deg,#9af0ff 10%,#c5a4ff 76%,#fff1c6 100%);
  -webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;
}
#orb24-reactman h2 small{font-size:.4em;color:#ffe49a}
#orb24-reactman .orb24-reactman-subtitle{
  margin:10px 0 0!important;color:#e2ebfa!important;
  font-size:clamp(1rem,1.3vw,1.15rem)!important;line-height:1.6!important;
}
#orb24-reactman .orb24-reactman-subtitle strong{color:#fff}
#orb24-reactman .orb24-reactman-arcade-mark{
  flex:0 0 auto;min-width:154px;min-height:86px;
  display:flex;align-items:center;gap:13px;padding:15px;
  border:1px solid #7690c9;border-radius:19px;
  background:linear-gradient(135deg,rgba(12,22,52,.82),rgba(44,28,81,.76));
  box-shadow:inset 0 1px rgba(255,255,255,.13),0 11px 30px rgba(0,0,0,.23);
}
#orb24-reactman .orb24-reactman-arcade-mark>span{
  font-size:2.2rem;line-height:1;color:#8fe7ff;text-shadow:0 0 14px #54beff
}
#orb24-reactman .orb24-reactman-arcade-mark b{
  font-size:.75rem;line-height:1.45;letter-spacing:.07em;color:#f1f6ff;font-weight:900
}
#orb24-reactman .orb24-reactman-layout{
  display:grid;grid-template-columns:minmax(0,1.86fr) minmax(260px,.88fr);
  gap:clamp(16px,2vw,25px);align-items:start
}
#orb24-reactman .orb24-reactman-stage{
  min-width:0;padding:12px;border:1px solid #445e98;
  border-radius:21px;background:linear-gradient(138deg,#151f41,#0a1129 65%);
  box-shadow:0 16px 38px rgba(0,0,0,.3),inset 0 1px rgba(214,237,255,.2)
}
#orb24-reactman .orb24-reactman-stage-top,
#orb24-reactman .orb24-reactman-stage-foot{
  display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;
  padding:7px 6px 11px;
}
#orb24-reactman .orb24-reactman-live{
  color:#eef5ff;font-weight:850;font-size:.78rem;letter-spacing:.13em;
}
#orb24-reactman .orb24-reactman-live i{
  display:inline-block;vertical-align:middle;margin-right:8px;width:8px;height:8px;
  background:#76ebcb;border-radius:50%;box-shadow:0 0 13px rgba(105,245,216,.72)
}
#orb24-reactman .orb24-reactman-stage-tip{
  font-weight:800;letter-spacing:.12em;font-size:.73rem;color:#bfe9ff
}
#orb24-reactman .orb24-reactman-glass{
  position:relative;overflow:hidden;border-radius:14px;
  border:2px solid #8baced;
  background:#050b20;box-shadow:inset 0 1px 3px #c8e8ff,
  0 4px 0 #263b71,0 10px 27px rgba(0,0,0,.5),
  0 0 29px rgba(83,162,255,.13)
}
#orb24-reactman canvas{
  display:block;width:100%;height:auto;aspect-ratio:21 / 15;
  background:#071126;touch-action:manipulation;cursor:crosshair;
  user-select:none;-webkit-user-select:none;outline:none;
}
#orb24-reactman canvas:focus-visible{
  outline:3px solid #fff;outline-offset:-5px
}
#orb24-reactman .orb24-reactman-overlay{
  position:absolute;top:46%;left:50%;
  transform:translate(-50%,-50%);
  width:min(86%,340px);padding:12px 18px;
  background:rgba(4,11,29,.83);
  border:1px solid rgba(168,222,255,.65);
  border-radius:13px;text-align:center;pointer-events:none;
  backdrop-filter:blur(8px);
  box-shadow:0 12px 40px rgba(0,0,0,.4);
}
#orb24-reactman .orb24-reactman-overlay[hidden]{display:none!important}
#orb24-reactman .orb24-reactman-overlay strong{
  display:block;color:#fff;font-size:clamp(1rem,2vw,1.27rem);
  font-weight:950;letter-spacing:.06em
}
#orb24-reactman .orb24-reactman-overlay span{
  display:block;margin-top:5px;color:#d5efff;font-size:.95rem
}
#orb24-reactman .orb24-reactman-stage-foot{padding:13px 6px 3px;justify-content:center;gap:7px 19px}
#orb24-reactman .orb24-reactman-play-hint{
  font-size:.78rem;line-height:1.5;color:#dbe8ff;
}
#orb24-reactman .orb24-reactman-play-hint b{color:#ffdf9e}
#orb24-reactman .orb24-reactman-side{
  position:relative;display:flex;flex-direction:column;gap:15px;
  min-width:0;padding:clamp(15px,2vw,21px);
  border:1px solid rgba(148,180,239,.32);border-radius:21px;
  background:linear-gradient(142deg,rgba(22,38,77,.85),rgba(12,20,46,.96));
  box-shadow:inset 0 1px rgba(238,248,255,.1),0 15px 34px rgba(0,0,0,.18)
}
#orb24-reactman .orb24-reactman-side-head>span{
  display:block;font-size:.72rem;font-weight:850;letter-spacing:.17em;color:#9deaff
}
#orb24-reactman .orb24-reactman-side-head strong{
  display:block;margin-top:6px;font-size:clamp(.95rem,1.35vw,1.08rem);
  line-height:1.3;color:#fff;letter-spacing:.025em
}
#orb24-reactman .orb24-reactman-score{
  display:grid;grid-template-columns:1.1fr 1fr;gap:9px;
}
#orb24-reactman .orb24-reactman-score>div{
  display:flex;flex-direction:column;gap:6px;
  min-width:0;padding:12px 10px;border-radius:12px;border:1px solid #496fae;
  background:linear-gradient(145deg,#172d58,#0b1631);
  box-shadow:inset 0 1px rgba(255,255,255,.08);
}
#orb24-reactman .orb24-reactman-score span{
  font-size:.67rem;letter-spacing:.07em;font-weight:850;color:#d4e7ff
}
#orb24-reactman .orb24-reactman-score strong{
  font-variant-numeric:tabular-nums;
  color:#fff;font-size:clamp(1.4rem,2.4vw,1.95rem);letter-spacing:.03em;line-height:1.1
}
#orb24-reactman .orb24-reactman-score>div:first-child strong{
  color:#a6efff;text-shadow:0 0 15px rgba(102,227,255,.25)
}
#orb24-reactman .orb24-reactman-mini-stats{
  display:grid;grid-template-columns:1fr 1fr;gap:9px;
}
#orb24-reactman .orb24-reactman-mini-stats>div{
  display:flex;flex-direction:column;gap:3px;padding:10px;
  border:1px solid rgba(165,190,242,.2);border-radius:11px;background:#101b38
}
#orb24-reactman .orb24-reactman-mini-stats span{
  color:#d2e5ff;font-weight:800;font-size:.74rem;letter-spacing:.04em;
}
#orb24-reactman .orb24-reactman-mini-stats strong{
  color:#fff;font-weight:850;font-size:1rem;line-height:1.35
}
#orb24-reactman .orb24-reactman-actions{display:flex;flex-wrap:wrap;gap:8px}
#orb24-reactman .orb24-reactman-actions button{
  flex:1 1 calc(50% - 8px);min-height:44px;padding:10px 12px;
  border:1px solid #7894d0;border-radius:9px;background:#1b2a51;color:#fff;
  font-size:.94rem;font-weight:850;line-height:1.35;cursor:pointer;
  transition:background .14s,border-color .14s,transform .14s
}
#orb24-reactman .orb24-reactman-actions button:first-child{
  flex-basis:100%;
  display:flex;justify-content:space-between;align-items:center;
  background:linear-gradient(120deg,#206bba,#5b3dad);
  border-color:#b5dbff;color:#fff;font-size:1.08rem;min-height:51px;
  box-shadow:0 7px 22px rgba(42,104,207,.19)
}
#orb24-reactman .orb24-reactman-actions button:hover{
  background:#314775;border-color:#e8f6ff;transform:translateY(-1px)
}
#orb24-reactman .orb24-reactman-actions button:first-child:hover{background:linear-gradient(120deg,#2d82dc,#6c49c4)}
#orb24-reactman .orb24-reactman-instructions{
  margin:0!important;font-size:.89rem!important;line-height:1.62!important;
  color:#e0e9fa!important;
}
#orb24-reactman .orb24-reactman-instructions strong{color:#fff}
#orb24-reactman .orb24-reactman-pad{
  display:flex;flex-direction:column;align-items:center;gap:5px
}
#orb24-reactman .orb24-reactman-pad>div{display:flex;gap:5px}
#orb24-reactman .orb24-reactman-pad button{
  width:48px;height:44px;padding:0;
  border:1px solid #849fda;border-radius:9px;background:linear-gradient(150deg,#293b6b,#17254b);
  color:#fff;font-size:1.35rem;font-weight:900;cursor:pointer;
  box-shadow:0 3px 0 #0a1431;
}
#orb24-reactman .orb24-reactman-pad button:hover{background:#3a568d}
#orb24-reactman .orb24-reactman-pad button:active{transform:translateY(2px);box-shadow:none}
#orb24-reactman button:focus-visible,
#orb24-reactman a:focus-visible{
  outline:3px solid #fff!important;outline-offset:3px!important
}
#orb24-reactman .orb24-reactman-villains{
  padding-top:13px;border-top:1px solid rgba(191,213,255,.18)
}
#orb24-reactman .orb24-reactman-villains>span{
  display:block;margin-bottom:10px;font-size:.74rem;font-weight:900;
  letter-spacing:.12em;color:#e1ecff
}
#orb24-reactman .orb24-reactman-villains>div{
  display:flex;justify-content:space-around;gap:5px;
}
#orb24-reactman .orb24-reactman-villains figure{
  display:flex;flex-direction:column;align-items:center;gap:6px;
  min-width:0;margin:0;text-align:center
}
#orb24-reactman .orb24-reactman-villains img{
  display:block;width:clamp(42px,4.4vw,56px);aspect-ratio:1;
  border-radius:50%;object-fit:cover;
  border:2px solid #8eadd7;box-shadow:0 0 15px rgba(164,108,242,.25)
}
#orb24-reactman .orb24-reactman-villains figure:nth-child(1) img{border-color:#fa668d}
#orb24-reactman .orb24-reactman-villains figure:nth-child(2) img{border-color:#db8cff}
#orb24-reactman .orb24-reactman-villains figure:nth-child(3) img{border-color:#ffb56a}
#orb24-reactman .orb24-reactman-villains figcaption{
  font-size:.67rem;font-weight:850;letter-spacing:.075em;color:#dbe6fa
}
#orb24-reactman .orb24-reactman-bottom{
  display:flex;align-items:center;justify-content:space-between;gap:15px;flex-wrap:wrap;
  margin-top:21px;padding:15px 2px 0;border-top:1px solid rgba(154,192,250,.24);
}
#orb24-reactman .orb24-reactman-bottom p{
  max-width:740px;margin:0!important;color:#eaf1ff!important;
  font-size:.94rem!important;line-height:1.55!important
}
#orb24-reactman .orb24-reactman-bottom a{
  display:inline-flex;gap:8px;align-items:center;
  font-size:.95rem;font-weight:850;text-decoration:none;
  color:#aeeaff!important;border-bottom:1px solid #aeeaff;padding-bottom:3px;
}
#orb24-reactman .orb24-reactman-bottom a:hover{color:#fff!important;border-color:#fff}
@media(max-width:1050px){
  #orb24-reactman .orb24-reactman-layout{grid-template-columns:minmax(0,1.6fr) minmax(252px,.92fr);gap:14px}
  #orb24-reactman .orb24-reactman-side{padding:14px;gap:11px}
  #orb24-reactman .orb24-reactman-score>div{padding:9px}
}
@media(max-width:820px){
  #orb24-reactman{width:calc(100% - 24px);margin:34px auto 55px;padding:clamp(15px,3vw,24px)}
  #orb24-reactman .orb24-reactman-layout{grid-template-columns:1fr}
  #orb24-reactman .orb24-reactman-side{display:grid;grid-template-columns:1fr 1fr;gap:14px;align-items:start}
  #orb24-reactman .orb24-reactman-side-head{grid-column:1 / -1}
  #orb24-reactman .orb24-reactman-villains{grid-column:1 / -1}
  #orb24-reactman .orb24-reactman-pad{grid-column:2}
}
@media(max-width:560px){
  #orb24-reactman{width:calc(100% - 18px);padding:14px;border-radius:19px}
  #orb24-reactman .orb24-reactman-header{gap:10px;margin-bottom:15px}
  #orb24-reactman .orb24-reactman-arcade-mark{display:none}
  #orb24-reactman .orb24-reactman-stage{padding:7px;border-radius:15px}
  #orb24-reactman .orb24-reactman-glass{border-radius:10px}
  #orb24-reactman .orb24-reactman-stage-tip{font-size:.68rem}
  #orb24-reactman .orb24-reactman-stage-top{gap:4px}
  #orb24-reactman .orb24-reactman-side{grid-template-columns:1fr;gap:11px}
  #orb24-reactman .orb24-reactman-side-head,#orb24-reactman .orb24-reactman-villains,#orb24-reactman .orb24-reactman-pad{grid-column:1}
  #orb24-reactman .orb24-reactman-instructions{font-size:.96rem!important}
  #orb24-reactman .orb24-reactman-pad button{width:57px;height:49px}
  #orb24-reactman .orb24-reactman-villains img{width:54px}
}
@media(prefers-reduced-motion:reduce){
  #orb24-reactman *,#orb24-reactman *::before,#orb24-reactman *::after{
    animation:none!important;transition:none!important;scroll-behavior:auto!important
  }
}

/* Optional larger board for accessible desktop and tablet play. */
#orb24-reactman .orb24-reactman-expand{
  min-height:35px;padding:7px 10px;
  border:1px solid #7699cb;border-radius:8px;
  background:#122342;color:#f6f9ff;font-size:.77rem;
  font-weight:800;letter-spacing:.025em;cursor:pointer
}
#orb24-reactman .orb24-reactman-expand:hover{border-color:#ecf5ff;background:#243a68}
#orb24-reactman .orb24-reactman-stage:fullscreen{
  display:flex;flex-direction:column;justify-content:center;align-items:center;
  width:100vw;height:100vh;padding:22px;gap:8px;overflow:auto;
  border-radius:0;background:#07112d
}
#orb24-reactman .orb24-reactman-stage:fullscreen .orb24-reactman-stage-top,
#orb24-reactman .orb24-reactman-stage:fullscreen .orb24-reactman-stage-foot{
  width:min(92vw,1110px)
}
#orb24-reactman .orb24-reactman-stage:fullscreen .orb24-reactman-glass{
  width:auto;max-width:95vw;height:auto;max-height:calc(100vh - 155px);
  aspect-ratio:21/15
}
#orb24-reactman .orb24-reactman-stage:fullscreen canvas{
  height:auto;max-height:calc(100vh - 155px);width:auto;max-width:95vw;
  aspect-ratio:21/15
}
@media(max-width:560px){
 #orb24-reactman .orb24-reactman-expand{padding:7px 8px;min-height:38px}
 #orb24-reactman .orb24-reactman-stage-top{justify-content:space-between}
}

/* Arcade HUD: legible level and power surge meter. */
#orb24-reactman .orb24-reactman-level{
  color:#ffe6a8;font-size:.77rem;letter-spacing:.12em;font-weight:950;
  text-shadow:0 0 12px rgba(248,216,142,.21)
}
#orb24-reactman .orb24-reactman-power{
  display:flex;flex-direction:column;gap:7px;
  padding:10px 11px;border:1px solid #455d91;border-radius:12px;background:#0b1631
}
#orb24-reactman .orb24-reactman-power>span{
  color:#dfebff;font-size:.74rem;font-weight:850;letter-spacing:.09em
}
#orb24-reactman .orb24-reactman-power>div{
  position:relative;overflow:hidden;height:10px;width:100%;
  background:#202e50;border:1px solid #546c9a;border-radius:999px
}
#orb24-reactman .orb24-reactman-power i{
  position:absolute;top:0;bottom:0;left:0;width:0%;border-radius:inherit;
  background:linear-gradient(90deg,#75ffff,#fff4b7);
  box-shadow:0 0 13px rgba(110,247,255,.65);
  transition:width .13s linear
}
#orb24-reactman .orb24-reactman-power.is-powered{border-color:#acecfa}
@media(prefers-reduced-motion:reduce){#orb24-reactman .orb24-reactman-power i{transition:none}}

#orb24-reactman{scroll-margin-top:120px}

/* ReactMan Trophy Room — opt-in ranked member scores. */
#orb24-reactman .orb24-reactman-highscore-save{
  display:flex;flex-direction:column;gap:9px;padding:15px 12px;
  border:1px solid rgba(176,214,255,.44);border-radius:13px;
  background:linear-gradient(145deg,rgba(34,56,101,.78),rgba(42,28,76,.66));
  box-shadow:inset 0 1px rgba(255,255,255,.10)
}
#orb24-reactman .orb24-reactman-highscore-save>strong{
  font-size:.82rem;font-weight:950;letter-spacing:.065em;
  line-height:1.42;color:#ffecb6
}
#orb24-reactman .orb24-reactman-highscore-save p{
  margin:0!important;color:#edf4ff!important;font-size:.84rem!important;
  line-height:1.55!important
}
#orb24-reactman .orb24-reactman-highscore-save>button{
  min-height:45px;width:100%;padding:9px 14px;
  border:1px solid #ffe4ae;border-radius:9px;cursor:pointer;
  background:linear-gradient(125deg,#4b3676,#856333);
  color:#fff;font-size:1rem;font-weight:850;
  box-shadow:0 5px 18px rgba(0,0,0,.17)
}
#orb24-reactman .orb24-reactman-highscore-save>button:hover:not(:disabled){
  background:linear-gradient(125deg,#5a4591,#a37d42);border-color:#fff6cb
}
#orb24-reactman .orb24-reactman-highscore-save>button:disabled{
  cursor:default;opacity:.66;box-shadow:none
}
#orb24-reactman .orb24-reactman-highscore-save>a{
  min-height:44px;display:flex;align-items:center;justify-content:center;
  padding:9px 11px;border:1px solid #b7e9ff;border-radius:9px;
  color:#fff!important;font-size:.92rem;font-weight:850;text-decoration:none;
  background:#274879
}
#orb24-reactman .orb24-reactman-highscore-save [hidden]{display:none!important}
#orb24-reactman .orb24-reactman-highscore-save>p:last-child{
  color:#c9ecdd!important;font-size:.82rem!important;
}
#orb24-reactman .orb24-reactman-highscore-save>p.is-error{color:#ffcfcb!important}
#orb24-reactman .orb24-reactman-leaderboards{
  margin-top:23px;padding:21px;
  border:1px solid rgba(168,211,250,.38);border-radius:20px;
  background:radial-gradient(ellipse at 50% 0%,rgba(91,66,171,.27),transparent 70%),
    linear-gradient(155deg,#101d3e,#0d1735 55%,#101b40);
  box-shadow:inset 0 1px rgba(252,253,255,.14),0 18px 32px rgba(0,0,0,.17)
}
#orb24-reactman .orb24-reactman-rank-head{
  display:flex;align-items:center;justify-content:space-between;
  flex-wrap:wrap;gap:14px;margin-bottom:20px
}
#orb24-reactman .orb24-reactman-rank-head>div>span{
  color:#b7eeff;font-weight:850;font-size:.74rem;letter-spacing:.17em
}
#orb24-reactman .orb24-reactman-rank-head h3{
  margin:4px 0 6px!important;color:#fff!important;
  font-size:clamp(1.25rem,2.2vw,1.8rem)!important;
  line-height:1.25!important;letter-spacing:-.02em;font-weight:950
}
#orb24-reactman .orb24-reactman-rank-head p{
  margin:0!important;color:#dce9ff!important;
  font-size:.94rem!important;line-height:1.5!important
}
#orb24-reactman .orb24-reactman-rank-head>button{
  flex:0 0 auto;min-height:43px;padding:9px 15px;
  border:1px solid #a4c8e9;border-radius:10px;background:#192d52;
  color:#fff;font-size:.94rem;font-weight:800;cursor:pointer
}
#orb24-reactman .orb24-reactman-rank-head>button:hover{background:#2a4777}
#orb24-reactman .orb24-reactman-rank-head>button:disabled{opacity:.67;cursor:default}
#orb24-reactman .orb24-reactman-rank-grid{
  display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;
  align-items:stretch
}
#orb24-reactman .orb24-reactman-rank-card{
  min-width:0;overflow:hidden;
  border:1px solid rgba(175,204,245,.3);border-radius:16px;
  background:rgba(4,14,34,.69);
  box-shadow:inset 0 1px rgba(255,255,255,.11)
}
#orb24-reactman .orb24-reactman-rank-card>header{
  padding:16px 16px 12px;
  border-bottom:1px solid rgba(180,205,244,.26);
  background:linear-gradient(140deg,rgba(67,85,146,.26),rgba(18,29,66,.44))
}
#orb24-reactman .orb24-reactman-rank-card>header>div{
  display:flex;align-items:center;gap:10px
}
#orb24-reactman .orb24-reactman-rank-symbol{
  display:inline-flex;align-items:center;justify-content:center;
  width:32px;height:32px;flex:0 0 32px;
  border:1px solid #e6cba0;border-radius:10px;
  color:#ffdf98;font-size:1.25rem;
  background:rgba(106,75,40,.28);box-shadow:0 0 16px rgba(255,210,124,.10)
}
#orb24-reactman .orb24-reactman-rank-card h4{
  margin:0!important;color:#fff!important;font-size:clamp(1rem,1.5vw,1.18rem)!important;
  font-weight:950;letter-spacing:.04em;line-height:1.35!important
}
#orb24-reactman .orb24-reactman-rank-card header>small{
  display:block;margin-top:8px;color:#c6d6f0!important;
  font-size:.8rem;font-weight:750;line-height:1.35
}
#orb24-reactman .orb24-reactman-rank-card ol{
  list-style:none!important;margin:0!important;padding:6px 12px 12px!important;
  min-height:185px
}
#orb24-reactman .orb24-reactman-rank-card li{margin:0!important}
#orb24-reactman .orb24-rank-row{
  display:grid;grid-template-columns:34px minmax(0,1fr) auto;
  align-items:center;gap:10px;
  min-height:53px;padding:9px 8px;
  border-bottom:1px solid rgba(189,204,243,.14)
}
#orb24-reactman .orb24-rank-row:last-child{border-bottom:none}
#orb24-reactman .orb24-rank-row.is-me{
  border:1px solid #9ce8ff;border-radius:9px;margin:4px 0!important;
  background:linear-gradient(95deg,rgba(47,96,137,.3),rgba(68,51,120,.2))
}
#orb24-reactman .orb24-rank-place{
  width:30px;min-height:30px;display:flex;justify-content:center;align-items:center;
  border:1px solid #5c729e;border-radius:9px;
  color:#d5e6ff;font-weight:900;font-size:.78rem;
  background:#19294d
}
#orb24-reactman .orb24-rank-place.is-winner{
  color:#0e1426;background:linear-gradient(140deg,#fff1c0,#e5ba65);
  border-color:#fff2cf;box-shadow:0 0 15px rgba(246,207,116,.27)
}
#orb24-reactman .orb24-rank-person{display:grid;gap:3px;min-width:0}
#orb24-reactman .orb24-rank-person strong{
  color:#f4f8ff;font-size:.96rem;font-weight:850;
  overflow:hidden;text-overflow:ellipsis;white-space:nowrap
}
#orb24-reactman .orb24-rank-person small{
  font-size:.76rem;color:#c6d9f5;font-weight:650
}
#orb24-reactman .orb24-rank-score{
  color:#ffebb3;font-weight:950;font-size:1.08rem;
  font-variant-numeric:tabular-nums;text-align:right
}
#orb24-reactman .orb24-rank-empty{
  min-height:110px;display:flex;flex-direction:column;
  align-items:center;justify-content:center;gap:7px;
  padding:20px!important;color:#d8e8fc;text-align:center;font-size:.92rem;
}
#orb24-reactman .orb24-rank-empty strong{color:#fff;font-size:1.05rem}
#orb24-reactman .orb24-rank-empty span{color:#d5e2f6}
@media(max-width:820px){
 #orb24-reactman .orb24-reactman-rank-grid{gap:12px}
 #orb24-reactman .orb24-reactman-leaderboards{padding:16px}
}
@media(max-width:620px){
 #orb24-reactman .orb24-reactman-rank-grid{grid-template-columns:1fr}
 #orb24-reactman .orb24-reactman-rank-head{align-items:start}
 #orb24-reactman .orb24-reactman-rank-head>button{width:100%}
 #orb24-reactman .orb24-reactman-rank-card ol{min-height:130px}
}


/* Website Level 1 demo: permanent replay, clear full-game invitation on completion. */
#orb24-reactman .orb24-reactman-demo-end{
  display:flex;flex-direction:column;gap:9px;padding:17px;
  color:#fff;background:linear-gradient(135deg,#12355c,#211c4e);
  border:1px solid #91ddff;border-radius:13px;box-shadow:0 9px 24px rgba(0,0,0,.19);
}
#orb24-reactman .orb24-reactman-demo-end[hidden]{display:none!important}
#orb24-reactman .orb24-reactman-demo-end strong{font-size:1.15rem;letter-spacing:.03em}
#orb24-reactman .orb24-reactman-demo-end p{margin:0;color:#f0f5ff;font-size:1rem;line-height:1.5}
#orb24-reactman .orb24-reactman-demo-end a{
  display:block;text-align:center;padding:12px;border-radius:8px;min-height:48px;
  background:#2f61b4;border:1px solid #b9e7ff;color:#fff;text-decoration:none;font-weight:850
}
#orb24-reactman .orb24-reactman-demo-end a:hover{background:#4578d2}
#reactman-mobile .orb24-reactman-rotate-tip{
  display:none;margin:5px 0 9px;text-align:center;font-size:.89rem;
  font-weight:750;line-height:1.35;color:#f5f7ff;
}

/* Full-width landscape arcade for closed foldables and ordinary candybar phones.
   The maze fills the available height; native arrow controls sit to its right.
   The desktop, tablet and unfolded layouts are deliberately unchanged. */
@media (orientation: landscape) and (max-height: 760px) and (max-width: 1180px){
  #reactman-mobile{width:100%!important;max-width:none!important;padding:2px 4px!important;margin:0!important}
  #reactman-mobile #orb24-reactman{
    width:100%!important;max-width:none!important;margin:0!important;padding:4px!important;
    border:0!important;border-radius:0!important;box-shadow:none!important;
  }
  #reactman-mobile .orb24-reactman-header{margin:0 3px 4px!important;gap:0!important}
  #reactman-mobile .orb24-reactman-header h2{
    font-size:clamp(1.35rem,3.8vh,1.8rem)!important;line-height:1!important;letter-spacing:-.02em!important
  }
  #reactman-mobile .orb24-reactman-kicker,
  #reactman-mobile .orb24-reactman-subtitle,
  #reactman-mobile .orb24-reactman-arcade-mark,
  #reactman-mobile .orb24-reactman-stage-tip,
  #reactman-mobile .orb24-reactman-live,
  #reactman-mobile .orb24-reactman-stage-foot,
  #reactman-mobile .orb24-reactman-side-head,
  #reactman-mobile .orb24-reactman-instructions,
  #reactman-mobile .orb24-reactman-villains{display:none!important}
  #reactman-mobile .orb24-reactman-layout{
    display:grid!important;grid-template-columns:minmax(0,1fr) clamp(188px,27vw,262px)!important;
    align-items:start!important;gap:6px!important
  }
  #reactman-mobile .orb24-reactman-stage{
    min-width:0!important;padding:3px!important;border-radius:9px!important
  }
  #reactman-mobile .orb24-reactman-stage-top{padding:2px 2px 4px!important;gap:3px}
  #reactman-mobile .orb24-reactman-level{
    font-size:clamp(.69rem,2.4vh,.88rem)!important;line-height:1.1!important;letter-spacing:.01em!important
  }
  #reactman-mobile .orb24-reactman-expand{
    padding:3px 6px!important;min-height:28px!important;font-size:.72rem!important
  }
  #reactman-mobile .orb24-reactman-glass{border-radius:7px;border-width:1px}
  #reactman-mobile .orb24-reactman-stage:not(:fullscreen) canvas{
    display:block!important;width:min(100%,calc((100dvh - 71px)*21/15))!important;
    height:auto!important;aspect-ratio:21/15!important;max-height:calc(100dvh - 71px)!important;
    margin-inline:auto
  }
  #reactman-mobile .orb24-reactman-side{
    display:flex!important;flex-direction:column!important;min-width:0;
    align-items:stretch;gap:6px!important;padding:7px!important;border-radius:9px!important
  }
  #reactman-mobile .orb24-reactman-score{order:0;grid-template-columns:1fr 1fr;gap:5px}
  #reactman-mobile .orb24-reactman-score>div{padding:5px!important;gap:2px;min-width:0}
  #reactman-mobile .orb24-reactman-score span{font-size:.55rem!important;letter-spacing:0}
  #reactman-mobile .orb24-reactman-score strong{font-size:clamp(.95rem,3.4vh,1.4rem)!important}
  #reactman-mobile .orb24-reactman-pad{
    order:1;grid-column:auto!important;margin:0!important;padding:2px 0!important;gap:4px
  }
  #reactman-mobile .orb24-reactman-pad>div{gap:5px}
  #reactman-mobile .orb24-reactman-pad button{
    width:clamp(46px,5.8vw,60px)!important;height:clamp(45px,10vh,57px)!important;
    min-width:44px;min-height:44px;font-size:clamp(1.4rem,5vh,1.8rem)!important;
    background:linear-gradient(155deg,#304b82,#142a57);border:1px solid #a8cdf5;
    touch-action:manipulation
  }
  #reactman-mobile .orb24-reactman-mini-stats{order:2;gap:5px}
  #reactman-mobile .orb24-reactman-mini-stats>div{padding:4px 5px!important}
  #reactman-mobile .orb24-reactman-mini-stats span{font-size:.57rem}
  #reactman-mobile .orb24-reactman-mini-stats strong{font-size:.82rem;line-height:1.1}
  #reactman-mobile .orb24-reactman-power{order:3}
  #reactman-mobile .orb24-reactman-actions{order:4;gap:4px}
  #reactman-mobile .orb24-reactman-actions button{
    flex:1 1 calc(50% - 4px);min-height:39px!important;font-size:.75rem!important;
    padding:5px 3px!important;line-height:1.1!important
  }
  #reactman-mobile .orb24-reactman-app-purchases{order:5;margin:2px 0!important;padding:8px!important}
  #reactman-mobile .orb24-reactman-highscore-save{order:6}
  #reactman-mobile .orb24-reactman-rotate-tip{display:none!important}
}
@media (orientation:portrait) and (max-width:680px){
  #reactman-mobile .orb24-reactman-rotate-tip{display:block}
}

/* Classic four-way D-pad: separate UP / LEFT / RIGHT / DOWN with an empty centre. */
#orb24-reactman .orb24-reactman-pad {
  display:grid;grid-template-columns:repeat(3,max-content);grid-template-rows:repeat(3,max-content);
  justify-content:center;justify-items:center;align-items:center;gap:7px;
}
#orb24-reactman .orb24-reactman-pad>div {display:contents}
#orb24-reactman .orb24-reactman-pad [data-reactman-dir="up"] {grid-area:1 / 2}
#orb24-reactman .orb24-reactman-pad [data-reactman-dir="left"] {grid-area:2 / 1}
#orb24-reactman .orb24-reactman-pad [data-reactman-dir="right"] {grid-area:2 / 3}
#orb24-reactman .orb24-reactman-pad [data-reactman-dir="down"] {grid-area:3 / 2}

/* Make landscape play predominantly the maze. Score and D-pad are on the right. */
#orb24-reactman .orb24-reactman-pad [data-reactman-dir] {
  touch-action:none!important;user-select:none;-webkit-user-select:none;
}
@media (orientation: landscape) and (max-height: 760px) and (max-width: 1180px) {
  html:has(#reactman-mobile){overflow:hidden}
  body:has(#reactman-mobile){overflow:hidden}
  #reactman-mobile {height:100dvh;overflow:hidden}
  #reactman-mobile #orb24-reactman {height:100dvh;overflow:hidden}
  #reactman-mobile .orb24-reactman-header,
  #reactman-mobile .orb24-reactman-stage-top,
  #reactman-mobile .orb24-reactman-stage-foot,
  #reactman-mobile .orb24-reactman-leaderboards,
  #reactman-mobile .orb24-reactman-bottom {display:none!important}
  #reactman-mobile .orb24-reactman-layout {
    height:100%;grid-template-columns:minmax(0,1fr) minmax(290px,42%)!important;
    gap:5px!important;align-items:stretch!important
  }
  #reactman-mobile .orb24-reactman-stage{
    display:flex;flex-direction:column;justify-content:center;align-items:center;
    height:100%;min-height:0;padding:2px!important;overflow:hidden
  }
  #reactman-mobile .orb24-reactman-glass {
    flex:0 1 auto;width:fit-content;max-width:100%;margin:auto;
    border:1px solid #8baced!important;overflow:hidden
  }
  #reactman-mobile .orb24-reactman-stage:not(:fullscreen) canvas {
    width:min(100%,calc((100dvh - 11px)*21/15))!important;
    max-height:calc(100dvh - 11px)!important;
    height:auto!important;aspect-ratio:21/15!important;margin:0!important
  }
  #reactman-mobile .orb24-reactman-side {
    height:100%;min-height:0;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;
    padding:4px 7px 7px!important;gap:5px!important;
  }
  #reactman-mobile #orb24-reactman.orb24-reactman-side-ad .orb24-reactman-side{
    padding-top:61px!important;
  }
  #reactman-mobile .orb24-reactman-landscape-level {
    display:block;color:#ffe2ab;font-weight:900;text-align:left;
    font-size:clamp(.76rem,2.45vh,1rem);line-height:1.2;letter-spacing:.04em;
  }
  #reactman-mobile .orb24-reactman-score {order:0}
  #reactman-mobile .orb24-reactman-pad{
    order:1;display:grid!important;grid-template-columns:repeat(3,clamp(45px,5.6vw,65px));
    grid-template-rows:repeat(3,clamp(45px,9.2vh,60px));gap:5px!important;
    align-self:center;justify-self:center
  }
  #reactman-mobile .orb24-reactman-pad>div{display:contents!important}
  #reactman-mobile .orb24-reactman-pad button{
    width:100%!important;height:100%!important;min-width:44px;min-height:44px;
    font-size:clamp(1.5rem,5vh,2rem)!important;
  }
  #reactman-mobile .orb24-reactman-mini-stats{order:2}
  #reactman-mobile .orb24-reactman-power{order:3}
  #reactman-mobile .orb24-reactman-actions{order:4}
  #reactman-mobile .orb24-reactman-app-purchases{order:5}
  #reactman-mobile .orb24-reactman-highscore-save{order:6}
}

#orb24-reactman .orb24-reactman-landscape-level{display:none}
@media (orientation: landscape) and (max-height: 760px) and (max-width: 1180px){
  #reactman-mobile .orb24-reactman-landscape-level{display:block!important}
  #reactman-mobile .orb24-reactman-layout{grid-template-columns:minmax(0,1fr) minmax(320px,42%)!important}
}

/* Alpha2: the entire left pane is the board. Native banner geometry is supplied
   by Android, so ad loads, purchases and cutouts never cover gameplay or controls. */
@media (orientation:landscape){
  #reactman-mobile{width:100%!important;max-width:none!important;margin:0!important;height:100dvh!important;padding:0!important;box-sizing:border-box!important}
  #reactman-mobile #orb24-reactman{width:100%!important;max-width:none!important;margin:0!important;border:0!important;border-radius:0!important;box-shadow:none!important;height:100%!important;padding:0!important;box-sizing:border-box!important}
  #reactman-mobile #orb24-reactman .orb24-reactman-header,
  #reactman-mobile #orb24-reactman .orb24-reactman-stage-top,
  #reactman-mobile #orb24-reactman .orb24-reactman-stage-foot,
  #reactman-mobile #orb24-reactman .orb24-reactman-side-head,
  #reactman-mobile #orb24-reactman .orb24-reactman-instructions,
  #reactman-mobile #orb24-reactman .orb24-reactman-villains,
  #reactman-mobile #orb24-reactman .orb24-reactman-rotate-tip,
  #reactman-mobile #orb24-reactman .orb24-reactman-leaderboards,
  #reactman-mobile #orb24-reactman .orb24-reactman-bottom{display:none!important}
  #reactman-mobile #orb24-reactman .orb24-reactman-layout{
    display:grid!important;align-items:stretch!important;height:100%!important;grid-template-columns:minmax(0,1fr) var(--reactman-side-width,clamp(214px,27vw,280px))!important;
    gap:4px!important;min-height:0!important
  }
  #reactman-mobile #orb24-reactman .orb24-reactman-stage{
    padding:0!important;border:0!important;border-radius:0!important;box-shadow:none!important;
    display:flex!important;align-items:center!important;justify-content:center!important;
    height:100%!important;min-height:0!important;background:#040814!important
  }
  #reactman-mobile #orb24-reactman .orb24-reactman-glass{
    width:min(100%,calc(100dvh * 21 / 15))!important;max-height:100%!important;
    margin:0!important;border:0!important;border-radius:0!important;box-shadow:none!important;
    box-sizing:border-box!important;flex:0 1 auto!important
  }
  #reactman-mobile #orb24-reactman .orb24-reactman-stage:not(:fullscreen) canvas{
    width:100%!important;height:auto!important;max-height:none!important;aspect-ratio:21/15!important
  }
  #reactman-mobile #orb24-reactman .orb24-reactman-side{
    box-sizing:border-box!important;height:100%!important;padding:4px 6px!important;gap:4px!important;
    border-radius:0!important;overflow-y:auto!important;min-height:0!important
  }
  #reactman-mobile #orb24-reactman.orb24-reactman-side-ad .orb24-reactman-side{
    padding-top:calc(var(--reactman-banner-space,0px) + 4px)!important
  }
  #reactman-mobile #orb24-reactman .orb24-reactman-landscape-level{
    display:block!important;order:0;flex:0 0 auto;font-size:12px!important;line-height:16px!important;color:#f6f8ff!important
  }
  #reactman-mobile #orb24-reactman .orb24-reactman-score{order:1;flex:0 0 auto}
  #reactman-mobile #orb24-reactman .orb24-reactman-score>div{padding:4px!important;min-height:40px;box-sizing:border-box}
  #reactman-mobile #orb24-reactman .orb24-reactman-score span{font-size:11px!important;color:#f3f6ff!important}
  #reactman-mobile #orb24-reactman .orb24-reactman-score strong{font-size:20px!important;line-height:22px!important}
  #reactman-mobile #orb24-reactman .orb24-reactman-pad{
    order:2;flex:0 0 auto;grid-template-columns:repeat(3,clamp(46px,6vw,62px))!important;
    grid-template-rows:repeat(3,clamp(44px,11vh,58px))!important;gap:4px!important;padding:0!important
  }
  #reactman-mobile #orb24-reactman .orb24-reactman-actions{
    order:3;flex:0 0 auto;display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:4px!important
  }
  #reactman-mobile #orb24-reactman .orb24-reactman-actions button{
    min-height:44px!important;padding:4px 2px!important;font-size:13px!important;line-height:16px!important
  }
  #reactman-mobile #orb24-reactman .orb24-reactman-mini-stats{order:4;flex:0 0 auto}
  #reactman-mobile #orb24-reactman .orb24-reactman-power{order:5;flex:0 0 auto}
  #reactman-mobile #orb24-reactman .orb24-reactman-app-purchases{order:6;flex:0 0 auto}
  #reactman-mobile #orb24-reactman .orb24-reactman-highscore-save{order:7;flex:0 0 auto}
}
@media (orientation:portrait) and (max-width:680px){
  #reactman-mobile #orb24-reactman .orb24-reactman-stage:not(:fullscreen) canvas{aspect-ratio:21/15!important}
}
