/* pages/xiugai/xiugai.wxss */
/* ====== 您的原始样式代码（完全未改动） ====== */
page {
    background: linear-gradient(135deg, #fffaf0 0%, #f0f8ff 100%);
    min-height: 100vh;
  }
  
  .xiugai-page {
    padding: 30rpx 40rpx 100rpx;
  }
  
  /* ============ 头像区域样式 ============ */
  .avatar-section {
    display: flex;
    justify-content: center;
    margin-bottom: 60rpx;
    padding-top: 30rpx;
  }
  
  .avatar-container {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
  }
  
  /* 头像图片 - 添加呼吸动画 */
  .avatar-image {
    width: 200rpx;
    height: 200rpx;
    border-radius: 50%;
    border: 6rpx solid #fff;
    background-color: #f8f9fa;
    z-index: 2;
    position: relative;
    /* 呼吸动画：温和的放大缩小 */
    animation: gentleBreath 3s ease-in-out infinite;
    /* 基础阴影 */
    box-shadow: 
      0 0 0 1rpx rgba(0, 200, 83, 0.3),
      0 15rpx 40rpx rgba(0, 200, 83, 0.15);
  }
  
  /* 温和的呼吸动画 */
  @keyframes gentleBreath {
    0%, 100% {
      transform: scale(1);
      box-shadow: 
        0 0 0 2rpx rgba(0, 200, 83, 0.4),
        0 15rpx 40rpx rgba(0, 200, 83, 0.2);
    }
    50% {
      transform: scale(1.03);
      box-shadow: 
        0 0 0 5rpx rgba(0, 200, 83, 0.6),
        0 20rpx 50rpx rgba(0, 200, 83, 0.3);
    }
  }
  
  /* 边缘微光效果 - 更细腻 */
  .avatar-halo {
    position: absolute;
    top: -8rpx;
    left: -8rpx;
    right: -8rpx;
    bottom: -8rpx;
    border-radius: 50%;
    background: transparent;
    border: 2rpx solid #00C853;
    animation: gentleGlow 2s ease-in-out infinite;
    opacity: 0;
    z-index: 1;
    pointer-events: none;
  }
  
  /* 温和的光晕动画 */
  @keyframes gentleGlow {
    0%, 100% {
      opacity: 0;
      transform: scale(0.98);
      border-color: rgba(0, 200, 83, 0.3);
    }
    50% {
      opacity: 1;
      transform: scale(1.05);
      border-color: rgba(0, 200, 83, 0.8);
    }
  }
  
  /* 像素点环绕效果 */
  .avatar-container::before {
    content: '';
    position: absolute;
    top: -15rpx;
    left: -15rpx;
    right: -15rpx;
    bottom: -15rpx;
    border-radius: 50%;
    background: 
      radial-gradient(circle at 30% 30%, rgba(0, 200, 83, 0.1) 0%, transparent 50%),
      radial-gradient(circle at 70% 70%, rgba(100, 221, 23, 0.1) 0%, transparent 50%);
    animation: pixelOrbit 4s linear infinite;
    z-index: 0;
    pointer-events: none;
  }
  
  @keyframes pixelOrbit {
    0% {
      transform: rotate(0deg);
    }
    100% {
      transform: rotate(360deg);
    }
  }
  
  /* 更换提示 */
  .avatar-hint {
    margin-top: 25rpx;
    font-size: 28rpx;
    color: #666;
    padding: 12rpx 30rpx;
    background: rgba(255, 255, 255, 0.9);
    border-radius: 25rpx;
    border: 1rpx solid #eee;
    box-shadow: 0 5rpx 15rpx rgba(0, 0, 0, 0.05);
    position: relative;
    overflow: hidden;
  }
  
  /* 提示文字底部的微光 */
  .avatar-hint::before {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 2rpx;
    background: linear-gradient(90deg, transparent, #00C853, transparent);
    animation: hintGlow 2s ease-in-out infinite;
  }
  
  @keyframes hintGlow {
    0%, 100% {
      opacity: 0.3;
    }
    50% {
      opacity: 1;
    }
  }
  
  /* 点击特效 - 缩放效果 */
  .avatar-container.active .avatar-image {
    animation: clickScale 0.5s ease;
  }
  
  @keyframes clickScale {
    0%, 100% {
      transform: scale(1);
    }
    50% {
      transform: scale(0.95);
    }
  }
  
  /* 下载状态 */
  .avatar-container.downloading .avatar-image {
    opacity: 0.7;
    filter: grayscale(30%);
  }
  
  /* 增强光晕效果 */
  .avatar-halo {
    position: absolute;
    top: -8rpx;
    left: -8rpx;
    right: -8rpx;
    bottom: -8rpx;
    border-radius: 50%;
    background: transparent;
    border: 3rpx solid transparent;
    animation: gentleGlow 2s ease-in-out infinite, colorShift 3s ease-in-out infinite;
    opacity: 0;
    z-index: 1;
    pointer-events: none;
  }
  
  @keyframes gentleGlow {
    0%, 100% {
      opacity: 0;
      transform: scale(0.98);
    }
    50% {
      opacity: 1;
      transform: scale(1.05);
    }
  }
  
  @keyframes colorShift {
    0% {
      border-color: rgba(0, 200, 83, 0.5);
    }
    33% {
      border-color: rgba(100, 221, 23, 0.5);
    }
    66% {
      border-color: rgba(0, 255, 153, 0.5);
    }
    100% {
      border-color: rgba(0, 200, 83, 0.5);
    }
  }
  
  /* 头像呼吸效果 */
  .avatar-image {
    width: 200rpx;
    height: 200rpx;
    border-radius: 50%;
    border: 6rpx solid #fff;
    background-color: #f8f9fa;
    z-index: 2;
    position: relative;
    animation: gentleBreath 4s ease-in-out infinite;
    box-shadow: 
      0 0 0 1rpx rgba(0, 200, 83, 0.3),
      0 15rpx 40rpx rgba(0, 200, 83, 0.15);
  }
  
  @keyframes gentleBreath {
    0%, 100% {
      transform: scale(1);
      box-shadow: 
        0 0 0 2rpx rgba(0, 200, 83, 0.4),
        0 15rpx 40rpx rgba(0, 200, 83, 0.2);
    }
    50% {
      transform: scale(1.03);
      box-shadow: 
        0 0 0 5rpx rgba(0, 200, 83, 0.6),
        0 20rpx 50rpx rgba(0, 200, 83, 0.3);
    }
  }
  
  /* 表单区域 */
  .form-section {
    background: white;
    border-radius: 25rpx;
    overflow: hidden;
    margin-bottom: 50rpx;
    box-shadow: 0 10rpx 30rpx rgba(0, 0, 0, 0.08);
    border: 1rpx solid #f0f0f0;
  }
  
  .form-item {
    display: flex;
    align-items: center;
    padding: 40rpx;
    border-bottom: 1rpx solid #f0f0f0;
    min-height: 110rpx;
  }
  
  .form-item:last-child {
    border-bottom: none;
  }
  
  .item-label {
    width: 150rpx;
    font-size: 32rpx;
    color: #333;
    font-weight: 500;
    flex-shrink: 0;
  }
  
  .item-value.readonly {
    flex: 1;
    font-size: 32rpx;
    color: #666;
  }
  
  .item-input {
    flex: 1;
    font-size: 32rpx;
    color: #333;
    height: 50rpx;
    line-height: 50rpx;
  }
  
  .placeholder {
    color: #ccc;
    font-size: 30rpx;
  }
  
  /* 输入框容器 */
  .input-container {
    flex: 1;
    display: flex;
    flex-direction: column;
  }
  
  /* 输入框错误样式 */
  .item-input.error {
    border-bottom: 2rpx solid #ff4d4f;
    animation: shake 0.5s;
  }
  
  @keyframes shake {
    0%, 100% { transform: translateX(0); }
    10%, 30%, 50%, 70%, 90% { transform: translateX(-2rpx); }
    20%, 40%, 60%, 80% { transform: translateX(2rpx); }
  }
  
  /* 错误提示 */
  .error-hint {
    font-size: 24rpx;
    color: #ff4d4f;
    margin-top: 8rpx;
    padding-left: 10rpx;
    animation: fadeIn 0.3s;
  }
  
  /* 手机号正确提示 */
  .phone-hint {
    font-size: 24rpx;
    color: #00C853;
    margin-top: 8rpx;
    padding-left: 10rpx;
    animation: fadeIn 0.3s;
  }
  
  @keyframes fadeIn {
    from { opacity: 0; transform: translateY(-10rpx); }
    to { opacity: 1; transform: translateY(0); }
  }
  
  /* 保存按钮 */
  .save-btn {
    width: 100%;
    height: 100rpx;
    line-height: 100rpx;
    border-radius: 50rpx;
    background: linear-gradient(135deg, #00C853 0%, #64DD17 100%);
    color: white;
    font-size: 34rpx;
    font-weight: 500;
    border: none;
    position: relative;
    overflow: hidden;
    box-shadow: 0 15rpx 40rpx rgba(0, 200, 83, 0.25);
    margin-top: 30rpx;
  }
  
  .save-btn[disabled] {
    background: linear-gradient(135deg, #cccccc 0%, #aaaaaa 100%);
    color: #999;
    box-shadow: 0 10rpx 30rpx rgba(0, 0, 0, 0.1);
  }
  
  .btn-content {
    position: relative;
    z-index: 2;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
  }
  
  .btn-sparkle {
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(
      90deg,
      transparent 0%,
      rgba(255, 255, 255, 0.2) 50%,
      transparent 100%
    );
    animation: sparkleMove 2.5s ease-in-out infinite;
    z-index: 1;
  }
  
  @keyframes sparkleMove {
    0% { left: -100%; }
    100% { left: 100%; }
  }
  
  .btn-hover {
    opacity: 0.9;
    transform: scale(0.98);
  }
  
  /* 底部安全区域 */
  .safe-area {
    height: 100rpx;
    width: 100%;
  }
  
  /* 🔥🔥🔥【修改开始：新增透明按钮样式】 */
  /* 说明：此样式仅作用于新增的 .avatar-trigger-button，使其透明并覆盖在头像区域 */
  /* 此修改不会影响上方任何原有样式，仅新增样式规则 */
  
  /* 确保头像区域为相对定位，作为透明按钮的定位参考 */
  .avatar-section {
    position: relative;
    display: flex;
    justify-content: center;
    margin-bottom: 60rpx;
    padding-top: 30rpx;
  }
  
  /* 透明功能按钮样式 */
  .avatar-trigger-button {
    /* 覆盖在原始头像容器上 */
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 200rpx;
    height: 200rpx;
    border-radius: 50%;
    z-index: 100;
    /* 关键：完全透明不可见 */
    background: transparent;
    border: none;
    padding: 0;
    margin: 0;
    opacity: 0;
    
    /* 清除所有默认样式 */
    line-height: 1;
    font-size: 0;
  }
  
  /* 移除按钮默认边框 */
  .avatar-trigger-button::after {
    border: none;
  }
  /* 🔥🔥🔥【修改结束】 */

  /* ====== 以下为新增样式（手机号获取按钮） ====== */

/* 手机号行布局 */
.phone-row {
    flex: 1;
    display: flex;
    align-items: center;
    justify-content: space-between;
  }
  
  /* 手机号文本 */
  .phone-value {
    font-size: 32rpx;
    color: #333;
    flex: 1;
  }
  
  /* 获取手机号按钮 */
  .get-phone-btn {
    flex-shrink: 0;
    margin-left: 20rpx;
    padding: 10rpx 24rpx;
    background: #4a6cf7;
    color: #fff;
    font-size: 26rpx;
    border-radius: 40rpx;
    border: none;
    line-height: 1.4;
    height: 60rpx;
    display: flex;
    align-items: center;
    justify-content: center;
  }
  
  .phone-btn-hover {
    opacity: 0.8;
  }