:root {
  --prospect-navy: #061A38;
  --prospect-petrol: #4C6389;
  --prospect-blue: #0A5CF6;
  --prospect-blue-hover: #084CCF;
  --prospect-blue-active: #073FAE;
  --prospect-blue-soft: #ABBED8;
  --prospect-blue-pale: #EAF2FF;
  --prospect-mist: #F2F4F8;
  --prospect-focus-ring: rgba(10, 92, 246, .22);
  --bs-primary: #0A5CF6;
  --bs-primary-rgb: 10, 92, 246;
}

/* FAGIS official brand theme: actions, links and highlights */
a { color: var(--prospect-blue); }
a:hover { color: var(--prospect-blue-hover); }

.btn-primary,
.btn.btn-primary,
button.btn-primary,
input[type="submit"].btn-primary,
input[type="button"].btn-primary,
.badge-primary,
.bg-primary,
.page-item.active .page-link,
.nav-pills .nav-link.active,
.nav-pills .show > .nav-link,
.dropdown-item.active,
.dropdown-item:active {
  background-color: var(--prospect-blue) !important;
  border-color: var(--prospect-blue) !important;
  color: #fff !important;
}
.btn-primary:hover,
.btn.btn-primary:hover,
button.btn-primary:hover,
input[type="submit"].btn-primary:hover,
input[type="button"].btn-primary:hover {
  background-color: var(--prospect-blue-hover) !important;
  border-color: var(--prospect-blue-hover) !important;
}
.btn-primary:active,
.btn-primary.active,
.show > .btn-primary.dropdown-toggle {
  background-color: var(--prospect-blue-active) !important;
  border-color: var(--prospect-blue-active) !important;
}
.btn-outline-primary {
  color: var(--prospect-blue) !important;
  border-color: var(--prospect-blue) !important;
}
.btn-outline-primary:hover,
.btn-outline-primary:focus,
.btn-outline-primary:active {
  color: #fff !important;
  background-color: var(--prospect-blue) !important;
  border-color: var(--prospect-blue) !important;
}
.text-primary { color: var(--prospect-blue) !important; }
.border-primary { border-color: var(--prospect-blue) !important; }
.bg-light-primary,
.badge-light-primary {
  background-color: var(--prospect-blue-pale) !important;
  color: var(--prospect-blue) !important;
}

.form-control:focus,
.form-select:focus,
.select2-container--default.select2-container--focus .select2-selection,
.select2-container--default .select2-selection--single:focus,
.select2-container--default .select2-selection--multiple:focus {
  border-color: var(--prospect-blue) !important;
  box-shadow: 0 0 0 .2rem var(--prospect-focus-ring) !important;
}
.form-check-input:checked,
.custom-control-input:checked ~ .custom-control-label::before {
  background-color: var(--prospect-blue) !important;
  border-color: var(--prospect-blue) !important;
}
.form-switch .form-check-input:focus { box-shadow: 0 0 0 .2rem var(--prospect-focus-ring) !important; }

.nav-tabs .nav-link.active,
.nav-tabs .nav-item.show .nav-link,
.nav-tabs .nav-link:hover,
.nav-tabs .nav-link:focus {
  color: var(--prospect-blue) !important;
  border-bottom-color: var(--prospect-blue) !important;
}
.page-link { color: var(--prospect-blue); }
.page-link:focus { box-shadow: 0 0 0 .2rem var(--prospect-focus-ring); }

.progress-bar,
.swal2-confirm,
.dataTables_wrapper .dataTables_paginate .paginate_button.current,
.dataTables_wrapper .dataTables_paginate .paginate_button.current:hover {
  background: var(--prospect-blue) !important;
  border-color: var(--prospect-blue) !important;
  color: #fff !important;
}

/* Common template accents */
.main-menu.menu-dark .navigation > li.active > a,
.main-menu.menu-dark .navigation > li ul .active,
.vertical-layout.vertical-menu-modern.menu-expanded .main-menu .navigation li.has-sub > a:after,
.app-content .wizard > .steps .current a,
.app-content .wizard > .steps .current a:hover,
.app-content .wizard > .steps .current a:active {
  background: var(--prospect-blue) !important;
  color: #fff !important;
}

/* Remove legacy purple gradients */
.btn-primary,
.bg-primary,
.swal2-confirm {
  background-image: none !important;
}

/* V9 - Force FAGIS official palette across legacy Vuexy components */
:root {
  --bs-primary: #0A5CF6;
  --bs-primary-rgb: 10, 92, 246;
  --primary: #0A5CF6;
}
.btn-primary,
.btn-primary:focus,
.btn-primary:active,
.btn-primary.active,
.show > .btn-primary.dropdown-toggle {
  background-color: #0A5CF6 !important;
  border-color: #0A5CF6 !important;
  color: #fff !important;
  box-shadow: 0 8px 18px rgba(10,92,246,.20) !important;
}
.btn-primary:hover { background-color:#084CCB !important; border-color:#084CCB !important; }
a, .text-primary, .nav-link.active, .dropdown-item.active, .dropdown-item:active { color:#0A5CF6 !important; }
.form-control:focus, .form-select:focus, .select2-container--focus .select2-selection {
  border-color:#0A5CF6 !important;
  box-shadow:0 0 0 .2rem rgba(10,92,246,.12) !important;
}
.form-check-input:checked, .form-switch .form-check-input:checked {
  background-color:#0A5CF6 !important;
  border-color:#0A5CF6 !important;
}
.page-item.active .page-link, .pagination .active > .page-link {
  background-color:#0A5CF6 !important;
  border-color:#0A5CF6 !important;
}
.badge.bg-primary, .bg-primary { background-color:#0A5CF6 !important; }
.border-primary { border-color:#0A5CF6 !important; }

/* FAGIS — correção global da seta dos Select2 (2026-09-24)
   O tema Vuexy desenha o chevron com background-image no <b>, enquanto o
   select2.min.css mantém o triângulo por border/padding. Em conjunto isso
   pode virar um traço cinza comprido. Zeramos a geometria antiga e usamos
   apenas um chevron centralizado. */
.select2-container--default .select2-selection--single .select2-selection__arrow {
  width: 38px !important;
  height: 100% !important;
  top: 0 !important;
  right: 2px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  pointer-events: none;
}

.select2-container--default .select2-selection--single .select2-selection__arrow b {
  position: static !important;
  display: block !important;
  box-sizing: border-box !important;
  width: 18px !important;
  height: 18px !important;
  min-width: 18px !important;
  padding: 0 !important;
  margin: 0 !important;
  left: auto !important;
  top: auto !important;
  border: 0 !important;
  border-style: none !important;
  border-width: 0 !important;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%236e6b7b' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E") !important;
  background-size: 18px 18px !important;
  background-position: center !important;
  background-repeat: no-repeat !important;
  transform: none !important;
}

.select2-container--default.select2-container--open .select2-selection--single .select2-selection__arrow b {
  border: 0 !important;
  transform: rotate(180deg) !important;
}

.select2-container--default.select2-container--disabled .select2-selection--single .select2-selection__arrow b {
  opacity: .55;
}
