/**
 * Give - Currency Switcher: Site-wide floating switcher styles.
 *
 * @package Give_Currency_Switcher
 * @since   1.6.0
 */

.give-cs-floating {
	position: fixed;
	z-index: 99990;
	font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
	font-size: 14px;
	line-height: 1.4;
}

.give-cs-floating--bottom-left {
	bottom: 20px;
	left: 20px;
}

.give-cs-floating--bottom-right {
	bottom: 20px;
	right: 20px;
}

.give-cs-floating--top-left {
	top: 20px;
	left: 20px;
}

.give-cs-floating--top-right {
	top: 20px;
	right: 20px;
}

/* Toggle pill */
.give-cs-floating__toggle {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	margin: 0;
	padding: 9px 14px;
	border: 1px solid rgba(0, 0, 0, 0.12);
	border-radius: 999px;
	background: #ffffff;
	color: #1a1a1a;
	box-shadow: 0 4px 14px rgba(0, 0, 0, 0.18);
	cursor: pointer;
	transition: box-shadow 0.15s ease, transform 0.15s ease;
}

.give-cs-floating__toggle:hover,
.give-cs-floating__toggle:focus {
	box-shadow: 0 6px 20px rgba(0, 0, 0, 0.26);
	outline: none;
}

.give-cs-floating__toggle:focus-visible {
	outline: 2px solid #66bb6a;
	outline-offset: 2px;
}

.give-cs-floating__symbol {
	font-weight: 700;
}

.give-cs-floating__code {
	font-weight: 600;
	letter-spacing: 0.04em;
}

.give-cs-floating__caret {
	width: 0;
	height: 0;
	border-left: 4px solid transparent;
	border-right: 4px solid transparent;
	border-top: 5px solid currentColor;
	transition: transform 0.15s ease;
}

.give-cs-floating.is-open .give-cs-floating__caret {
	transform: rotate(180deg);
}

/* Currency list */
.give-cs-floating__list {
	position: absolute;
	left: 0;
	min-width: 220px;
	max-height: 320px;
	margin: 0;
	padding: 6px;
	overflow-y: auto;
	list-style: none;
	background: #ffffff;
	border: 1px solid rgba(0, 0, 0, 0.12);
	border-radius: 10px;
	box-shadow: 0 8px 28px rgba(0, 0, 0, 0.22);
}

.give-cs-floating--bottom-left .give-cs-floating__list,
.give-cs-floating--bottom-right .give-cs-floating__list {
	bottom: calc(100% + 8px);
}

.give-cs-floating--top-left .give-cs-floating__list,
.give-cs-floating--top-right .give-cs-floating__list {
	top: calc(100% + 8px);
}

.give-cs-floating--bottom-right .give-cs-floating__list,
.give-cs-floating--top-right .give-cs-floating__list {
	left: auto;
	right: 0;
}

.give-cs-floating__list[hidden] {
	display: none;
}

.give-cs-floating__option {
	display: flex;
	align-items: center;
	gap: 8px;
	padding: 8px 10px;
	border-radius: 7px;
	cursor: pointer;
	color: #1a1a1a;
}

.give-cs-floating__option:hover,
.give-cs-floating__option:focus {
	background: #f1f5f1;
	outline: none;
}

.give-cs-floating__option.is-active {
	background: #e7f4e8;
	font-weight: 600;
}

.give-cs-floating__option-symbol {
	flex: 0 0 24px;
	font-weight: 700;
	text-align: center;
}

.give-cs-floating__option-name {
	flex: 1 1 auto;
}

.give-cs-floating__option-code {
	flex: 0 0 auto;
	color: #6b7280;
	font-size: 12px;
	letter-spacing: 0.04em;
}

.give-cs-floating.is-busy {
	opacity: 0.6;
	pointer-events: none;
}

/* RTL */
[dir="rtl"] .give-cs-floating__option-code {
	letter-spacing: 0;
}

/* Small screens */
@media (max-width: 480px) {
	.give-cs-floating {
		font-size: 13px;
	}

	.give-cs-floating--bottom-left,
	.give-cs-floating--bottom-right {
		bottom: 12px;
	}

	.give-cs-floating--bottom-left,
	.give-cs-floating--top-left {
		left: 12px;
	}

	.give-cs-floating--bottom-right,
	.give-cs-floating--top-right {
		right: 12px;
	}

	.give-cs-floating__list {
		min-width: 200px;
		max-height: 50vh;
	}
}
