.legacy-modal[data-v-7f579c3f] {
  position: relative;
  width: var(--legacy-modal-width);
  max-width: var(--legacy-modal-max-width);
  max-height: var(--legacy-modal-max-height);
  overflow: visible;
  background: var(--legacy-modal-background);
  border-radius: var(--legacy-modal-border-radius);
  box-shadow: var(--legacy-modal-shadow);
  animation: legacyModalFadeIn-7f579c3f 0.3s ease-out;
}
@keyframes legacyModalFadeIn-7f579c3f {
  0% {
    opacity: 0;
    transform: scale(0.9) translateY(-20px);
  }
  to {
    opacity: 1;
    transform: scale(1) translateY(0);
  }
}
.legacy-modal-topbar[data-v-7f579c3f] {
  min-height: var(--legacy-topbar-height);
  border-bottom: 1px solid var(--legacy-topbar-border-color);
  background: var(--legacy-topbar-background);
}
.legacy-close-btn[data-v-7f579c3f] {
  position: absolute;
  top: var(--legacy-close-top);
  right: var(--legacy-close-right);
  z-index: 3;
  display: flex;
  align-items: center;
  justify-content: center;
  width: var(--legacy-close-size);
  height: var(--legacy-close-size);
  padding: 0;
  color: var(--legacy-close-color);
  font-size: var(--legacy-close-font-size);
  cursor: pointer;
  background: var(--legacy-close-background);
  border: 0;
  border-radius: 50%;
  transform: var(--legacy-close-transform);
  transition: all 0.2s;
}
.legacy-close-btn[data-v-7f579c3f]:hover {
  color: var(--legacy-close-hover-color);
  background: var(--legacy-close-hover-background);
}
.legacy-title-badge[data-v-7f579c3f] {
  position: absolute;
  top: -18px;
  left: 50%;
  z-index: 2;
  width: 200px;
  min-height: 52px;
  transform: translate(-50%);
  pointer-events: none;
}
.legacy-title-badge-bg[data-v-7f579c3f] {
  display: block;
  width: 100%;
  height: 52px;
  background: var(--legacy-title-badge-fill);
  -webkit-mask-image: var(--legacy-title-badge-image);
  mask-image: var(--legacy-title-badge-image);
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;
  -webkit-mask-size: 100% 100%;
  mask-size: 100% 100%;
}
.legacy-title-text[data-v-7f579c3f] {
  position: absolute;
  inset: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 1px;
  padding: 7px 22px 6px;
  box-sizing: border-box;
  color: #fff;
  font-weight: 700;
  line-height: 1.05;
  text-align: center;
  text-shadow: var(--legacy-title-text-shadow);
}
.legacy-title-site[data-v-7f579c3f],
.legacy-title-subtitle[data-v-7f579c3f] {
  display: block;
  max-width: 118px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.legacy-title-site[data-v-7f579c3f] {
  font-size: 13px;
}
.legacy-title-subtitle[data-v-7f579c3f] {
  font-size: 17px;
}
.legacy-modal-content[data-v-7f579c3f] {
  max-height: calc(
    var(--legacy-modal-max-height) - var(--legacy-topbar-height)
  );
  overflow-y: auto;
  background: var(--legacy-content-background);
}
@media (max-width: 480px) {
  .legacy-title-badge[data-v-7f579c3f] {
    top: -17px;
    width: 190px;
    min-height: 48px;
  }
  .legacy-title-badge-bg[data-v-7f579c3f] {
    height: 48px;
  }
  .legacy-title-text[data-v-7f579c3f] {
    padding: 6px 20px 5px;
  }
  .legacy-title-site[data-v-7f579c3f],
  .legacy-title-subtitle[data-v-7f579c3f] {
    max-width: 108px;
  }
  .legacy-title-site[data-v-7f579c3f] {
    font-size: 12px;
  }
  .legacy-title-subtitle[data-v-7f579c3f] {
    font-size: 16px;
  }
}
.legacy-ball-card-body[data-v-f17ec7b1] {
  padding: var(--legacy-body-padding);
}
.legacy-card-group[data-v-f17ec7b1] {
  margin-bottom: 24px;
  padding: 16px;
  background: var(--legacy-group-background);
  border: 1px solid var(--legacy-group-border-color);
  border-radius: 8px;
}
.legacy-card-group[data-v-f17ec7b1]:last-child {
  margin-bottom: 0;
}
.legacy-card-title[data-v-f17ec7b1] {
  margin-bottom: 12px;
  color: var(--legacy-group-title-color);
  font-size: 16px;
  font-weight: 600;
  text-align: center;
}
.legacy-zodiac-row[data-v-f17ec7b1],
.legacy-number-row[data-v-f17ec7b1] {
  display: flex;
  gap: 8px;
  justify-content: center;
}
.legacy-zodiac-row[data-v-f17ec7b1] {
  margin-bottom: 12px;
  flex-wrap: wrap;
}
.legacy-number-row[data-v-f17ec7b1] {
  flex-wrap: nowrap;
}
.legacy-number-row[data-v-f17ec7b1] {
  width: 100%;
  max-width: 376px;
  margin: 0 auto 8px;
  min-width: 0;
  gap: clamp(2px, 1.6vw, 8px);
}
.legacy-zodiac-ball[data-v-f17ec7b1] {
  display: flex;
  align-items: center;
  justify-content: center;
  width: clamp(30px, 9vw, 42px);
  height: clamp(30px, 9vw, 42px);
  color: var(--legacy-zodiac-color);
  font-size: clamp(13px, 3.5vw, 16px);
  font-weight: 600;
  background: var(--legacy-zodiac-background);
  border: 2px solid var(--legacy-zodiac-border-color);
  border-radius: 50%;
  transition: transform 0.2s;
}
.legacy-zodiac-ball[data-v-f17ec7b1]:hover {
  background: var(--legacy-zodiac-hover-background);
  transform: scale(1.08);
}
.legacy-number-ball[data-v-f17ec7b1] {
  display: flex;
  flex: 0 0 min(40px, calc((100% - 56px) / 8));
  align-items: center;
  justify-content: center;
  width: min(40px, calc((100% - 56px) / 8));
  min-width: 0;
  height: auto;
  aspect-ratio: 1;
  box-sizing: border-box;
  font-size: clamp(9px, 3.2vw, 14px);
  font-weight: 600;
  border-radius: 50%;
}
.legacy-number-ball--image[data-v-f17ec7b1] {
  color: #333;
  border: 0;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  text-shadow: 0 0 1px rgba(255, 255, 255, 0.6);
}
.legacy-copy-section[data-v-f17ec7b1] {
  margin-top: 16px;
  text-align: center;
}
.legacy-copy-btn[data-v-f17ec7b1] {
  padding: 8px 16px;
  color: #fff;
  font-size: 14px;
  cursor: pointer;
  background: var(--legacy-copy-background);
  border: 0;
  border-radius: 6px;
  transition: background 0.2s;
}
.legacy-copy-btn[data-v-f17ec7b1]:hover {
  background: var(--legacy-copy-hover-background);
}
@media (max-width: 600px) {
  .legacy-ball-card-body[data-v-f17ec7b1] {
    padding: 16px;
  }
  .legacy-card-group[data-v-f17ec7b1] {
    margin-bottom: 16px;
    padding: 12px;
  }
}
@media (max-width: 480px) {
  .legacy-ball-card-body[data-v-f17ec7b1] {
    padding: 12px;
  }
  .legacy-card-group[data-v-f17ec7b1] {
    margin-bottom: 12px;
    padding: 10px;
  }
  .legacy-card-title[data-v-f17ec7b1] {
    margin-bottom: 10px;
    font-size: 14px;
  }
  .legacy-copy-btn[data-v-f17ec7b1] {
    padding: 6px 12px;
    font-size: 12px;
  }
}
.sxbm-modal-overlay[data-v-aabb1e6c] {
  position: fixed;
  inset: 0;
  z-index: 1000;
  box-sizing: border-box;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100vw;
  min-height: 100vh;
  padding: 20px;
  overflow-x: hidden;
  overflow-y: auto;
  background: #00000080;
}
@media (max-width: 480px) {
  .sxbm-modal-overlay[data-v-aabb1e6c] {
    padding: 12px;
  }
}
