/* ============================================================================
   CYBER EAGLE — accent layer for OpenSearch/Wazuh dashboard
   ----------------------------------------------------------------------------
   This rides ON TOP of OpenSearch's NATIVE DARK MODE (enabled via
   theme:darkMode by apply-branding.sh). Dark mode already gives correct
   text/surface contrast on every page, table, popover and chart — so this file
   does NOT fight text or background colors. It only:
     • recolors the primary accent  blue -> Cyber-Eagle green
     • styles the login page
     • adds the eagle glow, green scrollbars, and a few SOC touches
   Keeping it thin is what makes it robust across all subpages.
   ========================================================================== */

:root {
  --ce-green:     #1BE36B;   /* primary neon green        */
  --ce-green-2:   #16C25C;   /* hover                     */
  --ce-green-dk:  #04190E;   /* text on green fills       */
  --ce-bg:        #0A0F0C;   /* login backdrop            */
  --ce-text:      #DCFCE9;
  --ce-text-2:    #8FBFA6;
}

/* ---- EUI/OUI accent tokens (where the build exposes CSS vars) ------------ */
:root, .euiThemeProvider, [class*="euiColorMode"] {
  --euiColorPrimary:      var(--ce-green) !important;
  --euiColorPrimaryText:  var(--ce-green) !important;
  --euiColorAccent:       var(--ce-green) !important;
  --euiColorAccentText:   var(--ce-green) !important;
  --euiLinkColor:         var(--ce-green) !important;
  --euiFocusRingColor:    var(--ce-green) !important;
  --ouiColorPrimary:      var(--ce-green) !important;
  --ouiColorPrimaryText:  var(--ce-green) !important;
  --ouiLinkColor:         var(--ce-green) !important;
}

/* ---- primary buttons (filled) -> green with dark legible label ----------- */
.euiButton--primary.euiButton--fill, .euiButton--fill,
.ouiButton--primary.ouiButton--fill,
button.euiButton[class*="fill"] {
  background-color: var(--ce-green) !important;
  border-color: var(--ce-green) !important;
  color: var(--ce-green-dk) !important;
}
.euiButton--primary.euiButton--fill:hover, .euiButton--fill:hover {
  background-color: var(--ce-green-2) !important;
}
.euiButton--fill .euiButton__text, .euiButton--fill .euiButtonContent,
.euiButton--fill .euiIcon { color: var(--ce-green-dk) !important; }

/* ---- hollow / empty buttons -> green outline/text ------------------------ */
.euiButton--primary:not(.euiButton--fill),
.euiButtonEmpty--primary, .euiButtonEmpty,
.euiButton--primary:not(.euiButton--fill) .euiButton__text,
.euiButtonEmpty--primary .euiButtonEmpty__text {
  color: var(--ce-green) !important;
  border-color: var(--ce-green) !important;
}

/* ---- links ---------------------------------------------------------------- */
a:not(.euiButton):not(.euiButtonEmpty), .euiLink, .euiLink--primary, .ouiLink {
  color: var(--ce-green) !important;
}

/* ---- tabs / selected states / underlines --------------------------------- */
.euiTab-isSelected, .euiTab-isSelected .euiTab__content,
.euiTab.euiTab-isSelected, .ouiTab-isSelected {
  color: var(--ce-green) !important;
  box-shadow: inset 0 -2px 0 var(--ce-green) !important;
}
.euiSideNavItemButton-isSelected, .euiSideNavItemButton-isSelected *,
.euiListGroupItem-isActive .euiListGroupItem__label,
.euiSelectableListItem-isFocused, .euiFacetButton-isSelected {
  color: var(--ce-green) !important;
}

/* ---- form controls: focus ring + checked controls ------------------------ */
.euiFieldText:focus, .euiFieldNumber:focus, .euiFieldSearch:focus,
.euiFieldPassword:focus, .euiSelect:focus, .euiTextArea:focus,
.euiFormControlLayout:focus-within, .euiComboBox-isOpen .euiComboBox__inputWrap {
  border-color: var(--ce-green) !important;
  box-shadow: 0 0 0 1px var(--ce-green) !important;
}
*:focus-visible { outline-color: var(--ce-green) !important; }
.euiCheckbox__input:checked + .euiCheckbox__square,
.euiRadio__input:checked + .euiRadio__circle,
.euiSwitch__button[aria-checked="true"] .euiSwitch__body,
.euiSwitch--compressed .euiSwitch__button[aria-checked="true"] .euiSwitch__body {
  background-color: var(--ce-green) !important;
  border-color: var(--ce-green) !important;
}
.euiRange__thumb, .euiRangeThumb { background-color: var(--ce-green) !important; }

/* ---- progress / loading / pagination ------------------------------------- */
.euiProgress--primary .euiProgress__bar, .euiProgress__bar { background-color: var(--ce-green) !important; }
.euiLoadingSpinner { border-color: var(--ce-green) var(--ce-green) var(--ce-green) transparent !important; }
.euiPaginationButton-isActive, .euiPaginationButton-isActive .euiButtonEmpty__text {
  color: var(--ce-green) !important;
}

/* ---- filters / active chips / primary badges ----------------------------- */
.euiFilterButton-hasActiveFilters, .euiFilterButton.euiFilterButton-hasNotification,
.euiBadge--primary, .euiBetaBadge--accent {
  color: var(--ce-green-dk) !important; background-color: var(--ce-green) !important;
}
.euiNotificationBadge { background-color: var(--ce-green) !important; color: var(--ce-green-dk) !important; }

/* ---- header: subtle SOC accent line -------------------------------------- */
.euiHeader { border-bottom: 1px solid rgba(27,227,107,.35) !important; }

/* ============================================================================
   LOGIN PAGE  (/app/login — basicauth; NOT covered by theme:darkMode)
   ========================================================================== */
.login-wrapper, .loginLocalLogin, .osdLoginContainer, body.login, .login-body {
  background: radial-gradient(1100px 560px at 50% -8%, #0d2418 0%, var(--ce-bg) 62%) !important;
  color: var(--ce-text) !important;
}
.login-wrapper .euiPanel, .loginLocalLogin .euiPanel, .osdLoginContainer .euiPanel {
  background-color: rgba(14,23,18,.94) !important;
  border: 1px solid var(--ce-green) !important;
  box-shadow: 0 0 42px rgba(27,227,107,.20), inset 0 0 0 1px rgba(27,227,107,.08) !important;
  backdrop-filter: blur(4px);
}
.login-wrapper, .login-wrapper .euiText, .login-wrapper .euiFormLabel,
.osdLoginContainer .euiText, .osdLoginContainer label { color: var(--ce-text) !important; }
.login-wrapper img[src*="logo"], .login-wrapper img[src*="mark"],
.loginLocalLogin img, .osdLoginContainer img {
  filter: drop-shadow(0 0 14px rgba(27,227,107,.55)); max-height: 104px !important;
}
/* the security-plugin brandimage */
.euiImage img[src*="brandimage"], img.euiImage__img[alt*="brand"] {
  filter: drop-shadow(0 0 16px rgba(27,227,107,.5));
}

/* ---- green scrollbars ----------------------------------------------------- */
*::-webkit-scrollbar { width: 10px; height: 10px; }
*::-webkit-scrollbar-track { background: #0b120d; }
*::-webkit-scrollbar-thumb { background: #1c3a29; border-radius: 6px; }
*::-webkit-scrollbar-thumb:hover { background: var(--ce-green-2); }

/* ---- eagle loading spinner brand (optional flourish) --------------------- */
.euiLoadingChart, .euiLoadingContent { filter: hue-rotate(0deg); }
