/**
 *
 * @package caforum/yesnoswitches
 * @copyright (c) 2026 Fred Rimbert https://forums.caforum.fr/
 * @license GNU General Public License, version 2 (GPL-2.0)
 *
 */

.caforum-yns-hidden { display: none !important; }

.caforum-yns-toggle {
	position: relative;
	display: inline-block;
	width: 38px;
	height: 18px;
	vertical-align: middle;
	cursor: pointer;
	box-sizing: border-box;
}

.caforum-yns-toggle .caforum-yns-input {
	position: absolute;
	opacity: 0;
	width: 100%;
	height: 100%;
	margin: 0;
	cursor: pointer;
	z-index: 3;
}

.caforum-yns-slider {
	position: absolute;
	top: 0; left: 0; right: 0; bottom: 0;
	background-color: #dfdfdf;
	border: 1px solid #ccc;
	border-radius: 20px;
	box-sizing: border-box;
	overflow: hidden;
	transition: background-color .2s ease-in-out, border-color .2s ease-in-out;
}

.caforum-yns-slider:before {
	content: "";
	position: absolute;
	height: 14px;
	width: 14px;
	left: 1px;
	top: 1px;
	background-color: #fff;
	border-radius: 50%;
	z-index: 2;
	transition: transform .2s cubic-bezier(0.4, 0, 0.2, 1);
	box-shadow: 0 1px 2px rgba(0, 0, 0, 0.1);
	background-repeat: no-repeat;
	background-position: center;
	background-size: 8px 8px;
	background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSIjMDAwMDAwIiBzdHJva2Utd2lkdGg9IjMuNSIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIj48bGluZSB4MT0iMTgiIHkxPSI2IiB4Mj0iNiIgeTI9IjE4Ij48L2xpbmU+PGxpbmUgeDE9IjYiIHkxPSI2IiB4Mj0iMTgiIHkyPSIxOCI+PC9saW5lPjwvc3ZnPg==");
}

.caforum-yns-input:checked + .caforum-yns-slider {
	background-color: #28b2ed;
	border-color: #1a89b8;
}

.caforum-yns-input:checked + .caforum-yns-slider:before {
	transform: translateX(20px);
	background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSIjMjdhZTYwIiBzdHJva2Utd2lkdGg9IjQiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCI+PHBvbHlsaW5lIHBvaW50cz0iMjAgNiA5IDE3IDQgMTIiPjwvcG9seWxpbmU+PC9zdmc+");
}

.caforum-yns-input:focus-visible + .caforum-yns-slider {
	outline: 2px solid #1a89b8;
	outline-offset: 2px;
}

.caforum-yns-input:disabled {
	cursor: not-allowed;
}

.caforum-yns-input:disabled + .caforum-yns-slider {
	opacity: .5;
}

.caforum-yns-checkbox {
	vertical-align: middle;
	cursor: pointer;
}

/* Header of the extension's ACP page */
.caforum-yns-badge {
	display: inline-block;
	padding: 2px 8px;
	border-radius: 10px;
	background-color: #2e8540;
	color: #fff;
	font-size: .55em;
	font-weight: bold;
	line-height: 1.5;
	vertical-align: middle;
}

.caforum-yns-support {
	margin: 10px 0 15px;
	padding: 10px 12px 12px;
	border: 1px solid #d7dde6;
	border-radius: 5px;
	background-color: #eef1f5;
}

.caforum-yns-support p {
	margin: 0 0 10px;
	font-size: 1.1em;
	color: #333;
}

.caforum-yns-btn {
	display: inline-block;
	margin: 2px 6px 2px 0;
	padding: 6px 12px;
	border-radius: 4px;
	font-size: 1.1em;
	font-weight: bold;
	line-height: 1.4;
	text-decoration: none !important;
	transition: filter .15s ease-in-out;
}

.caforum-yns-btn:hover,
.caforum-yns-btn:focus { filter: brightness(1.1); }

a.caforum-yns-btn-donate,
a.caforum-yns-btn-donate:hover,
a.caforum-yns-btn-donate:visited { background-color: #2f6ea5; color: #fff; }

a.caforum-yns-btn-member,
a.caforum-yns-btn-member:hover,
a.caforum-yns-btn-member:visited { background-color: #2e8540; color: #fff; }

a.caforum-yns-btn-help,
a.caforum-yns-btn-help:hover,
a.caforum-yns-btn-help:visited { background-color: #e1e1e1; color: #333; }
