/**
 * Easy Tooltip 1.7
 */

.jx-etip-trigger {
	appearance: none;
	display: inline;
	margin: 0;
	padding: 0;
	border: 0;
	background: transparent;
	color: inherit;
	font: inherit;
	line-height: inherit;
	text-align: inherit;
	cursor: help;
	text-decoration: none;
	vertical-align: baseline;
}

.jx-etip-text {
	border-bottom: 1px dashed color-mix(in srgb, currentColor 55%, transparent);
	font-weight: 700;
	transition: color 160ms ease, border-color 160ms ease;
}

.jx-etip-trigger:hover .jx-etip-text,
.jx-etip-trigger:focus-visible .jx-etip-text {
	color: var(--jx-etip-accent, #2563eb);
	border-bottom-color: var(--jx-etip-accent, #2563eb);
}

.jx-etip-trigger:focus-visible {
	outline: 3px solid color-mix(in srgb, var(--jx-etip-accent, #2563eb) 40%, white);
	outline-offset: 3px;
	border-radius: 6px;
}

.jx-etip-panel {
	--jx-etip-arrow-bg: var(--jx-etip-bg, #0f172a);
	position: fixed;
	z-index: 12000;
	display: none;
	overflow: visible;
	width: max-content;
	max-width: min(var(--jx-etip-max, 240px), calc(100vw - 24px));
	pointer-events: none;
	opacity: 0;
	visibility: hidden;
	transition:
		opacity 160ms ease,
		transform 180ms cubic-bezier(0.2, 0.8, 0.2, 1),
		visibility 160ms ease;
}

.jx-etip-panel.is-open,
.jx-etip-panel.show {
	display: block !important;
	pointer-events: auto;
	opacity: 1;
	visibility: visible;
}

.jx-etip-panel--fade.is-open,
.jx-etip-panel--none.is-open {
	transform: none;
}

.jx-etip-panel--scale:not(.is-open) {
	transform: scale(0.94);
}

.jx-etip-panel--scale.is-open {
	transform: scale(1);
}

.jx-etip-panel--slide:not(.is-open) {
	transform: translateY(6px);
}

.jx-etip-panel--slide.is-open {
	transform: translateY(0);
}

.jx-etip-panel--static {
	transition: none !important;
}

.jx-etip-panel__inner {
	position: relative;
	z-index: 1;
	padding: 0.65rem 0.8rem;
	/* No hard border — it cuts a line through the pointer */
	border: 0;
	border-radius: var(--jx-etip-radius, 10px);
	background: var(--jx-etip-bg, #0f172a);
	box-shadow: 0 16px 36px rgba(15, 23, 42, 0.28);
	color: var(--jx-etip-fg, #ffffff);
	font-size: 0.84rem;
	font-weight: 500;
	line-height: 1.45;
}

.jx-etip-panel--light {
	--jx-etip-arrow-bg: #ffffff;
}

.jx-etip-panel--light .jx-etip-panel__inner {
	background: #ffffff;
	color: #0f172a;
	box-shadow: 0 12px 28px rgba(15, 23, 42, 0.16);
}

.jx-etip-panel--glass {
	--jx-etip-arrow-bg: #ffffff;
}

.jx-etip-panel--glass .jx-etip-panel__inner {
	background: rgba(255, 255, 255, 0.96);
	color: #0f172a;
	backdrop-filter: blur(14px) saturate(150%);
	box-shadow: 0 12px 30px rgba(15, 23, 42, 0.16);
}

.jx-etip-panel--brand {
	--jx-etip-arrow-bg: var(--jx-etip-accent, #2563eb);
}

.jx-etip-panel--brand .jx-etip-panel__inner {
	background: var(--jx-etip-accent, #2563eb);
	color: #ffffff;
	box-shadow: 0 16px 36px color-mix(in srgb, var(--jx-etip-accent, #2563eb) 40%, transparent);
}

/*
 * Opaque SVG fill — border/clip-path tricks go hollow under filters.
 * Arrow sits under .inner so the tip body and pointer join cleanly.
 */
.jx-etip-arrow {
	position: absolute;
	z-index: 0;
	display: block;
	width: 14px;
	height: 8px;
	color: var(--jx-etip-arrow-bg);
	line-height: 0;
	pointer-events: none;
}

.jx-etip-arrow svg {
	display: block;
	width: 14px;
	height: 8px;
	fill: currentColor;
}

.jx-etip-panel[data-placement="top"] .jx-etip-arrow {
	left: 50%;
	bottom: -6px;
	margin-left: -7px;
}

.jx-etip-panel[data-placement="bottom"] .jx-etip-arrow {
	left: 50%;
	top: -6px;
	margin-left: -7px;
	transform: rotate(180deg);
}

.jx-etip-panel[data-placement="left"] .jx-etip-arrow {
	top: 50%;
	right: -6px;
	margin-top: -4px;
	transform: rotate(-90deg);
}

.jx-etip-panel[data-placement="right"] .jx-etip-arrow {
	top: 50%;
	left: -6px;
	margin-top: -4px;
	transform: rotate(90deg);
}

.jx-etip-panel[data-placement="follow"] .jx-etip-arrow {
	display: none;
}

@media (prefers-reduced-motion: reduce) {
	.jx-etip-trigger,
	.jx-etip-text,
	.jx-etip-panel {
		transition: none !important;
	}
}
