/**
 * MyBoxOffice — Stili standalone per pagine /my-account/ e /box-office-area/.
 *
 * Il plugin è COMPLETAMENTE AUTONOMO: nessuna dipendenza da tema o page
 * builder (Elementor, Divi, ecc.). Tutte le regole CSS che fanno apparire
 * la pagina account "bella" sono qui dentro.
 *
 * Wrapper HTML autonomo creato dal shortcode [mybo_box_office]:
 *   .mybo-box-office-container--parent (container esterno, larghezza max + centrato)
 *     .mybo-box-office-container--child (container interno, padding + bordo)
 *       .mybo-account-navigation (sidebar 28%)
 *       .mybo-account-content (content 63% con bordo rosso)
 *
 * @package MyBoxOffice
 */

/* =========================================================================
   WRAPPER ESTERNO — replica il container Elementor (.e-con e-parent)
   ========================================================================= */

.mybo-box-office-container--parent {
	width: 100%;
	max-width: var(--mybo-container-max, 1200px);
	margin: var(--mybo-gap-sections, 30px) auto;
	padding: 0 20px;
	box-sizing: border-box;
	font-family: var(--mybo-font-body, inherit);
	font-size: var(--mybo-font-size-base, 16px);
	line-height: var(--mybo-line-height-base, 1.5);
}

.mybo-box-office-container--child {
	display: block;
	width: 100%;
	box-sizing: border-box;
	/* Clearfix per le 2 colonne float */
}

.mybo-box-office-container--child::after {
	content: "";
	display: block;
	clear: both;
}

/* =========================================================================
   LAYOUT 2-COLONNE — sidebar + content (autonomo dal tema)
   ========================================================================= */

body.mybo-account-page .mybo-account-navigation,
body.mybo-account-page nav.mybo-account-navigation,
.mybo-box-office-container .mybo-account-navigation,
.mybo-box-office-container nav.mybo-account-navigation {
	width: 20%;
	float: left;
	box-sizing: border-box;
}

body.mybo-account-page .mybo-account-content,
.mybo-box-office-container .mybo-account-content {
	width: 78%;
	float: right;
	box-sizing: border-box;
	border: 1px solid var(--mybo-color-border, #e53935);
	border-radius: var(--mybo-radius, 4px);
	background: var(--mybo-color-bg-card, rgba(255,255,255, 0.04));
	padding: var(--mybo-card-padding, 20px);
	color: var(--mybo-color-text, #ffffff);
}

/* MODIFICA PRENOTAZIONE — la pagina modifica-prenotazione vive dentro il box-
   office account (colonna a 78% con bordo rosso + bg + padding 20px), ma il
   suo contenuto è renderizzato dal template del carrello che applica le
   impostazioni Personalizza > Cart > Layout pagina > Box carrello (max-width,
   margin, padding wrapper) — disegnate per il carrello STANDALONE che occupa
   tutta la pagina, NON per la modifica che è in una colonna parziale.

   Senza override, la card cart prendeva il max-width della Personalizza Cart
   (es. 600px, 70%, ecc.) e finiva visivamente "rimpicciolita" dentro la
   colonna account.

   Fix: su body.mybo-page-modify forziamo il container interno .bg_cart e
   .bg_cart_wrapper a riempire l'intera colonna account-content (78%),
   ignorando le impostazioni Personalizza Cart pensate per lo standalone.
   Il bordo rosso + bg della colonna account-content restano INTATTI. */
body.mybo-page-modify .mybo-account-content .bg_cart,
body.mybo-page-modify .mybo-account-content .bg_cart_wrapper,
body.mybo-page-modify .mybo-account-content .bg-cart-modern {
	max-width: 100% !important;
	width: 100% !important;
	margin: 0 !important;
	box-sizing: border-box !important;
}

/* Mobile: stack verticale */
@media (max-width: 991px) {
	body.mybo-account-page .mybo-account-navigation,
	body.mybo-account-page nav.mybo-account-navigation,
	.mybo-box-office-container .mybo-account-navigation,
	.mybo-box-office-container nav.mybo-account-navigation {
		width: 100%;
		float: none;
		margin-bottom: 25px;
	}
	body.mybo-account-page .mybo-account-content,
	.mybo-box-office-container .mybo-account-content {
		width: 100%;
		float: none;
		padding: 4% 4% 4% 4%;
	}
}

/* =========================================================================
   SIDEBAR — bottoni navigazione (autonomi dal tema)
   ========================================================================= */

/* Reset eventuali stili applicati al wrapper nav/ul da tema o WC */
body.mybo-account-page nav.mybo-account-navigation,
.mybo-box-office-container nav.mybo-account-navigation {
	background: transparent;
	border: 0;
	box-shadow: none;
	padding: 0;
}

body.mybo-account-page nav.mybo-account-navigation ul,
.mybo-box-office-container nav.mybo-account-navigation ul {
	list-style: none;
	margin: 0;
	padding: 0;
	background: transparent;
	border: 0;
	box-shadow: none;
}

body.mybo-account-page nav.mybo-account-navigation li,
.mybo-box-office-container nav.mybo-account-navigation li {
	list-style: none;
	margin: 0;
	padding: 0;
}

/* Bottoni: rettangolari (no radius), a contatto, con linea separatore sottile */
body.mybo-account-page nav.mybo-account-navigation a,
.mybo-box-office-container nav.mybo-account-navigation a {
	display: block;
	padding: 14px 25px;
	color: var(--mybo-color-text, #374151);
	background: var(--mybo-color-bg-card, #ffffff);
	border-radius: 0;
	font-family: var(--mybo-font-body, inherit);
	font-weight: var(--mybo-btn-font-weight, 600);
	font-size: 14px;
	text-decoration: none;
	text-align: center;
	margin: 0;
	border: 0;
	border-bottom: 1px solid var(--mybo-color-border, #e5e7eb);
	box-shadow: none;
	transition: background var(--mybo-transition, 0.15s) ease, color var(--mybo-transition, 0.15s) ease;
}

/* Solo primo bottone: angoli superiori arrotondati */
body.mybo-account-page nav.mybo-account-navigation li:first-child a,
.mybo-box-office-container nav.mybo-account-navigation li:first-child a {
	border-top-left-radius: var(--mybo-radius, 8px);
	border-top-right-radius: var(--mybo-radius, 8px);
}

/* Solo ultimo bottone: angoli inferiori arrotondati + niente bordo sotto */
body.mybo-account-page nav.mybo-account-navigation li:last-child a,
.mybo-box-office-container nav.mybo-account-navigation li:last-child a {
	border-bottom-left-radius: var(--mybo-radius, 8px);
	border-bottom-right-radius: var(--mybo-radius, 8px);
	border-bottom: 0;
}

body.mybo-account-page nav.mybo-account-navigation a:hover,
.mybo-box-office-container nav.mybo-account-navigation a:hover {
	background: var(--mybo-color-bg-card, #f9fafb);
	color: var(--mybo-color-primary, #1f2937);
}

body.mybo-account-page nav.mybo-account-navigation li.is-active a,
body.mybo-account-page nav.mybo-account-navigation li.mybo-account-nav-link--is-active a,
.mybo-box-office-container nav.mybo-account-navigation li.is-active a {
	color: var(--mybo-color-primary, #2271b1);
	background: var(--mybo-color-bg-card, #ffffff);
	letter-spacing: 0;
	font-weight: 700;
}

/* =========================================================================
   FONT BASE + COLORI TESTO — garantisce testo bianco leggibile
   ========================================================================= */

body.mybo-account-page .mybo-account-content,
body.mybo-account-page .mybo-account-content p,
body.mybo-account-page .mybo-account-content strong,
body.mybo-account-page .mybo-account-content label,
.mybo-box-office-container .mybo-account-content,
.mybo-box-office-container .mybo-account-content p {
	color: var(--mybo-color-text, #ffffff);
	font-family: var(--mybo-font-body, inherit);
}

body.mybo-account-page .mybo-account-content h1,
body.mybo-account-page .mybo-account-content h2,
body.mybo-account-page .mybo-account-content h3,
body.mybo-account-page .mybo-account-content h4,
.mybo-box-office-container .mybo-account-content h1,
.mybo-box-office-container .mybo-account-content h2,
.mybo-box-office-container .mybo-account-content h3,
.mybo-box-office-container .mybo-account-content h4 {
	color: var(--mybo-color-text, #ffffff);
	font-family: var(--mybo-font-heading, inherit);
}
.mybo-box-office-container .mybo-account-content h1 { font-size: var(--mybo-h1-size, 32px); }
.mybo-box-office-container .mybo-account-content h2 { font-size: var(--mybo-h2-size, 26px); }
.mybo-box-office-container .mybo-account-content h3 { font-size: var(--mybo-h3-size, 20px); }
.mybo-box-office-container .mybo-account-content h4 { font-size: var(--mybo-h4-size, 17px); }

body.mybo-account-page .mybo-account-content a,
.mybo-box-office-container .mybo-account-content a {
	color: var(--mybo-color-link, #f19300);
	transition: color var(--mybo-transition, 0.15s) ease;
}

body.mybo-account-page .mybo-account-content a:hover,
.mybo-box-office-container .mybo-account-content a:hover {
	color: var(--mybo-color-link-hover, #ffb84d);
}

/* =========================================================================
   PAGE TITLE BANNER — rimuove il banner pesante del tema sopra il titolo,
   lasciando solo la scritta più piccola e pulita.
   Selettori GENERICI WordPress (autonomi da tema). */

body.mybo-account-page .entry-header,
body.mybo-account-page .page-header,
body.mybo-account-page header.page-header,
body.mybo-account-page .page-title-area,
body.mybo-account-page .mybo-page-title-container {
	background: transparent !important;
	background-image: none !important;
	border: 0 !important;
	box-shadow: none !important;
	padding-top: 30px !important;
	padding-bottom: 10px !important;
	min-height: 0 !important;
}

/* Titolo della pagina: dimensione ridotta + colore configurabile */
body.mybo-account-page .entry-title,
body.mybo-account-page .page-title,
body.mybo-account-page h1.entry-title,
body.mybo-account-page h1.page-title,
body.mybo-account-page .mybo-page-title {
	font-size: var(--mybo-h1-size, 28px) !important;
	margin: 0 !important;
	padding: 0 !important;
	color: var(--mybo-color-text, #ffffff) !important;
	text-align: center;
	font-weight: 700;
	font-family: var(--mybo-font-heading, inherit) !important;
}

/* =========================================================================
   FORM LOGIN + REGISTRAZIONE — utente non loggato sulla box-office area
   Stile autonomo dal tema: replica il look dark dell'ex /my-account/
   producendo lo stesso layout 2 colonne anche quando il tema attivo non
   stilizza .woocommerce-account/.woocommerce-form-login.
   ========================================================================= */

.mybo-account-page .woocommerce {
	color: var(--mybo-color-text, #ffffff);
}

.mybo-account-page .woocommerce h2 {
	color: var(--mybo-color-text, #ffffff);
	font-size: 1.4em;
	margin: 0 0 14px 0;
	font-weight: 700;
}

.mybo-account-page .woocommerce .col2-set,
.mybo-account-page .woocommerce .u-columns {
	display: flex;
	gap: 30px;
	max-width: 100%;
	margin: 0 auto;
}

.mybo-account-page .woocommerce .u-columns::before,
.mybo-account-page .woocommerce .u-columns::after,
.mybo-account-page .woocommerce .col2-set::before,
.mybo-account-page .woocommerce .col2-set::after {
	content: none;
	display: none;
}

.mybo-account-page .woocommerce .u-column1.col-1,
.mybo-account-page .woocommerce .u-column2.col-2 {
	float: none;
	width: 50%;
	max-width: 50%;
	padding: 0;
	margin: 0;
	box-sizing: border-box;
}

.mybo-account-page .woocommerce form.woocommerce-form-login,
.mybo-account-page .woocommerce form.woocommerce-form-register {
	border: 1px solid var(--mybo-color-border, #333);
	border-radius: 6px;
	padding: 20px 24px;
	background: var(--mybo-color-bg-card, rgba(255, 255, 255, 0.03));
	box-shadow: none;
	margin: 0;
	height: 100%;
	box-sizing: border-box;
}

.mybo-account-page .woocommerce form .form-row {
	display: flex;
	flex-direction: column;
	margin: 0 0 14px 0;
	padding: 0;
}

.mybo-account-page .woocommerce form .form-row-first,
.mybo-account-page .woocommerce form .form-row-last {
	width: calc(50% - 7px);
	display: inline-flex;
	vertical-align: top;
}

.mybo-account-page .woocommerce form .form-row-first { margin-right: 14px; }

.mybo-account-page .woocommerce form .form-row-wide {
	width: 100%;
	clear: both;
}

.mybo-account-page .woocommerce form label {
	color: var(--mybo-color-muted, #cccccc);
	font-size: 0.85em;
	font-weight: 500;
	margin: 0 0 6px 0;
	display: block;
}

.mybo-account-page .woocommerce form label .required,
.mybo-account-page .woocommerce form .required {
	color: var(--mybo-color-accent, #d4a84b);
	text-decoration: none;
}

.mybo-account-page .woocommerce form .woocommerce-form__label-for-checkbox {
	display: flex;
	align-items: center;
	gap: 8px;
	flex-direction: row;
	cursor: pointer;
}

.mybo-account-page .woocommerce form input[type="text"],
.mybo-account-page .woocommerce form input[type="email"],
.mybo-account-page .woocommerce form input[type="tel"],
.mybo-account-page .woocommerce form input[type="password"],
.mybo-account-page .woocommerce form input[type="number"] {
	width: 100%;
	padding: 10px 12px;
	border: 1px solid var(--mybo-color-border, #444);
	border-radius: 4px;
	background: var(--mybo-color-bg-input, #ffffff);
	color: var(--mybo-color-input-text, #1a1a1a);
	font-size: 0.95em;
	box-sizing: border-box;
	transition: border-color 0.15s ease;
}

.mybo-account-page .woocommerce form input:focus {
	border-color: var(--mybo-color-accent, #d4a84b);
	outline: none;
}

.mybo-account-page .woocommerce form .woocommerce-form-login__rememberme {
	display: flex;
	align-items: center;
	gap: 8px;
	margin-bottom: 14px;
}

.mybo-account-page .woocommerce form .woocommerce-form-login__rememberme input[type="checkbox"] {
	margin: 0;
	width: auto;
}

.mybo-account-page .woocommerce form .button,
.mybo-account-page .woocommerce form button[type="submit"] {
	background: var(--mybo-color-accent, #d4a84b);
	color: #000;
	border: none;
	padding: 11px 26px;
	font-size: 0.95em;
	font-weight: 700;
	border-radius: 4px;
	cursor: pointer;
	transition: background 0.15s ease;
	text-transform: none;
	letter-spacing: 0.3px;
}

.mybo-account-page .woocommerce form .button:hover,
.mybo-account-page .woocommerce form button[type="submit"]:hover {
	background: var(--mybo-color-accent-hover, #e5b95c);
}

.mybo-account-page .woocommerce form .button:disabled,
.mybo-account-page .woocommerce form button[type="submit"]:disabled {
	background: var(--mybo-color-disabled, #555);
	color: var(--mybo-color-disabled-text, #999);
	cursor: not-allowed;
}

.mybo-account-page .woocommerce .lost_password,
.mybo-account-page .woocommerce form .lost_password a {
	color: var(--mybo-color-accent, #d4a84b) !important;
	text-decoration: none;
	font-size: 0.88em;
}

.mybo-account-page .woocommerce .lost_password a:hover,
.mybo-account-page .woocommerce form .lost_password a:hover {
	text-decoration: underline;
}

.mybo-account-page .woocommerce form .woocommerce-privacy-policy-text {
	color: var(--mybo-color-muted, #999);
	font-size: 0.82em;
	margin: 12px 0;
}

.mybo-account-page .woocommerce form .woocommerce-privacy-policy-text a {
	color: var(--mybo-color-accent, #d4a84b);
}

/* Messaggio "Se non hai un account, registrati nella colonna a destra"
   iniettato via JS da bg_add_mobile_account_tabs (desktop). */
.mybo-account-page .woocommerce .bg-switch-form-msg-desktop {
	background: rgba(66, 153, 225, 0.08) !important;
	border: 1px solid rgba(66, 153, 225, 0.25) !important;
	color: var(--mybo-color-muted, #aaa) !important;
}

/* Mobile: una colonna sola sotto 768px */
@media (max-width: 768px) {
	.mybo-account-page .woocommerce .col2-set,
	.mybo-account-page .woocommerce .u-columns {
		flex-direction: column;
		gap: 18px;
	}
	.mybo-account-page .woocommerce .u-column1.col-1,
	.mybo-account-page .woocommerce .u-column2.col-2 {
		width: 100%;
		max-width: 100%;
	}
	.mybo-account-page .woocommerce form .form-row-first,
	.mybo-account-page .woocommerce form .form-row-last {
		width: 100%;
		display: block;
	}
	.mybo-account-page .woocommerce form .form-row-first {
		margin-right: 0;
	}
	.mybo-account-page .woocommerce form input {
		font-size: 16px; /* previene zoom iOS */
	}
}

/* =========================================================================
   ANAGRAFICA VIEW — vista read-only dati anagrafici (tab "Dati anagrafici")
   ========================================================================= */
.mybo-anagrafica-view {
	border: 1px solid var(--mybo-color-border, #333);
	border-radius: 6px;
	padding: 22px 26px;
	max-width: 760px;
	margin: 20px auto 0;
}

.mybo-anagrafica-title {
	margin: 0 0 18px 0 !important;
	padding: 0 !important;
	color: var(--mybo-color-text, #fff) !important;
	font-size: 1.25em !important;
	text-align: left !important;
	font-weight: 600;
}

.mybo-anagrafica-columns {
	display: flex;
	gap: 36px;
}

.mybo-anagrafica-column {
	flex: 1;
	min-width: 0;
}

.mybo-info-section {
	margin-bottom: 18px;
}

.mybo-info-section:last-child {
	margin-bottom: 0;
}

.mybo-info-section-title {
	font-size: 0.78em;
	font-weight: 700;
	color: var(--mybo-color-accent, #d4a84b);
	margin-bottom: 10px;
	text-transform: uppercase;
	letter-spacing: 0.6px;
	padding-bottom: 6px;
	border-bottom: 1px solid var(--mybo-color-border, #333);
}

.mybo-info-row {
	display: flex;
	margin-bottom: 6px;
	font-size: 0.95em;
}

.mybo-info-row:last-child {
	margin-bottom: 0;
}

.mybo-info-label {
	color: var(--mybo-color-muted, #888);
	width: 90px;
	flex-shrink: 0;
}

.mybo-info-value {
	color: var(--mybo-color-text, #fff);
	flex: 1;
	min-width: 0;
	word-break: break-word;
}

.mybo-info-value.mybo-highlight {
	color: var(--mybo-color-accent, #d4a84b);
	font-weight: 600;
}

.mybo-anagrafica-buttons {
	display: flex;
	gap: 10px;
	margin-top: 22px;
	padding-top: 18px;
	border-top: 1px solid var(--mybo-color-border, #333);
	justify-content: center;
}

.mybo-edit-link {
	display: inline-block;
	padding: 10px 24px;
	background: var(--mybo-color-accent, #d4a84b);
	color: #000 !important;
	text-decoration: none !important;
	font-size: 0.95em;
	font-weight: 600;
	border-radius: 4px;
	border: 1px solid var(--mybo-color-accent, #d4a84b);
	transition: background 0.15s ease, color 0.15s ease;
}

.mybo-edit-link:hover {
	background: var(--mybo-color-accent-hover, #e5b95c);
	color: #000 !important;
}

.mybo-edit-link-secondary {
	background: transparent;
	color: var(--mybo-color-accent, #d4a84b) !important;
}

.mybo-edit-link-secondary:hover {
	background: var(--mybo-color-accent, #d4a84b);
	color: #000 !important;
}

@media (max-width: 600px) {
	.mybo-anagrafica-view {
		padding: 16px;
	}
	.mybo-anagrafica-columns {
		flex-direction: column;
		gap: 18px;
	}
	.mybo-info-row {
		flex-direction: column;
		margin-bottom: 8px;
	}
	.mybo-info-label {
		width: auto;
		margin-bottom: 2px;
		font-size: 0.75em;
		text-transform: uppercase;
		letter-spacing: 0.3px;
	}
	.mybo-anagrafica-buttons {
		flex-direction: column;
		align-items: stretch;
	}
	.mybo-edit-link {
		text-align: center;
	}
}

/* =========================================================================
   EDIT-ADDRESS FORM — modifica dati anagrafici (tab "Dati anagrafici")
   ========================================================================= */
.mybo-edit-address-form {
	max-width: 640px;
	margin: 20px auto 0;
}

.mybo-edit-address-form .mybo-form-section {
	border: 1px solid var(--mybo-color-border, #333);
	border-radius: 6px;
	padding: 16px 20px;
	margin-bottom: 16px;
	background: var(--mybo-color-bg-card, rgba(255, 255, 255, 0.03));
}

.mybo-edit-address-form .mybo-form-section-title {
	font-size: 0.85em;
	font-weight: 600;
	color: var(--mybo-color-accent, #d4a84b);
	margin: 0 0 12px 0;
	text-transform: uppercase;
	letter-spacing: 0.5px;
}

.mybo-edit-address-form .mybo-form-notice {
	font-size: 0.8em;
	color: var(--mybo-color-muted, #888);
	font-style: italic;
	margin: 0 0 10px 0;
}

.mybo-edit-address-form .mybo-form-row {
	margin-bottom: 10px;
}

.mybo-edit-address-form .mybo-form-row:last-child {
	margin-bottom: 0;
}

.mybo-edit-address-form .mybo-form-row label {
	display: block;
	margin-bottom: 4px;
	color: var(--mybo-color-muted, #aaa);
	font-size: 0.8em;
	font-weight: 500;
}

.mybo-edit-address-form .mybo-form-row input[type="text"],
.mybo-edit-address-form .mybo-form-row input[type="email"],
.mybo-edit-address-form .mybo-form-row input[type="tel"] {
	width: 100%;
	padding: 9px 11px;
	border: 1px solid var(--mybo-color-border, #444);
	border-radius: 4px;
	background: var(--mybo-color-bg-input, #2a2a2a);
	color: var(--mybo-color-text, #fff);
	font-size: 0.95em;
	box-sizing: border-box;
	transition: border-color 0.15s ease;
}

.mybo-edit-address-form .mybo-form-row input:focus {
	border-color: var(--mybo-color-accent, #d4a84b);
	outline: none;
}

.mybo-edit-address-form .mybo-form-row input[readonly] {
	background: var(--mybo-color-bg-readonly, #333);
	color: var(--mybo-color-muted, #888);
	cursor: not-allowed;
	border-color: var(--mybo-color-border, #3a3a3a);
}

.mybo-edit-address-form .mybo-form-row-inline {
	display: flex;
	gap: 12px;
}

.mybo-edit-address-form .mybo-form-row-inline .mybo-form-row {
	flex: 1;
	margin-bottom: 0;
}

.mybo-edit-address-form .mybo-form-row-inline .mybo-form-row-narrow {
	flex: 0 0 80px;
}

.mybo-edit-address-form .mybo-form-submit {
	display: flex;
	gap: 12px;
	align-items: center;
	justify-content: flex-end;
	margin-top: 8px;
}

.mybo-edit-address-form .mybo-form-cancel {
	color: var(--mybo-color-muted, #aaa) !important;
	text-decoration: none !important;
	font-size: 0.9em;
}

.mybo-edit-address-form .mybo-form-cancel:hover {
	color: var(--mybo-color-text, #fff) !important;
	text-decoration: underline !important;
}

.mybo-edit-address-form .mybo-form-submit button {
	background: var(--mybo-color-accent, #d4a84b);
	color: #000;
	border: none;
	padding: 10px 28px;
	font-size: 0.95em;
	font-weight: 600;
	border-radius: 4px;
	cursor: pointer;
	transition: background 0.15s ease;
}

.mybo-edit-address-form .mybo-form-submit button:hover {
	background: var(--mybo-color-accent-hover, #e5b95c);
}

/* Mobile */
@media (max-width: 600px) {
	.mybo-edit-address-form .mybo-form-row-inline {
		flex-direction: column;
		gap: 10px;
	}
	.mybo-edit-address-form .mybo-form-row-inline .mybo-form-row-narrow {
		flex: 1;
	}
	.mybo-edit-address-form .mybo-form-row input {
		font-size: 16px; /* previene zoom iOS */
	}
	.mybo-edit-address-form .mybo-form-submit {
		flex-direction: column-reverse;
		align-items: stretch;
		gap: 10px;
	}
	.mybo-edit-address-form .mybo-form-submit button {
		width: 100%;
	}
	.mybo-edit-address-form .mybo-form-cancel {
		text-align: center;
		padding: 6px 0;
	}
}

/* =========================================================================
   UTILITY: SCREEN-READER ONLY
   ----------------------------------------------------------------------
   Visivamente nascosto ma accessibile al password manager / screen reader.
   Pattern standard usato dai design system (Bootstrap, GOV.UK, ecc.).
   Usato per gli input "username" hidden dei form login/register: Chrome
   non considera type="hidden" come username field valido, quindi mettiamo
   type="text" e li nascondiamo via classe.
   ========================================================================= */
.mybo-sr-only {
	position: absolute !important;
	width: 1px !important;
	height: 1px !important;
	padding: 0 !important;
	margin: -1px !important;
	overflow: hidden !important;
	clip: rect(0, 0, 0, 0) !important;
	white-space: nowrap !important;
	border: 0 !important;
}

/* =========================================================================
   NASCONDI WIDGET ELEMENTOR LOGIN NELLE PAGINE DEL PLUGIN
   ----------------------------------------------------------------------
   La pagina /box-office-area/ (e le pagine del flusso pagamento) hanno
   un form di login/registrazione gestito dal plugin (shortcode
   [mybo_auth_smart]). Se il tema espone anche un widget login Elementor
   nell'header, in queste pagine si creano due <form> in pagina: Chrome
   segnala "multiple forms" e l'input password Elementor manca di
   autocomplete="current-password". Nascondiamo il widget Elementor in
   modo che resti un solo form, quello nostro.

   Restano visibili su tutte le altre pagine del sito (home, eventi, ecc.),
   dove il widget header del tema può essere voluto. Selettore mirato:
   nasconde solo widget login Elementor (Pro + standard), non altri.
   ========================================================================= */
body.mybo-plugin-page .elementor-widget-login,
body.mybo-plugin-page .elementor-login-form,
body.mybo-plugin-page form.elementor-login,
body.mybo-plugin-page form.elementor-login-form {
	display: none !important;
}
