:root {
  --hadi-cyan: #1eaee6;
  --hadi-cyan-strong: #009fdc;
  --hadi-cyan-soft: #e8f7ff;
  --hadi-blue: #0f6d9c;
  --hadi-navy: #0f1a28;
  --hadi-navy-deep: #091320;
  --hadi-ink: #111820;
  --hadi-border: #cde8f5;
  --hadi-white: #ffffff;
}

/* Global brand accent */
a {
  color: var(--hadi-blue);
}

a:hover,
a:focus {
  color: #0c597f;
}

.text-success,
.text-green {
  color: var(--hadi-cyan-strong) !important;
}

.bg-success,
.bg-green {
  background-color: var(--hadi-cyan-strong) !important;
  color: #fff !important;
}

.label-success,
.badge-success,
.progress-bar-success {
  background-color: var(--hadi-cyan-strong) !important;
}

/* Buttons */
.btn-success {
  background-color: var(--hadi-cyan-strong) !important;
  border-color: var(--hadi-cyan-strong) !important;
  color: #fff !important;
}

.btn-success:hover,
.btn-success:focus,
.btn-success:active {
  background-color: #0a88bb !important;
  border-color: #0a88bb !important;
}

.btn-success.btn-outline {
  color: var(--hadi-blue) !important;
  border-color: var(--hadi-cyan-strong) !important;
  background-color: transparent !important;
}

.btn-success.btn-outline:hover,
.btn-success.btn-outline:focus,
.btn-success.btn-outline:active {
  background-color: var(--hadi-cyan-soft) !important;
  color: var(--hadi-blue) !important;
}

/* Form and controls */
.form-control:focus,
.select2-container--default.select2-container--focus .select2-selection--single,
.select2-container--default.select2-container--focus .select2-selection--multiple {
  border-color: var(--hadi-cyan-strong) !important;
  box-shadow: 0 0 0 0.2rem rgba(30, 174, 230, 0.18);
}

.nav-tabs > li.active > a,
.nav-tabs > li.active > a:focus,
.nav-tabs > li.active > a:hover {
  border-top-color: var(--hadi-cyan-strong);
  color: var(--hadi-blue);
}

.pagination > .active > a,
.pagination > .active > a:focus,
.pagination > .active > a:hover,
.pagination > .active > span,
.pagination > .active > span:focus,
.pagination > .active > span:hover {
  background-color: var(--hadi-cyan-strong);
  border-color: var(--hadi-cyan-strong);
}

/* Main shell */
.main-header .logo {
  background: linear-gradient(135deg, var(--hadi-navy) 0%, #0b2a44 70%, var(--hadi-blue) 100%);
  border-bottom: 2px solid var(--hadi-cyan);
}

.main-header .logo .logo-lg img,
.main-header .logo .logo-mini img {
  filter: drop-shadow(0 0 6px rgba(30, 174, 230, 0.4));
}

.main-header .navbar {
  background: linear-gradient(180deg, #ffffff 0%, #f2fbff 100%);
  border-bottom: 1px solid var(--hadi-border);
}

.main-header .navbar .nav > li > a {
  color: var(--hadi-ink);
}

.main-header .navbar .nav > li > a:hover,
.main-header .navbar .nav > li > a:focus {
  background-color: #e8f6ff;
}

.main-header .sidebar-toggle {
  color: var(--hadi-navy);
  border-right-color: var(--hadi-border);
}

.main-header .sidebar-toggle:hover {
  background-color: #e8f6ff;
}

.main-sidebar {
  background: linear-gradient(180deg, #0c1623 0%, #0a2134 55%, #0b2e47 100%);
}

.main-sidebar .user-panel {
  border-bottom: 1px solid rgba(30, 174, 230, 0.25);
}

.sidebar-menu > li > a {
  color: #e3f4ff;
}

.sidebar-menu > li.active > a:before {
  background: var(--hadi-cyan);
}

.sidebar-menu > li.active > a,
.sidebar-menu > li:hover > a {
  background: rgba(30, 174, 230, 0.22);
  color: #fff;
}

.sidebar-menu .treeview-menu {
  background-color: #071522;
}

.sidebar-menu .treeview-menu > li > a {
  color: #bfe8ff;
}

.sidebar-menu .treeview-menu > li.active > a,
.sidebar-menu .treeview-menu > li > a:hover {
  color: var(--hadi-cyan);
}

.content-wrapper {
  background: linear-gradient(180deg, #f7fcff 0%, #eef8fd 100%);
}

.breadcrumb li a,
.breadcrumb > .active {
  color: var(--hadi-blue);
}

.panel-primary,
.panel-primary > .panel-heading {
  border-color: var(--hadi-cyan-strong);
}

.panel-primary > .panel-heading {
  background-color: var(--hadi-cyan-strong);
}

/* Login screen */
body.haditech-login {
  background: radial-gradient(circle at 85% 15%, rgba(30, 174, 230, 0.26) 0%, transparent 35%),
    radial-gradient(circle at 20% 80%, rgba(15, 109, 156, 0.22) 0%, transparent 35%),
    linear-gradient(135deg, var(--hadi-navy-deep) 0%, #0a2235 100%);
}

body.haditech-login .container-center {
  min-height: 100vh;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 24px 12px;
}

body.haditech-login .login_wrapper {
  width: 100%;
  max-width: 480px;
  border-radius: 14px;
  box-shadow: 0 18px 46px rgba(0, 0, 0, 0.35);
  border: 1px solid rgba(30, 174, 230, 0.35);
  background: rgba(255, 255, 255, 0.98);
  padding: 1.35rem;
}

body.haditech-login .view_header i {
  color: var(--hadi-cyan-strong) !important;
}

body.haditech-login .panel-heading h3:last-child {
  color: var(--hadi-blue);
}

body.haditech-login .form-control:focus {
  border-color: var(--hadi-cyan-strong);
  box-shadow: 0 0 0 0.2rem rgba(30, 174, 230, 0.22);
}

/* Legacy green overrides from base theme */
.content-header .header-icon,
.sidebar-menu .treeview-menu > li.active > a .fa,
.sidebar-menu .treeview-menu > li.active > a .glyphicon,
.sidebar-menu .treeview-menu > li.active > a .ion {
  color: var(--hadi-cyan-strong) !important;
}

.back-top {
  background-color: var(--hadi-cyan-strong) !important;
  border-color: var(--hadi-cyan-strong) !important;
}

.back-top:hover {
  background-color: var(--hadi-navy) !important;
  border-color: var(--hadi-navy) !important;
}

.category > .nav-tabs > li.active > a {
  background-color: var(--hadi-blue) !important;
  color: #fff !important;
}

.category > .nav-tabs > li > a {
  background-color: var(--hadi-cyan-strong) !important;
  color: #fff !important;
}

.label-success-outline {
  border-color: var(--hadi-cyan-strong) !important;
  color: var(--hadi-cyan-strong) !important;
}

/* Dashboard and report legacy color classes */
.bg-darkgreen {
  background-color: var(--hadi-blue) !important;
  color: #fff !important;
}

.small-box.bg-green,
.small-box.bg-darkgreen {
  background: linear-gradient(135deg, var(--hadi-cyan-strong) 0%, var(--hadi-blue) 100%) !important;
}

.prints {
  background-color: var(--hadi-cyan-strong) !important;
}

.ledgrhead {
  background-color: var(--hadi-blue) !important;
}

.rpthtext {
  color: var(--hadi-blue) !important;
}

.rcv {
  background-color: var(--hadi-cyan-soft) !important;
}

/* Notification and modal accents */
.modal-success .modal-header {
  background-color: var(--hadi-cyan-strong) !important;
}

#toast-container > .toast-success,
.toast-success {
  background-color: var(--hadi-blue) !important;
}

/* Legacy "success" semantics mapped to Haditech cyan */
::-moz-selection {
  color: #fff;
  background: var(--hadi-cyan-strong);
  text-shadow: none;
}

::selection {
  color: #fff;
  background: var(--hadi-cyan-strong);
  text-shadow: none;
}

.checkbox-success input[type="checkbox"]:checked + label::before,
.radio-success input[type="radio"]:checked + label::before,
.radio-success input[type="radio"] + label::after,
.radio-success input[type="radio"]:checked + label::after {
  background-color: var(--hadi-cyan-strong) !important;
  border-color: var(--hadi-cyan-strong) !important;
}

.has-success .form-control,
.has-success .input-group-addon {
  border-color: var(--hadi-cyan-strong) !important;
}

.has-success .col-form-label,
.has-success .custom-control,
.has-success .form-check-label,
.has-success .form-control-label,
.has-success .form-feedback,
.has-success .help-block {
  color: var(--hadi-cyan-strong) !important;
}

.has-success .input-group-addon {
  color: var(--hadi-cyan-strong) !important;
  background-color: var(--hadi-cyan-soft) !important;
}

.panel-success {
  border-color: var(--hadi-border) !important;
}

.panel-success > .panel-heading {
  color: #fff !important;
  background-color: var(--hadi-cyan-strong) !important;
  border-color: var(--hadi-cyan-strong) !important;
}

.progress-bar-success .tooltip .tooltip-inner,
.progress-bar-success {
  background-color: var(--hadi-cyan-strong) !important;
}

.progress-bar-success .tooltip.top .tooltip-arrow {
  border-top-color: var(--hadi-cyan-strong) !important;
}

.card-header-menu:after {
  border-right-color: var(--hadi-cyan-strong) !important;
  border-top-color: var(--hadi-cyan-strong) !important;
}

.card-header-headshot {
  border-color: var(--hadi-cyan-strong) !important;
}

/* Hard override: remove remaining legacy green accents */
.color-green,
.text-green,
.text-success,
.has-success .help-block,
.has-success .control-label,
.has-success .radio,
.has-success .checkbox,
.has-success .radio-inline,
.has-success .checkbox-inline {
  color: var(--hadi-cyan-strong) !important;
}

.border-green,
.form-control-success,
.has-success .form-control,
.has-success .input-group-addon {
  border-color: var(--hadi-cyan-strong) !important;
}

.bg-success,
.bg-green,
.label-success,
.badge-success,
.progress-bar-success,
.alert-success,
.modal-success .modal-header,
.btn-success,
.btn-success:active,
.btn-success:focus,
.btn-success:hover {
  background-color: var(--hadi-cyan-strong) !important;
  border-color: var(--hadi-cyan-strong) !important;
  color: #fff !important;
}

.btn-success.btn-outline,
.btn-success.btn-transparent {
  color: var(--hadi-cyan-strong) !important;
  border-color: var(--hadi-cyan-strong) !important;
  background-color: transparent !important;
}

.btn-success.btn-outline:hover,
.btn-success.btn-outline:focus,
.btn-success.btn-transparent:hover,
.btn-success.btn-transparent:focus {
  background-color: var(--hadi-cyan-soft) !important;
  color: var(--hadi-blue) !important;
}

.label-success-outline {
  color: var(--hadi-cyan-strong) !important;
  border-color: var(--hadi-cyan-strong) !important;
}

.panel-success {
  border-color: var(--hadi-cyan-strong) !important;
}

.panel-success > .panel-heading {
  background-color: var(--hadi-cyan-strong) !important;
  border-color: var(--hadi-cyan-strong) !important;
  color: #fff !important;
}

.checkbox-success input[type="checkbox"]:checked + label::before,
.checkbox-success input[type="checkbox"]:checked + label::after,
.radio-success input[type="radio"]:checked + label::before,
.radio-success input[type="radio"]:checked + label::after,
.radio-success input[type="radio"] + label::after {
  background-color: var(--hadi-cyan-strong) !important;
  border-color: var(--hadi-cyan-strong) !important;
}

.dropzone .dz-preview .dz-progress .dz-upload {
  background: var(--hadi-cyan-strong) !important;
}

.spinner-layer.pl-green,
.spinner-layer.pl-green .circle-clipper .circle,
.spinner-layer.pl-green .gap-patch .circle {
  border-color: var(--hadi-cyan-strong) !important;
}

/* Semantic UI green components */
.ui.green.button,
.ui.green.buttons .button,
.ui.green.labels .label,
.ui.green.label,
.ui.green.message,
.ui.green.progress .bar {
  background-color: var(--hadi-cyan-strong) !important;
  border-color: var(--hadi-cyan-strong) !important;
  color: #fff !important;
}

.ui.green.button:hover,
.ui.green.buttons .button:hover,
.ui.green.label:hover {
  background-color: var(--hadi-blue) !important;
  border-color: var(--hadi-blue) !important;
}
