.scene-surface {
  position:absolute;
  left:var(--scene-x);
  top:var(--scene-y);
  width:var(--scene-width);
  height:var(--scene-height);
}
.standby-scene { display:flex; flex-direction:column; }
.standby-label {
  height:64px;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:28px;
  text-shadow:0 0 22px rgba(39,230,255,.42);
}
.standby-main-panel {
  position:relative;
  height:370px;
  margin-top:18px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  padding:40px 48px;
  border:2px solid var(--border-strong);
  border-radius:34px;
  background:
    radial-gradient(circle at 50% 20%, rgba(46,126,255,.17), transparent 55%),
    linear-gradient(160deg, rgba(15,31,68,.98), rgba(5,11,28,.98));
  box-shadow:var(--shadow-cyan), inset 0 1px 0 rgba(255,255,255,.05);
  overflow:hidden;
}
.standby-main-panel::before {
  content:"";
  position:absolute;
  left:60px;
  right:60px;
  top:0;
  height:3px;
  background:linear-gradient(90deg, transparent, var(--color-cyan), var(--color-indigo), transparent);
}
.standby-brand { font-size:96px; text-align:center; text-shadow:0 0 28px rgba(39,230,255,.2); }
.standby-brand .rush { color:var(--color-cyan); }
.standby-ready {
  margin-top:34px;
  display:flex;
  align-items:center;
  gap:16px;
  color:var(--color-white);
  font-size:48px;
  font-weight:900;
  letter-spacing:.06em;
}
.ready-pulse {
  width:18px;
  height:18px;
  border-radius:50%;
  background:var(--color-green);
  box-shadow:0 0 16px rgba(56,236,146,.78);
  animation: ready-breathe 2.2s ease-in-out infinite;
}
@keyframes ready-breathe { 0%,100% { transform:scale(.86); opacity:.72; } 50% { transform:scale(1); opacity:1; } }
.standby-message { margin-top:18px; color:var(--color-muted); text-align:center; }
.standby-readiness-panel {
  height:294px;
  margin-top:28px;
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:18px;
}
.readiness-item {
  position:relative;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:15px;
  border:2px solid var(--border-soft);
  border-radius:var(--radius-medium);
  background:linear-gradient(160deg, rgba(14,30,64,.9), rgba(5,11,27,.95));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04);
  overflow:hidden;
}
.readiness-item::after {
  content:"";
  position:absolute;
  left:20px;
  right:20px;
  bottom:0;
  height:2px;
  opacity:.65;
  background:linear-gradient(90deg, transparent, var(--color-cyan), transparent);
}
.readiness-icon {
  width:70px;
  height:70px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:22px;
  color:var(--color-cyan);
  background:rgba(39,230,255,.08);
  border:1px solid rgba(39,230,255,.28);
  font-size:34px;
  font-weight:900;
}
.readiness-item span { color:var(--color-muted); font-size:21px; font-weight:850; letter-spacing:.1em; }
.readiness-item strong { color:var(--color-white); font-size:30px; font-weight:900; text-align:center; line-height:1.1; }
.safe-standby-scene { display:flex; align-items:center; justify-content:center; }
.safe-standby-panel {
  position:relative;
  width:100%;
  min-height:540px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  padding:60px;
  border:2px solid var(--border-medium);
  border-radius:36px;
  background:
    radial-gradient(circle at 50% 20%, rgba(39,230,255,.13), transparent 52%),
    linear-gradient(160deg, rgba(13,27,59,.97), rgba(4,9,23,.98));
  box-shadow:var(--shadow-cyan);
}
.safe-standby-title { margin-top:38px; font-size:82px; text-align:center; max-width:900px; }
.safe-standby-copy { margin-top:28px; color:var(--color-muted); text-align:center; }
.safe-standby-mark {
  width:96px;
  height:6px;
  margin-bottom:32px;
  border-radius:6px;
  background:linear-gradient(90deg,var(--color-cyan),var(--color-indigo));
  box-shadow:0 0 22px rgba(39,230,255,.32);
}

/* Emoji Decode — dedicated non-overlapping puzzle layout */
.free-response-scene.is-emoji-decode .free-response-question-panel{top:62px;height:470px;min-height:0;padding:58px 38px 24px;display:flex;flex-direction:column;justify-content:center}
.free-response-scene.is-emoji-decode .free-response-question-text{height:360px;font-family:"Apple Color Emoji","Segoe UI Emoji","Noto Color Emoji",sans-serif;letter-spacing:.055em;text-align:center;line-height:1.05;white-space:normal;overflow-wrap:normal;word-break:keep-all}
.free-response-scene.is-emoji-decode .free-response-question-kicker{left:28px;top:18px;font-size:27px;letter-spacing:.08em}
.free-response-scene.is-emoji-decode .free-response-answer-stage{top:548px;height:220px}
.free-response-scene.is-emoji-decode .free-response-active-state{padding:22px 34px 58px;justify-content:center}
.free-response-scene.is-emoji-decode .free-response-chat-mark{width:70px;height:70px;margin-bottom:10px;border-radius:20px;font-size:38px}
.free-response-scene.is-emoji-decode .free-response-chat-kicker{font-size:34px;line-height:1.05}
.free-response-scene.is-emoji-decode .free-response-chat-example{margin-top:7px;font-size:21px}
.free-response-scene.is-emoji-decode .free-response-response-meter{bottom:10px;height:42px;font-size:16px}
.free-response-scene.is-emoji-decode .free-response-response-meter strong{font-size:27px}
.free-response-scene.is-emoji-decode .free-response-lock-sweep{top:548px;height:220px}
