.wcp-float { position: fixed; bottom: 30px; right: 30px; width: 60px; height: 60px; background-color: var(--wa-green); border-radius: 50%; display: flex; justify-content: center; align-items: center; box-shadow: 0 4px 15px rgba(0,0,0,0.15); cursor: pointer; z-index: 999999; transition: transform 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275); }
.wcp-float:hover { transform: scale(1.1); }
.wcp-float svg { width: 35px; height: 35px; fill: #fff; }

@keyframes wcpPulse { 0% { box-shadow: 0 0 0 0 rgba(37, 211, 102, 0.7); } 70% { box-shadow: 0 0 0 15px rgba(37, 211, 102, 0); } 100% { box-shadow: 0 0 0 0 rgba(37, 211, 102, 0); } }
.wcp-anim-pulse { animation: wcpPulse 2s infinite; }
@keyframes wcpBounce { 0%, 20%, 50%, 80%, 100% {transform: translateY(0);} 40% {transform: translateY(-20px);} 60% {transform: translateY(-10px);} }
.wcp-anim-bounce { animation: wcpBounce 2s infinite; }

.wcp-window { position: fixed; bottom: 100px; right: 30px; width: 350px; max-width: calc(100vw - 40px); background-color: #ffffff; border-radius: 12px; box-shadow: 0 10px 30px rgba(0,0,0,0.1); overflow: hidden; z-index: 1000000; display: flex; flex-direction: column; opacity: 0; pointer-events: none; transform: translateY(20px); transition: all 0.3s ease; font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif; }
.wcp-window.wcp-show { opacity: 1; pointer-events: auto; transform: translateY(0); }

.wcp-w-header { background-color: var(--wcp-header-bg); padding: 24px 50px 24px 20px; position: relative; }
.wcp-header-content { display: flex; align-items: center; gap: 12px; }
.wcp-avatar-wrap { position: relative; width: 48px; height: 48px; flex-shrink: 0;}
.wcp-avatar-img { width: 100%; height: 100%; border-radius: 50%; object-fit: cover; border: 2px solid rgba(255,255,255,0.2); }
.wcp-status-dot { position: absolute; bottom: 0; right: 0; width: 12px; height: 12px; border-radius: 50%; border: 2px solid var(--wcp-header-bg); }

.wcp-w-header h4 { color: var(--wcp-title-color) !important; margin: 0 0 4px 0; font-size: 16px; font-weight: 600; line-height: 1.2; }
.wcp-w-header p { color: var(--wcp-subtitle-color) !important; margin: 0; font-size: 13px; opacity: 0.9; line-height: 1.2;}

.wcp-close { position: absolute; top: 15px; right: 15px; background: var(--wcp-close-bg) !important; border: var(--wcp-close-style-border) !important; color: var(--wcp-close-color) !important; width: var(--wcp-close-size) !important; height: var(--wcp-close-size) !important; border-radius: var(--wcp-close-radius); display: flex; align-items: center; justify-content: center; cursor: pointer; font-size: var(--wcp-close-font-size) !important; transition: all 0.2s; line-height: 1; padding: 0; }
.wcp-close:hover { opacity: 0.8; transform: scale(1.05); }

.wcp-w-body { padding: 25px 20px 20px 20px; }
.wcp-w-group { margin-bottom: 18px; }
.wcp-w-group label { display: block; font-size: 13px; color: #374151; margin-bottom: 8px; font-weight: 600; }
.wcp-w-input { width: 100% !important; padding: 12px 18px !important; border: 1px solid var(--wcp-input-border) !important; border-radius: 50px !important; font-size: 14px !important; box-sizing: border-box !important; background: #fff !important; font-family: inherit !important; color: #1f2937 !important; transition: border-color 0.2s !important; }
.wcp-w-textarea { width: 100% !important; padding: 14px 18px !important; border: 1px solid var(--wcp-input-border) !important; border-radius: 16px !important; font-size: 14px !important; box-sizing: border-box !important; background: #fff !important; font-family: inherit !important; color: #1f2937 !important; resize: none !important; height: 80px !important; transition: border-color 0.2s !important; }
.wcp-w-input:focus, .wcp-w-textarea:focus { border-color: var(--wcp-btn-bg) !important; outline: none !important; }
.wcp-error { border-color: #ef4444 !important; }

.wcp-w-btn { width: 100% !important; background-color: var(--wcp-btn-bg) !important; color: #fff !important; border: none !important; padding: 14px !important; border-radius: 50px !important; font-size: 15px !important; font-weight: 600 !important; cursor: pointer !important; margin-top: 10px !important; transition: background-color 0.3s ease !important; }
.wcp-w-btn:hover { background-color: var(--wcp-btn-hover-bg) !important; }

.wcp-footer-text { text-align: center; font-size: 12px; background: #fff; padding: 0 20px 20px 20px; margin: 0; }
.wcp-footer-text a { color: #6b7280; text-decoration: none; }
.wcp-footer-text a:hover { text-decoration: underline; }
