/* Pereezd Quiz — стили формы квиза */

.pereezd-quiz-wrap{
	--prz-blue:#3b5bea;
	--prz-blue-dark:#2743c2;
	--prz-blue-light:#edf1ff;
	--prz-text:#1c2b28;
	--prz-muted:#6b7a77;
	--prz-border:#e4e7e6;
	max-width:640px;
	margin:0 auto;
	font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
	color:var(--prz-text);
	box-sizing:border-box;
	padding:0 16px;
}
@media (min-width:601px){
	.pereezd-quiz-wrap{padding:0;}
}
.pereezd-quiz-wrap *,
.pereezd-quiz-wrap *:before,
.pereezd-quiz-wrap *:after{
	box-sizing:border-box;
}

.pereezd-quiz-card{
	background:transparent;
	padding:32px;
	min-height:300px;
	position:relative;
}
@media (max-width:600px){
	.pereezd-quiz-card{
		padding:20px 16px;
	}
}
.pereezd-quiz-error{
	background:#fbeaea;
	border:1px solid #e9b6b6;
	color:#b23b3b;
	padding:12px 16px;
	border-radius:8px;
	font-size:14px;
	margin-bottom:16px;
	display:none;
}
.pereezd-quiz-error.show{display:block;}
.pereezd-quiz-error.prz-shake{animation:przShake .4s ease;}
@keyframes przShake{
	10%,90%{transform:translateX(-1px);}
	20%,80%{transform:translateX(2px);}
	30%,50%,70%{transform:translateX(-4px);}
	40%,60%{transform:translateX(4px);}
}

.prz-q-heading{
	display:flex;
	align-items:baseline;
	gap:6px;
	margin:0 0 18px;
}
.prz-q-heading .prz-q-number{
	font-weight:700;
	font-size:16px;
	flex:0 0 auto;
}
.prz-q-heading .prz-q-text{
	font-weight:700;
	font-size:16px;
	margin:0;
}

.prz-multi-note{
	color:var(--prz-muted);
	font-size:13px;
	margin:-10px 0 14px;
}

.prz-text-field{
	margin-bottom:6px;
}
.prz-text-field input{
	width:100%;
	padding:14px 16px;
	border:1px solid var(--prz-border);
	border-radius:8px;
	font-size:15px;
	font-family:inherit;
}
.prz-text-field input:focus{
	outline:none;
	border-color:var(--prz-blue);
}

.prz-answers{
	display:flex;
	flex-direction:column;
	gap:20px;
	margin:5px 0 20px 0;
}

.prz-answer-option{
	border:1px solid var(--prz-border);
	border-radius:8px;
	padding:15px 18px;
	display:flex;
	align-items:center;
	gap:14px;
	cursor:pointer;
	transition:border-color .15s ease, background .15s ease;
	font-size:15px;
	line-height:1.35;
}
.prz-answer-option:hover{
	border-color:var(--prz-blue);
	background:#f4fbf8;
}
.prz-answer-option.selected{
	border-color:var(--prz-blue);
	background:var(--prz-blue-light);
}
.prz-answer-option input{
	accent-color:var(--prz-blue);
	width:18px;
	height:18px;
	margin:0;
	flex:0 0 auto;
}
.prz-answer-option span{
	flex:1 1 auto;
}

/* Hint trigger — зелёный */
.prz-hint-trigger{
	margin-top:16px;
	color:var(--prz-blue-dark);
	font-size:13px;
	text-decoration:underline dotted;
	cursor:pointer;
	display:inline-flex;
	align-items:center;
	gap:6px;
	background:none;
	border:none;
	padding:0;
	font-family:inherit;
	font-weight:600;
}
.prz-hint-trigger:hover{color:var(--prz-blue);}

/* Centered white tooltip/modal с зелёным акцентом, привязан к карточке квиза */
.prz-hint-overlay{
	position:absolute;
	inset:0;
	background:rgba(59,91,234,.18);
	display:flex;
	align-items:center;
	justify-content:center;
	padding:24px;
	opacity:0;
	pointer-events:none;
	transition:opacity .18s ease;
	z-index:20;
}
.prz-hint-overlay.show{
	opacity:1;
	pointer-events:auto;
}
.prz-hint-box{
	background:#fff;
	border-radius:12px;
	padding:26px 24px;
	max-width:360px;
	width:100%;
	box-shadow:0 16px 40px rgba(59,91,234,.22);
	border:1px solid var(--prz-blue-light);
	text-align:left;
	position:relative;
	transform:translateY(8px);
	transition:transform .18s ease;
}
.prz-hint-overlay.show .prz-hint-box{
	transform:translateY(0);
}
.prz-hint-box p{
	margin:0;
	font-size:14px;
	line-height:1.5;
	color:var(--prz-text);
}
.prz-hint-close{
	position:absolute;
	top:10px;
	right:10px;
	width:26px;
	height:26px;
	border-radius:50%;
	border:none;
	background:var(--prz-blue-light);
	color:var(--prz-blue-dark);
	font-size:15px;
	line-height:1;
	cursor:pointer;
	display:flex;
	align-items:center;
	justify-content:center;
}
.prz-hint-close:hover{background:#d9f3e8;}

/* Pagination / progress */
.pereezd-quiz-pagination{
	display:flex;
	align-items:center;
	gap:16px;
	margin-top:28px;
	border-top:1px solid #eee;
	padding-top:20px;
	flex-wrap:wrap;
}
.prz-btn{
	border:none;
	border-radius:8px;
	padding:12px 22px;
	font-size:14px;
	font-weight:600;
	cursor:pointer;
	transition:background .15s ease, opacity .15s ease;
	font-family:inherit;
}
.prz-btn-primary{background:var(--prz-blue);color:#fff;}
.prz-btn-primary:hover{background:var(--prz-blue-dark);}
.prz-btn-secondary{background:#eef2f1;color:var(--prz-text);}
.prz-btn-secondary:hover{background:#e2e8e6;}
.prz-btn[disabled]{opacity:.5;cursor:not-allowed;}

.prz-progress-wrap{
	flex:1 1 140px;
	display:flex;
	align-items:center;
	gap:10px;
	min-width:120px;
}
.prz-progress-track{
	flex:1;
	height:6px;
	background:#eee;
	border-radius:6px;
	overflow:hidden;
}
.prz-progress-fill{
	height:100%;
	background:var(--prz-blue);
	border-radius:6px;
	width:0%;
	transition:width .35s ease;
}
.prz-progress-pct{
	font-size:13px;
	font-weight:600;
	color:var(--prz-muted);
	min-width:38px;
	text-align:right;
}

/* Contact step */
.prz-contact-form .prz-lead{
	font-weight:700;
	font-size:16px;
	margin-bottom:6px;
}
.prz-contact-form .prz-sub{
	color:var(--prz-muted);
	font-size:14px;
	margin-bottom:22px;
}
.prz-field{margin-bottom:14px;}
.prz-field label{
	display:block;
	font-size:13px;
	font-weight:600;
	margin-bottom:6px;
}
.prz-field input{
	width:100%;
	padding:12px 14px;
	border:1px solid var(--prz-border);
	border-radius:8px;
	font-size:14px;
	font-family:inherit;
}
.prz-field input:focus{
	outline:none;
	border-color:var(--prz-blue);
}
.prz-agree{
	display:flex;
	align-items:flex-start;
	gap:10px;
	background:#f9f9f9;
	border-radius:8px;
	padding:14px;
	font-size:13px;
	line-height:1.5;
	margin:18px 0;
}
.prz-agree a{color:var(--prz-blue-dark);}

/* Result */
.prz-result{
	text-align:center;
	padding:28px 0;
}
.prz-result-icon{
	width:60px;height:60px;border-radius:50%;
	background:var(--prz-blue-light);color:var(--prz-blue);
	display:flex;align-items:center;justify-content:center;
	font-size:28px;margin:0 auto 16px;
}
.prz-result-title{font-weight:700;font-size:18px;margin-bottom:8px;}
.prz-result-sub{color:var(--prz-muted);font-size:14px;}

.prz-fade{animation:przFadeIn .22s ease;}
@keyframes przFadeIn{from{opacity:0;transform:translateY(6px);}to{opacity:1;transform:translateY(0);}}

.prz-fields-group{margin-top:6px;}
