.continent-body {
  position: absolute;
  left: calc(var(--u) * 40);
  right: calc(var(--u) * 40);
  top: calc(var(--u) * 222);
  bottom: calc(var(--u) * 196);
  display: flex;
  flex-direction: column;
  gap: calc(var(--u) * 18);
}
.continent-ladder { list-style: none; display: flex; flex-direction: column; gap: calc(var(--u) * 12); min-height: 0; }
.continent-node {
  display: flex;
  align-items: center;
  gap: calc(var(--u) * 18);
  padding: calc(var(--u) * 12) calc(var(--u) * 20);
  animation: title-drop 380ms ease-out backwards;
}
.continent-node .continent-face { width: calc(var(--u) * 80); height: calc(var(--u) * 80); }
.continent-node-text { flex: 1; min-width: 0; display: flex; flex-direction: column; align-items: flex-start; gap: calc(var(--u) * 2); }
.continent-tag {
  padding: calc(var(--u) * 1) calc(var(--u) * 10);
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.12);
  font-size: calc(var(--u) * 16);
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #e9d6a0;
}
.continent-tag.is-boss { background: linear-gradient(180deg, #e0573b, #a32a1c); color: #fff; }
.continent-node-name { font-family: var(--display); font-size: calc(var(--u) * 30); line-height: 1.1; text-transform: uppercase; color: #fff4d0; }
.continent-node-hint { font-size: calc(var(--u) * 20); color: #e9d6a0; }
.continent-mark {
  flex: none;
  display: grid;
  place-items: center;
  width: calc(var(--u) * 52);
  height: calc(var(--u) * 52);
  border-radius: 50%;
  border: calc(var(--u) * 3) solid rgba(242, 193, 78, 0.5);
  font-family: var(--display);
  font-size: calc(var(--u) * 26);
  color: #e9d6a0;
}
.continent-mark .bp-icon { width: 60%; height: 60%; }
.continent-node.is-won { opacity: 0.72; }
.continent-node.is-won .continent-mark { background: var(--gold); border-color: var(--gold-hi); color: #1a1102; }
.continent-node.is-next { border-color: var(--gold-hi); box-shadow: 0 0 0 calc(var(--u) * 2) #3a2605, 0 0 calc(var(--u) * 30) rgba(242, 182, 50, 0.55); }
.continent-node.is-next .continent-mark { background: var(--gold); color: #1a1102; border-color: var(--gold-hi); }
.continent-node.is-ahead { filter: saturate(0.5) brightness(0.8); }

.continent-side { display: flex; flex-direction: column; gap: calc(var(--u) * 18); min-height: 0; }
.continent-taunt {
  margin: 0;
  padding: calc(var(--u) * 14) calc(var(--u) * 22);
  border-radius: calc(var(--u) * 20);
  background: #fff4d8;
  color: #1a1405;
  font-size: calc(var(--u) * 22);
  font-weight: 700;
  font-style: italic;
  line-height: 1.3;
  text-align: left;
  box-shadow: 0 calc(var(--u) * 8) calc(var(--u) * 20) rgba(0, 0, 0, 0.5);
}
.continent-you { display: flex; flex-direction: column; gap: calc(var(--u) * 12); padding: calc(var(--u) * 18) calc(var(--u) * 24); }
.continent-you-top { display: flex; align-items: center; gap: calc(var(--u) * 16); }
.continent-you-top .bp-avatar { width: calc(var(--u) * 64); height: calc(var(--u) * 64); }
.continent-you-text { flex: 1; min-width: 0; display: flex; flex-direction: column; }
.continent-you-text small { font-size: calc(var(--u) * 17); text-transform: uppercase; letter-spacing: 0.08em; color: #e9d6a0; }
.continent-you-text b { font-family: var(--display); font-size: calc(var(--u) * 28); text-transform: uppercase; color: var(--gold); }

[data-layout="landscape"] .continent-body { top: calc(var(--u) * 136); bottom: calc(var(--u) * 128); left: calc(var(--u) * 60); right: calc(var(--u) * 60); flex-direction: row; gap: calc(var(--u) * 28); }
[data-layout="landscape"] .continent-ladder { flex: 1.15; justify-content: center; gap: calc(var(--u) * 8); }
[data-layout="landscape"] .continent-node { padding: calc(var(--u) * 8) calc(var(--u) * 18); }
[data-layout="landscape"] .continent-node .continent-face { width: calc(var(--u) * 66); height: calc(var(--u) * 66); }
[data-layout="landscape"] .continent-node-name { font-size: calc(var(--u) * 26); }
[data-layout="landscape"] .continent-side { flex: 1; justify-content: center; }
