#lanes.vacant-hidden { display: none !important; }
#app.vacant-play .side-panel { opacity: 0.28; }
#vacant-board {
  position: absolute;
  inset: 10% 5% 12%;
  z-index: 5;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-end;
  gap: 14px;
}
#vacant-board[hidden] { display: none !important; }
#vacant-line {
  margin: 0;
  text-align: center;
  font-size: clamp(14px, 3.2vw, 22px);
  letter-spacing: 0.14em;
  color: #f4ead4;
  text-shadow: 0 0 18px rgba(215,236,255,0.4);
  min-height: 2.2em;
}
.vb-stage {
  position: relative;
  width: min(560px, 100%);
  height: 160px;
  border-radius: 18px;
  overflow: hidden;
  background:
    radial-gradient(ellipse at 50% 0%, rgba(215,236,255,0.16), transparent 55%),
    linear-gradient(180deg, #120c16, #07040a);
  border: 1px solid rgba(201,163,106,0.4);
}
.vb-stage.in-light { box-shadow: 0 0 28px rgba(126,200,255,0.28); }
.vb-light {
  position: absolute;
  top: -20%;
  width: 34%;
  height: 140%;
  transform: translateX(-50%);
  background: radial-gradient(ellipse at 50% 20%, rgba(215,236,255,0.7), rgba(215,236,255,0.08) 55%, transparent 70%);
  pointer-events: none;
}
.vb-you {
  position: absolute;
  bottom: 14px;
  width: 22px;
  height: 42px;
  margin-left: -11px;
  border-radius: 10px 10px 4px 4px;
  background: linear-gradient(180deg, #f4ead4, #c9a36a);
  box-shadow: 0 0 16px rgba(215,236,255,0.55);
}
.vb-hp {
  width: min(560px, 100%);
  height: 7px;
  border-radius: 99px;
  background: rgba(255,255,255,0.08);
  overflow: hidden;
}
.vb-hp i {
  display: block;
  width: 100%;
  height: 100%;
  transform-origin: left center;
  background: linear-gradient(90deg, #c45b7a, #d7ecff);
}
.vb-keys {
  width: min(560px, 100%);
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
}
.vb-key {
  appearance: none;
  min-height: 56px;
  border-radius: 16px;
  border: 1px solid rgba(201,163,106,0.55);
  background: #120c12;
  color: #f4ead4;
  letter-spacing: 0.16em;
  font: inherit;
}
.vb-key:active { background: #2a1c18; }
.vb-status {
  margin: 0 0 6px;
  letter-spacing: 0.16em;
  font-size: 11px;
  color: #c9a36a;
}
