/* NGN ICS — Unified Auth Pages (Login + Reset) */

@keyframes cardSlideUp {
  from { opacity: 0; transform: translateY(24px); }
  to { opacity: 1; transform: translateY(0); }
}

/* =============================================
   BACKGROUND — both pages
   ============================================= */
#app > div.login_screen,
#app > div.registration_screen,
.login_screen, .login_screen[style],
.registration_screen {
  background: #0b0f0b !important;
  background-image: none !important;
  background-color: #0b0f0b !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 100vh !important;
  width: 100% !important;
  position: fixed !important;
  top: 0 !important; left: 0 !important; right: 0 !important; bottom: 0 !important;
  overflow: hidden !important;
  padding: 0 !important;
}

/* kill pseudo-elements */
.login_screen::before, .login_screen::after { display: none !important; }

/* =============================================
   HIDE — junk from both pages
   ============================================= */
.login_screen .banner,
.login_screen .version,
.registration_screen > h3,
.registration_screen > p,
.registration_screen > img.reg_logo,
.registration_screen > .center-block {
  display: none !important;
}

/* =============================================
   RESET PAGE — container fix
   ============================================= */
.registration_screen > .container,
.registration_screen .container {
  all: unset !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  min-height: 100vh !important;
}

/* =============================================
   THE CARD — identical on both pages
   ============================================= */
.login_form,
.login_form.pull-right,
#app > div.login_screen > div.login_form,
#app > div.login_screen > div.login_form.pull-right,
.registration_screen .reg_form_wrapper,
.registration_screen .reg_form_wrapper[style] {
  all: unset !important;
  display: block !important;
  width: 400px !important;
  max-width: 92vw !important;
  background: #fff !important;
  border-radius: 24px !important;
  box-shadow: 0 20px 50px rgba(0,0,0,0.4) !important;
  overflow: hidden !important;
  animation: cardSlideUp 0.5s ease-out !important;
  position: relative !important;
  z-index: 1 !important;
}

/* green top bar */
.login_form::before,
.registration_screen .reg_form_wrapper::before {
  content: '' !important;
  display: block !important;
  height: 4px !important;
  background: linear-gradient(90deg, #78b833, #9acd68, #78b833) !important;
}

/* =============================================
   LOGO AREA — identical on both pages
   ============================================= */

/* --- Login page logo --- */
.signin_logo {
  padding: 40px 40px 0 40px !important;
  text-align: center !important;
  margin: 0 !important;
  border: none !important;
}
.signin_logo img.logo { display: none !important; }
.signin_logo::after {
  content: '' !important;
  display: block !important;
  width: 200px !important; height: 46px !important;
  margin: 0 auto !important;
  background: url('/static/img/ngnics-logo.svg') no-repeat center / contain !important;
}

/* --- Reset page logo --- */
.registration_screen img.reg_logo { display: none !important; }
.registration_screen .reg_form_wrapper > .center,
.registration_screen .reg_form_wrapper > div > .center {
  padding: 40px 40px 0 40px !important;
  text-align: center !important;
}
.registration_screen .reg_form_wrapper > .center::after,
.registration_screen .reg_form_wrapper > div > .center::after {
  content: '' !important;
  display: block !important;
  width: 200px !important; height: 46px !important;
  margin: 0 auto !important;
  background: url('/static/img/ngnics-logo.svg') no-repeat center / contain !important;
}

/* =============================================
   SUBTITLE — under logo
   ============================================= */
.signin_logo + .row,
.signin_logo ~ .signin_form::before {
  /* handled below */
}

/* login subtitle */
.signin_form::before {
  content: 'Sign in to your account' !important;
  display: block !important;
  text-align: center !important;
  font-size: 14px !important;
  color: #94a3b8 !important;
  font-weight: 400 !important;
  padding: 12px 0 28px 0 !important;
}

/* reset subtitle */
.registration_screen .reg_form_wrapper > .center + div::before,
.registration_screen .reg_form_wrapper > .center + section::before {
  content: 'Reset your password' !important;
  display: block !important;
  text-align: center !important;
  font-size: 14px !important;
  color: #94a3b8 !important;
  font-weight: 400 !important;
  padding: 12px 0 8px 0 !important;
}

/* =============================================
   FORM CONTENT AREA — identical padding
   ============================================= */
.signin_form {
  padding: 0 40px !important;
  margin: 0 !important;
}

.registration_screen .reg_form_section {
  background: transparent !important;
  padding: 0 40px !important;
  margin: 0 !important;
  border-radius: 0 !important;
}

/* reset page: the div that wraps inputs when NOT success message */
.registration_screen .reg_form_wrapper > div:not(.center) {
  padding: 0 40px !important;
}

/* fix grid inside reset page */
.registration_screen .row { margin: 0 !important; padding: 0 !important; }
.registration_screen .col-md-12,
.registration_screen .col-sm-12,
.registration_screen .col-xs-12,
.registration_screen [class*=col-md-push] {
  width: 100% !important;
  margin: 0 !important;
  left: 0 !important;
  float: none !important;
  padding: 0 !important;
}

/* =============================================
   FORM GROUPS
   ============================================= */
.signin_form .form-group,
.registration_screen .form-group,
.registration_screen .form-group[style] {
  margin: 0 0 20px 0 !important;
  padding: 0 !important;
}

/* =============================================
   LABELS — identical
   ============================================= */
.signin_form label,
.registration_screen label {
  font-weight: 500 !important;
  color: #475569 !important;
  font-size: 13px !important;
  letter-spacing: 0.2px !important;
  margin-bottom: 8px !important;
  display: block !important;
}

/* =============================================
   INPUTS — identical
   ============================================= */
.signin_form .form-control,
.signin_form .form-control-login,
.registration_screen .form-control {
  height: 48px !important;
  border: 1.5px solid #e2e8f0 !important;
  border-radius: 12px !important;
  padding: 12px 16px !important;
  font-size: 15px !important;
  background: #f8fafc !important;
  color: #1e293b !important;
  box-shadow: none !important;
  width: 100% !important;
  transition: all 0.2s ease !important;
  -webkit-appearance: none !important;
}

.signin_form .form-control:hover,
.signin_form .form-control-login:hover,
.registration_screen .form-control:hover {
  border-color: #cbd5e1 !important;
}

.signin_form .form-control:focus,
.signin_form .form-control-login:focus,
.registration_screen .form-control:focus {
  border-color: #78b833 !important;
  box-shadow: 0 0 0 3px rgba(78,138,0,0.1) !important;
  background: #fff !important;
  outline: none !important;
}

.signin_form .form-control::placeholder,
.registration_screen .form-control::placeholder {
  color: #a0aec0 !important;
}

/* =============================================
   PRIMARY BUTTON — the green one, identical everywhere
   ============================================= */
.signin_form .btn,
.signin_form .btn-primary,
.signin_form .btn-success,
.registration_screen .btn-primary,
.registration_screen .btn-primary[style],
.registration_screen .btn-primary.btn-reset,
.registration_screen .btn-primary.btn-reset[style] {
  display: block !important;
  width: 100% !important;
  height: 48px !important;
  line-height: 48px !important;
  border-radius: 12px !important;
  font-size: 15px !important;
  font-weight: 600 !important;
  letter-spacing: 0.3px !important;
  background: #78b833 !important;
  color: #fff !important;
  border: none !important;
  box-shadow: 0 1px 3px rgba(0,0,0,0.08) !important;
  cursor: pointer !important;
  transition: all 0.2s ease !important;
  margin: 24px 0 0 0 !important;
  padding: 0 !important;
  text-align: center !important;
  text-decoration: none !important;
}

.signin_form .btn:hover,
.signin_form .btn-primary:hover,
.registration_screen .btn-primary:hover,
.registration_screen .btn-primary.btn-reset:hover {
  background: #5a9e0f !important;
  box-shadow: 0 4px 14px rgba(78,138,0,0.3) !important;
  transform: translateY(-1px) !important;
}

.signin_form .btn:active,
.signin_form .btn-primary:active,
.registration_screen .btn-primary:active {
  background: #3d8b3d !important;
  transform: translateY(0) !important;
  box-shadow: 0 1px 3px rgba(0,0,0,0.1) !important;
}

/* =============================================
   SECONDARY BUTTON — outlined, for Back
   ============================================= */
.registration_screen .btn-default,
.registration_screen .btn-default[style],
.registration_screen a.btn-default {
  display: block !important;
  width: 100% !important;
  height: 48px !important;
  line-height: 48px !important;
  border-radius: 12px !important;
  font-size: 14px !important;
  font-weight: 500 !important;
  background: transparent !important;
  color: #475569 !important;
  border: 1.5px solid #e2e8f0 !important;
  box-shadow: none !important;
  cursor: pointer !important;
  transition: all 0.2s ease !important;
  margin: 12px 0 0 0 !important;
  padding: 0 !important;
  text-align: center !important;
  text-decoration: none !important;
}

.registration_screen .btn-default:hover,
.registration_screen a.btn-default:hover {
  border-color: #78b833 !important;
  color: #78b833 !important;
  background: rgba(78,138,0,0.03) !important;
}

/* =============================================
   BOTTOM PADDING — space after buttons
   ============================================= */
.signin_form {
  padding-bottom: 36px !important;
}

.registration_screen .reg_form_wrapper > div:not(.center):last-child {
  padding-bottom: 36px !important;
}

.registration_screen .reg_form_section {
  padding-bottom: 0 !important;
}

/* button_set wrapper */
.registration_screen .button_set {
  padding: 12px 40px 36px 40px !important;
}

/* =============================================
   CHECKBOX (login page remember me)
   ============================================= */
.signin_form .checkbox { margin: 8px 0 0 0 !important; }
.signin_form .checkbox label {
  font-weight: 400 !important;
  color: #64748b !important;
  font-size: 13px !important;
  letter-spacing: 0 !important;
}

/* =============================================
   FOOTER — login page
   ============================================= */
.signin_footer {
  text-align: center !important;
  margin: 0 !important;
  padding: 0 40px 28px 40px !important;
  color: #94a3b8 !important;
  font-size: 11px !important;
}

/* =============================================
   ERROR STATES
   ============================================= */
.login_screen .alert-danger {
  position: fixed !important;
  top: 24px !important; left: 50% !important;
  transform: translateX(-50%) !important;
  z-index: 100 !important;
  border-radius: 14px !important;
  border: none !important;
  background: #dc2626 !important;
  color: #fff !important;
  padding: 14px 24px !important;
  box-shadow: 0 10px 40px rgba(220,38,38,0.3) !important;
  max-width: 500px !important;
}
.login_screen .alert-danger strong { color: #fff !important; }
.login_screen .alert-danger .close { color: #fff !important; opacity: 0.8 !important; text-shadow: none !important; }

.login_form .text-danger {
  color: #dc2626 !important;
  font-size: 13px !important;
  background: #fef2f2 !important;
  padding: 10px 14px !important;
  border-radius: 10px !important;
  margin: 0 0 12px 0 !important;
  border-left: 3px solid #dc2626 !important;
}
.login_form > .row { padding: 0 40px !important; }

.registration_screen .help.is-danger {
  color: #dc2626 !important;
  font-size: 12px !important;
  margin-top: 6px !important;
}

/* success message on reset page */
.registration_screen h4 {
  color: #1e293b !important;
  font-size: 16px !important;
  font-weight: 500 !important;
  line-height: 1.6 !important;
  text-align: center !important;
}

/* =============================================
   LINKS
   ============================================= */
.login_form a, .signin_form a, .registration_screen a:not(.btn) {
  color: #78b833 !important;
  text-decoration: none !important;
  font-weight: 500 !important;
}
.login_form a:hover, .signin_form a:hover, .registration_screen a:not(.btn):hover {
  color: #3d8b3d !important;
}

/* =============================================
   2FA / OTP
   ============================================= */
.login_form .otp-input input {
  border: 1.5px solid #e2e8f0 !important;
  border-radius: 12px !important;
  font-size: 22px !important;
  font-weight: 600 !important;
}
.login_form .otp-input input:focus {
  border-color: #78b833 !important;
  box-shadow: 0 0 0 3px rgba(78,138,0,0.1) !important;
}

/* =============================================
   MISC
   ============================================= */
.signin_form .fa-eye, .signin_form .fa-eye-slash,
.registration_screen .fa-eye, .registration_screen .fa-eye-slash {
  color: #94a3b8 !important; cursor: pointer !important;
}
.login_form .spinner { margin: 20px auto !important; }
.login_form .mask { border-radius: 24px !important; background: rgba(255,255,255,0.85) !important; }

/* width override classes */
.registration_screen .width-165 { width: 100% !important; }

/* =============================================
   RESPONSIVE
   ============================================= */
@media (max-width: 480px) {
  .login_form, .registration_screen .reg_form_wrapper,
  .registration_screen .reg_form_wrapper[style] {
    width: 100% !important;
    border-radius: 0 !important;
    max-height: 100vh !important;
  }
  .signin_logo, .registration_screen .reg_form_wrapper > .center {
    padding: 32px 24px 0 24px !important;
  }
  .signin_form, .registration_screen .reg_form_section,
  .registration_screen .reg_form_wrapper > div:not(.center) {
    padding: 0 24px !important;
  }
  .signin_footer { padding: 0 24px 24px 24px !important; }
}

/* Hide login spinner and mask overlay */
.login_form .spinner,
.login_form .mask,
.signin_form .spinner,
.signin_form .mask {
  display: none !important;
}

/* Hide the global moon spinner on page transitions */
.v-spinner {
  display: none !important;
}

/* Thin green progress bar at top of page during loading */
@keyframes progressBar {
  0% { width: 0; }
  20% { width: 30%; }
  50% { width: 60%; }
  80% { width: 85%; }
  100% { width: 100%; opacity: 0; }
}

.v-spinner {
  display: block !important;
  position: fixed !important;
  top: 0 !important;
  left: 0 !important;
  width: 100% !important;
  height: 3px !important;
  z-index: 99999 !important;
  background: transparent !important;
  overflow: hidden !important;
  pointer-events: none !important;
}

.v-spinner::after {
  content: '';
  display: block;
  height: 3px;
  background: linear-gradient(90deg, #78b833, #9acd68, #78b833);
  box-shadow: 0 0 8px rgba(78, 138, 0, 0.4);
  animation: progressBar 1.5s ease-in-out forwards;
  border-radius: 0 2px 2px 0;
}

/* Hide all the moon circles inside */
.v-spinner * {
  display: none !important;
}

/* =============================================
   TOP NAVIGATION BAR — NGN ICS Corporate
   ============================================= */

/* Main nav bar background — dark to match brand */
nav.admin-menu.navbar.navbar-static-top.navbar-inverse,
nav.client-menu.navbar.navbar-static-top.navbar-inverse {
  background: #111711 !important;
  border: none !important;
  box-shadow: 0 1px 8px rgba(0, 0, 0, 0.25) !important;
}

/* Nav links — clean white */
.navbar-inverse .navbar-nav > li > a,
.navbar-inverse .navbar-text,
.admin-menu .navbar-nav > li > a,
.client-menu .navbar-nav > li > a {
  color: rgba(255, 255, 255, 0.75) !important;
  transition: color 0.2s ease !important;
}

/* Nav links hover — bright white */
.navbar-inverse .navbar-nav > li > a:hover,
.navbar-inverse .navbar-nav > li > a:focus,
.admin-menu .navbar-nav > li > a:hover,
.client-menu .navbar-nav > li > a:hover {
  color: #ffffff !important;
}

/* Active nav link — green accent */
.navbar-inverse .navbar-nav > .active > a,
.navbar-inverse .navbar-nav > .active > a:hover,
.navbar-inverse .navbar-nav > .active > a:focus,
.navbar-inverse .navbar-nav > .open > a,
.navbar-inverse .navbar-nav > .open > a:hover,
.navbar-inverse .navbar-nav > .open > a:focus {
  background: rgba(78, 138, 0, 0.2) !important;
  color: #fff !important;
}

/* Dropdown menus from nav */
.navbar-inverse .dropdown-menu {
  background: #1a1f1a !important;
  border: 1px solid rgba(255, 255, 255, 0.08) !important;
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.3) !important;
  border-radius: 8px !important;
  padding: 4px 0 !important;
}

.navbar-inverse .dropdown-menu > li > a,
.navbar-inverse .dropdown-menu .dropdown-item {
  color: rgba(255, 255, 255, 0.75) !important;
  padding: 8px 16px !important;
  transition: all 0.15s ease !important;
}

.navbar-inverse .dropdown-menu > li > a:hover,
.navbar-inverse .dropdown-menu .dropdown-item:hover {
  background: rgba(78, 138, 0, 0.15) !important;
  color: #fff !important;
}

.navbar-inverse .dropdown-menu .divider {
  background: rgba(255, 255, 255, 0.08) !important;
}

/* DNL icon accent color — green */
div#navbar .client-menu.nav > li > a span.dnl_icon,
.navbar .dnl_icon {
  color: #9acd68 !important;
}

/* Notification badge — green instead of blue */
ul.admin-menu.nav.navbar-nav.navbar-right .badge,
.navbar .badge {
  background: #78b833 !important;
  color: #fff !important;
}

/* Second menu / sub-nav bar */
.second_menu > li > a,
.statistics_second_menu a {
  color: #94a3b8 !important;
  transition: color 0.2s ease !important;
}

.second_menu > li > a:hover,
.second_menu > li.active > a,
.statistics_second_menu a:hover {
  color: #78b833 !important;
}

/* Navbar brand / logo in nav */
.navbar-brand {
  color: #fff !important;
}

.navbar-inverse .navbar-brand:hover,
.navbar-inverse .navbar-brand:focus {
  color: #fff !important;
}

/* Navbar toggle (mobile hamburger) */
.navbar-inverse .navbar-toggle {
  border-color: rgba(255, 255, 255, 0.15) !important;
}

.navbar-inverse .navbar-toggle:hover {
  background: rgba(78, 138, 0, 0.2) !important;
}

.navbar-inverse .navbar-toggle .icon-bar {
  background: #fff !important;
}

/* Collapse border */
.navbar-inverse .navbar-collapse {
  border-color: rgba(255, 255, 255, 0.08) !important;
}

/* Override the bar_color inline style from database */
nav.admin-menu[style],
nav.client-menu[style],
.navbar-inverse[style] {
  background: #111711 !important;
}

/* =============================================
   GLOBAL BUTTON & ACCENT RECOLOR — NGN ICS
   ============================================= */

/* --- Primary buttons (was #5cb85c blue) --- */
.btn-primary,
.btn-primary.focus, .btn-primary:focus,
.btn-primary.active, .btn-primary:active, .btn-primary:hover,
.open > .dropdown-toggle.btn-primary,
.open > .dropdown-toggle.btn-primary:hover,
.open > .dropdown-toggle.btn-primary:focus {
  background-color: #78b833 !important;
  border-color: #5a9e0f !important;
  color: #fff !important;
}

.btn-primary.active.focus, .btn-primary.active:focus, .btn-primary.active:hover,
.btn-primary:active.focus, .btn-primary:active:focus, .btn-primary:active:hover {
  background-color: #3d8b3d !important;
  border-color: #2d6a2d !important;
  color: #fff !important;
}

.btn-primary.disabled, .btn-primary.disabled:hover,
.btn-primary.disabled:focus, .btn-primary[disabled],
.btn-primary[disabled]:hover, .btn-primary[disabled]:focus {
  background-color: #78b833 !important;
  border-color: #5a9e0f !important;
  opacity: 0.6 !important;
}

.btn-primary .badge {
  color: #78b833 !important;
  background-color: #fff !important;
}

/* --- Info buttons (was #6ab04c light blue) --- */
.btn-info,
.btn-info:hover, .btn-info:focus, .btn-info:active,
.open > .dropdown-toggle.btn-info {
  background-color: #5a9e0f !important;
  border-color: #78b833 !important;
  color: #fff !important;
}

/* --- Success buttons (was #5cb85c) --- */
.btn-success,
.btn-success:hover, .btn-success:focus, .btn-success:active,
.open > .dropdown-toggle.btn-success {
  background-color: #78b833 !important;
  border-color: #5a9e0f !important;
  color: #fff !important;
}

/* --- Blue utility buttons --- */
.btn.btn-blue,
.btn.btn-blue:hover, .btn.btn-blue:focus {
  background-color: #78b833 !important;
  border-color: #5a9e0f !important;
  color: #fff !important;
}

/* --- Export buttons --- */
.btn.btn-export,
.btn.btn-export:hover {
  background-color: #78b833 !important;
  color: #fff !important;
}

/* =============================================
   GLOBAL ACCENT COLOR RECOLOR (#6ab04c → green)
   ============================================= */

/* Links — scoped to content area, excludes buttons/tabs/actions */
.wrapper a:not(.btn):not(.tab):not(.action):not(.action_menu):not(.page-link),
.container-fluid a:not(.btn):not(.tab):not(.action):not(.action_menu):not(.page-link),
.modal-container a:not(.btn):not(.tab):not(.action):not(.action_menu):not(.page-link),
.tab-content a:not(.btn):not(.tab):not(.action):not(.action_menu):not(.page-link),
.panel-body a:not(.btn):not(.tab):not(.action):not(.action_menu):not(.page-link),
.table a:not(.btn):not(.tab):not(.action):not(.action_menu):not(.page-link),
.box a:not(.btn):not(.tab):not(.action):not(.action_menu):not(.page-link) {
  color: #78b833 !important;
}
.wrapper a:not(.btn):not(.tab):not(.action):not(.action_menu):not(.page-link):hover, .wrapper a:not(.btn):not(.tab):not(.action):not(.action_menu):not(.page-link):focus,
.container-fluid a:not(.btn):not(.tab):not(.action):not(.action_menu):not(.page-link):hover, .container-fluid a:not(.btn):not(.tab):not(.action):not(.action_menu):not(.page-link):focus,
.modal-container a:not(.btn):not(.tab):not(.action):not(.action_menu):not(.page-link):hover,
.tab-content a:not(.btn):not(.tab):not(.action):not(.action_menu):not(.page-link):hover,
.panel-body a:not(.btn):not(.tab):not(.action):not(.action_menu):not(.page-link):hover,
.table a:not(.btn):not(.tab):not(.action):not(.action_menu):not(.page-link):hover,
.box a:not(.btn):not(.tab):not(.action):not(.action_menu):not(.page-link):hover {
  color: #3d8b3d !important;
}

/* Ensure all button-styled <a> tags keep white text on colored backgrounds */
.wrapper a.btn-primary,
.wrapper a.btn-success,
.wrapper a.btn-info,
.wrapper a.btn.btn-blue,
.wrapper a.btn.btn-export,
.wrapper a.action.action_menu,
.container-fluid a.btn-primary,
.container-fluid a.btn-success,
.container-fluid a.btn-info,
.container-fluid a.btn.btn-blue,
.container-fluid a.btn.btn-export,
.container-fluid a.action.action_menu,
.modal-container a.btn-primary,
.modal-container a.btn-success,
.modal-container a.btn-info {
  color: #fff !important;
}
.wrapper a.btn-primary:hover,
.wrapper a.btn-success:hover,
.wrapper a.btn-info:hover,
.wrapper a.btn.btn-blue:hover,
.wrapper a.btn.btn-export:hover,
.container-fluid a.btn-primary:hover,
.container-fluid a.btn-success:hover,
.container-fluid a.btn-info:hover {
  color: #fff !important;
}

/* btn-default and btn_white <a> tags — keep dark text */
.wrapper a.btn-default,
.wrapper a.btn.btn_white,
.container-fluid a.btn-default,
.container-fluid a.btn.btn_white {
  color: #333 !important;
}

/* Plain .btn <a> with no color class (date range filter buttons etc.) */
.wrapper .btn-group a.btn:not(.btn-primary):not(.btn-default):not(.btn-success):not(.btn-info):not(.btn_white):not(.btn-danger),
.container-fluid .btn-group a.btn:not(.btn-primary):not(.btn-default):not(.btn-success):not(.btn-info):not(.btn_white):not(.btn-danger) {
  color: #333 !important;
}

/* Tabs — keep proper text colors */
.wrapper .tabs_header a.tab,
.container-fluid .tabs_header a.tab {
  color: #222 !important;
}
.wrapper .tabs_header a.tab.active,
.container-fluid .tabs_header a.tab.active {
  color: #78b833 !important;
}
.wrapper .separated-tabs a.tab.active,
.container-fluid .separated-tabs a.tab.active {
  color: #fff !important;
}

/* Pagination active — white text on green background */
.wrapper .pagination > .active > a,
.wrapper .pagination > .active > a:hover,
.wrapper .pagination > .active > a:focus,
.container-fluid .pagination > .active > a,
.container-fluid .pagination > .active > a:hover,
.container-fluid .pagination > .active > a:focus {
  color: #fff !important;
}

/* Dropdown menu links inside content area — keep dark text */
.wrapper .dropdown-menu > li > a,
.container-fluid .dropdown-menu > li > a {
  color: #333 !important;
}
.wrapper .dropdown-menu > li > a:hover,
.container-fluid .dropdown-menu > li > a:hover {
  color: #262626 !important;
  background-color: #f5f5f5 !important;
}

/* Multiselect tags */
.multiselect__tag,
.multiselect__option--highlight,
.multiselect__option--highlight:after,
.multiselect__tag-icon:focus,
.multiselect__tag-icon:hover,
div.multi-select span.multiselect__option--selected.multiselect__option--highlight:after {
  background: #78b833 !important;
}

/* Focus borders on multi-select */
.ms-container .ms-list.ms-focus {
  border-color: #78b833 !important;
  box-shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba(78,138,0,.4) !important;
}

.ms-container .ms-selectable li.ms-hover,
.ms-container .ms-selection li.ms-hover {
  background-color: #78b833 !important;
}

/* Radio buttons */
.radio-custom:checked + .radio-custom-label:before {
  background: #78b833 !important;
}

/* Progress bars */
.progress-bar.bg-primary,
.progress-bar-success {
  background: #78b833 !important;
}

/* Alert success */
.alert-success {
  background-color: #78b833 !important;
  border-color: #5a9e0f !important;
  color: #fff !important;
}

/* Blue action icons */
a.action.action_menu.small-icon.blue {
  background: #78b833 !important;
}

/* Accounts edit button */
.accounts .box .edit {
  background-color: #78b833 !important;
}

/* Checkbox accent */
.checkbox-success input[type=checkbox]:checked + label::before,
.checkbox-success input[type=radio]:checked + label::before {
  background-color: #78b833 !important;
  border-color: #78b833 !important;
}

/* Tabs active */
.tabs_header .tab.active,
.tab_wrapper .tab.active {
  border-bottom-color: #78b833 !important;
  color: #78b833 !important;
}

/* Form focus states */
.form-control:focus {
  border-color: #78b833 !important;
  box-shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 6px rgba(78,138,0,.3) !important;
}

/* Pagination active */
.pagination > .active > a,
.pagination > .active > a:hover,
.pagination > .active > a:focus,
.pagination > .active > span {
  background-color: #78b833 !important;
  border-color: #5a9e0f !important;
  color: #fff !important;
}

/* Selection / highlight color */
::selection {
  background: rgba(78, 138, 0, 0.2) !important;
}

