:root{--color-primary: #fc4853;--color-mask: rgba(0, 0, 0, .7);--radius-pill: 3.125rem;--z-toast: 2000}@keyframes pulse{50%{transform:scale(1.1)}}@keyframes spin{to{transform:rotate(360deg)}}.loading{position:fixed;top:0;left:0;right:0;bottom:0;background:#fffc;display:flex;align-items:center;justify-content:center;z-index:3000}.loading:after{content:"";width:2rem;height:2rem;border:3px solid var(--color-primary);border-top-color:transparent;border-radius:50%;animation:spin .8s linear infinite}.page{width:100%;min-height:100vh}.hero{width:100%;position:relative}.hero-img{width:100%;display:block}.action-area{position:fixed;bottom:8rem;left:50%;transform:translate(-50%);display:flex;align-items:center}.copy-btn{background:var(--color-primary);color:#fff;font-size:1.1rem;border:none;border-radius:var(--radius-pill);width:15rem;height:3.5rem;line-height:3.5rem;text-align:center;cursor:pointer;animation:pulse .6s ease-in-out infinite}.copy-btn:disabled{cursor:not-allowed;opacity:.6}.badge{position:absolute;top:1.8rem;left:18rem;z-index:1}.badge img{width:4rem}.toast{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);background:var(--color-mask);color:#fff;padding:1rem 2rem;border-radius:.5rem;z-index:var(--z-toast);opacity:0;transition:opacity .3s;pointer-events:none}.invite-page{width:100%;min-height:100vh;background:linear-gradient(160deg,#f0fdf4,#dcfce7,#bbf7d0);display:flex;flex-direction:column;align-items:center;padding:2rem 1.25rem;font-family:-apple-system,BlinkMacSystemFont,PingFang SC,Microsoft YaHei,sans-serif}.invite-container{width:100%;max-width:420px;display:flex;flex-direction:column;align-items:center;gap:1.5rem}.invite-header{display:flex;flex-direction:column;align-items:center;gap:.6rem;text-align:center}.invite-icon{width:4rem;height:4rem;background:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 20px #0000001a;transition:box-shadow .3s ease}.invite-icon svg{width:2.5rem;height:2.5rem}.invite-title{font-size:1.75rem;font-weight:700;color:#1a1a2e;letter-spacing:.05em;margin:0}.invite-subtitle{font-size:.9rem;color:#64748b;margin:0;line-height:1.5;max-width:280px}.tab-bar{width:100%;max-width:340px;display:flex;background:#fff;border-radius:1rem;padding:.3rem;gap:.25rem;box-shadow:0 2px 12px #00000014}.tab-btn{flex:1;position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.2rem;padding:.6rem .5rem;border:none;background:transparent;border-radius:.75rem;cursor:pointer;transition:background .25s,color .25s;font-family:inherit}.tab-btn .tab-label{font-size:.9rem;font-weight:600;color:#94a3b8;transition:color .25s;white-space:nowrap}.tab-btn .tab-badge{font-size:.65rem;font-weight:500;padding:.1rem .45rem;border-radius:999px;transition:background .25s,color .25s;white-space:nowrap}.tab-btn.active .tab-label{color:#1e293b}.tab-active-bar{position:absolute;top:0;right:0;bottom:0;left:0;background:rgba(var(--tab-color-rgb, 34, 197, 94),.08);border-radius:.75rem;z-index:0}.tab-btn .tab-label,.tab-btn .tab-badge{position:relative;z-index:1}.qr-card{width:100%;max-width:300px;background:#fff;border-radius:1.5rem;padding:1.5rem;box-shadow:0 8px 32px #00000014;display:flex;flex-direction:column;align-items:center;gap:1rem;position:relative;overflow:hidden;transition:box-shadow .3s ease}.qr-card-accent{position:absolute;top:-2rem;left:-2rem;right:-2rem;height:4rem;border-radius:50%;transition:background .3s ease;z-index:0}.qr-skeleton{width:220px;height:220px;border-radius:1rem;background:linear-gradient(90deg,#f1f5f9 25%,#e2e8f0,#f1f5f9 75%);background-size:200% 100%;animation:shimmer 1.5s infinite;z-index:1;position:relative}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.qr-image{width:220px;height:220px;border-radius:.75rem;object-fit:contain;z-index:1;position:relative;opacity:0;transition:opacity .4s ease;border:none;display:block;background:#fff}.qr-card.loaded .qr-image{opacity:1}.qr-card.loaded .qr-skeleton{display:none}.longpress-hint{font-size:.8rem;font-weight:500;z-index:1;position:relative;animation:breathe 2s ease-in-out infinite;transition:color .3s ease}@keyframes breathe{0%,to{opacity:.6}50%{opacity:1}}.tips-section{width:100%;max-width:300px;background:#fff;border-radius:1.25rem;padding:1.25rem 1.5rem;display:flex;flex-direction:column;gap:0;box-shadow:0 4px 16px #0000000f}.tip-item{display:flex;align-items:center;gap:.75rem}.tip-num{width:1.75rem;height:1.75rem;color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.8rem;font-weight:700;flex-shrink:0;transition:background .3s ease}.tip-text{font-size:.9rem;color:#334155;line-height:1.4}.tip-line{width:2px;height:1.25rem;background:#e2e8f0;margin:.25rem 0 .25rem .825rem}.wechat-hints{width:100%;max-width:300px}.wechat-hint{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;background:#0000000a;border-radius:1rem;font-size:.85rem;color:#475569}.wechat-hint svg{width:1.25rem;height:1.25rem;flex-shrink:0}.wechat-hint span{line-height:1.4}.invite-actions{display:flex;gap:1rem;width:100%;max-width:340px;margin-top:.5rem}.action-btn{flex:1;height:3rem;border-radius:3rem;border:none;font-size:.95rem;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:.4rem;transition:transform .2s,box-shadow .2s;font-family:inherit}.action-btn:active{transform:scale(.97)}.action-btn svg{width:1.1rem;height:1.1rem}.action-btn.primary{color:#fff;transition:background .3s ease,box-shadow .3s ease}.action-btn.primary:hover{filter:brightness(1.05)}.action-btn.secondary{background:#fff;color:#64748b;border:1.5px solid #e2e8f0;box-shadow:0 2px 8px #0000000f}.action-btn.secondary:hover{border-color:#cbd5e1;box-shadow:0 4px 12px #00000014}.toast{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);background:#000000bf;color:#fff;padding:.875rem 1.75rem;border-radius:.5rem;z-index:2000;opacity:0;transition:opacity .3s;pointer-events:none;font-size:.9rem;letter-spacing:.02em;white-space:nowrap}.toast.visible{opacity:1}@media (max-width: 375px){.invite-page{padding:1.5rem 1rem}.qr-card{padding:1.25rem}.qr-image,.qr-skeleton{width:190px;height:190px}.invite-title{font-size:1.5rem}.invite-actions{flex-direction:column}.tab-btn .tab-badge{font-size:.6rem}}*{margin:0;padding:0;box-sizing:border-box;-webkit-tap-highlight-color:transparent}body{margin:0;min-height:100vh;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{color:inherit;text-decoration:none}button{-webkit-appearance:none;-moz-appearance:none;appearance:none}
