/* Shared edges and spacing for the playable story, including narrow phones. */
.escape-page .escape-stage {
  --stage-space: clamp(16px, 3vw, 24px);
  margin: 0;
  padding: 0 var(--stage-space) 28px;
}
.escape-page .escape-stage__header { padding: 24px 0 16px !important; }
.escape-page .escape-stage-title { margin: 0; font-size: clamp(22px, 4vw, 28px) !important; line-height: 1.4; }
.escape-page .escape-stage-title,
.escape-page .escape-stage { scroll-margin-top: 84px; }
.escape-page .haechi-companion {
  margin: 0 0 20px;
  padding: 12px 16px;
  border-left: 3px solid #608c7d;
  background: #edf4f0;
  border-radius: 0 12px 12px 0;
}
.escape-page .haechi-companion strong { font-size: 12px; }
.escape-page .haechi-companion p { margin: 4px 0 0; font-size: 14px; line-height: 1.65; }
.escape-page .escape-question { padding: 0; gap: 0; justify-content: flex-start; }
.escape-page .escape-question .ssam-act {
  margin: 0 0 20px;
  padding: clamp(16px, 3vw, 22px);
  background: #fff;
  border: 1px solid #d9e2dc;
  border-radius: 16px;
  box-shadow: 0 3px 12px #183d2f05;
}
.escape-page .ssam-act__title { margin: 0 0 16px; font-size: 15px; line-height: 1.5; color: #26483d; align-items: flex-start; }
.escape-page .ssam-act__title svg { margin-top: 3px; }
.escape-page .ssam-act-quiz__meta { gap: 12px; margin: 0 0 16px; color: #597167; flex-wrap: wrap; }
.escape-page .ssam-act-quiz__digits { gap: 6px; }
.escape-page .ssam-act-quiz__digit { width: 30px; height: 36px; border-color: #c3d3ca; }
.escape-page .ssam-act-quiz__q { margin: 0 0 14px; font-size: 16px; line-height: 1.6; color: #213c33; word-break: keep-all; overflow-wrap: anywhere; }
.escape-page .ssam-act-quiz__choices { gap: 10px; }
.escape-page .ssam-act-quiz__choice { min-height: 48px; padding: 12px 14px; font-size: 15px; line-height: 1.5; border-color: #bdcec4; }
.escape-page .ssam-act__hint { margin: 14px 0 0; font-size: 13px; line-height: 1.6; color: #62766c; }
.escape-page .escape-answer-fallback__note { display: none; }
.escape-page .escape-answer { margin: 0; }
.escape-page .story-picture-help,
.escape-page .haechi-context,
.escape-page .escape-answer-fallback { margin: 0; border-top: 1px solid #d9e2dc !important; }
.escape-page .story-picture-help > summary,
.escape-page .haechi-context > summary,
.escape-page .escape-answer-fallback > summary {
  min-height: 52px;
  padding: 15px 4px;
  font-size: 14px;
  line-height: 22px;
  color: #385d50;
}
.escape-page .escape-answer-fallback .escape-answer-form { margin: 0; padding: 4px 0 16px; }
.escape-page .escape-answer-fallback .escape-answer-row { gap: 10px; }
.escape-page .haechi-context .escape-prompt { padding: 0 4px 14px; }
.escape-page .haechi-context .escape-clue { margin: 0 0 16px; }
.escape-page .escape-hints { margin: 8px 0 0; padding: 16px 0 0 !important; border-top: 1px solid #d9e2dc; }
.escape-page .escape-hints__title { margin: 0 0 10px; font-size: 14px; }
.escape-page .escape-hint-button { min-height: 44px; padding: 10px 14px; font-size: 14px; }
.escape-page .escape-feedback { margin: 12px 0 0; line-height: 1.6; }
.escape-page .escape-question button:focus-visible,
.escape-page .escape-question summary:focus-visible { outline: 3px solid #277764; outline-offset: 3px; }
