/* ECNChat Theme U2A — Light Content with Dark Header */

/*
  Keep the U2 premium dark header and navigation untouched.
  Restore the content area beneath the shared shell to the light ECN layout.
*/

html.ecnU2Theme {
  color-scheme: light;
  background: #eef5fb;
}

body.ecnU2ThemeBody {
  color: #102f53 !important;
  background:
    linear-gradient(180deg, #edf5fb 0, #f8fbfe 220px, #ffffff 620px) fixed !important;
}

body.ecnU2ThemeBody::before {
  display: none !important;
}

/* Preserve dark header/menu from Theme U2. */
#ecnUnifiedSiteShell,
#ecnUnifiedSiteShell *,
.ecnU2MenuRail,
.ecnUnifiedMenu,
.ecnUnifiedMenu * {
  color-scheme: dark;
}

/* Main page canvas. */
body.ecnU2ThemeBody main,
body.ecnU2ThemeBody #wrap,
body.ecnU2ThemeBody .wrap,
body.ecnU2ThemeBody .ecnWrap,
body.ecnU2ThemeBody .page,
body.ecnU2ThemeBody .contentWrap,
body.ecnU2ThemeBody #portal,
body.ecnU2ThemeBody #main,
body.ecnU2ThemeBody .ecnU2ContentRoot {
  color: #102f53 !important;
}

/* General text below the site shell. */
body.ecnU2ThemeBody :is(
  main, #wrap, .wrap, .ecnWrap, .page, .contentWrap, #portal, #main
) a {
  color: #075fb9;
}

body.ecnU2ThemeBody :is(
  main, #wrap, .wrap, .ecnWrap, .page, .contentWrap, #portal, #main
) :is(h1, h2, h3, h4, h5, h6, strong, b) {
  color: #0b3767 !important;
}

body.ecnU2ThemeBody :is(
  main, #wrap, .wrap, .ecnWrap, .page, .contentWrap, #portal, #main
) :is(p, li, label, small, .muted, .sub, .description) {
  color: #375a78 !important;
}

/* Restore light cards and panels. */
body.ecnU2ThemeBody :is(
  .panel, .card, .box, .tile, .widget, .section, .contentCard, .sideCard,
  .toolCard, .adminCard, .settingsCard, .profileCard, .roomCard, .groupCard,
  .newsCard, .reportCard, .faqCard, .panelBody, .cardBody,
  [class*="Panel"], [class*="Card"], [class*="panel"], [class*="card"]
) {
  color: #102f53 !important;
  background-color: #ffffff !important;
  border-color: #b9d5ee !important;
  box-shadow: 0 8px 24px rgba(30, 78, 121, .10) !important;
}

body.ecnU2ThemeBody :is(
  .panelHead, .panelTitle, .cardHead, .sectionTitle, .titleBar,
  [class*="Head"], [class*="Title"]
) {
  color: #0b3767 !important;
  border-color: #bfd7ec !important;
}

/* Keep traditional blue heading strips where pages already use them. */
body.ecnU2ThemeBody :is(
  .panelHead, .cardHead, .panelTitle, .titleBar
)[style*="background"],
body.ecnU2ThemeBody .panelHead.green,
body.ecnU2ThemeBody .panelHead.orange {
  color: #fff !important;
}

/* Light forms. */
body.ecnU2ThemeBody input:not([type="checkbox"]):not([type="radio"]),
body.ecnU2ThemeBody select,
body.ecnU2ThemeBody textarea {
  color: #153a5f !important;
  background: #ffffff !important;
  border: 1px solid #a9cbea !important;
  box-shadow: inset 0 1px 2px rgba(26, 75, 116, .08) !important;
}

body.ecnU2ThemeBody input::placeholder,
body.ecnU2ThemeBody textarea::placeholder {
  color: #7890a6 !important;
}

/* Keep action buttons blue. */
body.ecnU2ThemeBody button,
body.ecnU2ThemeBody .btn,
body.ecnU2ThemeBody input[type="submit"],
body.ecnU2ThemeBody input[type="button"] {
  color: #fff !important;
}

/* Restore light tables. */
body.ecnU2ThemeBody table {
  color: #12385e !important;
  background: #ffffff !important;
  border-color: #b7d1e7 !important;
}

body.ecnU2ThemeBody th {
  color: #ffffff !important;
  background: linear-gradient(180deg, #257dc1, #0c5b9f) !important;
  border-color: #7fb2d9 !important;
}

body.ecnU2ThemeBody td {
  color: #173b5d !important;
  background: #ffffff !important;
  border-color: #c8dbea !important;
}

body.ecnU2ThemeBody tr:nth-child(even) td {
  background: #f2f7fb !important;
}

/* Light notices and status boxes. */
body.ecnU2ThemeBody :is(.notice, .alert, .status, .message, .infoBox) {
  color: #123b63 !important;
  background: #eef7ff !important;
  border-color: #a8ccea !important;
}

/* Restore content heroes to light styling, while keeping blue accents. */
body.ecnU2ThemeBody :is(.hero, .pageHero, .helpHero, .groupsHero, .portalHero) {
  color: #12385e !important;
  background:
    radial-gradient(circle at 88% 40%, rgba(61, 151, 226, .15), transparent 22rem),
    linear-gradient(135deg, #ffffff, #edf6fd) !important;
  border-color: #a9cbea !important;
  box-shadow: 0 10px 30px rgba(30, 78, 121, .10) !important;
}

body.ecnU2ThemeBody :is(.hero, .pageHero, .helpHero, .groupsHero, .portalHero)::after {
  opacity: .15;
  border-color: rgba(36, 127, 204, .35);
  box-shadow:
    inset 0 0 60px rgba(32, 132, 214, .14),
    0 0 60px rgba(32, 132, 214, .08);
}

body.ecnU2ThemeBody :is(.hero, .pageHero, .helpHero, .groupsHero, .portalHero)
:is(h1, h2, h3, p, small, strong, b) {
  color: #0b3767 !important;
}

/* Footer/content separators. */
body.ecnU2ThemeBody hr {
  border-color: #c8dbea !important;
}

/* Keep modal sign-in dark and visually connected to the header. */
#ecnUnifiedSignInDialog,
#ecnUnifiedSignInDialog * {
  color-scheme: dark;
}

#ecnUnifiedSignInDialog input {
  color: #ffffff !important;
  background: rgba(2, 14, 35, .92) !important;
  border-color: rgba(119, 180, 255, .42) !important;
}

@media (max-width: 700px) {
  body.ecnU2ThemeBody {
    background: #f7fbfe !important;
  }
}
