/* WP Chat Support – tawk.to-style frontend widget (works with any WordPress theme) */
.wp-chat-support { position: fixed; z-index: 999999; font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, sans-serif; font-size: 14px; line-height: 1.5; box-sizing: border-box; }
.wp-chat-support * { box-sizing: border-box; }

.wp-chat-support--bottom-right { bottom: 20px; right: 20px; }
.wp-chat-support--bottom-left { bottom: 20px; left: 20px; }
.wp-chat-support--top-right { top: 20px; right: 20px; }
.wp-chat-support--top-left { top: 20px; left: 20px; }

.wp-chat-support__toggle {
	width: 56px; height: 56px; border-radius: 50%;
	border: none; cursor: pointer; display: flex; align-items: center; justify-content: center;
	box-shadow: 0 2px 12px rgba(0,0,0,0.2);
	transition: transform 0.2s, box-shadow 0.2s;
}
.wp-chat-support__toggle:hover { transform: scale(1.05); box-shadow: 0 4px 16px rgba(0,0,0,0.25); }
.wp-chat-support__toggle svg { color: #fff; }

/* Main panel (tawk-main-panel style) */
.wp-chat-support__main-panel {
	display: none !important;
	position: absolute;
	width: 380px; max-width: calc(100vw - 40px);
	height: 550px; max-height: 85vh;
	background: #fff;
	border-radius: 12px;
	box-shadow: 0 4px 24px rgba(0,0,0,0.15);
	overflow: hidden;
	flex-direction: column;
}
.wp-chat-support.is-open .wp-chat-support__main-panel { display: flex !important; visibility: visible !important; opacity: 1 !important; }
.wp-chat-support--bottom-right .wp-chat-support__main-panel,
.wp-chat-support--top-right .wp-chat-support__main-panel { right: 0; bottom: 70px; }
.wp-chat-support--bottom-left .wp-chat-support__main-panel,
.wp-chat-support--top-left .wp-chat-support__main-panel { left: 0; bottom: 70px; }
.wp-chat-support--top-right .wp-chat-support__main-panel,
.wp-chat-support--top-left .wp-chat-support__main-panel { bottom: auto; top: 70px; }

.wp-chat-support__header {
	display: flex; align-items: center; justify-content: space-between;
	padding: 14px 16px; flex-shrink: 0;
	color: #fff;
}
.wp-chat-support__title { margin: 0; font-size: 1.1em; font-weight: 600; }
.wp-chat-support__close {
	background: none; border: none; color: inherit; font-size: 24px; line-height: 1;
	cursor: pointer; padding: 0; opacity: 0.9;
}
.wp-chat-support__close:hover { opacity: 1; }

/* Chat panel – scrollable, contains slides */
.wp-chat-support__chat-panel {
	flex: 1; min-height: 0; margin-right: 0;
	overflow: hidden;
}
.wp-chat-support__slides {
	display: flex; width: 300%; height: 100%;
	transition: transform 0.3s ease;
}
.wp-chat-support__slides[data-current="1"] { transform: translateX(-33.333%); }
.wp-chat-support__slides[data-current="2"] { transform: translateX(-66.666%); }
.wp-chat-support__slide {
	width: 33.333%; flex-shrink: 0; height: 100%;
	overflow-y: auto; overflow-x: hidden;
}
.wp-chat-support__panel-inner { display: flex; flex-direction: column; min-height: 100%; }
.wp-chat-support__body { padding: 16px; display: flex; flex-direction: column; flex: 1; }

.wp-chat-support__form-width { width: 100%; display: flex; flex-direction: column; }
.wp-chat-support__margin-top { margin-top: 12px; }

/* Header cards (welcome + subtitle) */
.wp-chat-support__header-card { margin-top: 8px; }
.wp-chat-support__header-card:first-child { margin-top: 0; }
.wp-chat-support__header-card--heading .wp-chat-support__header-text { font-weight: 600; font-size: 16px; color: #1d2327; margin: 0; text-align: center; }
.wp-chat-support__header-card--text .wp-chat-support__header-text { font-size: 13px; color: #50575e; margin: 0; text-align: center; line-height: 1.5; }

/* Card container + card (Help Center / tawk-home-kb-card style) */
.wp-chat-support__card-container { margin-top: 12px; }
.wp-chat-support__card-container--first { margin-top: 16px; }
.wp-chat-support__card {
	background: #f6f7f7; border-radius: 8px; padding: 14px;
	box-shadow: 0 1px 3px rgba(0,0,0,0.06);
}
.wp-chat-support__card--kb { }
.wp-chat-support__card--message { background: #f0f6fc; border-left: 4px solid; }

/* Callback request card (above Help Center) – thin border, header-style icon like chat popup */
.wp-chat-support__card--callback {
	padding: 0; overflow: hidden;
	border: 1px solid #dcdcde;
	background: #fff;
	border-radius: 8px;
}
.wp-chat-support__callback-trigger {
	display: flex; align-items: center; width: 100%;
	background: transparent; border: none; cursor: pointer; text-align: left;
	transition: background 0.15s; gap: 0;
	min-height: 52px;
}
.wp-chat-support__callback-trigger:hover { background: #f6f7f7; }
.wp-chat-support__callback-icon {
	display: flex; align-items: center; justify-content: center;
	flex-shrink: 0; width: 40px; min-width: 40px; height: 40px;
	margin: 6px 0 6px 10px;
	border-radius: 10px;
	color: #fff;
	background: #2271b1;
}
.wp-chat-support__callback-icon svg { width: 20px; height: 20px; }
.wp-chat-support__callback-content {
	display: flex; flex-direction: column; justify-content: center;
	flex: 1; min-width: 0; padding: 12px 14px; gap: 2px;
}
.wp-chat-support__callback-title { font-weight: 600; font-size: 13px; color: #1d2327; }
.wp-chat-support__callback-desc { font-size: 12px; color: #50575e; display: block; width: 100%; margin-top: 2px; }
.wp-chat-support__callback-chevron {
	margin-left: auto; align-self: center; padding-right: 14px;
	font-size: 18px; font-weight: 600; color: #787c82; flex-shrink: 0;
}
.wp-chat-support__card--callback .wp-chat-support__callback-trigger { flex-wrap: nowrap; }

/* Search wrap (for positioning suggestions) */
.wp-chat-support__search-wrap { position: relative; margin-top: 8px; }
.wp-chat-support__search-wrap .wp-chat-support__search-wrapper { margin-top: 0; }
/* Search suggestions (instant results dropdown) */
.wp-chat-support__search-suggestions {
	position: absolute; left: 0; right: 0; top: 100%; margin-top: 2px;
	background: #fff; border: 1px solid #c3c4c7; border-radius: 6px;
	box-shadow: 0 4px 12px rgba(0,0,0,0.1); max-height: 200px; overflow-y: auto;
	z-index: 10; display: none;
}
.wp-chat-support__search-suggestions[aria-hidden="false"] { display: block; }
.wp-chat-support__search-suggestion {
	display: block; width: 100%; padding: 10px 12px; border: none; background: none;
	text-align: left; font-size: 13px; color: #1d2327; cursor: pointer;
	border-bottom: 1px solid #f0f0f1;
}
.wp-chat-support__search-suggestion:last-child { border-bottom: none; }
.wp-chat-support__search-suggestion:hover, .wp-chat-support__search-suggestion:focus { background: #f6f7f7; }

/* Slide header: back button on left */
.wp-chat-support__slide-header {
	display: flex;
	align-items: center;
	margin-bottom: 8px;
	flex-shrink: 0;
}
.wp-chat-support__back {
	background: none; border: none; color: #2271b1; cursor: pointer; padding: 0 0 12px;
	font-size: 13px; margin: 0; margin-right: auto; display: inline-block;
}
.wp-chat-support__back:hover { text-decoration: underline; }

/* Callback form */
.wp-chat-support__card--form { margin-top: 0; }
.wp-chat-support__form { display: flex; flex-direction: column; gap: 10px; margin-top: 10px; }
.wp-chat-support__label { font-size: 13px; font-weight: 500; color: #1d2327; }
.wp-chat-support__input {
	width: 100%; padding: 10px 12px; border: 1px solid #c3c4c7; border-radius: 6px;
	font-size: 14px; min-height: 36px;
}
.wp-chat-support__input:focus { outline: none; border-color: #2271b1; box-shadow: 0 0 0 1px #2271b1; }
.wp-chat-support__form-hint { font-size: 12px; color: #50575e; margin: 0 0 4px; }
.wp-chat-support__form-message { padding: 10px; border-radius: 6px; font-size: 13px; margin-top: 4px; }
.wp-chat-support__form-message.wp-chat-support__form-message--error { background: #fcf0f1; color: #b32d2e; }
.wp-chat-support__form-message.wp-chat-support__form-message--success { background: #edfaef; color: #00a32a; }
.wp-chat-support__submit {
	padding: 10px 16px; margin-top: 8px; border: none; border-radius: 6px;
	background: #2271b1; color: #fff; font-size: 14px; font-weight: 500; cursor: pointer;
}
.wp-chat-support__submit:hover { background: #135e96; }
.wp-chat-support__submit:disabled { opacity: 0.6; cursor: not-allowed; }

/* Answer thread (slide window – all Q&A in same popup) */
.wp-chat-support__thread { display: flex; flex-direction: column; gap: 12px; }
.wp-chat-support__thread-block {
	background: #f6f7f7; border-radius: 8px; overflow: hidden; border-left: 4px solid;
}
.wp-chat-support__thread-question {
	padding: 10px 12px; font-weight: 600; font-size: 13px; color: #1d2327;
	background: #e8eaed;
}
.wp-chat-support__thread-answer {
	padding: 12px; font-size: 13px; line-height: 1.5; color: #1d2327;
}
.wp-chat-support__thread-answer p:last-child { margin-bottom: 0; }
.wp-chat-support__card--message { background: #f0f6fc; border-left: 4px solid; }
.wp-chat-support__card-title {
	margin: 0 0 10px; font-size: 13px; font-weight: 600; color: #1d2327;
}
.wp-chat-support__card-title:empty { display: none; }

/* Search wrapper (Help Center search input + button) */
.wp-chat-support__search-wrapper {
	position: relative; margin-top: 8px; display: flex; align-items: stretch;
	border: 1px solid #c3c4c7; border-radius: 25px; background: #fff; overflow: hidden;
}
.wp-chat-support__search {
	flex: 1; border: none; padding: 8px 40px 8px 24px; font-size: 13px;
	padding-left: 10px !important;
	outline: none; background: transparent; min-height: 36px; border-radius: 25px;
}
.wp-chat-support__search::placeholder { color: #787c82; }
.wp-chat-support__search-btn {
	position: absolute; right: 0; top: 0; bottom: 0;
	width: 40px; border: none; background: transparent; cursor: pointer;
	display: flex; align-items: center; justify-content: center; color: #50575e;
}
.wp-chat-support__search-btn:hover { color: #1d2327; background: #f0f0f1; }
.wp-chat-support__search-icon { flex-shrink: 0; }

/* List (tawk-home-list style) – inner scroll, show more */
.wp-chat-support__list-wrapper { margin-top: 10px; }
.wp-chat-support__list-scroll {
	max-height: 220px;
	overflow-y: auto;
	overflow-x: hidden;
}
.wp-chat-support__list { list-style: none; margin: 0; padding: 0; }
.wp-chat-support__list--questions { display: flex; flex-direction: column; gap: 6px; }
.wp-chat-support__list-item.wp-chat-support__list-item--hidden { display: none !important; }
.wp-chat-support__show-more-wrap { margin-top: 8px; text-align: center; }
.wp-chat-support__show-more-btn {
	background: none; border: 1px solid #c3c4c7; border-radius: 6px;
	padding: 6px 14px; font-size: 13px; color: #2271b1; cursor: pointer;
}
.wp-chat-support__show-more-btn:hover { background: #f0f6fc; border-color: #2271b1; }
.wp-chat-support__list-item {
	display: flex; align-items: center; margin-top: 6px; padding: 10px 12px;
	background: #fff; border: 1px solid #c3c4c7; border-radius: 6px;
	cursor: pointer; transition: background 0.15s, border-color 0.15s;
	outline: none; width: 100%; text-align: left; font-size: 13px; color: #1d2327;
}
.wp-chat-support__list-item:first-child { margin-top: 0; }
.wp-chat-support__list-item:hover, .wp-chat-support__list-item:focus {
	background: #f0f0f1; border-color: #8c8f94;
}
.wp-chat-support__list-item[hidden] { display: none !important; }
.wp-chat-support__list-item-content { flex: 1; overflow: hidden; }
.wp-chat-support__list-item-text { margin: 0; font-size: 13px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.wp-chat-support__list-item-chevron { margin-left: 6px; flex-shrink: 0; color: #787c82; font-size: 12px; }

/* Message / answer card */
.wp-chat-support__answer-container { margin-top: 10px; }
.wp-chat-support__message-item { padding: 0; }
.wp-chat-support__message-body {
	font-size: 13px; line-height: 1.5; color: #1d2327;
}
.wp-chat-support__message-body p:last-child { margin-bottom: 0; }
.wp-chat-support__message-body.wp-chat-support__answer--loading { color: #50575e; }
.wp-chat-support__message-body.wp-chat-support__answer--error { background: #fcf0f1; border-radius: 6px; padding: 10px; }
