* {
	font-family: 'Open Sans', sans-serif;
}

#logo {
	max-height: 50px;
	width: auto;
}

#loginModal .modal-header {
	background: url(https://infodrive-web-assets.s3.eu-central-1.amazonaws.com/images/custom_bg/5.jpg) center center;
	background-size: cover;
	height: 200px;
}

label.error {
	text-transform: uppercase;
	font-weight: bold;
	color: var(--bs-danger);
	font-size: 13px;
	display: block;
}

input[aria-invalid="true"], select[aria-invalid="true"], textarea[aria-invalid="true"] {
	border-color: var(--bs-danger) !important;
	box-shadow: 0 0 0 0.25rem rgb(220 53 69 / 25%) !important;
}

table.vertical-align-middle td {
	vertical-align: middle;
}

.badge {
	text-transform: uppercase;
}

.clickable {
	cursor: pointer !important;
}

.card-body.p-0 .nav-link {
	border-radius: 0 !important;
}

.card-header {
	padding: .8rem 1rem
}

.card-header.alert {
	min-height: 55px;
	padding: 0 1rem !important;
}

.card-title {
	margin-bottom: 0 !important;
}

.chart {
	max-height: 300px;
	width: 100%;
}

.fa-equal-width {
	width: 20px;
	text-align: center;
}

.login-modal-open>#app-router, .login-modal-open>div>nav.navbar {
	filter: blur(10px);
	-webkit-filter: blur(10px);
	-ms-filter: blur(10px);
	position: absolute;
}

.modal-login {
	top: 0;
	height: 100% !important;
	z-index: 999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999;
}

.placeholder-icon {
	font-family: "Open Sans", "Font Awesome 5 Free", serif;
	font-style: normal;
	font-variant: normal;
	text-rendering: auto;
	font-weight: 600;
}

.sticky-top {
	top: 81px;
}

@media (min-width: 1400px) {
	.sticky-xxl-top {
		top: 81px;
	}
}

@media (min-width: 1200px) {
	.sticky-xl-top {
		top: 81px;
	}
}

@media (min-width: 992px) {
	.sticky-lg-top {
		top: 81px;
	}
}

@media (min-width: 768px) {
	.sticky-md-top {
		top: 81px;
	}
}

@media (min-width: 576px) {
	.sticky-sm-top {
		top: 81px;
	}
}

/* SELECT 2 */

.select2 {
	width: 100% !important;
}

.select2-selection__rendered {
	line-height: 36px !important;
}

.select2-container .select2-selection--single {
	height: 38px !important;
}

.select2-selection__arrow {
	height: 36px !important;
}

.modal .select2-container {
	position: relative;
	z-index: 2;
	float: left;
	width: 100% !important;
	margin-bottom: 0;
	display: table;
	table-layout: fixed;
}

/* SEARCH */

#offcanvasSearch {
	width: calc(100vw - 400px);
}

/* DATATABLES */

/* fix for regular bootstrap 5 striped tables losing stripeness due to datatable css */

.table-striped:not(.dataTable)>tbody>tr:nth-of-type(odd) {
	--bs-table-accent-bg: var(--bs-table-striped-bg) !important;
	color: var(--bs-table-striped-color);
}

.dtsp-panesContainer {
	border: solid 1px #e5e5e5;
	background-color: var(--bs-light);
	border-radius: 5px;
	padding: 10px 20px !important;
}

.dt-button-collection .dtsp-panesContainer {
	box-shadow: 0 0.2rem 1rem rgba(0, 0, 0, .35) !important;
	position: fixed !important;
	width: calc(100% - 80px) !important;
	min-width: calc(100% - 80px) !important;
}

.dataTables_filter {
	float: right;
}

/* SIDEBAR */

#sidebar .accordion-button.bg-dark:focus {
	border-color: transparent !important;
	box-shadow: none !important;
}

#sidebar .accordion-button.bg-dark::after {
	background-image: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23ffffff'><path fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/></svg>") !important;
}

#sidebar .accordion-button, #sidebar .list-group-item {
	transition: all ease .3s;
	border: none;
}

#sidebar .accordion-button:hover, #sidebar .list-group-item:hover {
	color: var(--bs-info) !important;
}

#sidebar input[type="search"] {
	background-color: transparent;
	color: white;
	border: 0;
	border-bottom: solid 1px white !important;
	border-radius: 0;
}

#sidebar input[type="search"]:focus {
	box-shadow: none;
}

#sidebar input[type="search"]::placeholder {
	color: rgba(255, 255, 255, .7);
}

/* LOADERS */

#preloader {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(255, 255, 255, 0.9);
	z-index: 999999;
}

#loader {
	display: block;
	position: relative;
	left: 50%;
	top: 50%;
	width: 150px;
	height: 150px;
	margin: -75px 0 0 -75px;
	border-radius: 50%;
	border: 3px solid transparent;
	border-top-color: #acacac;
	-webkit-animation: spin 2s linear infinite;
	animation: spin 2s linear infinite;
}

#loader:before {
	content: "";
	position: absolute;
	top: 5px;
	left: 5px;
	right: 5px;
	bottom: 5px;
	border-radius: 50%;
	border: 3px solid transparent;
	border-top-color: #1f8cc7;
	-webkit-animation: spin 3s linear infinite;
	animation: spin 3s linear infinite;
}

#loader:after {
	content: "";
	position: absolute;
	top: 15px;
	left: 15px;
	right: 15px;
	bottom: 15px;
	border-radius: 50%;
	border: 3px solid transparent;
	border-top-color: #E31E25;
	-webkit-animation: spin 1.5s linear infinite;
	animation: spin 1.5s linear infinite;
}

/* BS CALLOUTS */

.callout {
	border: solid 1px #e5e5e5;
	border-left: solid 5px;
	border-radius: 5px;
	display: flex;
	flex-direction: column;
	padding: 10px;
}

.callout-secondary {
	border-left-color: var(--bs-secondary);
}

.callout-secondary h5 {
	color: var(--bs-secondary);
}

.callout-light {
	border-left-color: var(--bs-light);
}

.callout-light h5 {
	color: var(--bs-light);
}

.callout-dark {
	border-left-color: var(--bs-dark);
}

.callout-dark h5 {
	color: var(--bs-dark);
}

.callout-primary {
	border-left-color: var(--bs-primary);
}

.callout-primary h5 {
	color: var(--bs-primary);
}

body.default .btn-primary {
	background-color: #dc3545 !important;
	border:none;
}

body.onorato .btn-primary {
	background-color: #094673;
	/* Colore personalizzato */
}

body.toptrack .btn-primary {
	background-color: #033D51;
	/* Colore personalizzato */
}

/* Assiclick */
body.assiclick {
	--bs-primary: #B8D050;
	--bs-primary-rgb: 184, 208, 80;
	--bs-info: #B8D050;
	--bs-info-rgb: 184, 208, 80;
}
body.assiclick .btn-primary,
body.assiclick .btn-info {
	background-color: #B8D050;
	border-color: #B8D050;
	color: #1a1a1a;
}
body.assiclick .btn-primary:hover,
body.assiclick .btn-info:hover {
	background-color: #9CB844;
	border-color: #9CB844;
	color: #1a1a1a;
}
body.assiclick .bg-primary {
	background-color: #B8D050 !important;
}
body.assiclick .text-primary {
	color: #B8D050 !important;
}
body.assiclick .border-primary {
	border-color: #B8D050 !important;
}
body.assiclick .badge.bg-primary {
	background-color: #B8D050 !important;
}
body.assiclick .alert-primary {
	background-color: rgba(184, 208, 80, 0.18);
	border-color: rgba(184, 208, 80, 0.35);
	color: #1a1a1a;
}
body.assiclick .select2-container--default .select2-results__option--highlighted[aria-selected] {
	background-color: #B8D050 !important;
}
body.assiclick .form-control:focus,
body.assiclick .form-select:focus,
body.assiclick .select2-container--default .select2-selection--single:focus {
	border-color: #B8D050;
	box-shadow: 0 0 0 0.2rem rgba(184, 208, 80, 0.25);
}
body.assiclick a:not(.nav-link):not(.btn) {
	color: #7EA11F;
}
body.assiclick a:not(.nav-link):not(.btn):hover {
	color: #6C8E16;
}

body.facile .btn-primary {
	background-color: #FF6B00;
	border-color: #FF6B00;
}
body.facile .btn-primary:hover {
	background-color: #e85f00;
	border-color: #e85f00;
}
/* Su Facile niente blu: primary e info diventano arancione ovunque */
body.facile {
	--bs-primary: #FF6B00;
	--bs-primary-rgb: 255, 107, 0;
	--bs-info: #FF6B00;
	--bs-info-rgb: 255, 107, 0;
}
body.facile .btn-info {
	background-color: #FF6B00;
	border-color: #FF6B00;
	color: #fff;
}
body.facile .btn-info:hover {
	background-color: #e85f00;
	border-color: #e85f00;
	color: #fff;
}
body.facile .bg-primary {
	background-color: #FF6B00 !important;
}
body.facile .text-primary {
	color: #FF6B00 !important;
}
body.facile .border-primary {
	border-color: #FF6B00 !important;
}
body.facile .badge.bg-primary {
	background-color: #FF6B00 !important;
}
body.facile .alert-primary {
	background-color: rgba(255, 107, 0, 0.15);
	border-color: rgba(255, 107, 0, 0.3);
	color: #1a1a1a;
}
/* Select2 e focus senza blu */
body.facile .select2-container--default .select2-results__option--highlighted[aria-selected] {
	background-color: #FF6B00 !important;
}
body.facile .form-control:focus,
body.facile .form-select:focus,
body.facile .select2-container--default .select2-selection--single:focus {
	border-color: #FF6B00;
	box-shadow: 0 0 0 0.2rem rgba(255, 107, 0, 0.25);
}
body.facile a:not(.nav-link):not(.btn) {
	color: #FF6B00;
}
body.facile a:not(.nav-link):not(.btn):hover {
	color: #e85f00;
}

.callout-warning {
	border-left-color: var(--bs-warning);
}

.callout-warning h5 {
	color: var(--bs-warning);
}

.callout-info {
	border-left-color: var(--bs-info);
}

.callout-info h5 {
	color: var(--bs-info);
}

.callout-danger {
	border-left-color: var(--bs-danger);
}

.callout-danger h5 {
	color: var(--bs-danger);
}

.callout-success {
	border-left-color: var(--bs-success);
}

.callout-success h5 {
	color: var(--bs-success);
}

@-webkit-keyframes spin {
	0% {
		-ms-transform: rotate(0deg);
		transform: rotate(0deg);
	}
	100% {
		-ms-transform: rotate(360deg);
		transform: rotate(360deg);
	}
}

@keyframes spin {
	0% {
		-ms-transform: rotate(0deg);
		transform: rotate(0deg);
	}
	100% {
		-ms-transform: rotate(360deg);
		transform: rotate(360deg);
	}
}

/* ========== DASHBOARD FACILE.IT — Card stile facile.it (titolo arancione, CTA verde) ========== */
body.facile .dashboard-facile {
	--facile-primary: #FF6B00;
	--facile-primary-hover: #e85f00;
	--facile-primary-light: rgba(255, 107, 0, 0.12);
	--facile-secondary: #1a1a1a;
	--facile-cta: #7CC540;
	--facile-cta-hover: #6ab535;
	--facile-bg: #eef0f4;
	--facile-card-bg: #ffffff;
	--facile-card-shadow: 0 2px 12px rgba(0, 0, 0, 0.08);
	--facile-card-shadow-hover: 0 12px 32px rgba(0, 0, 0, 0.12);
	--facile-radius: 24px;
	--facile-radius-sm: 16px;
	background: var(--facile-bg);
	min-height: 100vh;
	padding-top: 0.75rem;
	padding-bottom: 2rem;
}

/* Topbar Facile: sfondo arancione (classe .navbar-facile aggiunta da topbar.html) */
nav.navbar.navbar-facile,
nav.navbar.navbar-facile.bg-white {
	background-color: #FF6B00 !important;
	background-image: linear-gradient(155deg, #FF6B00 0%, #ff7a1a 50%, #ff9f4d 100%) !important;
	box-shadow: 0 2px 12px rgba(255, 107, 0, 0.35);
}

nav.navbar.navbar-facile .navbar-brand img#topbar-logo {
	filter: brightness(0) invert(1);
}

nav.navbar.navbar-facile .btn-primary {
	background-color: rgba(255, 255, 255, 0.3) !important;
	border-color: rgba(255, 255, 255, 0.75) !important;
	color: #fff !important;
}

nav.navbar.navbar-facile .btn-primary:hover {
	background-color: rgba(255, 255, 255, 0.5) !important;
	border-color: #fff !important;
	color: #fff !important;
}

nav.navbar.navbar-facile .dropdown .btn-info {
	background-color: rgba(255, 255, 255, 0.3) !important;
	border-color: rgba(255, 255, 255, 0.65) !important;
	color: #fff !important;
}

nav.navbar.navbar-facile .dropdown .btn-info:hover {
	background-color: rgba(255, 255, 255, 0.5) !important;
	border-color: #fff !important;
	color: #fff !important;
}

/* Statistiche dashboard CVT */
#dashboard-stats-container .dashboard-stat-card {
  background: #fff;
  transition: box-shadow 0.2s ease, transform 0.2s ease;
}
#dashboard-stats-container .dashboard-stat-card:hover {
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
  transform: translateY(-1px);
}
body.facile .dashboard-facile #dashboard-stats-container .dashboard-stat-card {
  background: var(--facile-card-bg);
  border-color: rgba(0, 0, 0, 0.06) !important;
  border-radius: var(--facile-radius-sm);
  box-shadow: var(--facile-card-shadow);
}
body.facile .dashboard-facile #dashboard-stats-container .dashboard-stat-card:hover {
  box-shadow: var(--facile-card-shadow-hover);
  border-color: var(--facile-primary-light) !important;
}
body.facile .dashboard-facile #dashboard-stats-container .dashboard-stat-value {
  color: var(--facile-primary);
}

/* Griglia: colonne uguali + celle quadrate = card tutte identiche */
body.facile .dashboard-facile #dashboard-menu-container,
body.facile .dashboard-facile .subsection-facile {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 1rem;
	margin-left: 0;
	margin-right: 0;
	margin-top: 1.5rem;
	max-width: 100%;
}

body.facile .dashboard-facile #dashboard-menu-container {
	margin-top: 0.75rem;
}

/* Con pannello Indietro/Home visibile (sottosezione): card subito sotto, poco spazio */
body.facile .dashboard-facile #nav_panel:not(.d-none) {
	margin-bottom: 0.5rem;
}
body.facile .dashboard-facile #nav_panel:not(.d-none) + #dashboard-menu-container {
	margin-top: 0;
}

/* Sottosezione (es. CVT, Servizi): occupa tutta la larghezza, card più in alto */
body.facile .dashboard-facile #dashboard-menu-container > .subsection-facile {
	grid-column: 1 / -1;
	margin-left: 0;
	margin-right: 0;
	margin-top: 0;
	min-width: 0;
}

@media (min-width: 576px) {
	body.facile .dashboard-facile #dashboard-menu-container,
	body.facile .dashboard-facile .subsection-facile {
		grid-template-columns: repeat(3, 1fr);
		gap: 1.25rem;
	}
}

@media (min-width: 992px) {
	body.facile .dashboard-facile #dashboard-menu-container,
	body.facile .dashboard-facile .subsection-facile {
		grid-template-columns: repeat(4, 1fr);
		gap: 1.5rem;
	}
}

/* Cella sempre quadrata = stessa larghezza e altezza per ogni card */
body.facile .dashboard-facile .dash-card-facile-col {
	aspect-ratio: 1;
	min-height: 0;
	overflow: hidden;
}

/* Card: layout come riferimento (titolo | icona | descrizione | bottone verde) */
body.facile .dashboard-facile .dash-card-facile {
	background: var(--facile-card-bg);
	border: none;
	border-radius: var(--facile-radius);
	box-shadow: var(--facile-card-shadow);
	transition: transform 0.25s ease, box-shadow 0.25s ease;
	overflow: hidden;
	width: 100%;
	height: 100%;
	min-height: 0;
	text-decoration: none;
	color: inherit;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: space-between;
	text-align: center;
	padding: 1.25rem 1rem;
	gap: 0.5rem;
}

body.facile .dashboard-facile .dash-card-facile:hover {
	transform: translateY(-4px) scale(1.02);
	box-shadow: var(--facile-card-shadow-hover);
	color: inherit;
}

/* Titolo in alto: arancione, maiuscolo, più grande */
body.facile .dashboard-facile .dash-card-facile .dash-card-facile-title-top {
	font-size: 0.875rem;
	font-weight: 700;
	color: var(--facile-primary);
	letter-spacing: 0.02em;
	text-transform: uppercase;
	margin: 0;
	line-height: 1.3;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
	width: 100%;
	flex-shrink: 0;
}

/* Icona al centro: più grande */
body.facile .dashboard-facile .dash-card-facile .dash-card-facile-icon {
	width: 64px;
	height: 64px;
	min-width: 64px;
	min-height: 64px;
	border-radius: var(--facile-radius-sm);
	background: var(--facile-primary-light);
	color: var(--facile-primary);
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 1.75rem;
	flex-shrink: 0;
	transition: background 0.25s ease, color 0.25s ease, transform 0.25s ease;
}

body.facile .dashboard-facile .dash-card-facile:hover .dash-card-facile-icon {
	background: var(--facile-primary);
	color: #fff;
	transform: scale(1.08);
}

/* Testo descrittivo sotto l’icona (nero, centrato, fino a 2 righe) */
body.facile .dashboard-facile .dash-card-facile .dash-card-facile-desc {
	font-size: 0.8125rem;
	font-weight: 400;
	color: var(--facile-secondary);
	margin: 0;
	line-height: 1.35;
	width: 100%;
	flex-shrink: 0;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

/* Bottone CTA verde in basso: “VAI” / “SCOPRI” + freccia */
body.facile .dashboard-facile .dash-card-facile .dash-card-facile-cta {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 0.35rem;
	width: 100%;
	max-width: 100%;
	padding: 0.6rem 1rem;
	background: var(--facile-cta);
	color: #fff;
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.02em;
	text-transform: uppercase;
	border-radius: 12px;
	border: none;
	transition: background 0.2s ease, transform 0.2s ease;
	flex-shrink: 0;
}

body.facile .dashboard-facile .dash-card-facile:hover .dash-card-facile-cta {
	background: var(--facile-cta-hover);
}

body.facile .dashboard-facile .dash-card-facile .dash-card-facile-cta .fa-chevron-right {
	font-size: 0.7rem;
}

body.facile .dashboard-facile .dash-card-facile button.dash-card-facile {
	cursor: pointer;
	width: 100%;
	height: 100%;
	border: 0;
}

/* Nav panel (indietro / home) */
body.facile .dashboard-facile .nav-panel-facile {
	background: var(--facile-card-bg);
	border-radius: var(--facile-radius);
	box-shadow: var(--facile-card-shadow);
	padding: 1rem 1.25rem;
	margin-bottom: 1.5rem;
}

body.facile .dashboard-facile .nav-panel-facile .col-12.d-flex {
	display: flex !important;
	align-items: center;
	gap: 0.75rem;
	flex-wrap: wrap;
}

body.facile .dashboard-facile .nav-panel-facile .col-12:last-child {
	display: none;
}

body.facile .dashboard-facile .nav-panel-facile .btn-facile-nav {
	background: var(--facile-primary-light);
	color: var(--facile-primary);
	border: none;
	border-radius: 10px;
	padding: 0.5rem 0.9rem;
	transition: background 0.2s, color 0.2s;
}

body.facile .dashboard-facile .nav-panel-facile .btn-facile-nav:hover {
	background: var(--facile-primary);
	color: #fff;
}

body.facile .dashboard-facile .dashboard-facile-logo-footer {
	margin-top: 1.5rem;
}

body.facile .dashboard-facile .dashboard-facile-logo-footer img {
	max-width: 140px;
	opacity: 0.8;
}

body.facile .dashboard-facile .modal .modal-header.bg-light {
	background: linear-gradient(135deg, var(--facile-primary-light) 0%, #fff 100%) !important;
	border-bottom: 1px solid rgba(255, 107, 0, 0.12);
}

body.facile .dashboard-facile .modal .modal-title {
	color: var(--facile-secondary);
	font-weight: 600;
}

/* ========== Pagina CVT/Add — branding Facile (tasti, tab, card) ========== */
body.facile .view-cvt-add .btn-dark {
	background-color: #FF6B00;
	border-color: #FF6B00;
	color: #fff;
}
body.facile .view-cvt-add .btn-dark:hover {
	background-color: #e85f00;
	border-color: #e85f00;
	color: #fff;
}
/* Avanti → verde Facile */
body.facile .view-cvt-add #NextButton {
	background-color: #7CC540 !important;
	border-color: #7CC540 !important;
	color: #fff !important;
}
body.facile .view-cvt-add #NextButton:hover {
	background-color: #6ab535 !important;
	border-color: #6ab535 !important;
	color: #fff !important;
}
body.facile .view-cvt-add .btn-outline-dark {
	border-color: #FF6B00;
	color: #FF6B00;
}
body.facile .view-cvt-add .btn-outline-dark:hover {
	background-color: rgba(255, 107, 0, 0.1);
	border-color: #FF6B00;
	color: #e85f00;
}
body.facile .view-cvt-add .btn-danger {
	background-color: #7CC540;
	border-color: #7CC540;
	color: #fff;
}
body.facile .view-cvt-add .btn-danger:hover {
	background-color: #6ab535;
	border-color: #6ab535;
	color: #fff;
}
body.facile .view-cvt-add .btn-link {
	color: #FF6B00;
}
body.facile .view-cvt-add .btn-link:hover {
	color: #e85f00;
}
/* Barra step (1: Dati Veicolo, 2: Pacchetti Base CVT…): sfondo Facile al posto del blu */
body.facile .view-cvt-add #v-pills-tab {
	background-color: rgba(255, 107, 0, 0.08);
	border-radius: 16px;
	padding: 0.75rem;
	border: 1px solid rgba(255, 107, 0, 0.15);
}
body.facile .view-cvt-add .nav-pills .nav-link {
	color: #333;
	border-radius: 12px;
	background-color: transparent;
}
body.facile .view-cvt-add .nav-pills .nav-link.active {
	background-color: #FF6B00;
	color: #fff;
	border: none;
}
body.facile .view-cvt-add .nav-pills .nav-link.disabled {
	color: #999;
	background-color: rgba(255, 107, 0, 0.05);
}
body.facile .view-cvt-add .nav-pills .nav-link:not(.active):not(.disabled):hover {
	background-color: rgba(255, 107, 0, 0.12);
	color: #FF6B00;
}
/* Reset Campi (btn-info) → outline arancione in cvt/add */
body.facile .view-cvt-add .btn-info {
	background-color: transparent !important;
	border-color: #FF6B00 !important;
	color: #FF6B00 !important;
}
body.facile .view-cvt-add .btn-info:hover {
	background-color: rgba(255, 107, 0, 0.12) !important;
	border-color: #FF6B00 !important;
	color: #e85f00 !important;
}
body.facile .view-cvt-add .card-header {
	background-color: rgba(255, 107, 0, 0.08);
	border-bottom: 1px solid rgba(255, 107, 0, 0.2);
	color: #1a1a1a;
}
body.facile .view-cvt-add .form-control:focus,
body.facile .view-cvt-add .form-select:focus {
	border-color: #FF6B00;
	box-shadow: 0 0 0 0.2rem rgba(255, 107, 0, 0.25);
}
body.facile .view-cvt-add .form-check-input:checked {
	background-color: #FF6B00;
	border-color: #FF6B00;
}
body.facile .view-cvt-add .modal-header {
	background-color: rgba(255, 107, 0, 0.08);
	border-bottom: 1px solid rgba(255, 107, 0, 0.15);
}
body.facile .view-cvt-add .modal-header.bg-light {
	background: linear-gradient(135deg, rgba(255, 107, 0, 0.12) 0%, #fff 100%) !important;
}
body.facile .view-cvt-add .table-hover tbody tr:hover {
	background-color: rgba(255, 107, 0, 0.06);
}

/* Step 2 CVT/add Facile: tariffe/pacchetti più belli e accattivanti */
body.facile .view-cvt-add #v-pills-2 .card {
	border-radius: 20px;
	border: none;
	box-shadow: 0 4px 20px rgba(0, 0, 0, 0.06);
	overflow: hidden;
}
body.facile .view-cvt-add #v-pills-2 .card-header {
	background: linear-gradient(135deg, rgba(255, 107, 0, 0.1) 0%, rgba(255, 107, 0, 0.04) 100%);
	border-bottom: 1px solid rgba(255, 107, 0, 0.15);
	font-weight: 600;
	color: #1a1a1a;
	padding: 1rem 1.25rem;
}
/* Spaziatura tra le righe delle tariffe CVT - Facile e Infodealer */
.view-cvt-add #v-pills-2 #cvt_tariffe_table,
.view-cvt-add #cvt_tariffe_table {
	border-collapse: separate !important;
	border-spacing: 0 2rem !important;
}
body.facile .view-cvt-add #v-pills-2 #cvt_packs {
	border-collapse: separate !important;
	border-spacing: 0 2rem !important;
}
body.facile .view-cvt-add #v-pills-2 #cvt_packs tr {
	background: #fff;
	border: none;
	border-radius: 16px;
	box-shadow: 0 0 0 1px rgba(255, 107, 0, 0.25), 0 4px 20px rgba(0, 0, 0, 0.12);
	transition: box-shadow 0.2s, transform 0.2s, border-color 0.2s;
	cursor: default; /* selezione solo tramite pulsante Seleziona, non clic sulla riga */
	box-sizing: border-box;
}
body.facile .view-cvt-add #v-pills-2 #cvt_packs tr:hover {
	box-shadow: 0 0 0 1px rgba(255, 107, 0, 0.4), 0 8px 32px rgba(255, 107, 0, 0.12);
	background: #fff;
}
body.facile .view-cvt-add #v-pills-2 #cvt_packs tr td {
	border: none !important;
}
body.facile .view-cvt-add #v-pills-2 #cvt_packs tr td:first-child {
	border-radius: 16px 0 0 16px;
	padding: 1rem 1rem 1rem 1.25rem;
	vertical-align: middle;
}
body.facile .view-cvt-add #v-pills-2 #cvt_packs .cvt-facile-pack-header {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 0.75rem;
	text-align: center;
	min-width: 140px;
}
body.facile .view-cvt-add #v-pills-2 #cvt_packs .cvt-facile-pack-header.cvt-facile-pack-logo-only {
	gap: 0.35rem;
	min-width: auto;
}
body.facile .view-cvt-add #v-pills-2 #cvt_packs tr td:nth-child(2) .cvt-facile-pack-header {
	min-width: auto;
	display: inline-flex;
}
body.facile .view-cvt-add #v-pills-2 #cvt_packs .cvt-facile-pack-badge {
	display: inline-block;
	color: #fff;
	font-size: 0.75rem;
	font-weight: 700;
	letter-spacing: 0.04em;
	padding: 0.4rem 0.9rem;
	border-radius: 20px;
	text-transform: uppercase;
}
body.facile .view-cvt-add #v-pills-2 #cvt_packs .cvt-facile-pack-header[data-pack="Base"] .cvt-facile-pack-badge,
body.facile .view-cvt-add #v-pills-2 #cvt_packs .cvt-facile-pack-header[data-pack="A"] .cvt-facile-pack-badge {
	background: linear-gradient(135deg, #FF6B00 0%, #e85f00 100%);
}
body.facile .view-cvt-add #v-pills-2 #cvt_packs .cvt-facile-pack-header[data-pack="Medium"] .cvt-facile-pack-badge,
body.facile .view-cvt-add #v-pills-2 #cvt_packs .cvt-facile-pack-header[data-pack="B"] .cvt-facile-pack-badge {
	background: linear-gradient(135deg, #7CC540 0%, #6ab535 100%);
}
body.facile .view-cvt-add #v-pills-2 #cvt_packs .cvt-facile-pack-header[data-pack="Collisione-Medium"] .cvt-facile-pack-badge,
body.facile .view-cvt-add #v-pills-2 #cvt_packs .cvt-facile-pack-header[data-pack="B-COLLISIONE"] .cvt-facile-pack-badge {
	background: linear-gradient(135deg, #2563eb 0%, #1d4ed8 100%);
}
body.facile .view-cvt-add #v-pills-2 #cvt_packs .cvt-facile-pack-header[data-pack="Kasko-Medium"] .cvt-facile-pack-badge,
body.facile .view-cvt-add #v-pills-2 #cvt_packs .cvt-facile-pack-header[data-pack="B-KASKO"] .cvt-facile-pack-badge {
	background: linear-gradient(135deg, #0d9488 0%, #0f766e 100%);
}
body.facile .view-cvt-add #v-pills-2 #cvt_packs .cvt-facile-pack-header .cvt-facile-pack-badge {
	background: linear-gradient(135deg, #64748b 0%, #475569 100%);
}
body.facile .view-cvt-add #v-pills-2 #cvt_packs .cvt-facile-pack-logo-wrap {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 0.35rem;
}
body.facile .view-cvt-add #v-pills-2 #cvt_packs .cvt-facile-pack-logo {
	max-height: 36px;
	width: auto;
	display: block;
}
body.facile .view-cvt-add #v-pills-2 #cvt_packs .cvt-facile-pack-tariff,
body.facile .view-cvt-add #v-pills-2 #cvt_packs .cvt-facile-pack-company {
	font-size: 0.7rem;
	font-weight: 600;
	color: #555;
	text-transform: uppercase;
	letter-spacing: 0.03em;
}
/* Selezione attuale: stessi limiti logo/layout per evitare logo enorme e contenuti che scompaiono */
body.facile .view-cvt-add #v-pills-2 #cvt_pack_selected .cvt-facile-pack-header {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 0.35rem;
	text-align: center;
	min-width: auto;
	max-width: 120px;
}
body.facile .view-cvt-add #v-pills-2 #cvt_pack_selected .cvt-facile-pack-logo {
	max-height: 36px;
	width: auto;
	display: block;
}
body.facile .view-cvt-add #v-pills-2 #cvt_pack_selected .cvt-facile-pack-logo-wrap {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 0.25rem;
}
body.facile .view-cvt-add #v-pills-2 #cvt_pack_selected .cvt-facile-pack-tariff,
body.facile .view-cvt-add #v-pills-2 #cvt_pack_selected .cvt-facile-pack-company {
	font-size: 0.65rem;
	font-weight: 600;
	color: #555;
	text-transform: uppercase;
	letter-spacing: 0.02em;
}
body.facile .view-cvt-add #v-pills-2 #cvt_pack_selected tbody tr td {
	padding: 0.5rem 0.4rem;
	vertical-align: middle;
}
body.facile .view-cvt-add #v-pills-2 #cvt_pack_selected tbody tr td:first-child {
	max-width: 120px;
}
body.facile .view-cvt-add #v-pills-2 #cvt_pack_selected .cvt-facile-warranty-list {
	font-size: 0.7rem;
	line-height: 1.3;
}
body.facile .view-cvt-add #v-pills-2 #cvt_pack_selected .cvt-facile-pack-badge {
	display: inline-block;
	color: #fff;
	font-size: 0.7rem;
	font-weight: 700;
	padding: 0.3rem 0.6rem;
	border-radius: 16px;
	text-transform: uppercase;
}
body.facile .view-cvt-add #v-pills-2 #cvt_pack_selected .cvt-facile-pack-header[data-pack="Base"] .cvt-facile-pack-badge,
body.facile .view-cvt-add #v-pills-2 #cvt_pack_selected .cvt-facile-pack-header[data-pack="A"] .cvt-facile-pack-badge {
	background: linear-gradient(135deg, #FF6B00 0%, #e85f00 100%);
}
body.facile .view-cvt-add #v-pills-2 #cvt_pack_selected .cvt-facile-pack-header[data-pack="Medium"] .cvt-facile-pack-badge,
body.facile .view-cvt-add #v-pills-2 #cvt_pack_selected .cvt-facile-pack-header[data-pack="B"] .cvt-facile-pack-badge {
	background: linear-gradient(135deg, #7CC540 0%, #6ab535 100%);
}
body.facile .view-cvt-add #v-pills-2 #cvt_pack_selected .cvt-facile-pack-header[data-pack="Collisione-Medium"] .cvt-facile-pack-badge,
body.facile .view-cvt-add #v-pills-2 #cvt_pack_selected .cvt-facile-pack-header[data-pack="B-COLLISIONE"] .cvt-facile-pack-badge {
	background: linear-gradient(135deg, #2563eb 0%, #1d4ed8 100%);
}
body.facile .view-cvt-add #v-pills-2 #cvt_pack_selected .cvt-facile-pack-header[data-pack="Kasko-Medium"] .cvt-facile-pack-badge,
body.facile .view-cvt-add #v-pills-2 #cvt_pack_selected .cvt-facile-pack-header[data-pack="B-KASKO"] .cvt-facile-pack-badge {
	background: linear-gradient(135deg, #0d9488 0%, #0f766e 100%);
}
body.facile .view-cvt-add #v-pills-2 #cvt_pack_selected .cvt-facile-pack-header .cvt-facile-pack-badge {
	background: linear-gradient(135deg, #64748b 0%, #475569 100%);
}
body.facile .view-cvt-add #v-pills-2 #cvt_packs tr td:last-child {
	border: none !important;
	border-radius: 0 16px 16px 0;
	padding: 1rem 1.25rem 1rem 1rem;
}
body.facile .view-cvt-add #v-pills-2 #cvt_packs tr td {
	padding: 1rem 0.75rem;
	vertical-align: middle;
	border: none !important;
}
body.facile .view-cvt-add #v-pills-2 #cvt_packs .badge {
	background-color: #FF6B00 !important;
	color: #fff !important;
	font-size: 0.8rem;
	font-weight: 600;
	padding: 0.5rem 0.9rem;
	border-radius: 10px;
	letter-spacing: 0.02em;
}
body.facile .view-cvt-add #v-pills-2 #cvt_packs .cvt-facile-warranty-list {
	list-style: none;
	margin: 0;
	padding: 0;
	font-size: 0.75rem;
	line-height: 1.35;
	color: #333;
	column-count: 2;
	column-gap: 1rem;
}
body.facile .view-cvt-add #v-pills-2 #cvt_packs .cvt-facile-warranty-list li {
	position: relative;
	padding: 0.2rem 0 0.2rem 1rem;
	border-bottom: 1px solid rgba(0, 0, 0, 0.06);
	break-inside: avoid;
}
body.facile .view-cvt-add #v-pills-2 #cvt_packs .cvt-facile-warranty-list li:last-child {
	border-bottom: none;
}
body.facile .view-cvt-add #v-pills-2 #cvt_packs .cvt-facile-warranty-list li::before {
	content: "";
	position: absolute;
	left: 0;
	top: 0.45em;
	width: 4px;
	height: 4px;
	border-radius: 50%;
	background: #FF6B00;
}
body.facile .view-cvt-add #v-pills-2 #cvt_packs tr td:nth-child(3) {
	min-width: 220px;
	max-width: 280px;
	padding: 1rem 1.25rem;
	vertical-align: top;
}
body.facile .view-cvt-add #v-pills-2 #cvt_packs tr td {
	padding: 1.25rem 0.75rem;
}
body.facile .view-cvt-add #v-pills-2 #cvt_packs tr td strong {
	color: #333;
}
body.facile .view-cvt-add #v-pills-2 .current-selection .card-header {
	background: linear-gradient(135deg, #7CC540 0%, #6ab535 100%);
	color: #fff;
	border: none;
}

/* Facile: un solo tastino sopra Riepilogo (apre modal Opzioni), M.P. e M.A. solo in modal; Sat fuori, default disattivato */
body.facile .view-cvt-add .cvt-summary-card .card-body h6 .logo-icon {
	display: none !important;
}
body.facile .view-cvt-add #facile-aside-buttons .facile-aside-btn {
	border-radius: 8px;
}
body.facile .view-cvt-add #facile-aside-buttons .facile-aside-btn:hover {
	background: rgba(255, 107, 0, 0.08);
}
body.facile .view-cvt-add #FacileSatReminderModal .modal-footer .btn-primary {
	background-color: #FF6B00;
	border-color: #FF6B00;
}
body.facile .view-cvt-add #FacileSatReminderModal .modal-footer .btn-primary:hover {
	background-color: #e85f00;
	border-color: #e85f00;
}
body.facile .view-cvt-add #FacileOpzioniModal .modal-header {
	border-bottom: 1px solid rgba(255, 107, 0, 0.2);
}
body.facile .view-cvt-add #FacileOpzioniModal .modal-title {
	color: #1a1a1a;
	font-weight: 600;
}
body.facile .view-cvt-add #FacileOpzioniModalContent .col-12 {
	padding: 0.5rem 0;
	border-bottom: 1px solid rgba(0, 0, 0, 0.06);
}
body.facile .view-cvt-add #FacileOpzioniModalContent .col-12:last-child {
	border-bottom: none;
}
body.facile .view-cvt-add #FacileOpzioniModalContent .btn-group {
	display: flex;
	justify-content: flex-end;
}
/* Facile Opzioni: pannello a scomparsa sotto l’icona (non copre la pagina) */
body.facile .view-cvt-add .facile-opzioni-wrap {
	width: 100%;
}
body.facile .view-cvt-add .facile-opzioni-trigger {
	text-decoration: none;
	color: #1a1a1a;
	border: 1px solid rgba(0, 0, 0, 0.08);
	background: #fff;
}
body.facile .view-cvt-add .facile-opzioni-trigger:hover {
	background: #f8f9fa;
	color: #e85f00;
	border-color: rgba(232, 95, 0, 0.25);
}
body.facile .view-cvt-add .facile-opzioni-trigger[aria-expanded="true"] .facile-opzioni-chevron {
	transform: rotate(180deg);
}
body.facile .view-cvt-add .facile-opzioni-chevron {
	font-size: 0.65rem;
	color: #6c757d;
	transition: transform 0.2s ease, color 0.2s ease;
}
body.facile .view-cvt-add .facile-opzioni-trigger[aria-expanded="true"] .facile-opzioni-chevron {
	color: #e85f00;
}
body.facile .view-cvt-add .facile-opzioni-panel .facile-opzioni-card {
	border-radius: 10px;
	border: 1px solid rgba(0, 0, 0, 0.06);
	overflow: hidden;
}
body.facile .view-cvt-add #FacileOpzioniDropdown .col-12 {
	padding: 0.6rem 0;
	border-bottom: 1px solid rgba(0, 0, 0, 0.06);
}
body.facile .view-cvt-add #FacileOpzioniDropdown .col-12:last-child {
	border-bottom: none;
}
body.facile .view-cvt-add #FacileOpzioniDropdown .btn-group {
	display: flex;
	justify-content: flex-end;
}
body.facile .view-cvt-add #FacileOpzioniDropdown .small strong {
	color: #1a1a1a;
}

/* ========== Login Facile — pagina dedicata (centrata, card, niente banda) ========== */
.login-facile-wrap {
	position: fixed;
	inset: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	z-index: 10;
}
.login-facile-bg {
	position: absolute;
	inset: 0;
	background: #f0f2f6;
}
.login-facile-center {
	position: relative;
	z-index: 1;
	text-align: center;
	width: 100%;
	max-width: 420px;
	padding: 2rem 1.5rem;
}
.login-facile-logo {
	max-width: 180px;
	height: auto;
	margin-bottom: 0.5rem;
}
.login-facile-subtitle {
	font-size: 0.95rem;
	color: #666;
	margin: 0 0 1.5rem;
	font-weight: 500;
}
.login-facile-card {
	background: #fff;
	border-radius: 20px;
	box-shadow: 0 8px 32px rgba(0, 0, 0, 0.08);
	padding: 2rem 2rem 2.25rem;
	border: 1px solid rgba(0, 0, 0, 0.06);
}
.login-facile-title {
	font-size: 1.5rem;
	font-weight: 700;
	color: #1a1a1a;
	margin: 0 0 1.5rem;
}
.login-facile-input-group .input-group-text {
	background: #f8f9fa;
	border-color: #dee2e6;
	border-right: 0;
	color: #666;
}
.login-facile-input-group .form-control {
	border-left: 0;
	background: #fff;
}
.login-facile-input-group .form-control:focus {
	border-color: #FF6B00;
	box-shadow: 0 0 0 0.2rem rgba(255, 107, 0, 0.2);
}
.login-facile-input-group .form-control:focus {
	border-left-color: #FF6B00;
}
.login-facile-input-group:focus-within .input-group-text:first-child {
	border-color: #FF6B00;
	background: rgba(255, 107, 0, 0.06);
	color: #FF6B00;
}
.login-facile-input-group .form-control {
	border-color: #dee2e6;
}
.login-facile-input-group .btn-outline-secondary {
	border-color: #dee2e6;
	color: #666;
}
.login-facile-input-group .btn-outline-secondary:hover {
	background: #f8f9fa;
	border-color: #adb5bd;
	color: #333;
}
.login-facile-btn {
	background: #7CC540 !important;
	border: none !important;
	color: #fff !important;
	font-weight: 600;
	padding: 0.75rem 1.5rem;
	border-radius: 12px;
	margin-top: 0.5rem;
	transition: background 0.2s;
}
.login-facile-btn:hover {
	background: #6ab535 !important;
	color: #fff !important;
}

/* Modal login (sessione scaduta): header arancione, bottone Login verde */
body.facile #loginModal .modal-header {
	background: linear-gradient(155deg, #FF6B00 0%, #ff7a1a 100%) !important;
	min-height: 80px;
	border: none;
}
body.facile #loginModal .modal-content {
	border-radius: 16px;
	overflow: hidden;
	box-shadow: 0 8px 32px rgba(255, 107, 0, 0.25);
}
body.facile #loginModal .btn-dark {
	background-color: #7CC540 !important;
	border-color: #7CC540 !important;
	color: #fff !important;
}
body.facile #loginModal .btn-dark:hover {
	background-color: #6ab535 !important;
	border-color: #6ab535 !important;
	color: #fff !important;
}
body.facile #loginModal .form-control:focus {
	border-color: #FF6B00;
	box-shadow: 0 0 0 0.2rem rgba(255, 107, 0, 0.25);
}
body.facile #loginModal .input-group:focus-within .input-group-text {
	border-color: #FF6B00;
	background-color: rgba(255, 107, 0, 0.06);
}
