/*
 * Alicerce360 — avisos flutuantes (toasts), usados na intranet, nas telas do plugin no painel do
 * WordPress, no portal público e no Portal do Auditor. As cores seguem as variáveis da marca quando
 * a página as tem (intranet e portal) e têm valores próprios onde não tem (painel do WordPress).
 */
.a360-toasts {
	position: fixed;
	top: 76px;
	right: 16px;
	z-index: 100000;
	display: flex;
	flex-direction: column;
	gap: 10px;
	width: min(420px, calc(100vw - 32px));
	pointer-events: none;
}

/* Painel do WordPress: abaixo da barra de administração. */
.wp-admin .a360-toasts {
	top: 48px;
}

.a360-toast {
	display: flex;
	align-items: flex-start;
	gap: 10px;
	padding: 12px 10px 12px 14px;
	border: 1px solid var(--a360-border, #dcdcde);
	border-left: 5px solid #2271b1;
	border-radius: var(--a360-radius, 8px);
	background: var(--a360-surface, #fff);
	box-shadow: 0 14px 34px rgba(15, 23, 42, 0.22);
	color: var(--a360-text, #1d2327);
	font-family: var(--a360-font, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif);
	font-size: 14px;
	opacity: 0;
	transform: translateX(18px);
	transition: opacity 0.2s, transform 0.2s;
	pointer-events: auto;
}

.a360-toast.is-in {
	opacity: 1;
	transform: none;
}

.a360-toast::before {
	flex: none;
	display: grid;
	place-items: center;
	width: 22px;
	height: 22px;
	border-radius: 50%;
	background: #2271b1;
	color: #fff;
	font: 700 13px/1 var(--a360-font, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif);
	content: "i";
}

.a360-toast p {
	flex: 1;
	margin: 1px 0 0;
	padding: 0;
	font-size: inherit;
	line-height: 1.45;
	overflow-wrap: anywhere;
}

.a360-toast--success {
	border-left-color: #1e7e34;
}

.a360-toast--success::before {
	background: #1e7e34;
	content: "✓";
}

.a360-toast--error {
	border-left-color: #b32d2e;
}

.a360-toast--error::before {
	background: #b32d2e;
	content: "!";
}

.a360-toast--warning {
	border-left-color: #dba617;
}

.a360-toast--warning::before {
	background: #dba617;
	color: #1d2327;
	content: "!";
}

.a360-toast__close {
	flex: none;
	padding: 0 4px;
	border: 0;
	background: transparent;
	color: var(--a360-muted, #646970);
	font-size: 22px;
	line-height: 1;
	cursor: pointer;
}

.a360-toast__close:hover {
	color: var(--a360-text, #1d2327);
}

@media (max-width: 960px) {
	.a360-toasts {
		top: auto;
		right: 12px;
		bottom: 16px;
		width: calc(100vw - 24px);
	}

	/* Intranet: acima da barra de abas do celular. */
	body.a360i:not(.a360w-public) .a360-toasts {
		bottom: 84px;
	}
}

@media (prefers-reduced-motion: reduce) {
	.a360-toast {
		transform: none;
		transition: none;
	}
}
