/* ====================================================================
   Polo80 - Form di prenotazione tavoli [ct_form_prenotazioni].
   Stesse variabili/classi del design system già usate in newsletter.css.
   ==================================================================== */

.pop-prenotazioni-form {
	max-width: 480px;
	margin: 0 auto;
	background-color: var(--e-global-color-panna-crema);
	border: var(--pop-border-width) solid var(--pop-border-color);
	border-radius: 0;
	box-shadow: 6px 6px 0 var(--pop-border-color);
	padding: 36px 32px;
}

.pop-prenotazioni-form__intro {
	text-align: center;
	margin: 0 0 22px;
	/* Regola di contrasto del sito: verde scuro su crema/arancione. */
	color: var(--e-global-color-secondary);
	font-weight: 600;
}

.pop-prenotazioni-form__form {
	display: flex;
	flex-direction: column;
	gap: 16px;
}

.pop-prenotazioni-form__campo {
	display: flex;
	flex-direction: column;
	gap: 6px;
	font-weight: 600;
	color: var(--e-global-color-secondary);
}

.pop-prenotazioni-form__campo input,
.pop-prenotazioni-form__campo select,
.pop-prenotazioni-form__campo textarea {
	padding: 12px 14px;
	background-color: #fff;
	border: var(--pop-border-width) solid var(--pop-border-color);
	border-radius: 6px;
	font-size: 1rem;
	font-weight: 400;
	font-family: inherit;
}

.pop-prenotazioni-form__campo textarea {
	resize: vertical;
}

.pop-prenotazioni-form__consenso {
	display: flex;
	align-items: flex-start;
	gap: 8px;
	font-weight: 400;
	color: var(--e-global-color-secondary);
	font-size: 0.9rem;
}

.pop-prenotazioni-form__consenso a {
	color: var(--e-global-color-secondary);
	text-decoration: underline;
}

/* Campo "honeypot" anti-spam: nascosto fuori schermo (non "display:none",
   che alcuni bot sanno riconoscere ed evitare) così resta invisibile e
   ininterrompibile per un utente reale ma un bot che compila tutti i campi
   del form lo riempie comunque — lato server (vedi prenotazioni-form.php)
   una submission con questo campo valorizzato viene scartata come spam. */
.pop-prenotazioni-form__honeypot {
	position: absolute;
	left: -9999px;
	width: 1px;
	height: 1px;
	overflow: hidden;
}

.pop-prenotazioni-form__pulsante {
	align-self: flex-start;
}

.pop-prenotazioni-esito {
	padding: 12px 16px;
	border-radius: 6px;
	font-weight: 600;
	margin-bottom: 16px;
}

.pop-prenotazioni-esito--ok {
	background-color: #fff;
	color: var(--e-global-color-text);
	border: var(--pop-border-width) solid var(--e-global-color-accent);
}

.pop-prenotazioni-esito--errore {
	background-color: #fbeaea;
	color: #7a1f1f;
	border: var(--pop-border-width) solid #c0392b;
}

/* ---- Pannello di conferma categoria alternativa (fallback, Step 3). ---- */
.pop-prenotazioni-alternativa {
	display: flex;
	flex-direction: column;
	gap: 14px;
}

.pop-prenotazioni-alternativa__scelte {
	display: flex;
	flex-direction: column;
	gap: 8px;
	border: none;
	padding: 0;
	margin: 0;
}

.pop-prenotazioni-alternativa__scelte label {
	display: flex;
	align-items: center;
	gap: 8px;
	font-weight: 400;
	color: var(--e-global-color-secondary);
}

.pop-prenotazioni-alternativa__conferma {
	align-self: flex-start;
}

/* ---- Pagina gestione personale prenotazione (Fase 2, Step 9). ---- */
.pop-prenotazioni-dettagli {
	list-style: none;
	margin: 0 0 22px;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: 6px;
	color: var(--e-global-color-secondary);
}
