/**
 * Contact rapide (1.2.6) — bouton flottant + pile de raccourcis, et version en ligne.
 * Variables (réglages) : --wp-scm-qc-color, --wp-scm-qc-x, --wp-scm-qc-y, --wp-scm-qc-size.
 * Par bouton : --wp-scm-qc-item (fond), --wp-scm-qc-item-fg (icône).
 */
.wp-scm-qc[hidden] { display: none; }
.wp-scm-qc {
	position: fixed;
	bottom: var(--wp-scm-qc-y, 20px);
	z-index: 99990;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 10px;
	font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
}
.wp-scm-qc--right { right: var(--wp-scm-qc-x, 20px); }
.wp-scm-qc--left  { left:  var(--wp-scm-qc-x, 20px); }

.wp-scm-qc__toggle {
	width: var(--wp-scm-qc-size, 56px);
	height: var(--wp-scm-qc-size, 56px);
	border: 0;
	border-radius: 50%;
	background: var(--wp-scm-qc-color, #2271b1);
	color: #fff;
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: center;
	box-shadow: 0 6px 20px rgba(0, 0, 0, 0.25);
	padding: 0;
	position: relative;
	transition: transform 0.2s, filter 0.2s;
}
.wp-scm-qc__toggle:hover { filter: brightness(1.1); transform: scale(1.05); }
.wp-scm-qc__toggle:focus-visible { outline: 3px solid rgba(0, 0, 0, 0.3); outline-offset: 2px; }
.wp-scm-qc__toggle svg { width: calc(var(--wp-scm-qc-size, 56px) * 0.5); height: calc(var(--wp-scm-qc-size, 56px) * 0.5); }
.wp-scm-qc__ico { display: flex; position: absolute; inset: 0; align-items: center; justify-content: center; transition: opacity 0.2s, transform 0.2s; }
.wp-scm-qc__ico--close { opacity: 0; transform: rotate(-90deg); }
.wp-scm-qc.is-open .wp-scm-qc__ico--open  { opacity: 0; transform: rotate(90deg); }
.wp-scm-qc.is-open .wp-scm-qc__ico--close { opacity: 1; transform: none; }
.wp-scm-qc--expanded .wp-scm-qc__toggle { display: none; }

.wp-scm-qc__list {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 10px;
	opacity: 0;
	transform: translateY(12px) scale(0.9);
	pointer-events: none;
	transition: opacity 0.2s, transform 0.2s;
}
.wp-scm-qc.is-open .wp-scm-qc__list,
.wp-scm-qc--expanded .wp-scm-qc__list { opacity: 1; transform: none; pointer-events: auto; }

.wp-scm-qc__item {
	position: relative;
	width: calc(var(--wp-scm-qc-size, 56px) * 0.86);
	height: calc(var(--wp-scm-qc-size, 56px) * 0.86);
	border-radius: 50%;
	background: var(--wp-scm-qc-item, #6b7280);
	color: var(--wp-scm-qc-item-fg, #fff);
	display: flex;
	align-items: center;
	justify-content: center;
	box-shadow: 0 4px 14px rgba(0, 0, 0, 0.22);
	text-decoration: none;
	transition: transform 0.15s, filter 0.15s;
}
.wp-scm-qc__item:hover { transform: scale(1.08); filter: brightness(1.08); color: var(--wp-scm-qc-item-fg, #fff); }
.wp-scm-qc__item svg { width: 55%; height: 55%; }

/* Libellé au survol, du côté opposé au bord */
.wp-scm-qc__tip {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	background: rgba(20, 20, 20, 0.9);
	color: #fff;
	font-size: 13px;
	line-height: 1;
	padding: 7px 10px;
	border-radius: 6px;
	white-space: nowrap;
	opacity: 0;
	pointer-events: none;
	transition: opacity 0.15s;
}
.wp-scm-qc--right .wp-scm-qc__tip { right: calc(100% + 10px); }
.wp-scm-qc--left  .wp-scm-qc__tip { left:  calc(100% + 10px); }
.wp-scm-qc__item:hover .wp-scm-qc__tip,
.wp-scm-qc__item:focus-visible .wp-scm-qc__tip { opacity: 1; }

/* Appareils */
@media (max-width: 767px) {
	.wp-scm-qc--desktop-only, .wp-scm-qc__item--desktop-only { display: none !important; }
}
@media (min-width: 768px) {
	.wp-scm-qc--mobile-only, .wp-scm-qc__item--mobile-only { display: none !important; }
}
@media (prefers-reduced-motion: reduce) {
	.wp-scm-qc__list, .wp-scm-qc__toggle, .wp-scm-qc__item, .wp-scm-qc__ico { transition: none; }
}

/* Version en ligne [scm_contact] */
.wp-scm-qc-inline { display: flex; flex-wrap: wrap; gap: 10px; margin: 12px 0; }
.wp-scm-qc-inline--center { justify-content: center; }
.wp-scm-qc-inline--right  { justify-content: flex-end; }
.wp-scm-qc-inline__item {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 8px 14px 8px 10px;
	border-radius: 999px;
	background: var(--wp-scm-qc-item, #6b7280);
	color: var(--wp-scm-qc-item-fg, #fff);
	text-decoration: none;
	font-size: 14px;
	font-weight: 600;
	transition: filter 0.15s, transform 0.15s;
}
.wp-scm-qc-inline__item:hover { filter: brightness(1.1); transform: translateY(-1px); color: var(--wp-scm-qc-item-fg, #fff); }
.wp-scm-qc-inline__item svg { width: 22px; height: 22px; }
.wp-scm-qc-inline--icons .wp-scm-qc-inline__item { padding: 10px; }
.wp-scm-qc-inline--icons .wp-scm-qc-inline__label { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
