	#partner-widget,
	#partner-widget *,
	.partner-widget-host,
	.partner-widget-host *,
	.partner-widget-container,
	.partner-widget-container * {
		font-family: 'Golos Text VF', 'Golos Text', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif !important;
	}

	#partner-widget {
		position: relative;
		max-width: 100%;
		width: 100%;
		border-radius: 16px;
		z-index: 99;
	}

	.widget-loader {
		position: absolute;
		top: 50%;
		left: 50%;
		transform: translate(-50%, -50%);
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: center;
		background: rgba(255, 255, 255, 0.95);
		padding: 30px;
		border-radius: 12px;
		box-shadow: 0 10px 25px rgba(0, 0, 0, 0.1);
		z-index: 100;
		pointer-events: none;
		margin: 0 40px;
	}

	.partner-widget-host {
		width: 100%;
		opacity: 0;
		transition: opacity 0.3s ease-in;
	}

	.partner-widget-host.loaded,
	.partner-widget-host[data-styled="true"] {
		opacity: 1;
	}

	/* Steps Navigator Styles for Light DOM */
	@keyframes fadeInNavButtons {
		0% {
			opacity: 0;
			visibility: hidden;
		}
		70% {
			opacity: 0;
			visibility: hidden;
		}
		100% {
			opacity: 1;
			visibility: visible;
		}
	}

	.partner-widget-container {
		padding: 66px 56px 54px !important;
		background: rgba(242, 243, 245, 1) !important;
		background-color: rgba(242, 243, 245, 1) !important;
		box-shadow: 2.34px 2.34px 9.37px 0px rgba(0, 0, 0, 0.25) !important;
	}

	.date-time-group {
		gap: 0 !important;
	}

	.steps-navigator {
		position: absolute !important;
		top: 18px !important;
		left: 56px !important;
		right: auto !important;
		transform: none !important;
		display: flex !important;
		align-items: center !important;
		justify-content: flex-start !important;
		gap: 8px !important;
		margin: 0 !important;
		padding: 0 !important;
		z-index: 10 !important;
		background: transparent !important;
		width: max-content !important;
		max-width: calc(100% - 112px) !important;
		animation: fadeInNavButtons 1.5s ease-out forwards !important;
	}

	.step-dot,
	.steps-navigator .step-dot,
	.steps-navigator [class*="step-dot"],
	.steps-navigator .step,
	.steps-navigator .steps-navigator__dot,
	.steps-navigator .steps-navigator__item {
		width: auto !important;
		height: auto !important;
		min-width: 0 !important;
		min-height: 0 !important;
		max-width: unset !important;
		max-height: unset !important;
		border-radius: 0 !important;
		background: transparent !important;
		background-color: transparent !important;
		border: none !important;
		font-family: 'Golos Text VF', 'Golos Text', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif !important;
		font-size: 15px !important;
		line-height: 100% !important;
		font-weight: 400 !important;
		font-style: normal !important;
		letter-spacing: 0% !important;
		vertical-align: middle !important;
		color: rgba(54, 70, 97, 1) !important;
		border-bottom: 2px solid transparent !important;
		transition: color 0.2s ease, border-color 0.2s ease !important;
		padding: 0 0 2px 0 !important;
		margin: 0 !important;
		cursor: pointer !important;
		display: inline-flex !important;
		align-items: center !important;
		transform: none !important;
		box-shadow: none !important;
		outline: none !important;
		position: relative !important;
		text-decoration: none !important;
		overflow: visible !important;
		white-space: nowrap !important;
	}

	/* Полностью отключаем псевдоэлементы у точек, чтобы не дублировать текст и иконки */
	.step-dot::before,
	.step-dot::after,
	.steps-navigator .step-dot::before,
	.steps-navigator .step-dot::after {
		display: none !important;
		content: none !important;
	}

	/* Разделитель стрелка arrow.svg */
	.steps-navigator .step-slash,
	.steps-navigator .custom-step-slash {
		display: inline-flex !important;
		align-items: center !important;
		justify-content: center !important;
		margin: 0 8px !important;
		user-select: none !important;
		opacity: 0.8 !important;
		line-height: 1 !important;
	}

	.steps-navigator .step-slash svg,
	.steps-navigator .custom-step-slash svg {
		display: block !important;
		width: 6px !important;
		height: 10px !important;
	}

	/* Активный шаг */
	.steps-navigator .step-dot.active,
	.steps-navigator .step.active,
	.steps-navigator .step--active,
	.steps-navigator .steps-navigator__dot.active,
	.steps-navigator .steps-navigator__item.active,
	.steps-navigator button.active,
	.steps-navigator [class*="active"],
	.steps-navigator [class*="current"],
	.steps-navigator [aria-current="step"],
	.steps-navigator [aria-selected="true"],
	.step-dot.active {
		color: #0c1a30 !important;
		font-weight: 500 !important;
		border-bottom: 2px solid rgba(250, 155, 22, 1) !important;
		opacity: 1 !important;
	}

	/* Прошедшие (завершенные) шаги */
	.steps-navigator:has(.step-dot:nth-child(2).active) .step-dot:nth-child(1),
	.steps-navigator:has(.step-dot:nth-child(3).active) .step-dot:nth-child(1),
	.steps-navigator:has(.step-dot:nth-child(3).active) .step-dot:nth-child(2),
	.steps-navigator .step-dot.completed,
	.steps-navigator .step.completed,
	.steps-navigator [class*="completed"] {
		color: rgba(54, 70, 97, 1) !important;
		font-weight: 400 !important;
		border-bottom-color: transparent !important;
		opacity: 1 !important;
	}

	/* Сброс подсветки самих кружков */
	.steps-navigator .step-dot,
	.steps-navigator .step-dot.active,
	.steps-navigator .step.active,
	.steps-navigator .step--active,
	.steps-navigator .steps-navigator__dot.active,
	.steps-navigator .steps-navigator__dot--active,
	.steps-navigator .steps-navigator__item.active,
	.steps-navigator .steps-navigator__item--active,
	.steps-navigator button.active,
	.steps-navigator [class*="active"],
	.steps-navigator [class*="current"],
	.steps-navigator [aria-current="step"],
	.steps-navigator [aria-selected="true"],
	.step-dot.active,
	.step-dot.completed {
		background: transparent !important;
		background-color: transparent !important;
		border-color: transparent !important;
		border-top: none !important;
		border-left: none !important;
		border-right: none !important;
		transform: none !important;
		box-shadow: none !important;
	}

	/* Ховер на доступных шагах */
	.steps-navigator .step-dot:hover::after,
	.steps-navigator .step:hover::after {
		color: #0c1a30 !important;
	}

	@media screen and (max-width: 1280px) {
		.partner-widget-container {
			padding: 66px 52px 36px !important;
		}
		.steps-navigator {
			left: 52px !important;
			max-width: calc(100% - 104px) !important;
		}
	}

	@media screen and (max-width: 1060px) {
		.partner-widget-container {
			padding: 66px 52px 36px !important;
		}
		.steps-navigator {
			top: 16px !important;
			left: 52px !important;
			right: auto !important;
			transform: none !important;
			justify-content: flex-start !important;
			max-width: calc(100% - 104px) !important;
		}
		.steps-navigator .step-dot {
			font-size: 14px !important;
		}
	}

	@media screen and (max-width: 820px) {
		.partner-widget-container {
			padding: 66px 20px 32px !important;
		}
		.steps-navigator {
			top: 16px !important;
			left: 20px !important;
			right: auto !important;
			transform: none !important;
			justify-content: flex-start !important;
			gap: 6px !important;
			width: max-content !important;
			max-width: calc(100% - 40px) !important;
			overflow-x: auto !important;
			scrollbar-width: none !important;
		}
		.steps-navigator::-webkit-scrollbar {
			display: none !important;
		}
		.steps-navigator .step-dot {
			font-size: 13px !important;
			line-height: 18px !important;
		}
		.steps-navigator .step-slash {
			margin: 0 5px !important;
		}
		.steps-navigator .step-slash svg {
			width: 5px !important;
			height: 8px !important;
		}
	}

	@media screen and (max-width: 540px) {
		.partner-widget-container {
			padding: 60px 20px 32px !important;
		}
		.steps-navigator {
			top: 14px !important;
			left: 20px !important;
			transform: none !important;
			justify-content: flex-start !important;
			gap: 4px !important;
			max-width: calc(100% - 40px) !important;
		}
		.steps-navigator .step-dot {
			font-size: 11.5px !important;
			line-height: 16px !important;
			letter-spacing: -0.1px !important;
		}
		.steps-navigator .step-slash {
			margin: 0 3px !important;
		}
		.steps-navigator .step-slash svg {
			width: 4px !important;
			height: 7px !important;
		}
	}

	@media screen and (max-width: 380px) {
		.steps-navigator {
			gap: 2px !important;
		}
		.steps-navigator .step-dot {
			font-size: 10.5px !important;
			line-height: 15px !important;
			letter-spacing: -0.2px !important;
		}
		.steps-navigator .step-slash {
			margin: 0 2px !important;
		}
	}

	.sync-stations__checkbox {
		appearance: none !important;
		-webkit-appearance: none !important;
		width: 18px !important;
		height: 18px !important;
		border-radius: 50% !important;
		border: 1.5px solid #1a3fbd !important;
		background-color: #ffffff !important;
		cursor: pointer !important;
		margin: 0 !important;
		padding: 0 !important;
		box-sizing: border-box !important;
		outline: none !important;
		flex-shrink: 0 !important;
		display: inline-block !important;
		vertical-align: middle !important;
		transition: all 0.2s ease !important;
	}

	.sync-stations__checkbox:checked {
		background-color: #1a3fbd !important;
		border-color: #1a3fbd !important;
		background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 16 16' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M4 8.2L6.8 11L12 5.5' stroke='white' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") !important;
		background-repeat: no-repeat !important;
		background-position: center !important;
		background-size: 11px 11px !important;
	}

	@media screen and (max-width: 820px) {
		.search-form {
			gap: 30px !important;
		}
		.sync-stations__checkbox {
			width: 16px !important;
			height: 16px !important;
		}
		.sync-stations__checkbox:checked {
			background-size: 10px 10px !important;
		}
		.search-form > .partner-widget-button,
		.search-form button[type="submit"] {
			margin: 0 !important;
		}
		.search-form:has(.sync-stations__checkbox:not(:checked)) #dropoff-content .sync-stations,
		.search-form:has(.sync-stations__checkbox:not(:checked)) .sync-stations,
		#dropoff-content:has(.sync-stations__checkbox:not(:checked)) .sync-stations {
			margin-bottom: 8px !important;
		}
	}

	@media (max-width: 768px) {
		#dropoff-content .search-form__group {
			margin-top: 0 !important;
		}
		.search-form:has(.sync-stations__checkbox:not(:checked)) #dropoff-content .sync-stations,
		.search-form:has(.sync-stations__checkbox:not(:checked)) .sync-stations,
		#dropoff-content:has(.sync-stations__checkbox:not(:checked)) .sync-stations {
			margin-bottom: 8px !important;
		}
	}

