/* ── Shared Skyy Pro lock badge + upgrade prompt ── */

/* Legacy inline PRO pill (legacy edit-profile targets) */
.skyy-pro-lock {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  margin-left: 8px;
  padding: 2px 7px;
  border-radius: 999px;
  border: 1px solid hsla(280, 75%, 68%, 0.45);
  background: rgba(28, 28, 30, 0.92);
  color: hsl(280, 88%, 78%);
  font-size: 0.62rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  line-height: 1.2;
  vertical-align: middle;
  box-shadow: 0 0 10px hsla(280, 85%, 58%, 0.16);
  pointer-events: none;
  user-select: none;
}

.profile-bg-category-accordion__label .skyy-pro-lock,
.site-bg-type-tab .skyy-pro-lock,
.verification-style-option__label .skyy-pro-lock,
.theme-menu__option .skyy-pro-lock {
  margin-left: 6px;
}

html[data-owner-pro="true"] .skyy-pro-lock {
  display: none !important;
}

/* ── Reusable Pro-locked selectable option presentation ── */

.is-pro-locked {
  position: relative;
  cursor: pointer;
}

.is-pro-locked .skyy-pro-lockable__content {
  display: flex;
  flex-direction: inherit;
  align-items: inherit;
  justify-content: inherit;
  gap: inherit;
  width: 100%;
  filter: grayscale(0.42) brightness(0.78) saturate(0.72);
}

.skyy-pro-star-badge {
  position: absolute;
  top: 6px;
  right: 6px;
  z-index: 2;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 18px;
  height: 18px;
  pointer-events: none;
}

.site-bg-type-tab .skyy-pro-star-badge {
  top: 3px;
  right: 3px;
  width: 11px;
  height: 11px;
}

.skyy-pro-star {
  width: 14px;
  height: 14px;
  display: block;
  fill: hsl(330, 100%, 62%);
  filter: drop-shadow(0 0 3px hsla(280, 100%, 62%, 0.45));
  animation: skyy-pro-star-hue 3.6s linear infinite;
}

.site-bg-type-tab .skyy-pro-star-badge .skyy-pro-star {
  width: 9px;
  height: 9px;
}

.pro-lock-dialog__star .skyy-pro-star {
  width: 28px;
  height: 28px;
}

@keyframes skyy-pro-star-hue {
  0% {
    fill: hsl(0, 100%, 58%);
    filter: drop-shadow(0 0 4px hsla(0, 100%, 58%, 0.5));
  }
  16% {
    fill: hsl(45, 100%, 55%);
    filter: drop-shadow(0 0 4px hsla(45, 100%, 55%, 0.5));
  }
  33% {
    fill: hsl(90, 85%, 48%);
    filter: drop-shadow(0 0 4px hsla(90, 85%, 48%, 0.5));
  }
  50% {
    fill: hsl(180, 100%, 48%);
    filter: drop-shadow(0 0 4px hsla(180, 100%, 48%, 0.5));
  }
  66% {
    fill: hsl(240, 90%, 62%);
    filter: drop-shadow(0 0 4px hsla(240, 90%, 62%, 0.5));
  }
  83% {
    fill: hsl(290, 95%, 62%);
    filter: drop-shadow(0 0 4px hsla(290, 95%, 62%, 0.5));
  }
  100% {
    fill: hsl(360, 100%, 58%);
    filter: drop-shadow(0 0 4px hsla(360, 100%, 58%, 0.5));
  }
}

@media (prefers-reduced-motion: reduce) {
  .skyy-pro-star {
    animation: none;
    fill: hsl(280, 95%, 62%);
    filter: drop-shadow(0 0 4px hsla(280, 95%, 62%, 0.45));
  }
}

.pro-lock-overlay {
  position: fixed;
  inset: 0;
  z-index: 12000;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 24px;
  background: rgba(0, 0, 0, 0.62);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
}

.pro-lock-overlay[hidden] {
  display: none !important;
}

.pro-lock-dialog {
  width: min(100%, 360px);
  padding: 28px 24px 22px;
  border-radius: 18px;
  border: 1px solid hsla(280, 70%, 62%, 0.28);
  background: rgba(18, 18, 22, 0.96);
  box-shadow:
    0 0 28px hsla(280, 80%, 58%, 0.14),
    0 18px 40px rgba(0, 0, 0, 0.45);
  text-align: center;
}

.pro-lock-dialog__star {
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 auto 12px;
  width: 36px;
  height: 36px;
}

.pro-lock-dialog__title {
  margin: 0 0 8px;
  font-size: 1.15rem;
  font-weight: 700;
  letter-spacing: 0.01em;
  color: rgba(255, 255, 255, 0.95);
}

.pro-lock-dialog__text {
  margin: 0 0 22px;
  font-size: 0.92rem;
  line-height: 1.45;
  color: rgba(255, 255, 255, 0.72);
}

.pro-lock-dialog__actions {
  display: flex;
  gap: 10px;
  justify-content: center;
}

.pro-lock-dialog__btn {
  min-width: 108px;
  padding: 11px 16px;
  border-radius: 999px;
  border: 1px solid transparent;
  font: inherit;
  font-size: 0.88rem;
  font-weight: 600;
  cursor: pointer;
  transition:
    transform var(--transition, 0.18s ease),
    box-shadow var(--transition, 0.18s ease),
    border-color var(--transition, 0.18s ease);
}

.pro-lock-dialog__btn--primary {
  border-color: hsla(280, 80%, 62%, 0.45);
  background: rgba(28, 28, 30, 0.92);
  color: hsl(280, 88%, 82%);
  box-shadow: 0 0 14px hsla(280, 85%, 58%, 0.18);
}

.pro-lock-dialog__btn--primary:hover,
.pro-lock-dialog__btn--primary:focus-visible {
  transform: scale(1.03);
  outline: none;
  box-shadow: 0 0 20px hsla(280, 90%, 58%, 0.28);
}

.pro-lock-dialog__btn--ghost {
  background: transparent;
  border-color: rgba(255, 255, 255, 0.14);
  color: rgba(255, 255, 255, 0.72);
}

.pro-lock-dialog__btn--ghost:hover,
.pro-lock-dialog__btn--ghost:focus-visible {
  border-color: rgba(255, 255, 255, 0.28);
  color: rgba(255, 255, 255, 0.9);
  outline: none;
}
