.auth-btn-wrapper{position:relative}.auth-btn{width:100%;background:#7a67d21a;color:var(--color-primary);border:1px solid rgba(122,103,210,.2);padding:8px 16px;border-radius:8px;font-size:.85rem;cursor:pointer;font-weight:500;transition:all .2s}.auth-btn:hover{background:#7a67d22e;border-color:#7a67d259}.auth-btn-profile{width:100%;border-radius:8px;font-size:.85rem;font-weight:600;display:flex;align-items:center;justify-content:center;gap:8px;padding:8px 12px}.auth-btn-profile .auth-avatar{width:28px;height:28px;border-radius:50%;background:var(--color-primary);color:#fff;display:flex;align-items:center;justify-content:center;font-size:.8rem;font-weight:700;flex-shrink:0}.auth-btn-profile .auth-avatar-img{width:28px;height:28px;border-radius:50%;flex-shrink:0;object-fit:cover}.auth-btn-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.85rem;color:#3d2b50}.auth-menu{position:absolute;left:0;bottom:calc(100% + 8px);background:#fff;border-radius:12px;box-shadow:0 4px 24px #0000001f;min-width:220px;width:100%;z-index:100;overflow:hidden}.auth-btn-email{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.8rem;color:#6a618f}.auth-menu-email{padding:12px 16px;font-size:.85rem;color:#888;border-bottom:1px solid #f0f0f0;word-break:break-all}.auth-menu-item{display:block;width:100%;padding:10px 16px;font-size:.9rem;color:var(--color-primary);background:none;border:none;text-align:left;cursor:default;text-decoration:none}.auth-menu-profile{cursor:pointer}.auth-menu-profile:hover{background:var(--color-bg)}.auth-menu-referral{font-size:.8rem;color:#888;border-bottom:1px solid #f0f0f0}.auth-menu-logout{cursor:pointer;color:#e55;border-top:1px solid #f0f0f0}.auth-menu-logout:hover{background:var(--color-bg)}.auth-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;z-index:9999;display:flex;align-items:center;justify-content:center;padding:20px}.auth-modal{background:#fff;border-radius:16px;padding:32px 28px;max-width:400px;width:100%;position:relative;box-shadow:0 8px 40px #00000026;overflow:hidden}.auth-modal-close{position:absolute;top:8px;right:8px;background:none;border:none;font-size:1.5rem;color:var(--color-muted);cursor:pointer;line-height:1;width:44px;height:44px;display:inline-flex;align-items:center;justify-content:center}.auth-modal-title{font-size:1.25rem;font-weight:700;color:var(--color-primary);margin:0 0 8px}.auth-modal-desc{font-size:.9rem;color:#888;line-height:1.5;margin:0 0 20px}.auth-modal-input{width:100%;padding:12px 16px;border:1px solid #ddd;border-radius:8px;font-size:1rem;outline:none;transition:border-color .2s;box-sizing:border-box}.auth-modal-input:focus{border-color:var(--color-primary)}.auth-modal-btn{width:100%;padding:12px;background:var(--color-primary);color:#fff;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;margin-top:12px;transition:background .2s}.auth-modal-btn:hover:not(:disabled){background:var(--color-secondary)}.auth-modal-btn:disabled{opacity:.5;cursor:not-allowed}.auth-modal-error{color:#e55;font-size:.85rem;margin:8px 0 0}.auth-modal-success{text-align:center}.auth-modal-icon{font-size:3rem;margin-bottom:16px}.auth-modal-success h3{font-size:1.2rem;margin:0 0 12px}.auth-modal-success p{font-size:.95rem;color:var(--color-secondary);line-height:1.5;margin:0 0 8px}.auth-modal-hint{font-size:.8rem!important;color:var(--color-muted)!important}.auth-google-btn{display:flex;justify-content:center;min-height:44px;max-width:100%;overflow:hidden}.ec-wrap{border-top:1px dashed #ddd;border-bottom:1px dashed #ddd;padding:20px 0;margin:28px 0;text-align:center}.ec-wrap.ec-done{border-style:solid;border-color:#e0d8f0;background:#faf8ff;border-radius:12px;padding:20px}.ec-inner{max-width:400px;margin:0 auto}.ec-notice{font-size:.9rem;color:#888;margin:0 0 14px;line-height:1.5}.ec-actions{display:flex;align-items:center;justify-content:center;gap:16px}.ec-save-btn{background:var(--color-primary);color:#fff;border:none;padding:10px 28px;border-radius:8px;font-size:.95rem;font-weight:600;cursor:pointer;transition:background .2s}.ec-save-btn:hover{background:var(--color-secondary)}.ec-skip{background:none;border:none;color:var(--color-muted);font-size:.8rem;cursor:pointer;padding:4px 8px}.ec-skip:hover{color:var(--color-muted)}.ec-form-desc{font-size:.88rem;color:#777;margin:0 0 12px;line-height:1.4}.ec-form{display:flex;gap:8px}.ec-input{flex:1;padding:10px 14px;border:1px solid #ddd;border-radius:8px;font-size:.95rem;outline:none;min-width:0;box-sizing:border-box}.ec-input:focus{border-color:var(--color-primary)}.ec-submit{padding:10px 22px;background:var(--color-primary);color:#fff;border:none;border-radius:8px;font-size:.9rem;font-weight:600;cursor:pointer;white-space:nowrap;transition:background .2s}.ec-submit:hover:not(:disabled){background:var(--color-secondary)}.ec-submit:disabled{opacity:.5;cursor:not-allowed}.ec-error{color:#e55;font-size:.85rem;margin:8px 0 0}.ec-done-msg{font-size:.95rem;font-weight:600;color:var(--color-primary);margin:0 0 12px}.coupon-display{text-align:center;padding:16px}.coupon-label{font-size:.85rem;color:#888;margin:0 0 8px}.coupon-code-row{display:inline-flex;align-items:center;gap:8px;background:#fff;border:2px dashed var(--color-primary);border-radius:8px;padding:10px 20px}.coupon-code{font-size:1.3rem;font-weight:700;letter-spacing:2px;color:var(--color-primary)}.coupon-copy-btn{background:#f0f0f0;border:none;padding:4px 12px;border-radius:4px;font-size:.8rem;cursor:pointer;color:var(--color-secondary);transition:background .2s}.coupon-copy-btn:hover{background:#e0e0e0}.coupon-meta{font-size:.8rem;color:var(--color-muted);margin:8px 0 0}@media (max-width: 480px){.ec-form{flex-direction:column}.ec-submit{width:100%}.auth-modal{padding:24px 20px}}
