/* Desktop archipelago: one overview, with the exploration pair sharing motion. */
.island-puzzle { display: none; }
@media (min-width: 901px) {
  .island-layer-personality, .island-personality {
    left: 5%; top: 19%; width: 21%; height: 27%;
  }
  .island-layer-hall, .island-hall {
    left: 71%; top: 22%; width: 28%; height: 34%;
  }
  .island-layer-workbench, .island-workbench {
    left: 73%; top: 59%; width: 24%; height: 29%;
  }
  .island-layer-game, .island-game {
    left: 29%; top: 20%; width: 42%; height: 60%;
  }
  .island-layer-guangming, .island-guangming {
    left: 31%; top: 56%; width: 21%; height: 28%;
  }
  .island-puzzle {
    display: grid;
    left: 2%; top: 46%; width: 25%; height: 30%;
    animation: island-float-personality 3.8s ease-in-out -.6s infinite;
  }
  .island-puzzle > .island-base {
    position: absolute; inset: 0; width: 100%; height: 100%;
    object-fit: contain; pointer-events: none; opacity: 1;
  }
  .island-entry .island-module-copy {
    aspect-ratio: 1600 / 643;
    grid-template-rows: 61% 39%;
    background-image: url("./assets/island-module-sign-v2.png");
    background-size: 100% 100%;
    background-position: center top;
    overflow: hidden;
  }
  .island-entry .island-module-copy strong {
    font-size: clamp(19px, 1.65vw, 29px);
    padding: 0;
  }
  .island-entry .island-module-copy small {
    font-size: clamp(12px, 1vw, 17px);
    color: #fff;
  }
  .island-game .island-module-copy {
    background-image: url("./assets/island-module-sign-game-blue-v3.png");
  }
  .island-game .island-module-copy { top: 58%; width: 33%; }
  .island-guangming .island-module-copy { top: 78%; width: 58%; }
  .island-puzzle .island-module-copy {
    left: 50%; top: 77%; width: 52%; transform: translateX(-50%);
  }
  .island-personality .island-module-copy { top: 62%; width: 52%; }
  .island-hall .island-module-copy { top: -4%; width: 44%; }
  .island-workbench .island-module-copy { top: 67%; width: 52%; }
  .island-puzzle:hover, .island-puzzle:focus-visible { filter: brightness(1.06); }
}
@media (prefers-reduced-motion: reduce) {
  .island-puzzle { animation: none !important; }
}
