/* One tab at a time plays the game (js/onetab.js).
   The card outranks EVERYTHING — the boot splash (60), every overlay, the
   voice pill, a run's canvas — because a parked tab must not be usable at
   all. Its own stylesheet, per the standing rule for a new feature's CSS. */
#onetab-block {
  position: fixed; inset: 0; z-index: 100000;
  display: flex; align-items: center; justify-content: center;
  padding: 20px;
  background: radial-gradient(ellipse at 50% 30%, rgba(24,26,48,.96), rgba(4,5,10,.985));
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  color: #e8ecf5;
  font-family: "Avenir Next", "Segoe UI", system-ui, sans-serif;
}
#onetab-block.hidden { display: none; }

.ot-card {
  width: min(94vw, 460px);
  text-align: center;
  padding: 26px 24px 20px;
  border-radius: 18px;
  background: linear-gradient(180deg, #171a28, #10121c);
  border: 1px solid rgba(120,140,190,.28);
  box-shadow: 0 26px 70px rgba(0,0,0,.6);
}
.ot-icon { font-size: 40px; line-height: 1; }
.ot-title {
  margin: 10px 0 0; font-size: 21px; font-weight: 800; letter-spacing: .2px;
  color: #fff;
}
.ot-say { margin: 10px 0 18px; font-size: 14px; line-height: 1.5; color: #a9b3c6; }
.ot-btns { display: flex; flex-direction: column; gap: 8px; }
.ot-btns button {
  width: 100%; padding: 12px 14px; border-radius: 11px;
  font: 700 15px/1.2 inherit; cursor: pointer;
  border: 1px solid rgba(120,140,190,.3);
  background: #1d2130; color: #dfe6f3;
  transition: filter .12s, transform .06s;
}
.ot-btns button:hover { filter: brightness(1.18); }
.ot-btns button:active { transform: translateY(1px); }
.ot-btns .ot-go {
  border-color: transparent;
  background: linear-gradient(180deg, #34d3ff, #1f7fd0);
  color: #06131d;
}
.ot-fine { margin: 14px 0 0; font-size: 12px; color: #6f7b91; }
