.tcgem-app-notification-stack {
	position: fixed;
	right: 18px;
	bottom: 18px;
	z-index: 1085;
	display: grid;
	gap: 0.75rem;
	width: min(420px, calc(100vw - 36px));
	pointer-events: none;
	opacity: 0;
	transform: translateY(10px);
	transition: opacity .18s ease, transform .18s ease;
}

.tcgem-app-notification-stack.is-visible {
	opacity: 1;
	transform: translateY(0);
}

.tcgem-app-notification-item {
	display: flex;
	gap: 0.85rem;
	padding: 1rem;
	border: 1px solid var(--theme-border, rgba(255, 255, 255, .12));
	border-radius: 8px;
	background: var(--theme-bg-glass, rgba(17, 17, 17, .92));
	box-shadow: var(--theme-shadow-floating, 0 24px 70px rgba(0, 0, 0, .32));
	color: var(--theme-text, #fff);
	pointer-events: auto;
}

.tcgem-app-notification-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 38px;
	height: 38px;
	flex: 0 0 38px;
	border-radius: 8px;
	background: rgba(108, 79, 125, .18);
	color: #d8c1f0;
}

.tcgem-app-notification-content {
	display: grid;
	gap: 0.35rem;
	min-width: 0;
}

.tcgem-app-notification-kicker {
	color: var(--theme-text-muted, rgba(255, 255, 255, .56));
	font-size: 0.72rem;
	font-weight: 800;
	text-transform: uppercase;
}

.tcgem-app-notification-title {
	color: var(--theme-text, #fff);
	line-height: 1.15;
}

.tcgem-app-notification-message {
	margin: 0;
	color: var(--theme-text-soft, rgba(255, 255, 255, .78));
	font-size: 0.9rem;
	line-height: 1.35;
}

.tcgem-app-notification-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
	align-items: center;
	margin-top: 0.25rem;
}

.tcgem-app-notification-actions .btn-link {
	padding-inline: 0.25rem;
	color: #d8c1f0;
	text-decoration: none;
}

@media (max-width: 560px) {
	.tcgem-app-notification-stack {
		right: 12px;
		bottom: 12px;
		width: calc(100vw - 24px);
	}
}
