/* =============================================================================
 * Custom branding overrides — generat de apply-brand.sh din brand.env
 * =============================================================================
 * Variabile substituite: #1F4E78, #163958,
 * #FF8C00, #FFFFFF, © 2026 Security Operations,
 * ids-ips
 * ============================================================================= */

:root {
  --brand-primary: #1F4E78;
  --brand-primary-dark: #163958;
  --brand-accent: #FF8C00;
  --brand-text-on-primary: #FFFFFF;
}

/* Butoane primare */
.euiButton--primary:not([class*="euiButton--isDisabled"]),
.euiButton--fill.euiButton--primary {
  background-color: var(--brand-primary) !important;
  border-color: var(--brand-primary) !important;
  color: var(--brand-text-on-primary) !important;
}
.euiButton--primary:hover:not([class*="euiButton--isDisabled"]) {
  background-color: var(--brand-primary-dark) !important;
  border-color: var(--brand-primary-dark) !important;
}

/* Link-uri */
.euiLink,
.euiLink.euiLink--primary { color: var(--brand-primary) !important; }

/* Tab-uri active — accentul temei (doar in shell-ul nostru) */
body.idsx-on .euiTab-isSelected,
body.idsx-on .euiTab.euiTab-isSelected .euiTab__content {
  color: var(--brand-accent) !important;
  box-shadow: inset 0 -2px 0 var(--brand-accent) !important;
}

/* Ascunde branding Wazuh hardcodat */
.wz-app-copyright,
.wz-powered-by,
[data-test-subj="wazuhCopyright"],
[data-test-subj="wazuhFooter"] { display: none !important; }

/* =============================================================================
 * Footer PNRR — obligatoriu, pe toate paginile, cate unul per tema.
 * Markup-ul vine din branding/<profil>/footers/<tema>.html si e injectat de
 * custom.js in #idsx-pnrr-footer. Fix jos (layout-ul OSD e absolut pozitionat,
 * deci un footer static ar cadea sub viewport); inaltimea reala e masurata de
 * custom.js in --idsx-footer-h si folosita ca padding pentru continut.
 * ============================================================================= */
:root { --idsx-footer-h: 0px; }
#idsx-pnrr-footer {
  position: fixed; bottom: 0; left: 0; right: 0; z-index: 9998;
  background: #ffffff; color: #333333;
  max-height: 38vh; overflow-y: auto; overscroll-behavior: contain;
  box-shadow: 0 -2px 10px rgba(0, 0, 0, 0.18);
}
#idsx-pnrr-footer img { max-width: 100%; height: auto; }
#idsx-pnrr-footer a { color: #003399; }
/* Rezerva spatiu sub continut cat tine footer-ul, ca sa nu acopere nimic. */
body.idsx-on .app-wrapper,
body.idsx-on .application,
body.idsx-login .app-wrapper,
body.idsx-login .application,
body.idsx-login .login-wrapper,
body.idsx-login .content.wz-login { padding-bottom: var(--idsx-footer-h, 0px) !important; }

/* Login page — branding */
.loginWelcome,
.loginWelcome__content {
  background: linear-gradient(135deg, var(--brand-primary) 0%, var(--brand-primary-dark) 100%) !important;
}
.loginWelcome__title { color: var(--brand-text-on-primary) !important; }
.loginWelcome__title,
.loginWelcome__subtitle,
.loginWelcome__description,
.wz-login-title,
.wz-login-subtitle,
[data-test-subj="loginTitle"],
[data-test-subj="loginSubtitle"] { display: none !important; }
.loginWelcome__content::before {
  content: "ids-ips"; display: block; font-family: Arial, sans-serif;
  font-size: 32px; font-weight: 700; color: var(--brand-text-on-primary);
  text-align: center; margin-bottom: 12px; letter-spacing: 0.5px;
}
.loginWelcome__content::after {
  content: "${BRAND_TAGLINE}"; display: block; font-family: Arial, sans-serif;
  font-size: 15px; color: var(--brand-text-on-primary); opacity: 0.85; text-align: center; margin-bottom: 24px;
}
.login-wrapper figure.euiImage,
.login-wrapper .euiImage,
.login-wrapper img[src*="securityDashboards"],
.login-wrapper svg[width]:not([width="16"]):not([width="24"]):not([width="32"]),
body[class*="login"] figure.euiImage,
body[class*="login"] .euiImage--fullWidth,
div[class*="loginWelcome"] figure.euiImage,
div[class*="loginWelcome"] .euiImage,
figure.euiImage img[src*="securityDashboards"],
figure.euiImage:has(img[src*="securityDashboards"]),
img[src*="/bundles/plugin/securityDashboards/"][src$=".svg"],
.euiImage img[src*="/bundles/plugin/securityDashboards/"] {
  display: none !important; visibility: hidden !important; width: 0 !important; height: 0 !important;
}
.login-wrapper h1,
.login-wrapper h2[class*="euiTitle--l"],
.login-wrapper h2[class*="euiTitle--xl"],
body[class*="login"] .euiTitle--l,
body[class*="login"] .euiTitle--xl,
div[class*="loginWelcome"] h1,
div[class*="loginWelcome"] h2[class*="euiTitle"],
div[class*="loginWelcome"] .euiTextColor--default.euiTitle { display: none !important; }
.login-wrapper,
body[class*="login"] .euiPageBody,
body[class*="login"] .application {
  background: linear-gradient(135deg, var(--brand-primary) 0%, var(--brand-primary-dark) 100%) !important;
}
.loginWelcome a[href*="wazuh.com"],
.loginWelcome a[href*="wazuh.github"],
.wz-login-footer,
.wz-powered-by { display: none !important; }
.wz-footer,
.euiPageBody__footer,
[data-test-subj="wazuhVersion"] { display: none !important; }

/* ===========================================================================
 * LOADING SCREEN GLOBAL — cat timp loader-ul OSD (#osd_loading_message) e
 * vizibil, il fixam peste TOT ecranul (acopera inclusiv sidebar-ul si
 * topnav-ul nostru) cu logo-ul centrat pe tot ecranul. OSD comuta vizibilitatea
 * prin inline display, deci nu fortam display aici (altfel ar ramane mereu vizibil).
 * =========================================================================== */
.osdWelcomeView {
  position: fixed !important;
  inset: 0 !important;
  z-index: 2147483000 !important;
}
/* loaderWrap pe tot viewport-ul (acopera si sidebar/topnav) + emblema centrata pe
   tot ecranul, NU decentrata de padding-ul sidebar-ului. Fundalul vine per-tema. */
.osdWelcomeView .osdLoaderWrap {
  position: fixed !important;
  inset: 0 !important;
  margin: 0 !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
}

/* Login pe tema — suprascriem variabilele de brand (folosite de fundalul paginii,
   header-ul cardului si butonul "Log in"), deci login-ul se schimba dupa tema aleasa.
   Clasele idsx-lt-* sunt puse pe body DOAR pe pagina de login (din custom.js). */
body.idsx-lt-mma     { --brand-primary: #15304d; --brand-primary-dark: #0a1726; --brand-accent: #ff8c00; }
body.idsx-lt-grigotec { --brand-primary: #2a6aa0; --brand-primary-dark: #22557f; --brand-accent: #1f6fb2; }
body.idsx-lt-dodoscar  { --brand-primary: #3a8a63; --brand-primary-dark: #2e7d59; --brand-accent: #2e7d59; }
body.idsx-lt-consoana    { --brand-primary: #ef7a52; --brand-primary-dark: #d75a86; --brand-accent: #e0603a; }
/* Nuanta de buton "Log in" sa urmeze accentul temei pe login */
body[class*="idsx-lt-"] .euiButton--primary:not([class*="isDisabled"]),
body[class*="idsx-lt-"] .euiButton--fill.euiButton--primary {
  background-color: var(--brand-primary-dark) !important; border-color: var(--brand-primary-dark) !important;
}

/* Inlocuim ilustratia nativa OSD (url(/ui/wazuh_login_bg.svg)) cu emblema noastra
   peste un gradient tematizat (variabilele de brand se schimba cu tema selectata). */
body.idsx-login .content.wz-login {
  background:
    url('/ui/custom/login-art.svg') no-repeat right -40px center / auto 90%,
    linear-gradient(135deg, var(--brand-primary) 0%, var(--brand-primary-dark) 100%) !important;
}

/* Containerele interioare full-screen trebuie transparente, altfel acopera
   compozitia de pe .content.wz-login (regula veche body[class*=login] .application). */
body.idsx-login .content.wz-login .application,
body.idsx-login .content.wz-login .app-wrapper,
body.idsx-login .content.wz-login .app-wrapper-panel,
body.idsx-login .content.wz-login .euiPageBody { background: transparent !important; }

/* ---- Compozitii de fundal distincte per tema (emblema vizibila pe fundalul temei) ---- */
/* GLASS — navy profund, glow portocaliu + albastru, emblema mare in dreapta */
body.idsx-lt-mma .content.wz-login {
  background:
    url('/ui/custom/login-art-mma.svg') no-repeat right -10px center / auto 118%,
    radial-gradient(900px 720px at 12% 16%, rgba(255,140,0,0.22), transparent 60%),
    radial-gradient(1150px 880px at 106% 112%, rgba(42,108,176,0.42), transparent 55%),
    linear-gradient(135deg, #0c2138 0%, #07111f 100%) !important;
}
/* CORPORATE — split DIAGONAL: nuanta deschisa stanga-sus (card) -> inchisa dreapta-jos (scut),
   cu o dunga subtire alba pe linia de imbinare. Acelasi unghi (108deg) pe toate straturile. */
body.idsx-lt-grigotec .content.wz-login {
  background:
    url('/ui/custom/login-art-grigotec.svg') no-repeat right -10px center / auto 80%,
    linear-gradient(108deg, transparent 0%, transparent 46.8%, rgba(255,255,255,0.20) 46.8%, rgba(255,255,255,0.20) 47.3%, transparent 47.3%, transparent 100%),
    linear-gradient(108deg, #3f86c2 0%, #3f86c2 47%, #123a5c 47.3%, #123a5c 100%) !important;
}
/* NATURE — emblema (frunza) deasupra cercului, compozitia lipita de marginea stanga (cerc complet) */
body.idsx-lt-dodoscar .content.wz-login {
  background:
    url('/ui/custom/login-art-dodoscar.svg') no-repeat left -100px center / auto 82%,
    radial-gradient(820px 620px at 80% 18%, rgba(150,220,180,0.25), transparent 60%),
    linear-gradient(160deg, #2e7d59 0%, #1c4f38 100%) !important;
}
/* SUNSET — apus: glow cald radial in stanga (ca un soare) + emblema pe el */
body.idsx-lt-consoana .content.wz-login {
  background:
    url('/ui/custom/login-art-consoana.svg') no-repeat 22% center / auto 80%,
    radial-gradient(720px 720px at 22% 50%, rgba(255,150,90,0.45), transparent 62%),
    linear-gradient(120deg, #ef7a52 0%, #d75a86 100%) !important;
}

/* ---- Cardul de login: aspect + pozitie diferite per tema ---- */
/* Baza (toate temele): card cu antet = marca (logo) + numele aplicatiei, apoi formularul */
body.idsx-login .content.wz-login .login-wrapper {
  position: relative !important;
  background-color: #ffffff !important;
  background-image: url('/ui/custom/mark.svg') !important;
  background-repeat: no-repeat !important;
  background-position: center 26px !important;
  background-size: 50px 50px !important;
  padding: 104px 26px 26px !important;
  border-radius: 14px !important; overflow: hidden !important;
  box-shadow: 0 18px 52px rgba(8,16,28,0.34) !important; transition: transform .2s ease, margin .2s ease;
}
/* Curatam elementele native goale din card (figura/spatii/texte placeholder) */
body.idsx-login .content.wz-login .login-wrapper > figure,
body.idsx-login .content.wz-login .login-wrapper > .euiImage,
body.idsx-login .content.wz-login .login-wrapper > .euiSpacer,
body.idsx-login .content.wz-login .login-wrapper > .euiText { display: none !important; }
/* Numele aplicatiei in antetul cardului */
body.idsx-login .content.wz-login .login-wrapper::before {
  content: "ids-ips";
  position: absolute; top: 84px; left: 0; right: 0; text-align: center;
  font: 700 16px Arial, Helvetica, sans-serif; letter-spacing: 0.5px; color: #1f2d3a;
}
body.idsx-login .content.wz-login .euiForm { background: transparent !important; }

/* GLASS — card frosted translucid, antet deschis, campuri albe lizibile */
body.idsx-lt-mma .content.wz-login .login-wrapper {
  background-color: rgba(14,30,49,0.55) !important;
  -webkit-backdrop-filter: blur(20px) saturate(150%); backdrop-filter: blur(20px) saturate(150%);
  border: 1px solid rgba(255,255,255,0.20) !important;
}
body.idsx-lt-mma .content.wz-login .login-wrapper::before { color: #eaf1f8 !important; }
body.idsx-lt-mma .content.wz-login .euiFieldText,
body.idsx-lt-mma .content.wz-login .euiFieldPassword,
body.idsx-lt-mma .content.wz-login input[type="text"],
body.idsx-lt-mma .content.wz-login input[type="password"] {
  background-color: rgba(255,255,255,0.94) !important; color: #14304d !important; box-shadow: inset 0 0 0 1px rgba(255,255,255,0.45) !important;
}
body.idsx-lt-mma .content.wz-login input::placeholder { color: rgba(20,48,77,0.55) !important; opacity: 1 !important; }
body.idsx-lt-mma .content.wz-login input::-webkit-input-placeholder { color: rgba(20,48,77,0.55) !important; opacity: 1 !important; }
body.idsx-lt-mma .content.wz-login .euiFormLabel { color: #eaf1f8 !important; }

/* CORPORATE — card alb in STANGA (split-screen, emblema in dreapta) */
body.idsx-lt-grigotec .content.wz-login .login-wrapper {
  margin-left: 9vw !important; margin-right: auto !important; background-color: #ffffff !important; border: 1px solid rgba(31,78,120,0.14) !important;
}

/* NATURE — card crem centru, colturi drepte */
body.idsx-lt-dodoscar .content.wz-login .login-wrapper {
  background-color: #fbf9f2 !important; border-radius: 0 !important; border: 1px solid rgba(70,90,55,0.18) !important;
}
body.idsx-lt-dodoscar .content.wz-login .login-wrapper::before { color: #243a2e !important; }

/* SUNSET — card crem cald in DREAPTA */
body.idsx-lt-consoana .content.wz-login .login-wrapper {
  margin-left: auto !important; margin-right: 9vw !important; background-color: #fffaf4 !important; border: 1px solid rgba(200,90,60,0.20) !important;
}
body.idsx-lt-consoana .content.wz-login .login-wrapper::before { color: #5b3a30 !important; }

/* Marca din antetul cardului difera per tema (acelasi motiv ca emblema de fundal si shell). */
body.idsx-lt-mma     .content.wz-login .login-wrapper { background-image: url('/ui/custom/logo-mma.png') !important; }
body.idsx-lt-grigotec .content.wz-login .login-wrapper { background-image: url('/ui/custom/logo-grigotec.png') !important; }
body.idsx-lt-dodoscar  .content.wz-login .login-wrapper { background-image: url('/ui/custom/logo-dodoscar.png') !important; }
body.idsx-lt-consoana    .content.wz-login .login-wrapper { background-image: url('/ui/custom/logo-consoana.png') !important; }

/* ===========================================================================
 * SHELL PROPRIU "ids-ips" — layout pe tema:
 *   .idsx-mma     → SIDEBAR lateral (sticla navy)
 *   .idsx-dodoscar  → TOP NAV orizontal (grafit deschis)
 * =========================================================================== */
:root { --idsx-sidebar-w: 268px; --idsx-topbar-h: 58px; --idsx-topnav-h: 56px; }

/* Ascunde header-ul nativ OSD (logout/setari le oferim noi) */
body.idsx-on .euiHeader.euiHeader--fixed,
body.idsx-on .euiHeader--default.euiHeader--fixed,
body.idsx-on #headerGlobalNav,
body.idsx-on [data-test-subj="headerGlobalNav"],
body.idsx-on .headerGlobalNav { display: none !important; }
body.idsx-on.euiBody--headerIsFixed { padding-top: 0 !important; }

/* Push continut — diferit pe layout */
body.idsx-mma #opensearch-dashboards-body,
body.idsx-grigotec #opensearch-dashboards-body { padding-left: var(--idsx-sidebar-w) !important; padding-top: var(--idsx-topbar-h) !important; box-sizing: border-box; }
body.idsx-dodoscar #opensearch-dashboards-body,
body.idsx-consoana #opensearch-dashboards-body { padding-top: var(--idsx-topnav-h) !important; box-sizing: border-box; }

/* Butoane cont (comune) */
.idsx-tbtn { display: inline-flex; align-items: center; gap: 6px; background: rgba(255,255,255,0.10); color: #fff; border: 1px solid rgba(255,255,255,0.18); border-radius: 8px; padding: 6px 10px; font-size: 12.5px; cursor: pointer; font-family: Arial, Helvetica, sans-serif; }
.idsx-tbtn:hover { background: rgba(255,255,255,0.2); }
.idsx-tbtn svg { width: 15px; height: 15px; stroke: currentColor; }
.idsx-tbtn-danger:hover { background: rgba(220,60,60,0.55); border-color: rgba(220,60,60,0.7); }
#idsx-clock { font-variant-numeric: tabular-nums; opacity: 0.85; color: #fff; font-size: 12.5px; }

/* Avatar utilizator + meniu cont (comune tuturor temelor) */
.idsx-acct { position: relative; display: inline-flex; align-items: center; }
.idsx-avatar { width: 36px; height: 36px; padding: 0; border-radius: 50%; border: none; cursor: pointer;
  background: linear-gradient(135deg, #2A6CB0, #163E63); color: #fff; font-family: Arial, Helvetica, sans-serif;
  display: flex; align-items: center; justify-content: center; box-shadow: 0 1px 5px rgba(0,0,0,0.28), inset 0 0 0 2px rgba(255,255,255,0.22); transition: filter .12s; }
.idsx-avatar:hover { filter: brightness(1.12); }
.idsx-avatar .idsx-ini { font-size: 14px; font-weight: 700; text-transform: uppercase; line-height: 1; }
.idsx-acct.idsx-open .idsx-avatar { box-shadow: 0 1px 5px rgba(0,0,0,0.28), inset 0 0 0 2px rgba(255,255,255,0.55); }
/* Butonul de profil (avatar) + avatarul din meniul deschis (.idsx-ava2) urmeaza
   paleta temei active, ca sa fie aceeasi culoare si la apasare (glass = default de mai sus). */
body.idsx-grigotec .idsx-avatar, body.idsx-grigotec .idsx-ava2 { background: linear-gradient(135deg, #4F93CF, #123A5C); }
body.idsx-dodoscar  .idsx-avatar, body.idsx-dodoscar  .idsx-ava2 { background: linear-gradient(135deg, #5AA07D, #2E7D59); }
body.idsx-consoana    .idsx-avatar, body.idsx-consoana    .idsx-ava2 { background: linear-gradient(135deg, #EF7A52, #D75A86); }

.idsx-usermenu { position: absolute; top: calc(100% + 8px); right: 0; min-width: 230px; display: none; flex-direction: column;
  padding: 8px; border-radius: 11px; z-index: 1700; background: #ffffff; border: 1px solid rgba(0,0,0,0.10);
  box-shadow: 0 16px 38px rgba(15,25,40,0.30); font-family: Arial, Helvetica, sans-serif; }
.idsx-acct.idsx-open .idsx-usermenu { display: flex; }
.idsx-userhead { display: flex; align-items: center; gap: 11px; padding: 8px 10px 11px; border-bottom: 1px solid rgba(0,0,0,0.08); margin-bottom: 6px; }
.idsx-ava2 { width: 38px; height: 38px; flex: 0 0 38px; border-radius: 50%; background: linear-gradient(135deg, #2A6CB0, #163E63);
  color: #fff; display: flex; align-items: center; justify-content: center; font-size: 16px; font-weight: 700; text-transform: uppercase; }
.idsx-uinfo { display: flex; flex-direction: column; min-width: 0; }
.idsx-uname { font-size: 13.5px; font-weight: 700; color: #1f2d3a; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.idsx-urole { font-size: 11px; font-weight: 500; color: #6a7c8c; }
.idsx-uitem { display: flex; align-items: center; gap: 10px; padding: 9px 10px; border-radius: 8px; cursor: pointer; color: #33404d; font-size: 13px; font-weight: 500; }
.idsx-uitem:hover { background: rgba(0,0,0,0.06); }
.idsx-uitem svg { width: 16px; height: 16px; flex: 0 0 16px; stroke: currentColor; fill: none; }
.idsx-uitem-danger { color: #b3261e; }
.idsx-uitem-danger:hover { background: rgba(179,38,30,0.10); }

/* Meniul de cont preia culorile temei selectate */
/* Glass — sticla navy, text deschis */
body.idsx-mma .idsx-usermenu { background: rgba(16,34,54,0.96); border-color: rgba(255,255,255,0.14); box-shadow: 0 16px 38px rgba(4,12,22,0.55); -webkit-backdrop-filter: blur(14px); backdrop-filter: blur(14px); }
body.idsx-mma .idsx-userhead { border-bottom-color: rgba(255,255,255,0.12); }
body.idsx-mma .idsx-uname { color: #eaf1f8; }
body.idsx-mma .idsx-urole { color: #9fb4c8; }
body.idsx-mma .idsx-uitem { color: #d4e2f0; }
body.idsx-mma .idsx-uitem:hover { background: rgba(255,255,255,0.10); color: #ffffff; }
body.idsx-mma .idsx-uitem-danger { color: #ff9a8f; }
body.idsx-mma .idsx-uitem-danger:hover { background: rgba(220,80,70,0.22); color: #ffd2cc; }

/* Corporate — albastru deschis */
body.idsx-grigotec .idsx-usermenu { background: #eef4fb; border-color: rgba(31,78,120,0.18); box-shadow: 0 16px 34px rgba(31,78,120,0.22); }
body.idsx-grigotec .idsx-userhead { border-bottom-color: rgba(31,78,120,0.14); }
body.idsx-grigotec .idsx-uname { color: #16334e; }
body.idsx-grigotec .idsx-urole { color: #5b7488; }
body.idsx-grigotec .idsx-uitem { color: #21455f; }
body.idsx-grigotec .idsx-uitem:hover { background: rgba(31,111,178,0.12); color: #143651; }
body.idsx-grigotec .idsx-uitem-danger { color: #b3261e; }
body.idsx-grigotec .idsx-uitem-danger:hover { background: rgba(179,38,30,0.10); }

/* Nature — crem cu accent verde */
body.idsx-dodoscar .idsx-usermenu { background: #fffdf8; border-color: rgba(70,90,55,0.18); box-shadow: 0 16px 34px rgba(60,70,45,0.22); }
body.idsx-dodoscar .idsx-userhead { border-bottom-color: rgba(70,90,55,0.14); }
body.idsx-dodoscar .idsx-uname { color: #243a2e; }
body.idsx-dodoscar .idsx-urole { color: #6a7c64; }
body.idsx-dodoscar .idsx-uitem { color: #2c3b30; }
body.idsx-dodoscar .idsx-uitem:hover { background: rgba(46,125,89,0.12); color: #1f3328; }
body.idsx-dodoscar .idsx-uitem-danger { color: #a83228; }
body.idsx-dodoscar .idsx-uitem-danger:hover { background: rgba(200,60,50,0.12); }

/* Sunset — crem cald cu accent coral */
body.idsx-consoana .idsx-usermenu { background: #fffaf4; border-color: rgba(200,90,60,0.20); box-shadow: 0 16px 34px rgba(150,70,50,0.25); }
body.idsx-consoana .idsx-userhead { border-bottom-color: rgba(200,90,60,0.16); }
body.idsx-consoana .idsx-uname { color: #5b3a30; }
body.idsx-consoana .idsx-urole { color: #9a6f5e; }
body.idsx-consoana .idsx-uitem { color: #5b3a30; }
body.idsx-consoana .idsx-uitem:hover { background: rgba(224,96,58,0.12); color: #3a2018; }
body.idsx-consoana .idsx-uitem-danger { color: #b3261e; }
body.idsx-consoana .idsx-uitem-danger:hover { background: rgba(179,38,30,0.10); }

/* ============================ GLASS — SIDEBAR lateral ============================ */
body.idsx-mma {
  background:
    radial-gradient(1100px 700px at 8% 0%, rgba(255,140,0,0.10), transparent 55%),
    radial-gradient(1200px 800px at 100% 100%, rgba(31,78,120,0.32), transparent 55%),
    linear-gradient(135deg, #0c2138 0%, #07111f 100%) !important;
}
body.idsx-mma #opensearch-dashboards-body,
body.idsx-mma .euiBody, body.idsx-mma .euiPage, body.idsx-mma .euiPageBody { background: transparent !important; }

#idsx-sidebar {
  position: fixed; top: 0; left: 0; bottom: 0; width: var(--idsx-sidebar-w); z-index: 1500;
  display: flex; flex-direction: column;
  background: linear-gradient(180deg, rgba(18,42,68,0.55) 0%, rgba(11,28,46,0.62) 100%);
  -webkit-backdrop-filter: blur(22px) saturate(160%); backdrop-filter: blur(22px) saturate(160%);
  border-right: 1px solid rgba(255,255,255,0.16);
  box-shadow: 4px 0 40px rgba(8,20,36,0.45), inset 0 1px 0 rgba(255,255,255,0.08);
  color: #eaf1f8; font-family: Arial, Helvetica, sans-serif;
}
#idsx-sidebar #idsx-brand { display: flex; align-items: center; gap: 12px; padding: 18px 18px 16px; border-bottom: 1px solid rgba(255,255,255,0.10); }
#idsx-sidebar .idsx-mark { width: 40px; height: 40px; flex: 0 0 40px; border-radius: 11px; background: linear-gradient(135deg, var(--brand-accent), #ffb347); display: flex; align-items: center; justify-content: center; box-shadow: 0 4px 14px rgba(255,140,0,0.4); }
#idsx-sidebar .idsx-mark svg { width: 22px; height: 22px; stroke: #10243c; }
/* Marca din shell = logo-ul PNG al temei (cu placuta lui) -> container transparent, fara gradient. */
#idsx-sidebar .idsx-mark, #idsx-topnav .idsx-mark { background: none !important; box-shadow: none !important; overflow: hidden; }
.idsx-mark-img { width: 100%; height: 100%; object-fit: cover; display: block; border-radius: inherit; }
#idsx-sidebar .idsx-title { font-size: 19px; font-weight: 800; letter-spacing: 0.5px; line-height: 1; }
#idsx-sidebar .idsx-sub { font-size: 10.5px; opacity: 0.65; margin-top: 3px; }
#idsx-sidebar #idsx-nav { padding: 14px 12px; overflow-y: auto; flex: 1; }
body.idsx-mma .idsx-navitem,
body.idsx-mma .idsx-grouphead { display: flex; align-items: center; gap: 12px; padding: 11px 12px; border-radius: 0; cursor: pointer; color: rgba(234,241,248,0.85); font-weight: 600; font-size: 13.5px; }
body.idsx-mma .idsx-navitem:hover,
body.idsx-mma .idsx-grouphead:hover { background: rgba(255,255,255,0.08); color: #fff; }
body.idsx-mma .idsx-navitem .idsx-gi svg,
body.idsx-mma .idsx-grouphead .idsx-gi svg { width: 20px; height: 20px; stroke: var(--brand-accent); }
body.idsx-mma .idsx-grouphead .idsx-gl,
body.idsx-mma .idsx-navitem .idsx-gl { flex: 1; }
body.idsx-mma .idsx-grouphead .idsx-caret svg { width: 14px; height: 14px; stroke: #cdd9e5; transition: transform 0.15s; }
body.idsx-mma .idsx-group.idsx-collapsed .idsx-caret svg { transform: rotate(-90deg); }
body.idsx-mma .idsx-items { margin: 4px 0 6px 10px; padding-left: 12px; border-left: 1px solid rgba(255,255,255,0.10); }
body.idsx-mma .idsx-group.idsx-collapsed .idsx-items { display: none; }
body.idsx-mma .idsx-item { display: flex; align-items: center; gap: 10px; padding: 9px 10px; margin: 2px 0; border-radius: 0; cursor: pointer; color: rgba(234,241,248,0.78); font-size: 13px; }
body.idsx-mma .idsx-item:hover { background: rgba(255,255,255,0.07); color: #fff; }
body.idsx-mma .idsx-item.idsx-active,
body.idsx-mma .idsx-home.idsx-active { background: rgba(255,140,0,0.16); color: #fff; box-shadow: inset 2px 0 0 var(--brand-accent); }
body.idsx-mma .idsx-item svg { width: 17px; height: 17px; flex: 0 0 17px; stroke: currentColor; }
#idsx-sidebar .idsx-foot { padding: 12px 18px; font-size: 10.5px; opacity: 0.55; border-top: 1px solid rgba(255,255,255,0.10); }

#idsx-topbar {
  position: fixed; top: 0; right: 0; left: var(--idsx-sidebar-w); height: var(--idsx-topbar-h); z-index: 1400;
  display: flex; align-items: center; justify-content: flex-end; gap: 10px; padding: 0 18px;
  background: rgba(15,39,64,0.72);
  -webkit-backdrop-filter: blur(20px) saturate(160%); backdrop-filter: blur(20px) saturate(160%);
  border-bottom: 1px solid rgba(255,255,255,0.14); color: #fff; font-family: Arial, Helvetica, sans-serif;
}

body.idsx-mma .euiPanel, body.idsx-mma .euiPageContent, body.idsx-mma .euiCard, body.idsx-mma .euiCodeBlock {
  background-color: rgba(18,42,68,0.62) !important; border: 1px solid rgba(255,255,255,0.10) !important; box-shadow: 0 6px 22px rgba(5,14,26,0.28) !important;
}
body.idsx-mma .euiPopover__panel, body.idsx-mma .euiModal, body.idsx-mma .euiFlyout, body.idsx-mma .euiContextMenuPanel, body.idsx-mma .euiContextMenu {
  background-color: rgba(18,42,68,0.7) !important; -webkit-backdrop-filter: blur(16px) saturate(140%); backdrop-filter: blur(16px) saturate(140%); border: 1px solid rgba(255,255,255,0.14) !important; box-shadow: 0 12px 40px rgba(5,14,26,0.45) !important;
}
body.idsx-mma .euiFieldText, body.idsx-mma .euiFieldSearch, body.idsx-mma .euiFieldNumber, body.idsx-mma .euiSelect, body.idsx-mma .euiTextArea, body.idsx-mma .euiComboBox__inputWrap {
  background-color: rgba(8,22,40,0.45) !important; border-color: rgba(255,255,255,0.12) !important;
}
body.idsx-mma .osdLoaderWrap { background: #0f2236 !important; }

/* ============================ CORPORATE BLUE — SIDEBAR (light) ============================
   Sidebar albastru corporativ (text alb) + continut deschis alb-albastrui, accente albastre.
   Colturi drepte. Layout sidebar (reutilizeaza structura, culori proprii). */
body.idsx-grigotec { background: #dbe6f3 !important; }
/* Albastrul pe containerul de scroll → acopera toata inaltimea (fara alb de pe <html> sub continut) */
body.idsx-grigotec #opensearch-dashboards-body { background-color: #dbe6f3 !important; }
body.idsx-grigotec .euiBody, body.idsx-grigotec .euiPage, body.idsx-grigotec .euiPageBody,
body.idsx-grigotec .application, body.idsx-grigotec .app-wrapper,
body.idsx-grigotec .euiPageContentBody,
body.idsx-grigotec .euiPageContent__body,
body.idsx-grigotec .euiPageTemplate,
body.idsx-grigotec .euiPageTemplate__pageContent,
body.idsx-grigotec .euiPage__body,
body.idsx-grigotec [class*="wz-module"],
body.idsx-grigotec [class*="moduleBody"],
body.idsx-grigotec [class*="-overview"] { background: transparent !important; }

body.idsx-grigotec .euiPanel, body.idsx-grigotec .euiPageContent, body.idsx-grigotec .euiCard, body.idsx-grigotec .euiCodeBlock,
body.idsx-grigotec .euiPopover__panel, body.idsx-grigotec .euiModal, body.idsx-grigotec .euiFlyout, body.idsx-grigotec .euiContextMenuPanel, body.idsx-grigotec .euiContextMenu {
  background-color: #eef4fb !important; border-color: rgba(31,78,120,0.16) !important; box-shadow: 0 2px 12px rgba(31,78,120,0.10) !important;
}
body.idsx-grigotec .euiFieldText, body.idsx-grigotec .euiFieldSearch, body.idsx-grigotec .euiFieldNumber, body.idsx-grigotec .euiSelect, body.idsx-grigotec .euiTextArea, body.idsx-grigotec .euiComboBox__inputWrap {
  background-color: #ffffff !important; border-color: rgba(31,78,120,0.20) !important;
}
body.idsx-grigotec .euiTab-isSelected,
body.idsx-grigotec .euiTab.euiTab-isSelected .euiTab__content { color: #1f6fb2 !important; box-shadow: inset 0 -2px 0 #1f6fb2 !important; }

/* Sidebar albastru */
body.idsx-grigotec #idsx-sidebar {
  background: linear-gradient(180deg, #2a6aa0 0%, #22557f 100%) !important;
  -webkit-backdrop-filter: none !important; backdrop-filter: none !important;
  border-right: 1px solid rgba(255,255,255,0.10);
  box-shadow: 2px 0 18px rgba(20,40,65,0.25);
  color: #dbe6f3;
}
body.idsx-grigotec #idsx-sidebar #idsx-brand { border-bottom-color: rgba(255,255,255,0.14); }
body.idsx-grigotec #idsx-sidebar .idsx-mark { background: #ffffff !important; box-shadow: none; }
body.idsx-grigotec #idsx-sidebar .idsx-mark svg { stroke: #1f4e78; }
body.idsx-grigotec .idsx-navitem,
body.idsx-grigotec .idsx-grouphead { display: flex; align-items: center; gap: 12px; padding: 11px 12px; border-radius: 0; cursor: pointer; font-weight: 600; font-size: 13.5px; color: rgba(238,244,251,0.85); }
body.idsx-grigotec .idsx-navitem:hover,
body.idsx-grigotec .idsx-grouphead:hover { background: rgba(255,255,255,0.12); color: #fff; }
body.idsx-grigotec .idsx-navitem .idsx-gi svg,
body.idsx-grigotec .idsx-grouphead .idsx-gi svg { width: 20px; height: 20px; stroke: #bcd6ef; }
body.idsx-grigotec .idsx-grouphead .idsx-gl,
body.idsx-grigotec .idsx-navitem .idsx-gl { flex: 1; }
body.idsx-grigotec .idsx-grouphead .idsx-caret svg { width: 14px; height: 14px; stroke: #cfe0f1; transition: transform 0.15s; }
body.idsx-grigotec .idsx-group.idsx-collapsed .idsx-caret svg { transform: rotate(-90deg); }
body.idsx-grigotec .idsx-items { margin: 4px 0 6px 10px; padding-left: 12px; border-left: 1px solid rgba(255,255,255,0.14); }
body.idsx-grigotec .idsx-group.idsx-collapsed .idsx-items { display: none; }
body.idsx-grigotec .idsx-item { display: flex; align-items: center; gap: 10px; padding: 9px 10px; margin: 2px 0; border-radius: 0; cursor: pointer; font-size: 13px; color: rgba(238,244,251,0.8); }
body.idsx-grigotec .idsx-item:hover { background: rgba(255,255,255,0.10); color: #fff; }
body.idsx-grigotec .idsx-item.idsx-active,
body.idsx-grigotec .idsx-home.idsx-active { background: rgba(255,255,255,0.16); color: #fff; box-shadow: inset 3px 0 0 #8fc0ec; }
body.idsx-grigotec .idsx-item svg { width: 17px; height: 17px; flex: 0 0 17px; stroke: currentColor; }
body.idsx-grigotec #idsx-sidebar .idsx-foot { border-top-color: rgba(255,255,255,0.12); }

/* Topbar corporate: alb cu text inchis */
body.idsx-grigotec #idsx-topbar {
  background: #22557f !important; -webkit-backdrop-filter: none !important; backdrop-filter: none !important;
  border-bottom: 1px solid rgba(255,255,255,0.12); color: #dbe6f3;
}
body.idsx-grigotec .idsx-tbtn { background: rgba(255,255,255,0.10); color: #dbe6f3; border-color: rgba(255,255,255,0.20); }
body.idsx-grigotec .idsx-tbtn:hover { background: rgba(255,255,255,0.18); }
body.idsx-grigotec .idsx-tbtn-danger:hover { background: rgba(220,80,70,0.5); border-color: rgba(220,80,70,0.7); color: #fff; }
body.idsx-grigotec #idsx-clock { color: #dbe6f3; }

body.idsx-grigotec .osdLoaderWrap { background: #dbe6f3 !important; }
body.idsx-grigotec .withUserLogged-loader::before { color: #1f4e78 !important; }

/* ============================ NATURE DISTILLED — TOP NAV (light, crem) ============================
   Tema LIGHT (dark mode nativ oprit). Totul crem (nu alb), navbar deschis crem cu
   text inchis, accent verde. Colturi drepte. Bug dropdown rezolvat (fara punte, top:100%). */
body.idsx-dodoscar {
  background:
    radial-gradient(1000px 620px at 80% 6%, rgba(150,165,115,0.10), transparent 60%),
    linear-gradient(160deg, #fcfaf5 0%, #f5f1e9 100%) !important;
}
/* Off-white pe containerul de scroll → acopera toata inaltimea (fara alb de pe <html> sub continut) */
body.idsx-dodoscar #opensearch-dashboards-body { background-color: #f5f1e9 !important; }
/* Restul containerelor mari transparente → se vede off-white-ul de dedesubt (light nativ).
   Includem .application/.app-wrapper ca fundalul de loading sa nu mai fie alb. */
body.idsx-dodoscar .euiBody, body.idsx-dodoscar .euiPage, body.idsx-dodoscar .euiPageBody,
body.idsx-dodoscar .application, body.idsx-dodoscar .app-wrapper { background: transparent !important; }

/* Suprafete crem (nu alb) */
body.idsx-dodoscar .euiPanel, body.idsx-dodoscar .euiPageContent, body.idsx-dodoscar .euiCard, body.idsx-dodoscar .euiCodeBlock,
body.idsx-dodoscar .euiPopover__panel, body.idsx-dodoscar .euiModal, body.idsx-dodoscar .euiFlyout, body.idsx-dodoscar .euiContextMenuPanel, body.idsx-dodoscar .euiContextMenu {
  background-color: #fffdf8 !important; border-color: rgba(70,90,55,0.16) !important;
}
body.idsx-dodoscar .euiFieldText, body.idsx-dodoscar .euiFieldSearch, body.idsx-dodoscar .euiFieldNumber, body.idsx-dodoscar .euiSelect, body.idsx-dodoscar .euiTextArea, body.idsx-dodoscar .euiComboBox__inputWrap {
  background-color: #fefdf9 !important; border-color: rgba(70,90,55,0.22) !important;
}

#idsx-topnav {
  position: fixed; top: 0; left: 0; right: 0; height: var(--idsx-topnav-h); z-index: 1500;
  display: flex; align-items: center; gap: 6px; padding: 0 16px;
  background: #f6f2e8; border-bottom: 1px solid rgba(70,90,55,0.20);
  color: #2c3b30; font-family: Arial, Helvetica, sans-serif;
}
#idsx-topnav #idsx-brand { display: flex; align-items: center; gap: 10px; padding-right: 14px; margin-right: 6px; border-right: 1px solid rgba(70,90,55,0.22); }
#idsx-topnav .idsx-mark { width: 34px; height: 34px; flex: 0 0 34px; border-radius: 0; background: linear-gradient(135deg, #5aa07d, #86c9a6); display: flex; align-items: center; justify-content: center; }
#idsx-topnav .idsx-mark svg { width: 19px; height: 19px; stroke: #f4f9f0; }
#idsx-topnav .idsx-title { font-size: 17px; font-weight: 800; letter-spacing: 0.5px; color: #243a2e; }
#idsx-topnav #idsx-nav { display: flex; align-items: center; gap: 2px; flex: 1; }
body.idsx-dodoscar .idsx-navitem { display: flex; align-items: center; gap: 8px; position: relative; height: var(--idsx-topnav-h); box-sizing: border-box; padding: 0 12px; border-radius: 0; cursor: pointer; white-space: nowrap; color: rgba(40,55,46,0.82); font-size: 13.5px; font-weight: 600; }
body.idsx-dodoscar .idsx-navitem:hover { background: rgba(46,125,89,0.12); color: #1f3328; }
body.idsx-dodoscar .idsx-navitem.idsx-active { color: #1f3328; }
body.idsx-dodoscar .idsx-navitem.idsx-active::after { content: ""; position: absolute; left: 8px; right: 8px; bottom: 0; height: 2px; background: #2e7d59; }
body.idsx-dodoscar .idsx-navitem .idsx-gi svg { width: 18px; height: 18px; stroke: currentColor; }
body.idsx-dodoscar .idsx-navitem .idsx-caret svg { width: 12px; height: 12px; stroke: currentColor; opacity: 0.55; }
/* Two-tier nav: optiunile secundare se deschid intr-o a doua bara orizontala,
   full-width, mai mica, fixata sub navbar-ul principal (nu dropdown-cutie). */
body.idsx-dodoscar .idsx-dropdown {
  position: fixed; top: var(--idsx-topnav-h); left: 0; right: 0; width: 100%; min-width: 0;
  display: none; flex-direction: row; align-items: center; gap: 2px; flex-wrap: wrap;
  height: 42px; padding: 0 16px; border-radius: 0; z-index: 1490;
  background: #ece6d6; border-bottom: 1px solid rgba(70,90,55,0.20); box-shadow: 0 6px 14px rgba(60,70,45,0.12);
}
body.idsx-dodoscar .idsx-hasmenu.idsx-open .idsx-dropdown { display: flex; }
body.idsx-dodoscar .idsx-hasmenu.idsx-open { background: rgba(46,125,89,0.12); color: #1f3328; }
body.idsx-dodoscar .idsx-hasmenu.idsx-open .idsx-caret svg { transform: rotate(180deg); }
body.idsx-dodoscar .idsx-dropdown .idsx-item { display: inline-flex; align-items: center; gap: 8px; height: 100%; padding: 0 14px; position: relative; border-radius: 0; cursor: pointer; white-space: nowrap; color: rgba(40,55,46,0.82); font-size: 13px; font-weight: 600; }
body.idsx-dodoscar .idsx-dropdown .idsx-item:hover { background: rgba(46,125,89,0.12); color: #1f3328; }
body.idsx-dodoscar .idsx-dropdown .idsx-item.idsx-active { color: #1f3328; }
body.idsx-dodoscar .idsx-dropdown .idsx-item.idsx-active::after { content: ""; position: absolute; left: 8px; right: 8px; bottom: 0; height: 2px; background: #2e7d59; }
body.idsx-dodoscar .idsx-dropdown .idsx-item svg { width: 16px; height: 16px; flex: 0 0 16px; stroke: currentColor; }
#idsx-topnav .idsx-right { display: flex; align-items: center; gap: 10px; }
body.idsx-dodoscar .idsx-tbtn { border-radius: 0; background: rgba(40,55,46,0.07); color: #2c3b30; border-color: rgba(70,90,55,0.22); }
body.idsx-dodoscar .idsx-tbtn:hover { background: rgba(40,55,46,0.14); }
body.idsx-dodoscar .idsx-tbtn-danger:hover { background: rgba(200,60,50,0.18); border-color: rgba(200,60,50,0.4); color: #8a2b22; }
body.idsx-dodoscar #idsx-clock { color: #2c3b30; }
body.idsx-dodoscar .euiTab-isSelected,
body.idsx-dodoscar .euiTab.euiTab-isSelected .euiTab__content { color: #2e7d59 !important; box-shadow: inset 0 -2px 0 #2e7d59 !important; }

body.idsx-dodoscar .osdLoaderWrap { background: #f5f1e9 !important; }
/* Fundal ecran de loading → off-white cald (Nature) */
body.idsx-dodoscar .withUserLogged-loader,
body.idsx-dodoscar .health-check,
body.idsx-dodoscar .withUserLogged-loader > div { background-color: #fcfaf5 !important; }
body.idsx-dodoscar .withUserLogged-loader::before { color: #213b2e !important; }

/* ============================ SUNSET / WARM — TOP NAV (light, cald) ============================
   Bara de sus = degradeu sunset (piersica→roz) cu text deschis. Continut crem cald,
   panouri mai deschise decat fundalul, accente coral. */
body.idsx-consoana { background: #fff4ec !important; }
body.idsx-consoana #opensearch-dashboards-body { background-color: #fff4ec !important; }
body.idsx-consoana .euiBody, body.idsx-consoana .euiPage, body.idsx-consoana .euiPageBody,
body.idsx-consoana .application, body.idsx-consoana .app-wrapper,
body.idsx-consoana .euiPageContentBody, body.idsx-consoana .euiPageContent__body,
body.idsx-consoana .euiPageTemplate, body.idsx-consoana .euiPageTemplate__pageContent,
body.idsx-consoana .euiPage__body, body.idsx-consoana [class*="wz-module"],
body.idsx-consoana [class*="moduleBody"], body.idsx-consoana [class*="-overview"] { background: transparent !important; }

body.idsx-consoana .euiPanel, body.idsx-consoana .euiPageContent, body.idsx-consoana .euiCard, body.idsx-consoana .euiCodeBlock,
body.idsx-consoana .euiPopover__panel, body.idsx-consoana .euiModal, body.idsx-consoana .euiFlyout, body.idsx-consoana .euiContextMenuPanel, body.idsx-consoana .euiContextMenu {
  background-color: #fffdf9 !important; border-color: rgba(200,90,60,0.16) !important; box-shadow: 0 2px 12px rgba(200,90,60,0.10) !important;
}
body.idsx-consoana .euiFieldText, body.idsx-consoana .euiFieldSearch, body.idsx-consoana .euiFieldNumber, body.idsx-consoana .euiSelect, body.idsx-consoana .euiTextArea, body.idsx-consoana .euiComboBox__inputWrap {
  background-color: #ffffff !important; border-color: rgba(200,90,60,0.22) !important;
}
body.idsx-consoana .euiTab-isSelected,
body.idsx-consoana .euiTab.euiTab-isSelected .euiTab__content { color: #e0603a !important; box-shadow: inset 0 -2px 0 #e0603a !important; }

body.idsx-consoana #idsx-topnav {
  background: linear-gradient(90deg, #ef7a52 0%, #d75a86 100%) !important;
  border-bottom: 1px solid rgba(255,255,255,0.18); color: #fff3ec;
}
body.idsx-consoana #idsx-topnav #idsx-brand { border-right: 1px solid rgba(255,255,255,0.22); }
body.idsx-consoana #idsx-topnav .idsx-mark { background: #ffffff !important; }
body.idsx-consoana #idsx-topnav .idsx-mark svg { stroke: #e0603a; }
body.idsx-consoana #idsx-topnav .idsx-title { color: #fff; }
body.idsx-consoana .idsx-navitem { display: flex; align-items: center; gap: 8px; position: relative; padding: 8px 12px; border-radius: 0; cursor: pointer; white-space: nowrap; color: rgba(255,243,236,0.9); font-size: 13.5px; font-weight: 600; }
body.idsx-consoana .idsx-navitem:hover { background: rgba(255,255,255,0.16); color: #fff; }
body.idsx-consoana .idsx-navitem.idsx-active { color: #fff; }
body.idsx-consoana .idsx-navitem.idsx-active::after { content: ""; position: absolute; left: 10px; right: 10px; bottom: 1px; height: 2px; background: #ffe1c4; border-radius: 2px; }
body.idsx-consoana .idsx-navitem .idsx-gi svg { width: 18px; height: 18px; stroke: currentColor; }
body.idsx-consoana .idsx-navitem .idsx-caret svg { width: 12px; height: 12px; stroke: currentColor; opacity: 0.7; }
body.idsx-consoana .idsx-dropdown { position: absolute; top: 100%; left: 0; min-width: 250px; display: none; flex-direction: column; padding: 8px; border-radius: 0; z-index: 1600; background: #fffaf4; border: 1px solid rgba(200,90,60,0.18); box-shadow: 0 14px 30px rgba(150,70,50,0.25); }
body.idsx-consoana .idsx-hasmenu:hover .idsx-dropdown,
body.idsx-consoana .idsx-hasmenu.idsx-open .idsx-dropdown { display: flex; }
body.idsx-consoana .idsx-dropdown .idsx-item { display: flex; align-items: center; gap: 10px; padding: 9px 10px; border-radius: 0; cursor: pointer; color: #5b3a30; font-size: 13px; font-weight: 500; }
body.idsx-consoana .idsx-dropdown .idsx-item:hover { background: rgba(224,96,58,0.10); color: #3a2018; }
body.idsx-consoana .idsx-dropdown .idsx-item.idsx-active { background: rgba(224,96,58,0.16); color: #3a2018; box-shadow: inset 2px 0 0 #e0603a; }
body.idsx-consoana .idsx-dropdown .idsx-item svg { width: 16px; height: 16px; flex: 0 0 16px; stroke: currentColor; }
body.idsx-consoana #idsx-topnav .idsx-right { display: flex; align-items: center; gap: 10px; }
body.idsx-consoana .idsx-tbtn { background: rgba(255,255,255,0.16); color: #fff3ec; border-color: rgba(255,255,255,0.28); }
body.idsx-consoana .idsx-tbtn:hover { background: rgba(255,255,255,0.26); }
body.idsx-consoana .idsx-tbtn-danger:hover { background: rgba(120,20,20,0.30); border-color: rgba(255,255,255,0.5); color: #fff; }
body.idsx-consoana #idsx-clock { color: #fff3ec; }
body.idsx-consoana .osdLoaderWrap { background: #fff4ec !important; }
body.idsx-consoana .withUserLogged-loader::before { color: #e0603a !important; }

/* ---- Comune ambelor layout-uri ---- */
body.idsx-on .osdLoaderWrap { display: flex !important; flex-direction: column; align-items: center; justify-content: center; }
body.idsx-on .osdLoaderWrap svg { display: none !important; }
body.idsx-on .withUserLogged-logo { display: none !important; }
body.idsx-on .withUserLogged-loader::before { content: "ids-ips"; display: block; text-align: center; font: 800 30px Arial, Helvetica, sans-serif; letter-spacing: 1px; color: var(--brand-accent); margin-bottom: 6px; }
/* Health-check (ecranul cu "se incarca modulele Wazuh") — inlocuim logo-ul Wazuh
   (<img class="health-check-logo">) cu marca temei active. Textele "Wazuh" sunt
   deja rescrise de rewrite() din custom.js. */
body.idsx-mma     .health-check-logo { content: url('/ui/custom/logo-mma.png') !important; }
body.idsx-grigotec .health-check-logo { content: url('/ui/custom/logo-grigotec.png') !important; }
body.idsx-dodoscar    .health-check-logo { content: url('/ui/custom/logo-dodoscar.png') !important; }
body.idsx-consoana    .health-check-logo { content: url('/ui/custom/logo-consoana.png') !important; }

body.idsx-on .euiTable, body.idsx-on .euiTableRow, body.idsx-on .euiTableRowCell, body.idsx-on .euiTableHeaderCell { background-color: transparent !important; border-color: rgba(255,255,255,0.07) !important; }
body.idsx-on .euiTableRow:hover { background-color: rgba(255,255,255,0.05) !important; }

#idsx-theme-inline { margin: 14px 0 20px; max-width: 320px; }

/* Pagina de rapoarte (reports-dashboards): in layout-ul top-nav nu exista sidebar
   care sa o impinga, iar continutul (panouri width:100%) ramane lipit stanga.
   Adaugam padding orizontal simetric pe body → panourile se restrang centrat.
   max() pastreaza padding 0 pe ecrane inguste. */
body.idsx-dodoscar.idsx-app-reports #opensearch-dashboards-body,
body.idsx-consoana.idsx-app-reports #opensearch-dashboards-body {
  padding-left: max(0px, calc((100% - 1320px) / 2)) !important;
  padding-right: max(0px, calc((100% - 1320px) / 2)) !important;
}
