/* birthday-index-v1: fixed slots on a 1206 × 2622 design canvas. */
html { background: #a8c184; }
body {
  margin: 0;
  font-family: -apple-system, BlinkMacSystemFont, "PingFang SC", "Microsoft YaHei", sans-serif;
  color: #302c21;
}
.page-shell {
  position: relative;
  width: 100%;
  max-width: 560px;
  margin: 0 auto;
  aspect-ratio: 1206 / 2622;
  isolation: isolate;
}
.page-background { display: block; width: 100%; height: auto; }
.page-logo {
  position: absolute;
  top: 9.45%;
  left: 50%;
  width: 43.035%;
  height: auto;
  transform: translateX(-50%);
}
.entry-btn {
  position: absolute;
  top: 74.2%;
  left: 50%;
  width: 45.522%;
  transform: translateX(-50%);
  -webkit-tap-highlight-color: transparent;
}
.entry-btn img { display: block; width: 100%; height: auto; }
.entry-btn:focus-visible { outline: 3px solid #225b92; outline-offset: 6px; border-radius: 12px; }
.entry-btn:active { transform: translateX(-50%) scale(.97); }
.page-footer-note {
  position: absolute;
  left: 3%;
  right: 3%;
  bottom: max(2.6%, env(safe-area-inset-bottom));
  text-align: center;
  font-size: clamp(8px, 2.25vw, 12px);
  line-height: 1.6;
  font-weight: 600;
}
.page-footer-note .global-footer-note__license {
  display: flex;
  flex-wrap: wrap;
  margin-top: 4px;
  gap: 0 8px;
  font-size: clamp(7px, 1.9vw, 9px);
  font-weight: 400;
}
.page-footer-note .global-footer-note__license img { width: 12px; height: 12px; }
