/* ====== Общие переменные ====== */
:root {
	--clr-accent:   #ff7900;
	--clr-accent-h: #e66f00;
	--clr-text:     #181818;
	--clr-muted:    #9a9a9a;
	--br-popup:     24px;
	--br-field:     12px;
	--font:         'Montserrat', Arial, sans-serif;
}

/* ====== Затемнённый фон ====== */
.fpf-overlay {
	display: none;
	position: fixed;
	inset: 0;
	width: 100vw;
	height: 100vh;
	background: rgba(0,0,0,.6);
	z-index: 9998;
}

/* ====== Контейнер поп‑апа ====== */
.fpf-popup {
	display: none;
	position: fixed;
	top: 50%; left: 50%;
	transform: translate(-50%,-50%);
	width: 560px;
	max-width: 95vw;
	padding: 40px 48px;
	background: #fff;
	border-radius: var(--br-popup);
	box-shadow: 0 12px 40px rgba(0,0,0,.16);
	font-family: var(--font);
	text-align: center;
	z-index: 9999;
}

/* Заголовок */
.fpf-popup h2 {
	margin: 0 0 24px;
	font-size: 24px;
	font-weight: 600;
	line-height: 1.3;
}

/* ====== Селектор типа клиента ====== */
.fpf-selector {
	background: #f7f8fa;
	border-radius: 12px;
	padding: 24px;
	margin-bottom: 32px;
	text-align: left;
}

.fpf-selector__label {
	display: block;
	margin-bottom: 16px;
	font-size: 14px;
	font-weight: 600;
	color: var(--clr-text);
}

.fpf-radio {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	margin-right: 32px;
	cursor: pointer;
	user-select: none;
	position: relative;
}

.fpf-radio input {
	appearance: none;
	width: 18px; height: 18px;
	border: 2px solid #c4c4c4;
	border-radius: 50%;
	cursor: pointer;
	transition: all .2s;
}

.fpf-radio input:checked {
	border-color: var(--clr-accent);
	background: var(--clr-accent);
}

.fpf-radio input:checked::after {
	content: "";
	position: absolute;
	left: 4px; top: 4px;
	width: 8px; height: 8px;
	border-radius: 50%;
	background: #fff;
}

.fpf-radio span {
	font-size: 14px;
	color: var(--clr-text);
	pointer-events: none;
}

/* ====== Форма ====== */
.fpf-form {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 16px;
	margin-bottom: 24px;
}

.fpf-field {
	width: 100%;
	height: 48px;
	padding: 0 16px;
	font-size: 14px;
	color: var(--clr-text);
	border: 1px solid #d4d4d4;
	border-radius: var(--br-field);
	outline: none;
	transition: border-color .2s;
}

.fpf-field:focus {
	border-color: var(--clr-accent);
}

/* Кнопка отправки */
.fpf-button {
	grid-column: 1 / -1;
	height: 48px;
	border: none;
	border-radius: var(--br-field);
	background: var(--clr-accent);
	color: #fff;
	font-size: 16px;
	font-weight: 600;
	cursor: pointer;
	transition: background .3s;
}

.fpf-button:hover {
	background: var(--clr-accent-h);
}

/* Сообщение о статусе */
.fpf-message {
	grid-column: 1 / -1;
	margin-top: 12px;
	font-size: 14px;
	color: var(--clr-text);
}

/* Служебные подписи */
.fpf-required {
	margin: 8px 0 4px;
	font-size: 12px;
	color: var(--clr-muted);
}

.fpf-legal {
	font-size: 12px;
	line-height: 1.4;
	color: var(--clr-muted);
}

.fpf-legal a {
	color: var(--clr-accent);
	text-decoration: underline;
}

/* Кнопка «крестик» */
.fpf-close {
	position: absolute;
	top: 16px; right: 16px;
	padding: 0;
	border: none;
	background: transparent;
	font-size: 28px;
	line-height: 1;
	color: var(--clr-text);
	cursor: pointer;
}

/* ====== Адаптив ====== */
@media (max-width: 600px) {
	.fpf-form { grid-template-columns: 1fr; }
	.fpf-button,
	.fpf-message { grid-column: 1 / 2; }
}

@media (max-width: 420px) {
	.fpf-popup {
		padding: 32px 24px;
		border-radius: 16px;
	}
	.fpf-popup h2 { font-size: 20px; }
}
