.gwc-widget{
	position: fixed;
	bottom: 26px;
	z-index: var(--gwc-zindex, 9999);
	font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
}
.gwc-pos-right{ right: 26px; }
.gwc-pos-left{ left: 26px; }
.gwc-pos-right .gwc-greeting-bubble, .gwc-pos-right .gwc-agent-panel{ right:0; }
.gwc-pos-left .gwc-greeting-bubble, .gwc-pos-left .gwc-agent-panel{ left:0; }

.gwc-button{
	position:relative;
	display:inline-flex; align-items:center; gap:10px;
	background: var(--gwc-color, #25D366);
	color:#fff; border:0; cursor:pointer; text-decoration:none;
	width: calc(var(--gwc-icon-size, 32px) + 30px);
	height: calc(var(--gwc-icon-size, 32px) + 30px);
	border-radius: 50%;
	justify-content:center;
	box-shadow: 0 10px 30px rgba(0,0,0,.25);
	transition: transform .25s ease, box-shadow .25s ease, width .25s ease, border-radius .25s ease;
}
.gwc-shape-pill .gwc-button{ border-radius: 100px; padding: 0 22px; width:auto; }
.gwc-button .dashicons{ font-size: var(--gwc-icon-size, 32px); width: var(--gwc-icon-size, 32px); height: var(--gwc-icon-size, 32px); position:relative; z-index:2; }
.gwc-button-label{ font-weight:600; font-size:14px; position:relative; z-index:2; white-space:nowrap; }
.gwc-button:hover{ transform: translateY(-4px) scale(1.05); box-shadow: 0 16px 40px rgba(0,0,0,.3); color:#fff; }

.gwc-ring{ position:absolute; inset:0; border-radius:50%; border: 2px solid var(--gwc-color,#25D366); opacity:0; }
.gwc-anim-pulse .gwc-ring{ animation: gwc-pulse 2.2s ease-out infinite; }
@keyframes gwc-pulse{
	0%{ transform: scale(1); opacity:.7; }
	100%{ transform: scale(1.9); opacity:0; }
}
.gwc-anim-bounce .gwc-button{ animation: gwc-bounce 2.6s ease-in-out infinite; }
@keyframes gwc-bounce{
	0%, 100%{ transform: translateY(0); }
	50%{ transform: translateY(-10px); }
}
.gwc-anim-shake .gwc-button{ animation: gwc-shake 5s ease-in-out infinite; }
@keyframes gwc-shake{
	0%, 90%, 100%{ transform: rotate(0); }
	91%{ transform: rotate(-12deg); }
	92%{ transform: rotate(10deg); }
	93%{ transform: rotate(-8deg); }
	94%{ transform: rotate(6deg); }
	95%{ transform: rotate(0); }
}
.gwc-widget.is-loaded .gwc-button{ animation-name: gwc-entrance, var(--gwc-attention, none); animation-duration: .6s, 2.2s; }
@keyframes gwc-entrance{
	from{ opacity:0; transform: translateY(30px) scale(.6); }
	to{ opacity:1; transform: translateY(0) scale(1); }
}

/* Greeting bubble */
.gwc-greeting-bubble{
	position:absolute; bottom: calc(100% + 16px);
	width: 290px; background:#fff; border-radius: 16px;
	box-shadow: 0 20px 50px rgba(0,0,0,.22);
	padding: 18px; opacity:0; visibility:hidden; transform: translateY(16px) scale(.95);
	transition: all .35s cubic-bezier(.25,.8,.25,1);
}
.gwc-greeting-bubble.is-visible{ opacity:1; visibility:visible; transform:translateY(0) scale(1); }
.gwc-greeting-close{ position:absolute; top:10px; right:10px; background:none; border:0; font-size:18px; line-height:1; cursor:pointer; color:#999; }
.gwc-greeting-head{ display:flex; align-items:center; gap:8px; margin-bottom:8px; }
.gwc-greeting-dot{ width:9px; height:9px; border-radius:50%; background:#2ecc71; box-shadow:0 0 0 3px rgba(46,204,113,.25); }
.gwc-dot-offline{ background:#b0b0b0; box-shadow:0 0 0 3px rgba(176,176,176,.25); }
.gwc-greeting-bubble p{ margin: 0 0 14px; font-size:13.5px; color:#444; line-height:1.5; }
.gwc-greeting-cta{ display:block; text-align:center; background: var(--gwc-color,#25D366); color:#fff; padding:10px; border-radius:100px; font-weight:600; font-size:13.5px; text-decoration:none; }
.gwc-greeting-cta:hover{ opacity:.9; color:#fff; }

/* Multi-agent panel */
.gwc-agent-panel{
	position:absolute; bottom: calc(100% + 16px); width: 280px;
	background:#fff; border-radius:16px; box-shadow: 0 20px 50px rgba(0,0,0,.22);
	padding: 10px; opacity:0; visibility:hidden; transform: translateY(16px) scale(.95);
	transition: all .3s cubic-bezier(.25,.8,.25,1);
}
.gwc-agent-panel.is-open{ opacity:1; visibility:visible; transform:translateY(0) scale(1); }
.gwc-agent-panel-head{ font-weight:700; font-size:13px; text-transform:uppercase; letter-spacing:.5px; color:#888; padding: 8px 10px; }
.gwc-agent-item{ display:flex; align-items:center; gap:10px; padding:10px; border-radius:10px; text-decoration:none; color:#222; }
.gwc-agent-item:hover{ background:#f3fdf6; }
.gwc-agent-avatar{ width:40px; height:40px; border-radius:50%; overflow:hidden; background: var(--gwc-color,#25D366); color:#fff; display:flex; align-items:center; justify-content:center; flex-shrink:0; font-weight:700; }
.gwc-agent-avatar img{ width:100%; height:100%; object-fit:cover; }
.gwc-agent-info{ display:flex; flex-direction:column; flex:1; }
.gwc-agent-info strong{ font-size:13.5px; }
.gwc-agent-info span{ font-size:11.5px; color:#888; }
.gwc-agent-item .dashicons-whatsapp{ color:#25D366; }

.gwc-hide-mobile{ display:block; }
.gwc-hide-desktop{ display:block; }
@media (max-width: 782px){
	.gwc-hide-mobile{ display:none !important; }
	.gwc-widget{ bottom:16px; }
	.gwc-pos-right{ right:16px; }
	.gwc-pos-left{ left:16px; }
	.gwc-greeting-bubble, .gwc-agent-panel{ width: calc(100vw - 48px); max-width:300px; }
}
@media (min-width: 783px){
	.gwc-hide-desktop{ display:none !important; }
}
@media (prefers-reduced-motion: reduce){
	.gwc-ring, .gwc-anim-bounce .gwc-button, .gwc-anim-shake .gwc-button, .gwc-widget.is-loaded .gwc-button{ animation:none !important; }
}

/* Inline shortcode button */
.gwc-inline-button{ display:inline-flex; align-items:center; gap:8px; background:#25D366; color:#fff; padding:12px 24px; border-radius:100px; text-decoration:none; font-weight:600; }
.gwc-inline-button:hover{ opacity:.9; color:#fff; }
