/* Shield Player — Поддержка: уведомление ученика об ответе (все страницы сайта, 1.3.0).
   Компьютер: слева снизу (справа внизу — Jivo и .sp-fab), над cookie-плашкой; мобильные: под шапкой.
   Токены темы — с фоллбэками; z-index ниже шапки (60) и cookie-плашки (70). */

.sps-toast {
	position: fixed;
	z-index: 59;
	left: 24px;
	bottom: var(--sps-toast-bottom, 24px);
	width: 380px;
	max-width: calc(100vw - 48px);
	box-sizing: border-box;
	display: flex;
	align-items: flex-start;
	background: var(--sp-card, #FFFFFF);
	color: var(--sp-ink, #0A130F);
	border: 1px solid var(--sp-line, #E1E6E3);
	border-left: 4px solid var(--sp-accent, #0B6E4F);
	border-radius: var(--sp-radius-lg, 14px);
	box-shadow: 0 1px 2px rgba(12, 21, 18, .06), 0 18px 40px rgba(12, 21, 18, .16);
	font-family: var(--sp-font, system-ui, -apple-system, 'Segoe UI', Roboto, sans-serif);
	text-align: left;
	opacity: 0;
	transform: translateY(8px);
	transition: opacity .2s ease, transform .2s ease;
}
body.sp-cookie-open .sps-toast {
	bottom: var(--sps-toast-bottom, 98px);
}
.sps-toast.is-visible {
	opacity: 1;
	transform: none;
}
.sps-toast *,
.sps-toast *::before,
.sps-toast *::after {
	box-sizing: border-box;
}

.sps-toast__card {
	flex: 1 1 auto;
	min-width: 0;
	display: flex;
	align-items: flex-start;
	gap: 12px;
	padding: 14px 4px 14px 14px;
	color: inherit;
	text-decoration: none;
	border-radius: var(--sp-radius-lg, 14px) 0 0 var(--sp-radius-lg, 14px);
}
.sps-toast__card:hover .sps-toast__title,
.sps-toast__card:focus-visible .sps-toast__title {
	color: var(--sp-accent, #0B6E4F);
}
.sps-toast__card:focus-visible,
.sps-toast__close:focus-visible {
	outline: 2px solid var(--sp-accent, #0B6E4F);
	outline-offset: 2px;
}

.sps-toast__icon {
	flex: none;
	width: 36px;
	height: 36px;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	background: var(--sp-accent, #0B6E4F);
	color: #FFFFFF;
}
.sps-toast__body {
	min-width: 0;
	display: block;
}
.sps-toast__title {
	display: block;
	font-size: 15px;
	font-weight: 700;
	line-height: 1.3;
	color: var(--sp-ink, #0A130F);
	transition: color .15s ease;
}
.sps-toast__text {
	display: -webkit-box;
	-webkit-line-clamp: 3;
	-webkit-box-orient: vertical;
	overflow: hidden;
	margin-top: 3px;
	font-size: 14px;
	line-height: 1.45;
	color: var(--sp-muted, #5D6A63);
	overflow-wrap: anywhere;
}
.sps-toast__more {
	display: block;
	margin-top: 4px;
	font-size: 12px;
	font-weight: 600;
	color: var(--sp-accent, #0B6E4F);
}
.sps-toast__more[hidden] {
	display: none;
}

.sps-toast__close {
	flex: none;
	width: 36px;
	height: 36px;
	margin: 6px 6px 0 0;
	padding: 0;
	border: 0;
	border-radius: 50%;
	background: transparent;
	color: var(--sp-muted, #5D6A63);
	font: inherit;
	font-size: 22px;
	line-height: 36px;
	text-align: center;
	cursor: pointer;
}
.sps-toast__close:hover {
	background: var(--sp-bg-alt, #EFF2F0);
	color: var(--sp-ink, #0A130F);
}

/* Мобильные: сверху под шапкой, на всю ширину с отступами 12 px (top задаёт notifier.js по низу шапки). */
@media (max-width: 600px) {
	.sps-toast,
	body.sp-cookie-open .sps-toast {
		left: 12px;
		right: 12px;
		top: var(--sps-toast-top, calc(var(--sp-header-h, 76px) + 12px));
		bottom: auto;
		width: auto;
		max-width: none;
	}
	.sps-toast {
		transform: translateY(-8px);
	}
	.sps-toast.is-visible,
	body.sp-cookie-open .sps-toast.is-visible {
		transform: none;
	}
}

@media (prefers-reduced-motion: reduce) {
	.sps-toast,
	.sps-toast.is-visible {
		transition: none;
		transform: none;
	}
}

@media print {
	.sps-toast {
		display: none;
	}
}
