.assistenza-selezione-attiva,
.assistenza-selezione-attiva * { cursor: none !important; }
.assistenza-cursore {
	position: fixed;
	top: 0;
	left: 0;
	width: 32px;
	height: 32px;
	z-index: 2147483647;
	transform: translate(-100px, -100px);
	pointer-events: none;
	filter: drop-shadow(0 2px 3px rgb(0 0 0 / 18%));
}
.assistenza-cursore svg { display: block; width: 32px; height: 32px; }
.assistenza-evidenziazione {
	position: fixed;
	z-index: 2147483644;
	border: 2px solid var(--bs-primary-1, #111314);
	background: rgba(var(--bs-primary-1-rgb, 17, 19, 20), .16);
	box-sizing: border-box;
	pointer-events: none;
}
.assistenza-etichetta {
	position: fixed;
	z-index: 2147483645;
	max-width: min(420px, calc(100vw - 24px));
	padding: 5px 9px;
	border-radius: 5px;
	background: var(--bs-primary-1, #111314);
	color: #fff;
	font: 12px/1.4 monospace;
	white-space: nowrap;
	text-overflow: ellipsis;
	overflow: hidden;
	pointer-events: none;
}
.assistenza-istruzioni {
	position: fixed;
	left: 50%;
	top: 16px;
	z-index: 2147483646;
	transform: translateX(-50%);
	padding: 10px 16px;
	border-radius: 10px;
	background: var(--bs-black-100, #2d3436);
	color: #fff;
	font: 600 14px/1.4 Manrope, sans-serif;
	box-shadow: 0 5px 20px rgb(0 0 0 / 25%);
	pointer-events: none;
}
.assistenza-dialog {
	width: min(680px, calc(100vw - 28px));
	max-width: none;
	max-height: min(92vh, 900px);
	padding: 0;
	border: 0;
	border-radius: 7px;
	color: var(--bs-black-100, #2d3436);
	box-shadow: 0 20px 60px rgb(0 0 0 / 25%);
}
.assistenza-dialog::backdrop { background: rgb(45 52 54 / 58%); backdrop-filter: blur(2px); }
.assistenza-dialog__contenuto { display: grid; gap: 14px; padding: 22px; overflow: auto; }
.assistenza-dialog__intestazione { display: flex; align-items: flex-start; justify-content: space-between; gap: 16px; }
.assistenza-dialog__intestazione h2 { margin: 0 0 4px; font: 700 21px/1.3 Manrope, sans-serif; }
.assistenza-dialog__intestazione p { margin: 0; color: var(--bs-black-80, #636e72); font: 14px/1.5 Manrope, sans-serif; }
.assistenza-dialog__chiudi { flex: 0 0 auto; width: 38px; min-height: 38px; padding: 0; border: 0; border-radius: 7px; background: var(--bs-primary-4, #F1F1F2); color: var(--bs-black-100, #2d3436); font-size: 22px; cursor: pointer; }
.assistenza-dialog label { display: grid; gap: 6px; color: var(--bs-black-100, #2d3436); font: 600 13px/1.4 Manrope, sans-serif; }
.assistenza-dialog input,
.assistenza-dialog textarea,
.assistenza-dialog select { width: 100%; border: 1px solid var(--bs-black-40, #BABABF); border-radius: 7px; padding: 10px 12px; color: var(--bs-black-100, #2d3436); background: #fff; font: 14px/1.5 Manrope, sans-serif; }
.assistenza-dialog input:focus,
.assistenza-dialog textarea:focus,
.assistenza-dialog select:focus { outline: 2px solid var(--bs-primary-1, #111314); outline-offset: 1px; }
.assistenza-dialog input[readonly] { background: var(--bs-primary-4, #F1F1F2); color: var(--bs-black-80, #636e72); }
.assistenza-dialog textarea { min-height: 120px; resize: vertical; }
.assistenza-dialog__anteprima { display: grid; gap: 7px; margin: 0; color: var(--bs-black-100, #2d3436); font: 600 13px/1.4 Manrope, sans-serif; }
.assistenza-dialog__anteprima img { display: block; width: min(100%, 520px); max-height: 210px; object-fit: contain; object-position: left center; border: 1px solid var(--bs-black-20, #F1F1F2); border-radius: 7px; background: var(--bs-primary-4, #F1F1F2); pointer-events: none; }
.assistenza-dialog__azioni { display: flex; justify-content: flex-end; gap: 8px; padding-top: 4px; }
.assistenza-dialog__azioni button { min-height: 42px; border: 0; border-radius: 7px; padding: 9px 15px; font: 600 14px/1 Manrope, sans-serif; cursor: pointer; }
.assistenza-dialog__annulla { background: var(--bs-primary-4, #F1F1F2); color: var(--bs-black-100, #2d3436); }
.assistenza-dialog__invia { background: var(--bs-primary-1, #111314); color: #fff; }
.assistenza-dialog__azioni button:disabled { cursor: wait; opacity: .6; }
.assistenza-dettaglio { width: min(760px, calc(100vw - 28px)); max-width: none; max-height: 90vh; padding: 0; border: 0; border-radius: 7px; color: var(--bs-black-100, #2d3436); box-shadow: 0 20px 60px rgb(0 0 0 / 25%); }
.assistenza-dettaglio::backdrop { background: rgb(45 52 54 / 58%); backdrop-filter: blur(2px); }
.assistenza-dettaglio__contenuto { display: grid; gap: 14px; padding: 22px; overflow: auto; }
.assistenza-dettaglio__intestazione { display: flex; justify-content: space-between; align-items: center; gap: 16px; }
.assistenza-dettaglio__intestazione h2 { margin: 0; font: 700 21px/1.3 Manrope, sans-serif; }
.assistenza-dettaglio__campo h3 { margin: 0 0 5px; color: var(--bs-black-80, #636e72); font: 600 12px/1.4 Manrope, sans-serif; text-transform: uppercase; letter-spacing: .04em; }
.assistenza-dettaglio__campo p,
.assistenza-dettaglio__campo a { margin: 0; color: var(--bs-black-100, #2d3436); font: 14px/1.6 Manrope, sans-serif; overflow-wrap: anywhere; white-space: pre-wrap; }
.assistenza-dettaglio__immagine { display: grid; gap: 7px; margin: 0; font: 600 13px/1.4 Manrope, sans-serif; }
.assistenza-dettaglio__immagine img { display: block; max-width: 100%; max-height: 52vh; object-fit: contain; object-position: left center; border: 1px solid var(--bs-black-20, #F1F1F2); border-radius: 7px; background: var(--bs-primary-4, #F1F1F2); }
@media (max-width: 540px) {
	.assistenza-istruzioni { top: 8px; width: calc(100vw - 24px); text-align: center; }
	.assistenza-dialog__contenuto { padding: 17px; }
	.assistenza-dialog__azioni { flex-direction: column-reverse; }
	.assistenza-dialog__azioni button { width: 100%; }
}

.segnalazioni-page h1 { margin: 0 0 6px; color: var(--bs-black-100, #2d3436); font-size: 1.8rem; font-weight: 700; }
.segnalazioni-page .intro { margin: 0 0 22px; color: var(--bs-black-80, #636e72); }
.segnalazioni-page .panel, .segnalazioni-page .stat { background: var(--bs-black-0, #fff); border: 1px solid var(--bs-black-20, #f1f1f2); border-radius: 12px; }
.segnalazioni-page .stats { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 10px; margin-bottom: 18px; }
.segnalazioni-page .stat { padding: 14px 16px; }
.segnalazioni-page .stat strong { display: block; font-size: 1.35rem; }
.segnalazioni-page .stat span { color: var(--bs-black-80, #636e72); font-size: .85rem; }
.segnalazioni-page .panel { padding: 18px; margin-bottom: 16px; }
.segnalazioni-page form { display: grid; grid-template-columns: minmax(0, 1fr) minmax(220px, .9fr) 190px auto; gap: 10px; }
.segnalazioni-page input, .segnalazioni-page select, .segnalazioni-page button { min-height: 42px; border-radius: 8px; font: inherit; }
.segnalazioni-page input, .segnalazioni-page select { width: 100%; border: 1px solid var(--bs-black-40, #bababf); padding: 8px 11px; background: var(--bs-black-0, #fff); color: var(--bs-black-100, #2d3436); }
.segnalazioni-page button { border: 0; padding: 8px 14px; cursor: pointer; background: var(--bs-primary-1, #111314); color: #fff; font-weight: 600; }
.segnalazioni-page button:hover { background: var(--bs-primary, #111314); }
.segnalazioni-page button.secondary { background: var(--bs-primary-4, #F1F1F2); color: var(--bs-black-100, #2d3436); }
.segnalazioni-page button.secondary:hover { background: var(--bs-primary-3, #E4E4E7); }
.segnalazioni-page button:focus-visible, .segnalazioni-page input:focus-visible, .segnalazioni-page select:focus-visible { outline: 3px solid rgba(var(--bs-primary-1-rgb, 17, 19, 20), .35); outline-offset: 2px; }
.segnalazioni-page .filters { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin: 0 0 12px; }
.segnalazioni-page .filters button.active { background: var(--bs-primary-1, #111314); color: #fff; }
.segnalazioni-page .filtro-tipo { display: flex; align-items: center; gap: 8px; margin-left: auto; color: var(--bs-black-80, #636e72); font-size: .9rem; }
.segnalazioni-page .filtro-tipo select { width: auto; min-width: 205px; }
.segnalazioni-page #elenco { display: grid; gap: 8px; }
.segnalazioni-page .item { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; align-items: center; gap: 12px; padding: 12px; border: 1px solid var(--bs-black-20, #f1f1f2); border-radius: 10px; background: var(--bs-black-0, #fff); }
.segnalazioni-page .item input[type="checkbox"] { width: 19px; height: 19px; min-height: 19px; padding: 0; accent-color: var(--bs-primary-1, #111314); }
.segnalazioni-page .testo { overflow-wrap: anywhere; }
.segnalazioni-page .item.fatto .testo { color: var(--bs-black-60, #97a2a7); text-decoration: line-through; opacity: .75; }
.segnalazioni-page .meta { display: block; margin-top: 4px; color: var(--bs-black-80, #636e72); font-size: .78rem; text-decoration: none; }
.segnalazioni-page .azioni { display: flex; gap: 6px; }
.segnalazioni-page .azioni button { min-height: 34px; padding: 5px 10px; font-size: .86rem; }
.segnalazioni-page .vuoto { padding: 22px; color: var(--bs-black-80, #636e72); text-align: center; }
.segnalazioni-page #messaggio { min-height: 1.4em; margin: 8px 2px 0; color: var(--bs-danger-1, #ff0022); }
		@media (max-width: 640px) {.segnalazioni-page { padding: 22px 12px; }
.segnalazioni-page .stats { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.segnalazioni-page form { grid-template-columns: 1fr; }
.segnalazioni-page .filtro-tipo { width: 100%; margin-left: 0; }
.segnalazioni-page .filtro-tipo select { flex: 1; }
.segnalazioni-page .item { grid-template-columns: auto minmax(0, 1fr); }
.segnalazioni-page .azioni { grid-column: 2; } }

.segnalazioni-page { width:100%; max-width:1200px; margin:0 auto; }
.segnalazioni-testata { display:flex; align-items:center; justify-content:space-between; gap:16px; margin-bottom:8px; }
.segnalazioni-page h1 { font-size:24px; }
.segnalazioni-page button:disabled { opacity:.6; cursor:wait; }
.assistenza-dialog [data-assistenza-errore] { color:var(--bs-danger-1, #ff0022); margin:0; }

@media (max-width: 960px) { .segnalazioni-page form { grid-template-columns: minmax(0,1fr) minmax(0,1fr); } }
@media (max-width: 640px) { .segnalazioni-page form { grid-template-columns: 1fr; } .segnalazioni-testata { align-items:flex-start; flex-direction:column; } .segnalazioni-page .azioni { flex-wrap:wrap; } }

/* Sfondo uniforme per la pagina Segnalazioni, inclusa l’area sotto il titolo. */
#app-content:has(.segnalazioni-page),
.segnalazioni-page { background: var(--bs-black-0, #fff); }
.segnalazioni-page { flex: 1; }
