/* ===== 赞助打赏悬浮窗口样式 ===== */
.sponsor-float{position:fixed;bottom:24px;right:24px;z-index:9999;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Microsoft YaHei",sans-serif}
.sponsor-toggle{width:52px;height:52px;border-radius:50%;background:linear-gradient(135deg,#1677FF,#36cfc9);border:none;color:#fff;font-size:26px;cursor:pointer;box-shadow:0 4px 20px rgba(22,119,255,0.4);display:flex;align-items:center;justify-content:center;transition:transform 0.25s,box-shadow 0.25s,opacity 0.25s;line-height:1}
.sponsor-toggle:hover{transform:scale(1.08);box-shadow:0 6px 28px rgba(22,119,255,0.55)}
.sponsor-toggle:active{transform:scale(0.95)}
.sponsor-panel{display:none;width:300px;background:linear-gradient(180deg,#1a1f4e 0%,#14183a 100%);border:1px solid #2a2f5e;border-radius:16px;box-shadow:0 12px 48px rgba(0,0,0,0.5);overflow:hidden;animation:sponsorSlideIn 0.3s ease}
.sponsor-float.expanded .sponsor-panel{display:block}
.sponsor-float.expanded .sponsor-toggle{display:none}
@keyframes sponsorSlideIn{from{opacity:0;transform:translateY(16px) scale(0.95)}to{opacity:1;transform:translateY(0) scale(1)}}
.sponsor-header{background:linear-gradient(135deg,#1677FF,#0958d9);padding:20px 20px 16px;position:relative}
.sponsor-header h3{margin:0;font-size:18px;font-weight:700;color:#fff;letter-spacing:0.5px}
.sponsor-header .sponsor-subtitle{margin-top:6px;font-size:12px;color:rgba(255,255,255,0.85);line-height:1.5}
.sponsor-close{position:absolute;top:12px;right:14px;width:28px;height:28px;border-radius:50%;border:1px solid rgba(255,255,255,0.35);background:rgba(255,255,255,0.1);color:#fff;font-size:14px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background 0.2s;line-height:1}
.sponsor-close:hover{background:rgba(255,255,255,0.25)}
.sponsor-body{padding:18px 20px 20px}
.sponsor-amounts{display:grid;grid-template-columns:1fr 1fr 1fr;gap:10px;margin-bottom:14px}
.sponsor-amount-btn{padding:10px 4px;border-radius:10px;border:1.5px solid #2a2f5e;background:rgba(22,119,255,0.06);color:#e8e8f0;font-size:14px;font-weight:600;cursor:pointer;transition:all 0.2s;text-align:center}
.sponsor-amount-btn:hover{border-color:#1677FF;background:rgba(22,119,255,0.15)}
.sponsor-amount-btn.selected{border-color:#1677FF;background:rgba(22,119,255,0.22);color:#fff;box-shadow:0 0 12px rgba(22,119,255,0.25)}
.sponsor-custom-row{display:flex;gap:10px;margin-bottom:18px}
.sponsor-custom-row input{flex:1;padding:9px 12px;border-radius:10px;border:1.5px solid #2a2f5e;background:#0f1335;color:#e8e8f0;font-size:14px;outline:none;transition:border-color 0.2s}
.sponsor-custom-row input:focus{border-color:#1677FF}
.sponsor-custom-row input::placeholder{color:#555a80}
.sponsor-custom-row button{padding:9px 16px;border-radius:10px;border:none;background:#1677FF;color:#fff;font-size:13px;font-weight:600;cursor:pointer;transition:background 0.2s;white-space:nowrap}
.sponsor-custom-row button:hover{background:#0958d9}

/* 支付方式标签切换 */
.sponsor-payment-tabs{display:flex;gap:0;margin-bottom:14px;border-radius:10px;overflow:hidden;border:1.5px solid #2a2f5e}
.sponsor-payment-tab{flex:1;padding:10px 0;text-align:center;font-size:13px;font-weight:600;cursor:pointer;border:none;background:rgba(22,119,255,0.06);color:#7a7faa;transition:all 0.2s}
.sponsor-payment-tab.active{background:#1677FF;color:#fff}
.sponsor-payment-tab:hover:not(.active){background:rgba(22,119,255,0.15);color:#e8e8f0}

.sponsor-alipay-wrap{margin-bottom:14px}
.sponsor-alipay-btn{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:12px;border-radius:12px;border:none;background:linear-gradient(135deg,#1677FF,#0958d9);color:#fff;font-size:15px;font-weight:700;cursor:pointer;transition:opacity 0.2s,transform 0.2s;letter-spacing:0.5px}
.sponsor-alipay-btn:hover{opacity:0.92;transform:translateY(-1px)}
.sponsor-alipay-btn:disabled{opacity:0.6;transform:none;cursor:not-allowed}
.sponsor-alipay-btn .alipay-icon{font-size:20px}

/* 微信支付区域 */
.sponsor-wxpay-wrap{margin-bottom:14px;display:none}
.sponsor-wxpay-btn{display:flex;align-items:center;justify-content:center;width:100%;padding:12px;border-radius:12px;border:none;background:linear-gradient(135deg,#07C160,#06AD56);color:#fff;font-size:15px;font-weight:700;cursor:pointer;transition:opacity 0.2s,transform 0.2s;letter-spacing:0.5px;margin-bottom:10px}
.sponsor-wxpay-btn:hover{opacity:0.92;transform:translateY(-1px)}
.sponsor-wxpay-btn:disabled{opacity:0.6;transform:none;cursor:not-allowed}
.sponsor-wxpay-qr{margin-top:8px;padding:16px;border-radius:12px;border:1.5px solid #2a2f5e;background:#0f1335;text-align:center;min-height:60px;display:flex;align-items:center;justify-content:center}
.wxpay-qr-wrapper{text-align:center}
.wxpay-qr-wrapper canvas{border-radius:8px;display:block;margin:0 auto}
.qr-loading-text{color:#7a7faa;font-size:13px}
.wxpay-qr-label{font-size:12px;color:#a0a5c0;margin-top:10px}

.sponsor-qr-placeholder{display:none;margin-bottom:14px;padding:20px;border-radius:12px;border:1.5px dashed #3a3f6e;background:#0f1335;text-align:center}
.sponsor-qr-placeholder .qr-box{width:140px;height:140px;margin:0 auto 12px;background:#1a1f4e;border-radius:10px;display:flex;align-items:center;justify-content:center;color:#7a7faa;font-size:13px;line-height:1.6}
.sponsor-qr-placeholder .qr-label{font-size:12px;color:#7a7faa}
.sponsor-footer-text{font-size:11px;color:#5a5f8a;text-align:center;line-height:1.6;padding-top:12px;border-top:1px solid #1f2350}
.sponsor-selected-amount{display:none;text-align:center;font-size:13px;color:#a0a5c0;margin-bottom:12px}
.sponsor-selected-amount span{color:#36cfc9;font-weight:700;font-size:16px}
.nav-sponsor{color:#ff6b6b !important;font-weight:600;transition:color 0.2s}
.nav-sponsor:hover{color:#ff8787 !important}


/* ===== 打赏实时通知 Toast ===== */
.donation-toast {
  position: fixed;
  top: 24px;
  right: 24px;
  z-index: 99999;
  max-width: 380px;
  opacity: 0;
  transform: translateX(120%);
  transition: opacity 0.35s ease, transform 0.35s ease;
  pointer-events: none;
}
.donation-toast.show {
  opacity: 1;
  transform: translateX(0);
}
.donation-toast-content {
  background: linear-gradient(135deg, #52c41a, #389e0d);
  color: #fff;
  padding: 14px 20px;
  border-radius: 12px;
  font-size: 15px;
  line-height: 1.6;
  box-shadow: 0 8px 32px rgba(82, 196, 26, 0.35);
  border: 1px solid rgba(255, 255, 255, 0.2);
}
.donation-toast-content strong {
  color: #ffe58f;
  font-size: 18px;
  margin: 0 2px;
}
.donation-toast-content em {
  font-style: normal;
  color: #fff;
  font-weight: 600;
}
.donation-toast-icon {
  font-size: 20px;
  margin-right: 4px;
  vertical-align: -2px;
}
