/* PQCE Float Contact v1.0.0 */
.pqce-float-contact{
	--pqce-navy:#082c63;
	--pqce-blue:#145aa8;
	--pqce-gold:#f6b700;
	--pqce-gold-2:#ffd65b;
	position:fixed;
	bottom:22px;
	z-index:99990;
	font-family:inherit;
}
.pqce-float-contact--right{right:22px}
.pqce-float-contact--left{left:22px}

.pqce-float-contact__toggle{
	position:relative;
	min-height:58px;
	display:flex;
	align-items:center;
	gap:10px;
	padding:7px 16px 7px 7px;
	border:1px solid rgba(255,255,255,.24);
	border-radius:999px;
	background:linear-gradient(135deg,#061f49 0%,var(--pqce-navy) 58%,#0d4b8d 100%);
	color:#fff;
	box-shadow:0 15px 35px rgba(5,31,73,.28),0 0 0 5px rgba(8,44,99,.05);
	cursor:pointer;
	-webkit-tap-highlight-color:transparent;
	transition:transform .2s ease,box-shadow .2s ease;
}
.pqce-float-contact__toggle:hover{
	transform:translateY(-2px);
	box-shadow:0 18px 42px rgba(5,31,73,.34),0 0 0 6px rgba(246,183,0,.07);
}
.pqce-float-contact__toggle-icon{
	position:relative;
	z-index:2;
	width:44px;
	height:44px;
	flex:0 0 44px;
	display:grid;
	place-items:center;
	border-radius:50%;
	background:linear-gradient(145deg,var(--pqce-gold),var(--pqce-gold-2));
	color:var(--pqce-navy);
	box-shadow:0 6px 16px rgba(246,183,0,.26);
}
.pqce-float-contact__toggle-icon svg,
.pqce-float-contact__action-icon svg{
	width:21px;height:21px;fill:currentColor;
}
.pqce-float-contact__toggle-copy{
	display:flex;
	flex-direction:column;
	align-items:flex-start;
	line-height:1.1;
}
.pqce-float-contact__toggle-copy small{
	margin-bottom:4px;
	color:rgba(255,255,255,.67);
	font-size:9px;
	font-weight:650;
}
.pqce-float-contact__toggle-copy strong{
	color:#fff;
	font-size:12px;
	font-weight:850;
	letter-spacing:.1px;
}
.pqce-float-contact__pulse{
	position:absolute;
	left:7px;
	top:7px;
	width:44px;
	height:44px;
	border-radius:50%;
	background:rgba(246,183,0,.28);
	animation:pqceContactPulse 2.1s infinite;
}
@keyframes pqceContactPulse{
	0%{transform:scale(.92);opacity:.7}
	70%{transform:scale(1.55);opacity:0}
	100%{transform:scale(1.55);opacity:0}
}

/* Panel */
.pqce-float-contact__panel{
	position:absolute;
	bottom:72px;
	width:318px;
	max-width:calc(100vw - 28px);
	overflow:hidden;
	border:1px solid rgba(8,44,99,.11);
	border-radius:18px;
	background:#fff;
	box-shadow:0 24px 60px rgba(5,31,73,.22);
	opacity:0;
	visibility:hidden;
	transform:translateY(10px) scale(.98);
	transform-origin:bottom right;
	pointer-events:none;
	transition:opacity .18s ease,visibility .18s ease,transform .18s ease;
}
.pqce-float-contact--right .pqce-float-contact__panel{right:0}
.pqce-float-contact--left .pqce-float-contact__panel{left:0;transform-origin:bottom left}
.pqce-float-contact.is-open .pqce-float-contact__panel{
	opacity:1;
	visibility:visible;
	transform:translateY(0) scale(1);
	pointer-events:auto;
}

.pqce-float-contact__head{
	display:flex;
	align-items:flex-start;
	justify-content:space-between;
	gap:12px;
	padding:18px 18px 16px;
	background:
		radial-gradient(circle at 90% 0%,rgba(246,183,0,.17),transparent 36%),
		linear-gradient(135deg,#061f49 0%,#082c63 58%,#0d4b8d 100%);
}
.pqce-float-contact__eyebrow{
	display:block;
	margin-bottom:6px;
	color:#f6c33b;
	font-size:8px;
	font-weight:900;
	letter-spacing:.8px;
}
.pqce-float-contact__head strong{
	display:block;
	color:#fff;
	font-size:18px;
	line-height:1.2;
	font-weight:850;
}
.pqce-float-contact__close{
	width:30px;height:30px;
	display:grid;place-items:center;
	flex:0 0 30px;
	padding:0;
	border:1px solid rgba(255,255,255,.14);
	border-radius:8px;
	background:rgba(255,255,255,.08);
	color:#fff;
	font-size:20px;
	line-height:1;
	cursor:pointer;
}
.pqce-float-contact__close:hover{background:rgba(255,255,255,.15)}

.pqce-float-contact__status{
	display:flex;
	align-items:center;
	gap:10px;
	padding:13px 18px;
	border-bottom:1px solid #e8eef5;
	background:#f8fbff;
}
.pqce-float-contact__status-dot{
	width:9px;height:9px;
	border-radius:50%;
	flex:0 0 9px;
}
.pqce-float-contact__status-dot.is-open{
	background:#16a36a;
	box-shadow:0 0 0 4px rgba(22,163,106,.12);
}
.pqce-float-contact__status-dot.is-closed{
	background:#c98800;
	box-shadow:0 0 0 4px rgba(201,136,0,.12);
}
.pqce-float-contact__status strong{
	display:block;
	margin-bottom:2px;
	color:#082c63;
	font-size:11px;
	font-weight:800;
}
.pqce-float-contact__status small{
	display:block;
	color:#708198;
	font-size:9px;
}

.pqce-float-contact__actions{
	display:grid;
	gap:8px;
	padding:12px;
}
.pqce-float-contact__action{
	display:grid;
	grid-template-columns:39px minmax(0,1fr);
	align-items:center;
	gap:10px;
	min-height:54px;
	padding:8px 10px;
	border:1px solid #e4ebf3;
	border-radius:11px;
	background:#fff;
	color:#082c63!important;
	text-decoration:none!important;
	transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease,background .18s ease;
}
.pqce-float-contact__action:hover{
	transform:translateX(2px);
	border-color:rgba(20,90,168,.22);
	background:#f8fbff;
	box-shadow:0 7px 18px rgba(8,44,99,.07);
}
.pqce-float-contact__action--primary{
	border-color:rgba(246,183,0,.33);
	background:linear-gradient(135deg,#fffaf0,#fff);
}
.pqce-float-contact__action-icon{
	width:37px;height:37px;
	display:grid;place-items:center;
	border-radius:10px;
	background:#edf6ff;
	color:#145aa8;
	font-size:10px;
	font-weight:900;
}
.pqce-float-contact__action--primary .pqce-float-contact__action-icon{
	background:linear-gradient(145deg,#f6b700,#ffd65b);
	color:#082c63;
}
.pqce-float-contact__action small{
	display:block;
	margin-bottom:3px;
	color:#78889b;
	font-size:8.5px;
	line-height:1;
}
.pqce-float-contact__action strong{
	display:block;
	overflow-wrap:anywhere;
	color:#082c63;
	font-size:11px;
	line-height:1.25;
	font-weight:820;
}

.pqce-float-contact__note{
	margin:0!important;
	padding:0 14px 14px;
	color:#7c8a9c!important;
	font-size:8.5px;
	line-height:1.5;
	text-align:center;
}

/* Admin bar / mobile safe areas */
body.admin-bar .pqce-float-contact{z-index:99999}

@media(max-width:680px){
	.pqce-float-contact{
		bottom:max(14px,env(safe-area-inset-bottom));
	}
	.pqce-float-contact--right{right:14px}
	.pqce-float-contact--left{left:14px}
	.pqce-float-contact__toggle{
		width:56px;
		height:56px;
		min-height:56px;
		padding:6px;
		justify-content:center;
	}
	.pqce-float-contact__toggle-icon{
		width:44px;height:44px;flex-basis:44px;
	}
	.pqce-float-contact__toggle-copy{display:none}
	.pqce-float-contact__panel{
		bottom:68px;
		width:min(318px,calc(100vw - 28px));
	}
}
@media(prefers-reduced-motion:reduce){
	.pqce-float-contact *,
	.pqce-float-contact *::before,
	.pqce-float-contact *::after{
		animation:none!important;
		transition:none!important;
		scroll-behavior:auto!important;
	}
}
