/* zp_redlist — stile condiviso: form di conferma (MCP/ACP) e messaggio di accesso negato */

:root {
	--redlist-red: #c0392b;
	--redlist-red-dark: #962d22;
	--redlist-red-bg: #fdf1f0;
	--redlist-red-border: #e8b4ae;
	--redlist-gray: #6b7280;
	--redlist-gray-bg: #f3f4f6;
	--redlist-gray-border: #d7dadf;
}

/* Form di conferma (aggiunta esclusione, revoca, toggle flag) */
.redlist-confirm {
	max-width: 480px;
	margin: 2em auto;
	background: var(--redlist-red-bg);
	border: 1px solid var(--redlist-red-border);
	border-left: 4px solid var(--redlist-red);
	border-radius: 6px;
	padding: 1.75em 2em;
	box-shadow: 0 2px 6px rgba(192, 57, 43, 0.08);
	font-family: "Segoe UI", "Helvetica Neue", Arial, sans-serif;
}

.redlist-confirm .redlist-confirm-icon {
	display: flex;
	align-items: center;
	gap: 0.6em;
	margin-bottom: 0.9em;
}

.redlist-confirm .redlist-confirm-icon i {
	font-size: 1.6em;
	color: var(--redlist-red);
}

.redlist-confirm h2 {
	margin: 0;
	font-size: 1.2em;
	font-weight: 600;
	color: var(--redlist-red-dark);
	letter-spacing: 0.01em;
}

.redlist-confirm p {
	margin: 0 0 1.4em;
	font-size: 0.98em;
	line-height: 1.5;
	color: #4a3330;
}

.redlist-confirm fieldset.submit-buttons {
	display: flex;
	gap: 0.75em;
	margin: 0;
	padding: 0;
	border: none;
}

.redlist-confirm input[name="confirm"] {
	background: var(--redlist-red);
	border-color: var(--redlist-red-dark);
	color: #fff;
	font-weight: 600;
}

.redlist-confirm input[name="confirm"]:hover {
	background: var(--redlist-red-dark);
}

.redlist-confirm input[name="cancel"] {
	background: transparent;
	border: 1px solid var(--redlist-red-border);
	color: var(--redlist-red-dark);
}

.redlist-confirm input[name="cancel"]:hover {
	background: rgba(192, 57, 43, 0.08);
}

/* Messaggio di accesso negato (trigger_error REDLIST_ACCESS_DENIED).
   #message.redlist-denied è aggiunta da zp_redlist.js (compatibilità
   universale); #message:has(...) è un potenziamento CSS-only per i
   browser che lo supportano, ridondante ma innocuo se il JS già agisce. */
#message.redlist-denied,
#message:has(.redlist-denied-marker) {
	background: var(--redlist-red-bg);
	border: 1px solid var(--redlist-red-border);
	border-left: 4px solid var(--redlist-red);
	border-radius: 6px;
}

#message.redlist-denied .message-title,
#message:has(.redlist-denied-marker) .message-title {
	display: flex;
	align-items: center;
	gap: 0.5em;
	color: var(--redlist-red-dark);
}

#message.redlist-denied .message-title::before,
#message:has(.redlist-denied-marker) .message-title::before {
	font-family: "FontAwesome", sans-serif;
	content: "\f05e"; /* fa-ban */
	font-size: 1.1em;
	color: var(--redlist-red);
}

#message.redlist-denied p,
#message:has(.redlist-denied-marker) p {
	font-size: 1em;
	line-height: 1.55;
	color: #4a3330;
}

.redlist-denied-marker {
	display: none;
}

/* Banner sostitutivo sul post di un utente escluso dal thread.
   Tono neutro/discreto, non un errore — diverso di proposito dal rosso
   usato per conferme e accesso negato. */
.redlist-post-notice {
	display: flex;
	align-items: center;
	gap: 0.5em;
	margin-bottom: 0.8em;
	padding: 0.6em 0.9em;
	font-size: 0.92em;
	font-style: italic;
	color: var(--redlist-gray);
	background: var(--redlist-gray-bg);
	border: 1px solid var(--redlist-gray-border);
	border-radius: 4px;
}

.redlist-post-notice i {
	font-style: normal;
	color: var(--redlist-gray);
}

.redlist-notice-mod {
	border-left: 3px solid var(--redlist-red);
	color: var(--redlist-red-dark);
}

.redlist-notice-mod i {
	color: var(--redlist-red);
}

/* Toggle switch per thread (ACP, Gestione esclusioni) */
.redlist-toggle-cell {
	text-align: center;
}

.redlist-toggle {
	position: relative;
	display: inline-block;
	width: 2.4em;
	height: 1.3em;
	vertical-align: middle;
}

.redlist-toggle input {
	opacity: 0;
	width: 0;
	height: 0;
}

.redlist-toggle-slider {
	position: absolute;
	cursor: pointer;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background-color: var(--redlist-red);
	border-radius: 999px;
	transition: background-color 0.15s ease;
}

.redlist-toggle-slider::before {
	position: absolute;
	content: "";
	height: 1em;
	width: 1em;
	left: 0.15em;
	bottom: 0.15em;
	background-color: #fff;
	border-radius: 50%;
	transition: transform 0.15s ease;
	transform: translateX(1.1em);
}

.redlist-toggle input:not(:checked) + .redlist-toggle-slider {
	background-color: var(--redlist-gray-border);
}

.redlist-toggle input:not(:checked) + .redlist-toggle-slider::before {
	transform: translateX(0);
}

/* Pulsante reset completo (ACP, Impostazioni) */
.redlist-reset-button {
	background: var(--redlist-red);
	border-color: var(--redlist-red-dark);
	color: #fff;
}

.redlist-reset-button:hover {
	background: var(--redlist-red-dark);
}
