.tnl-np-form-wrap {
	font-family: inherit;
	max-width: 480px;
}

.tnl-np-notice {
	background: #f0f8ff;
	border: 1px solid #d5e8fa;
	padding: 10px 14px;
	border-radius: 8px;
	font-size: 14px;
	color: #1a4a7a;
	margin-bottom: 12px;
}

.tnl-np-form {
	display: flex;
	gap: 8px;
	flex-wrap: wrap;
}

.tnl-np-form input[type="text"],
.tnl-np-form input[type="email"] {
	flex: 1 1 160px;
	padding: 10px 12px;
	border: 1px solid #e0e0e0;
	border-radius: 8px;
	font-size: 14px;
}

.tnl-np-form button {
	padding: 10px 20px;
	border: none;
	border-radius: 8px;
	background: #111111;
	color: #ffffff;
	font-size: 14px;
	font-weight: 600;
	cursor: pointer;
}

.tnl-np-form button:hover {
	background: #333333;
}

.tnl-np-manage-panel {
	max-width: 480px;
	background: #fafafa;
	border: 1px solid #eeeeee;
	border-radius: 10px;
	padding: 24px;
}

.tnl-np-manage-panel label {
	display: block;
	margin: 8px 0;
	font-size: 14px;
}

.tnl-np-manage-panel button {
	margin-top: 12px;
	padding: 10px 18px;
	border-radius: 8px;
	border: none;
	background: #111;
	color: #fff;
	cursor: pointer;
}

.tnl-np-unsub-btn {
	background: #b12b2b !important;
}

/* --- Bloque configurable: título, mensajes de estado, ícono --- */

.tnl-np-form-wrap {
	padding: 20px;
	transition: opacity .25s ease, transform .25s ease;
}

.tnl-np-title {
	font-weight: 600;
	font-size: 16px;
	margin: 0 0 12px;
}

.tnl-np-form button {
	display: inline-flex;
	align-items: center;
	gap: 6px;
}

.tnl-np-form button .dashicons {
	font-size: 16px;
	width: 16px;
	height: 16px;
}

.tnl-np-form button.tnl-np-loading {
	opacity: .6;
	cursor: wait;
}

.tnl-np-form-feedback {
	font-size: 13px;
	color: #b12b2b;
	margin: 6px 0 0;
}

.tnl-np-message {
	padding: 14px 16px;
	border-radius: 8px;
	font-size: 14px;
}

.tnl-np-message p {
	margin: 0 0 6px;
}

.tnl-np-message p:last-child {
	margin-bottom: 0;
}

.tnl-np-success {
	background: #eefaf1;
	color: #1a7a3d;
}

.tnl-np-pending {
	background: #fff8e6;
	color: #8a6d00;
}

.tnl-np-unsub {
	background: #fdeef0;
	color: #b12b2b;
	margin-bottom: 12px;
}

.tnl-np-resub-btn {
	margin-top: 8px;
	padding: 8px 16px;
	border: none;
	border-radius: 8px;
	cursor: pointer;
}

/* Transiciones al reemplazar contenido tras el envío */
.tnl-np-form-wrap.tnl-np-leaving {
	opacity: 0;
}

.tnl-np-form-wrap.tnl-np-anim-fade.tnl-np-entering {
	animation: tnlNpFadeIn .4s ease both;
}

.tnl-np-form-wrap.tnl-np-anim-slide.tnl-np-entering {
	animation: tnlNpSlideIn .4s ease both;
}

.tnl-np-form-wrap.tnl-np-anim-scale.tnl-np-entering {
	animation: tnlNpScaleIn .35s ease both;
}

@keyframes tnlNpFadeIn {
	from { opacity: 0; }
	to { opacity: 1; }
}

@keyframes tnlNpSlideIn {
	from { opacity: 0; transform: translateY(12px); }
	to { opacity: 1; transform: translateY(0); }
}

@keyframes tnlNpScaleIn {
	from { opacity: 0; transform: scale(.96); }
	to { opacity: 1; transform: scale(1); }
}
