/* X player embed. /play is the board only. */
.x-board {
  position: fixed;
  inset: 0;
  margin: 0;
  padding: 0;
  background: #050506;
  overflow: hidden;
}

.x-board .w-full,
.x-board .game-stage,
.x-board .game-shell {
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  max-height: none !important;
  min-height: 0 !important;
  aspect-ratio: auto !important;
  margin: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

.x-board .field-ready,
.x-board .game-rails,
.x-board .game-controls-bottom,
.x-board .game-rotate-hint,
.x-board .w-full > .mt-3,
.x-board .w-full > p {
  display: none !important;
}

a.x-board-full,
button.x-board-story {
  position: absolute;
  z-index: 40;
  top: max(3.25rem, calc(env(safe-area-inset-top) + 3rem));
  border: 0;
  background: transparent;
  color: rgba(228, 208, 160, 0.78);
  font-family: "DM Sans", system-ui, sans-serif;
  font-size: 0.8125rem;
  font-weight: 500;
  letter-spacing: 0.01em;
  line-height: 1;
  text-decoration: none;
  filter: drop-shadow(0 1px 8px rgba(0, 0, 0, 0.9));
  cursor: pointer;
}

a.x-board-full {
  left: max(0.55rem, env(safe-area-inset-left));
  width: 32px;
  height: 32px;
  min-width: 32px;
  min-height: 32px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0;
}

button.x-board-story {
  left: calc(max(0.55rem, env(safe-area-inset-left)) + 34px);
  min-height: 32px;
  padding: 0 0.2rem;
}

a.x-board-full svg {
  width: 18px;
  height: 18px;
  flex: none;
}

a.x-board-full:hover,
button.x-board-story:hover {
  color: #e4d0a0;
}

.x-story {
  position: absolute;
  inset: 0;
  z-index: 60;
  overflow: auto;
  display: flex;
  justify-content: center;
  padding: 1.15rem 1.25rem 1.35rem;
  background: rgba(5, 5, 6, 0.94);
  color: #e4d0a0;
}

.x-story-rail {
  width: min(26rem, 100%);
  max-width: 100%;
  min-width: 0;
  margin-inline: auto;
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
}

.x-story-kicker {
  margin: 0;
  font-family: "DM Sans", system-ui, sans-serif;
  font-size: 0.68rem;
  font-weight: 500;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: rgba(228, 208, 160, 0.72);
}

.x-story p {
  margin: 0.7rem 0 0;
  width: 100%;
  font-family: Fraunces, Georgia, serif;
  font-size: 0.95rem;
  font-weight: 460;
  line-height: 1.38;
  color: #e4d0a0;
  text-align: center;
}

.x-story-lead {
  margin-top: 0.4rem !important;
  font-size: 1.28rem !important;
  line-height: 1.2 !important;
}

.x-story-quote {
  font-family: "EB Garamond", Georgia, serif !important;
  font-style: italic;
  font-size: 1.05rem !important;
}

.x-story-back {
  margin-top: 0.95rem;
  min-height: 2.75rem;
  padding: 0.45rem 1.05rem;
  border-radius: 999px;
  border: 1px solid rgba(228, 208, 160, 0.45);
  background: transparent;
  color: #e4d0a0;
  font-family: "DM Sans", system-ui, sans-serif;
  font-size: 0.875rem;
  cursor: pointer;
}

.x-story-back:hover {
  border-color: #e4d0a0;
  color: #f2f2f4;
}
