/* CMDTek Graylog branding override — Graylog 7.0.13 reapply, upgrade-sensitive. */
:root,
:root[data-mantine-color-scheme="light"],
:root[data-mantine-color-scheme="dark"] {
  --cmdtek-green-0: #e7fbf3;
  --cmdtek-green-1: #c7f5e2;
  --cmdtek-green-2: #9eebcb;
  --cmdtek-green-3: #6ddeaf;
  --cmdtek-green-4: #38cd92;
  --cmdtek-green-5: #00b97a;
  --cmdtek-green-6: #00a86f;
  --cmdtek-green-7: #008d5d;
  --cmdtek-green-8: #006e49;
  --cmdtek-green-9: #004832;
  --cmdtek-charcoal: #192229;
  --cmdtek-panel: #202a32;
  --cmdtek-ink: #2a3136;
  --cmdtek-surface: #f6f8f7;
  /* Replace Graylog's purple/default palette with CMDTek charcoal/neutral tones for better contrast on green. */
  --mantine-color-default-0: #f6f8f7 !important;
  --mantine-color-default-1: #e8ecea !important;
  --mantine-color-default-2: #cfd8d4 !important;
  --mantine-color-default-3: #98a7a1 !important;
  --mantine-color-default-4: #586862 !important;
  --mantine-color-default-5: #2a3136 !important;
  --mantine-color-default-6: #202a32 !important;
  --mantine-color-default-7: #192229 !important;
  --mantine-color-default-8: #121a20 !important;
  --mantine-color-default-9: #0b1116 !important;
  --mantine-color-info-0: var(--cmdtek-green-0) !important;
  --mantine-color-info-1: var(--cmdtek-green-1) !important;
  --mantine-color-info-2: var(--cmdtek-green-2) !important;
  --mantine-color-info-3: var(--cmdtek-green-3) !important;
  --mantine-color-info-4: var(--cmdtek-green-4) !important;
  --mantine-color-info-5: var(--cmdtek-green-5) !important;
  --mantine-color-info-6: var(--cmdtek-green-6) !important;
  --mantine-color-info-7: var(--cmdtek-green-7) !important;
  --mantine-color-info-8: var(--cmdtek-green-8) !important;
  --mantine-color-info-9: var(--cmdtek-green-9) !important;
  --mantine-color-primary-0: var(--cmdtek-green-0) !important;
  --mantine-color-primary-1: var(--cmdtek-green-1) !important;
  --mantine-color-primary-2: var(--cmdtek-green-2) !important;
  --mantine-color-primary-3: var(--cmdtek-green-3) !important;
  --mantine-color-primary-4: var(--cmdtek-green-4) !important;
  --mantine-color-primary-5: var(--cmdtek-green-5) !important;
  --mantine-color-primary-6: var(--cmdtek-green-6) !important;
  --mantine-color-primary-7: var(--cmdtek-green-7) !important;
  --mantine-color-primary-8: var(--cmdtek-green-8) !important;
  --mantine-color-primary-9: var(--cmdtek-green-9) !important;
  --mantine-color-success-0: var(--cmdtek-green-0) !important;
  --mantine-color-success-1: var(--cmdtek-green-1) !important;
  --mantine-color-success-2: var(--cmdtek-green-2) !important;
  --mantine-color-success-3: var(--cmdtek-green-3) !important;
  --mantine-color-success-4: var(--cmdtek-green-4) !important;
  --mantine-color-success-5: var(--cmdtek-green-5) !important;
  --mantine-color-success-6: var(--cmdtek-green-6) !important;
  --mantine-color-success-7: var(--cmdtek-green-7) !important;
  --mantine-color-success-8: var(--cmdtek-green-8) !important;
  --mantine-color-success-9: var(--cmdtek-green-9) !important;
}

html body { background: var(--cmdtek-surface); color: var(--cmdtek-ink); }
html a { color: var(--cmdtek-green-7); }
html a:hover { color: var(--cmdtek-green-6); }
html button[data-variant="filled"] {
  --button-bg: var(--cmdtek-green-6) !important;
  --button-hover: var(--cmdtek-green-7) !important;
  color: #ffffff !important;
  text-shadow: 0 1px 2px rgba(0, 0, 0, .28);
}
html button[data-variant="filled"]:hover { background: var(--cmdtek-green-7) !important; color: #ffffff !important; }
html [class*="Button-root"][data-variant="filled"],
html [class*="Badge-root"],
html [class*="Pill-root"] {
  color: #ffffff !important;
}
html [style*="background-color: var(--mantine-color-info"],
html [style*="background-color: var(--mantine-color-primary"],
html [style*="background-color: var(--mantine-color-success"],
html [style*="background: var(--mantine-color-info"],
html [style*="background: var(--mantine-color-primary"],
html [style*="background: var(--mantine-color-success"] {
  color: #ffffff !important;
  text-shadow: 0 1px 2px rgba(0, 0, 0, .30);
}

/* Login screen */
html #app-root > div > div:last-child {
  background-color: #192229 !important;
  background-image: url('/assets/cmdtek-primary-white.svg'), linear-gradient(135deg, #202a32 0%, #192229 48%, #008d5d 100%) !important;
  background-position: center center, center center !important;
  background-repeat: no-repeat, no-repeat !important;
  background-size: min(62vw, 620px) auto, cover !important;
  position: relative !important;
}
html #app-root > div > div:last-child::after {
  color: #ffffff;
  content: 'CMDTek - Infrastructure Services';
  font-family: inherit;
  font-size: clamp(.9rem, 1.15vw, 1.15rem);
  font-weight: 600;
  left: 0;
  letter-spacing: .08em;
  position: absolute;
  right: 0;
  text-align: center;
  text-shadow: 0 2px 10px rgba(0, 0, 0, .35);
  top: calc(50% + 94px);
}
html #app-root input:focus { border-color: var(--cmdtek-green-6) !important; box-shadow: 0 0 0 2px rgba(0, 174, 112, .20) !important; }
html #app-root strong.sc-dmlpXa { font-size: 0 !important; }
html #app-root strong.sc-dmlpXa::after { color: #202a32; content: 'CMDTek Log Intelligence'; font-size: 1.35rem; font-weight: 700; }
/* Full-color square CMDTek terminal mark above the left-side login heading. */
html #app-root > div > div:first-child { position: relative; }
html #app-root > div > div:first-child::before {
  background: url('/assets/cmdtek-terminal-icon.svg') center / contain no-repeat;
  content: '';
  height: 98px;
  left: 50%;
  pointer-events: none;
  position: absolute;
  top: clamp(32px, 8vh, 64px);
  transform: translateX(-50%);
  width: 98px;
}
html #app-root .sc-fodVRF { background: url('/assets/cmdtek-primary-full-color.svg') center center / contain no-repeat; height: 150px; width: min(68vw, 520px); }
html #app-root .sc-fodVRF svg { opacity: 0; }
html #app-root .sc-fodVRF::after { color: #d7f8e9; content: 'LOG INTELLIGENCE'; display: block; font-size: .78rem; font-weight: 700; letter-spacing: .16em; margin-top: 1rem; text-align: center; transform: translateY(118px); }

.cmdtek-login-logo { display: flex; align-items: center; justify-content: center; width: min(68vw, 520px); }
.cmdtek-login-logo img { width: 100%; height: auto; max-height: 138px; object-fit: contain; }
.cmdtek-login-subtitle { color: #d7f8e9; font-size: .78rem; font-weight: 700; letter-spacing: .16em; margin-top: 1rem; text-align: center; text-transform: uppercase; }

/* Authenticated navbar: anchor the CMDTek wordmark in Graylog's own brand slot so it
   occupies real layout width. This keeps top-menu items to its right rather than under it. */
#app-root:not(:has(input[name="username"]))::before {
  display: none !important;
}
#app-root .navbar-brand a {
  align-items: center !important;
  background: url('/assets/cmdtek-primary-full-color.svg') left center / 190px auto no-repeat !important;
  box-sizing: border-box !important;
  height: 52px !important;
  margin-right: 12px !important;
  min-width: 208px !important;
  padding: 0 !important;
}
#app-root .navbar-brand a svg[aria-labelledby="logoTitleId"],
#app-root .navbar-brand a svg:has(title#logoTitleId),
#app-root .navbar-brand a svg[width="90"][height="27"] {
  opacity: 0 !important;
  visibility: hidden !important;
}
#app-root:not(:has(input[name="username"])) img[src*="cmdtek-terminal-icon"],
#app-root:not(:has(input[name="username"])) img[src*="Terminal-Icon"],
#app-root:not(:has(input[name="username"])) img[alt*="CMDTek"],
#app-root:not(:has(input[name="username"])) img[alt*="logo" i] {
  content: url('/assets/cmdtek-primary-full-color.svg') !important;
  height: 34px !important;
  max-width: 190px !important;
  object-fit: contain !important;
  width: auto !important;
}
#app-root:not(:has(input[name="username"])) [style*="cmdtek-terminal-icon"] {
  background-image: url('/assets/cmdtek-primary-full-color.svg') !important;
  background-position: left center !important;
  background-repeat: no-repeat !important;
  background-size: contain !important;
}
/* The Graylog navbar can retain a hidden login form in the React tree after authentication,
   so do not predicate removal on :has(input[name="username"]). Hide only its native SVG
   signature and retain the navbar layout slot for the CMDTek wordmark overlay. */
#app-root svg[aria-labelledby="logoTitleId"],
#app-root svg:has(title#logoTitleId),
#app-root .navbar-brand svg[width="90"][height="27"] {
  opacity: 0 !important;
  visibility: hidden !important;
}

/* Keep the dedicated login composition clear of the application-header mark. */
#app-root:has(input[name="username"])::before { display: none; }

/* A subtle CMDTek accent in both modes, without altering severity colors. */
html [data-active="true"],
html [aria-current="page"] { border-color: var(--cmdtek-green-6) !important; }

/* Graylog theme repair 20260802: map all remaining purple Mantine ramps to CMDTek green.
   Keep alert/severity colors intact; only UI palette aliases change. */
:root,
:root[data-mantine-color-scheme="light"],
:root[data-mantine-color-scheme="dark"] {
  --mantine-color-violet-0: var(--cmdtek-green-0) !important;
  --mantine-color-violet-1: var(--cmdtek-green-1) !important;
  --mantine-color-violet-2: var(--cmdtek-green-2) !important;
  --mantine-color-violet-3: var(--cmdtek-green-3) !important;
  --mantine-color-violet-4: var(--cmdtek-green-4) !important;
  --mantine-color-violet-5: var(--cmdtek-green-5) !important;
  --mantine-color-violet-6: var(--cmdtek-green-6) !important;
  --mantine-color-violet-7: var(--cmdtek-green-7) !important;
  --mantine-color-violet-8: var(--cmdtek-green-8) !important;
  --mantine-color-violet-9: var(--cmdtek-green-9) !important;
  --mantine-color-grape-0: var(--cmdtek-green-0) !important;
  --mantine-color-grape-1: var(--cmdtek-green-1) !important;
  --mantine-color-grape-2: var(--cmdtek-green-2) !important;
  --mantine-color-grape-3: var(--cmdtek-green-3) !important;
  --mantine-color-grape-4: var(--cmdtek-green-4) !important;
  --mantine-color-grape-5: var(--cmdtek-green-5) !important;
  --mantine-color-grape-6: var(--cmdtek-green-6) !important;
  --mantine-color-grape-7: var(--cmdtek-green-7) !important;
  --mantine-color-grape-8: var(--cmdtek-green-8) !important;
  --mantine-color-grape-9: var(--cmdtek-green-9) !important;
  --mantine-color-indigo-0: var(--cmdtek-green-0) !important;
  --mantine-color-indigo-1: var(--cmdtek-green-1) !important;
  --mantine-color-indigo-2: var(--cmdtek-green-2) !important;
  --mantine-color-indigo-3: var(--cmdtek-green-3) !important;
  --mantine-color-indigo-4: var(--cmdtek-green-4) !important;
  --mantine-color-indigo-5: var(--cmdtek-green-5) !important;
  --mantine-color-indigo-6: var(--cmdtek-green-6) !important;
  --mantine-color-indigo-7: var(--cmdtek-green-7) !important;
  --mantine-color-indigo-8: var(--cmdtek-green-8) !important;
  --mantine-color-indigo-9: var(--cmdtek-green-9) !important;
}

/* The former global white type treatment made outline/neutral badges unreadable on light cards. */
html [class*="Badge-root"],
html [class*="Pill-root"] {
  color: inherit !important;
  text-shadow: none !important;
}
html [class*="Badge-root"][data-variant="filled"],
html [class*="Pill-root"][data-variant="filled"],
html [class*="Badge-root"][data-variant="light"],
html [class*="Pill-root"][data-variant="light"] {
  color: var(--cmdtek-charcoal) !important;
  text-shadow: none !important;
}
html [class*="Badge-root"][data-variant="filled"][style*="green"],
html [class*="Pill-root"][data-variant="filled"][style*="green"] {
  color: #ffffff !important;
}

/* Keep the requested authenticated logo above Graylog's application-header stacking context. */
#app-root:not(:has(input[name="username"]))::before {
  z-index: 10000 !important;
  pointer-events: none !important;
}
