.game-modal.naming-modal {
  inset: 16px;
  width: auto;
  height: auto;
  max-width: none;
  max-height: none;
  margin: 0;
  padding: 0;
  overflow: hidden;
  border: 2px solid #242321;
  border-radius: 3px;
  background: #f4f1e9;
  box-shadow: 8px 10px 0 #242321;
  color: #2f453f;
}
.game-modal.naming-modal::backdrop {
  background: #203d3678;
  backdrop-filter: blur(4px);
}
.naming-modal.is-open { display: grid; grid-template-rows: 64px minmax(0, 1fr); }
.naming-topline {
  position: relative;
  z-index: 2;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  min-height: 64px;
  padding: 0 18px 0 22px;
  border-bottom: 2px solid #242321;
  background: #faf7ed;
}
.naming-title { display: flex; align-items: center; gap: 13px; min-width: 0; }
.naming-title > span {
  display: grid;
  width: 38px;
  height: 38px;
  place-items: center;
  flex: 0 0 auto;
  border-radius: 2px;
  background: #6f7657;
  color: #fff8e7;
  font: 23px 'KaiTi','STKaiti',serif;
}
.naming-title strong { display: block; font: 19px 'KaiTi','STKaiti',serif; letter-spacing: .12em; }
.naming-title small { display: block; margin-top: 2px; color: #7c7c6e; font-size: 11px; white-space: nowrap; }
.naming-close {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  min-height: 42px;
  padding: 8px 13px;
  border: 2px solid #242321;
  border-radius: 2px;
  background: #fffdf7;
  box-shadow: 3px 3px 0 #242321;
  font-size: 13px;
}
.naming-close b { font: 21px sans-serif; line-height: 1; }
.naming-frame-shell { position: relative; min-height: 0; background: #f4f1e9; }
.naming-frame-shell iframe { display: block; width: 100%; height: 100%; border: 0; background: #f4f1e9; }
.naming-loading {
  position: absolute;
  inset: 0;
  z-index: 1;
  display: grid;
  place-items: center;
  background: #f4f1e9;
  color: #687663;
  font: 15px 'KaiTi','STKaiti',serif;
  letter-spacing: .12em;
}
.naming-frame-shell.is-ready .naming-loading { display: none; }
.naming-frame-shell.is-error .naming-loading { color: #9b4d3c; }
.naming-conversation .scene-tools,
.naming-conversation .journey-hud,
.naming-conversation .character-open,
.naming-conversation .walk-help,
.naming-conversation .touch-walk,
.naming-conversation .touch-run,
.naming-conversation .stage-caption,
.naming-conversation .scene-tooltip { visibility: hidden; }
.naming-conversation > .topbar { visibility: hidden; }

@media (max-width: 680px) {
  .game-modal.naming-modal { inset: 0; border: 0; box-shadow: none; }
  .naming-modal.is-open { grid-template-rows: 58px minmax(0, 1fr); }
  .naming-topline { min-height: 58px; padding: 0 10px 0 13px; }
  .naming-title { gap: 9px; }
  .naming-title > span { width: 34px; height: 34px; font-size: 21px; }
  .naming-title strong { font-size: 16px; }
  .naming-title small { font-size: 9px; }
  .naming-close { min-height: 38px; padding: 6px 9px; box-shadow: 2px 2px 0 #242321; }
  .naming-close > span { display: none; }
}
