:root {
	--wlc-primary: #0066cc;
	--wlc-bg-user: #f0f2f5;
	--wlc-text-dark: #1d2129;
}

#wlc-chat-container {
	position: fixed;
	bottom: 24px;
	right: 24px;
	z-index: 999999;
	font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
}

#wlc-trigger-button {
	background-color: var(--wlc-primary);
	color: #ffffff;
	border: none;
	border-radius: 28px;
	padding: 12px 20px;
	display: flex;
	align-items: center;
	gap: 8px;
	cursor: pointer;
	box-shadow: 0 4px 12px rgba(0,0,0,0.15);
	font-weight: 600;
	font-size: 14px;
	transition: transform .2s ease, box-shadow .2s ease;
}

#wlc-trigger-button:hover {
	transform: translateY(-2px);
	box-shadow: 0 6px 16px rgba(0,0,0,0.22);
}

#wlc-window {
	width: 360px;
	height: 520px;
	background: #ffffff;
	border-radius: 12px;
	box-shadow: 0 8px 30px rgba(0,0,0,0.18);
	display: flex;
	flex-direction: column;
	overflow: hidden;
	transition: opacity .3s ease, transform .3s ease;
}

.wlc-widget-closed #wlc-window {
	display: none;
	opacity: 0;
	transform: scale(0.95);
}

.wlc-widget-open #wlc-window {
	display: flex;
	opacity: 1;
	transform: scale(1);
}

.wlc-widget-open #wlc-trigger-button {
	display: none;
}

.wlc-header {
	background: var(--wlc-primary);
	color: #ffffff;
	padding: 16px;
	display: flex;
	justify-content: space-between;
	align-items: center;
}

.wlc-header h4 {
	margin: 0;
	font-size: 16px;
	font-weight: 600;
}

.wlc-online-status {
	font-size: 11px;
	opacity: 0.85;
}

.wlc-online-status.online::before {
	content: "● ";
	color: #4cd964;
}

#wlc-close-button {
	background: transparent;
	border: none;
	color: #ffffff;
	font-size: 24px;
	cursor: pointer;
	line-height: 1;
}

#wlc-pre-chat {
	padding: 14px 18px 16px;
	flex: 1 1 auto;
	min-height: 0;
	display: flex;
	flex-direction: column;
	justify-content: flex-start;
	overflow-y: auto;
	overflow-x: hidden;
	scrollbar-gutter: stable;
}

#wlc-start-form {
	margin: 0;
	padding: 0 2px 2px 0;
}

#wlc-prechat-message {
	margin: 0 0 12px;
	line-height: 1.45;
}

.wlc-form-group {
	margin-bottom: 10px;
}

.wlc-form-group label {
	display: block;
	font-size: 12px;
	font-weight: 600;
	margin-bottom: 4px;
	color: var(--wlc-text-dark);
}

.wlc-form-group input,
.wlc-form-group textarea {
	width: 100%;
	padding: 10px;
	border: 1px solid #ccd0d5;
	border-radius: 6px;
	box-sizing: border-box;
	font-size: 14px;
}

.wlc-submit-btn {
	width: 100%;
	background: var(--wlc-primary);
	color: #ffffff;
	border: none;
	padding: 12px;
	border-radius: 6px;
	font-weight: 600;
	cursor: pointer;
	margin-top: 4px;
	flex: 0 0 auto;
}

#wlc-chat-body {
	flex: 1 1 auto;
	min-height: 0;
	display: flex;
	flex-direction: column;
	height: auto;
	overflow: hidden;
}

#wlc-messages-stream {
	flex: 1;
	padding: 16px;
	overflow-y: auto;
	display: flex;
	flex-direction: column;
	gap: 10px;
	background: #fbfbfb;
}

.wlc-bubble {
	max-width: 75%;
	padding: 10px 14px;
	border-radius: 14px;
	font-size: 13px;
	line-height: 1.4;
	word-wrap: break-word;
}

.wlc-type-user {
	align-self: flex-end;
	background: var(--wlc-primary);
	color: #ffffff;
	border-bottom-right-radius: 2px;
}

.wlc-type-agent {
	align-self: flex-start;
	background: var(--wlc-bg-user);
	color: var(--wlc-text-dark);
	border-bottom-left-radius: 2px;
}

.wlc-type-system {
	align-self: center;
	background: #eee;
	color: #666;
	font-size: 11px;
	border-radius: 4px;
}

.wlc-footer {
	padding: 10px;
	border-top: 1px solid #ebebeb;
	display: flex;
	align-items: center;
	gap: 8px;
	background: #fff;
}

#wlc-message-input {
	flex: 1;
	height: 38px;
	border: 1px solid #ccd0d5;
	border-radius: 19px;
	padding: 8px 14px;
	resize: none;
	box-sizing: border-box;
	font-size: 13px;
	outline: none;
}

#wlc-send-button {
	background: var(--wlc-primary);
	color: #fff;
	border: none;
	border-radius: 50%;
	width: 36px;
	height: 36px;
	display: flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
}

@media (max-width: 768px) {
	#wlc-chat-container {
		bottom: 12px;
		right: 12px;
	}
	#wlc-window {
		position: fixed;
		top: 0;
		left: 0;
		width: 100vw;
		height: 100vh;
		border-radius: 0;
	}
}

#wlc-trigger-button:focus-visible,
#wlc-close-button:focus-visible,
.wlc-submit-btn:focus-visible,
#wlc-send-button:focus-visible,
.wlc-form-group input:focus-visible,
#wlc-message-input:focus-visible {
	outline: 2px solid currentColor;
	outline-offset: 2px;
}

#wlc-send-button:disabled,
.wlc-submit-btn:disabled,
#wlc-message-input:disabled {
	opacity: .55;
	cursor: not-allowed;
}

@media (max-width: 480px) {
	#wlc-trigger-button { max-width: calc(100vw - 24px); }
	.wlc-btn-label { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
}
/* v1.4 typing + read receipts */
.wlc-public-typing{padding:4px 14px 8px;font-size:11px;color:#646970;font-style:italic}.wlc-bubble{position:relative}.wlc-public-read{display:block;font-size:9px;line-height:1;text-align:right;margin-top:4px;opacity:.65}.wlc-public-read.read{font-weight:700}
/* v1.5 offline, departments and satisfaction */
.wlc-form-group select{width:100%;padding:10px;border:1px solid #ccd0d5;border-radius:6px;box-sizing:border-box;font-size:14px;background:#fff}.wlc-online-status:not(.online)::before{content:"● ";color:#ff9500}.wlc-rating-panel,#wlc-rating-panel{padding:18px;background:#fff;display:flex;flex-direction:column;gap:10px;text-align:center;overflow:auto}#wlc-rating-panel[hidden]{display:none}.wlc-stars{display:flex;justify-content:center;gap:5px}.wlc-stars button{border:0;background:transparent;font-size:28px;line-height:1;color:#c3c4c7;cursor:pointer;padding:2px}.wlc-stars button.selected{color:#dba617}#wlc-rating-feedback{width:100%;min-height:64px;box-sizing:border-box;resize:vertical;border:1px solid #ccd0d5;border-radius:6px;padding:8px}#wlc-rating-thanks{font-size:13px;color:#2271b1;font-weight:600}

/* v1.5.1 fluxo offline */
#wlc-offline-message-group textarea{width:100%;min-height:90px;max-height:150px;resize:vertical;padding:10px;border:1px solid #ccd0d5;border-radius:6px;box-sizing:border-box;font-size:14px;font-family:inherit}.wlc-offline-success{margin-top:18px;padding:14px;border-radius:8px;background:#edf7ed;color:#1e4620;font-size:13px;font-weight:600;line-height:1.45}.wlc-offline-success[hidden]{display:none}


/* v1.5.2: formulário visível, rolagem e espaçamento compacto */
#wlc-window { min-height: 0; }
#wlc-pre-chat::-webkit-scrollbar { width: 8px; }
#wlc-pre-chat::-webkit-scrollbar-thumb { background: rgba(0,0,0,.22); border-radius: 8px; }
#wlc-pre-chat::-webkit-scrollbar-track { background: transparent; }
#wlc-offline-message-group textarea { min-height: 76px; max-height: 110px; }
.wlc-form-group input, .wlc-form-group select, .wlc-form-group textarea { line-height: 1.25; }
@media (max-height: 680px) and (min-width: 769px) {
  #wlc-window { height: min(520px, calc(100vh - 32px)); }
  .wlc-header { padding: 12px 14px; }
  #wlc-pre-chat { padding: 10px 14px 12px; }
  #wlc-prechat-message { margin-bottom: 8px; }
  .wlc-form-group { margin-bottom: 8px; }
  .wlc-form-group input, .wlc-form-group select, .wlc-form-group textarea { padding: 8px; }
}
@media (max-width: 768px) {
  #wlc-pre-chat { padding: 12px 14px 16px; }
}

.wlc-live-invite{padding:16px 18px;background:#fff;border-bottom:1px solid #e5e5e5}.wlc-live-invite[hidden]{display:none}.wlc-live-invite strong{display:block;font-size:15px;margin-bottom:5px;color:var(--wlc-text-dark)}.wlc-live-invite p{margin:0 0 12px;line-height:1.45;color:#50575e}.wlc-live-invite-actions{display:flex;gap:8px}.wlc-live-invite-actions .wlc-submit-btn{width:auto;flex:1;margin:0}.wlc-invite-dismiss{border:1px solid #ccd0d5;background:#fff;border-radius:6px;padding:10px 12px;cursor:pointer}.wlc-live-invite-actions button:focus-visible{outline:2px solid currentColor;outline-offset:2px}

#wlc-live-invite.wlc-invite-floating{display:block!important;position:absolute;left:0;right:0;top:74px;z-index:20;margin:0 14px;border:1px solid #dcdcde;border-radius:10px;box-shadow:0 10px 28px rgba(0,0,0,.18);background:#fff}.wlc-widget-open #wlc-live-invite.wlc-invite-floating~#wlc-pre-chat,.wlc-widget-open #wlc-live-invite.wlc-invite-floating~#wlc-chat-body{visibility:hidden}.wlc-live-invite[hidden]{display:none!important}

.wlc-attachment-link{display:inline-flex;align-items:center;gap:6px;margin-top:6px;padding:7px 10px;border-radius:8px;background:rgba(0,0,0,.06);text-decoration:none;word-break:break-all}.wlc-attach-btn{display:inline-flex;align-items:center;justify-content:center;min-width:36px;height:36px;cursor:pointer;font-size:18px}.wlc-contact-detail{background:#fff;border:1px solid #dcdcde;border-radius:8px;padding:18px;margin:16px 0 20px}.wlc-metric-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin:16px 0 24px}.wlc-metric{background:#fff;border:1px solid #dcdcde;border-radius:8px;padding:16px}.wlc-metric span{display:block;color:#646970;margin-bottom:6px}.wlc-metric strong{font-size:24px}
