/* Membership+ plan selection & tier checkmarks */
.yal-plan-check-preview {
  display: inline-flex;
  align-items: center;
  margin-bottom: 0.35rem;
}

.yal-plan-check-preview svg {
  width: 22px;
  height: 22px;
  display: block;
}

.x-membership-grid .x-plan-card {
  position: relative;
  transition: border-color 0.15s ease, box-shadow 0.15s ease;
}

.x-plan-card.yal-plan-selected {
  border-color: var(--blue);
  box-shadow: 0 0 0 1px var(--blue);
}

.x-plan-card.yal-plan-owned .yal-plan-badge-owned {
  display: inline-block;
  margin-top: 0.35rem;
  padding: 0.2rem 0.55rem;
  border-radius: 999px;
  font-size: 0.78rem;
  font-weight: 700;
  color: var(--text);
  background: rgba(255, 255, 255, 0.08);
  border: 1px solid var(--border);
}

/* Tier border colors aligned to checkmark palette */
.x-plan-emerald { border-color: #20bf55 !important; }
.x-plan-ocean { border-color: #1d9bf0 !important; }
.x-plan-violet { border-color: #9b5de5 !important; }
.x-plan-rose { border-color: #f15bb5 !important; }
.x-plan-vip-red { border-color: #ef233c !important; }
.x-plan-business-orange { border-color: #ff8c42 !important; }
.x-plan-system-burgundy { border-color: #800020 !important; }
.x-plan-gov-grey { border-color: #9ca3af !important; }

.yal-membership-active {
  margin: 0 1rem 0.75rem;
  padding: 0.75rem 1rem;
  border-radius: 12px;
  border: 1px solid var(--border);
  background: var(--panel);
  display: flex;
  align-items: center;
  gap: 0.6rem;
}

.yal-membership-active strong {
  display: block;
}

.yal-membership-active span.muted {
  color: var(--muted);
  font-size: 0.88rem;
}

.x-plan-card .yal-membership-buy-btn,
.x-membership-grid .yal-membership-buy-btn {
  margin-top: 0.5rem;
  font-weight: 700;
  transition: background 0.18s ease, color 0.18s ease, border-color 0.18s ease, box-shadow 0.18s ease;
}

.x-plan-card .yal-membership-buy-btn:hover:not(:disabled),
.x-membership-grid .yal-membership-buy-btn:hover:not(:disabled) {
  background: var(--blue);
  color: #fff;
  border-color: var(--blue);
  box-shadow: 0 0 0 1px rgba(29, 155, 240, 0.35);
}
