/* cyrillic-ext */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url(/brand-fonts/Montserrat-cyrillic-ext.woff2) format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url(/brand-fonts/Montserrat-cyrillic.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* vietnamese */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url(/brand-fonts/Montserrat-vietnamese.woff2) format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url(/brand-fonts/Montserrat-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url(/brand-fonts/Montserrat-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

:root { --analytics-accent:#497e70; --analytics-bg:#f4f3ed; --analytics-panel:#fff; --analytics-ink:#243f49; --analytics-muted:#63766e; --analytics-line:#d7dfd5; }
html.dark-mode { --analytics-accent:#9ec4b1; --analytics-bg:#0d171d; --analytics-panel:#142128; --analytics-ink:#e9efe9; --analytics-muted:#a2b5ac; --analytics-line:#293b3e; }
body { font-family:Montserrat,Arial,sans-serif; }
#layout { background:var(--analytics-bg);color:var(--analytics-ink); }
#layout-menu { background:var(--analytics-panel);border-right:1px solid var(--analytics-line); }
#taskmenu a { color:var(--analytics-muted); }
#taskmenu a.selected,#taskmenu a:hover { background:rgba(73,126,112,.12);color:var(--analytics-accent); }
#taskmenu a.compose { background:var(--analytics-accent);color:white; }
#layout-sidebar,#layout-list,#layout-content { border-color:var(--analytics-line); }
#layout-sidebar .header,#layout-list .header,#layout-content .header,.menu.toolbar { background:var(--analytics-panel);border-color:var(--analytics-line); }
#layout-sidebar .treelist li.selected>a { background:rgba(73,126,112,.13);color:var(--analytics-accent); }
.messagelist tbody tr.selected td { background:rgba(73,126,112,.15)!important;color:var(--analytics-ink)!important; }
.messagelist tbody tr td { border-bottom:1px solid var(--analytics-line); }
#logo { content:url('/analytics-brand/logo-light.svg');object-fit:contain; }
html.dark-mode #logo { content:url('/analytics-brand/logo-dark.svg'); }
body.task-login { background:var(--analytics-bg);color:var(--analytics-ink); }
body.task-login #layout { min-height:100vh; }
body.task-login #layout-content { background:var(--analytics-panel);border:1px solid var(--analytics-line);border-radius:18px;box-shadow:0 20px 80px rgba(36,63,73,.08);padding:38px;max-width:420px;margin:auto; }
body.task-login #logo { width:260px;max-height:none;height:66px;margin:0 auto 25px; }
body.task-login #login-form { margin:0; }
body.task-login input.form-control { background:var(--analytics-bg);border:1px solid var(--analytics-line);color:var(--analytics-ink);border-radius:7px;min-height:47px; }
body.task-login input.form-control:focus { border-color:var(--analytics-accent);box-shadow:0 0 0 3px rgba(73,126,112,.13); }
body.task-login #rcmloginsubmit { background:var(--analytics-accent);border:0;border-radius:7px;min-height:47px;font-weight:600; }
body.task-login #login-footer { color:var(--analytics-muted);font-size:12px; }
.analytics-theme-switch { position:fixed;top:26px;right:30px;border:1px solid var(--analytics-line);border-radius:6px;padding:9px 14px;background:var(--analytics-panel);color:var(--analytics-ink);font-size:12px;cursor:pointer;z-index:10; }
@media(min-width:1000px) {
 body.task-login #layout { display:flex;align-items:center;justify-content:center;padding:80px 50px;gap:75px; }
 body.task-login #layout::before { content:'';display:block;width:420px;height:420px;flex:0 1 420px;background:url('/analytics-brand/graph.svg') center/contain no-repeat; }
 body.task-login #layout-content { flex:0 0 390px;width:390px;margin:0; }
}
@media(max-width:600px) {body.task-login #layout-content {width:calc(100% - 34px);padding:28px 22px;box-shadow:none;} .analytics-theme-switch {top:15px;right:17px;}body.task-login #logo {width:230px;}}
/* Elastic positions its login elements for the stock full-height layout. */
body.task-login #layout-content { height:auto!important;min-height:0;overflow:visible;display:block; }
body.task-login #logo { position:static!important;top:auto!important;left:auto!important;transform:none!important;margin:0 auto 26px!important;display:block; }
body.task-login #login-form { position:static!important;top:auto!important;left:auto!important;transform:none!important;width:100%;max-width:none;padding:0;margin:0!important; }
body.task-login #login-footer { position:static!important;bottom:auto!important;left:auto!important;transform:none!important;width:auto;margin:22px 0 0!important;text-align:center; }

/* Compact menu uses the site icon; the empty preview retains the graph. */
#layout-menu #logo,html.dark-mode #layout-menu #logo {
 content:url('/analytics-brand/favicon.svg');width:34px;height:34px;max-width:34px;object-fit:contain;
}
html.analytics-watermark body,html.dark-mode.analytics-watermark body {
 background:var(--analytics-bg) url('/analytics-brand/graph.svg') center no-repeat!important;
 background-size:min(65%,460px)!important;background-blend-mode:normal!important;
}
html.analytics-watermark body::before { display:none!important; }

/* Montserrat: text controls inherit the brand font; icon fonts stay native. */
body,input,textarea,select,button,.form-control {font-family:Montserrat,Arial,sans-serif!important;}

/* Complete the domain palette inside Elastic, including its dark overrides. */
#layout > #layout-sidebar,#layout > #layout-list,#layout > #layout-content {
 background:var(--analytics-panel);color:var(--analytics-ink);
}
#layout .header,#layout .footer,#layout .searchbar,#layout .listing thead th {
 background:var(--analytics-panel)!important;color:var(--analytics-muted)!important;border-color:var(--analytics-line)!important;
}
#layout .searchbar input,#layout input.form-control,#layout textarea.form-control,#layout select.form-control {
 background:var(--analytics-bg)!important;color:var(--analytics-ink)!important;border-color:var(--analytics-line)!important;
}
#layout input.form-control:focus,#layout textarea.form-control:focus,#layout select.form-control:focus {
 border-color:var(--analytics-accent)!important;box-shadow:0 0 0 3px rgba(73,126,112,.12)!important;
}
#layout #taskmenu a.compose,html.dark-mode #layout #taskmenu a.compose {
 color:var(--analytics-panel)!important;background:var(--analytics-accent)!important;
}
#layout #taskmenu a.compose::before,html.dark-mode #layout #taskmenu a.compose::before {color:inherit!important;}
#layout .menu.toolbar a,#layout .menu.toolbar a::before,#layout .listing td,#layout .listing td a {
 color:var(--analytics-muted)!important;
}
#layout .listing tr.unread td,#layout .listing tr.unread td a {color:var(--analytics-ink)!important;}
#layout .menu.toolbar a:not(.disabled):hover,#layout .menu.toolbar a:not(.disabled):hover::before {
 color:var(--analytics-accent)!important;
}
#layout .listing tr.selected td,#layout .listing tr.selected td a {
 background:rgba(73,126,112,.14)!important;color:var(--analytics-ink)!important;
}
#layout #mailboxlist li.selected>a,#layout #mailboxlist li.selected>a::before {
 background:rgba(73,126,112,.13)!important;color:var(--analytics-accent)!important;
}
#layout #mailboxlist li>a,#layout #mailboxlist li>a::before {color:var(--analytics-muted)!important;}
#layout button.mainaction,#layout input.mainaction,#layout a.button.mainaction {
 background:var(--analytics-accent)!important;border-color:var(--analytics-accent)!important;color:var(--analytics-panel)!important;
}
#layout .menu.toolbar a.disabled {opacity:.4;}
#layout .listing td {border-color:var(--analytics-line)!important;}

/* Keep native dark menu overrides inside the Fabula palette. */
#layout #layout-menu {background:var(--analytics-panel)!important;border-color:var(--analytics-line)!important;}
#layout #taskmenu a:not(.compose),#layout #taskmenu a:not(.compose)::before {
 color:var(--analytics-muted)!important;background:transparent!important;
}
#layout #taskmenu a.selected:not(.compose),#layout #taskmenu a.selected:not(.compose)::before,
#layout #taskmenu a:not(.compose):hover,#layout #taskmenu a:not(.compose):hover::before {
 color:var(--analytics-accent)!important;
}
#layout #taskmenu a.selected:not(.compose),#layout #taskmenu a:not(.compose):hover {
 background:rgba(73,126,112,.12)!important;
}


/* Use the brand palette for navigation, controls, and both color modes. */
#layout #taskmenu .special-buttons{background:var(--analytics-panel)!important;border-top:1px solid var(--analytics-line);}
#layout #taskmenu .special-buttons a{background:var(--analytics-panel)!important;color:var(--analytics-muted)!important;}
#layout #taskmenu .special-buttons a::before{color:inherit!important;}
#layout #taskmenu .special-buttons a:hover,#layout #taskmenu .special-buttons a:focus-visible{background:rgba(73,126,112,.12)!important;color:var(--analytics-accent)!important;}
#layout #taskmenu a.compose,#layout button.mainaction,#layout input.mainaction,#layout a.button.mainaction,#layout .btn-primary{background:var(--analytics-action,var(--analytics-accent))!important;border-color:var(--analytics-action,var(--analytics-accent))!important;color:var(--analytics-panel)!important;}
#layout #taskmenu a.compose::before{color:inherit!important;}
body.task-login #login-form .input-group-text{background:var(--analytics-bg)!important;border-color:var(--analytics-line)!important;color:var(--analytics-muted)!important;}
#layout input::placeholder{color:var(--analytics-muted)!important;opacity:1;}
#layout .listing tbody tr td{background:var(--analytics-panel);}
#layout .listing tbody tr:nth-child(even):not(.selected) td{background:var(--analytics-bg);}
#layout .custom-control-input:checked~.custom-control-label::before{background:var(--analytics-accent);border-color:var(--analytics-accent);}
#layout .nav-tabs .nav-link.active{background:var(--analytics-panel);color:var(--analytics-accent);border-color:var(--analytics-line);}
#layout .input-group-text{background:var(--analytics-panel)!important;color:var(--analytics-muted)!important;border-color:var(--analytics-line)!important;}
.ui-dialog,.ui-dialog .ui-dialog-titlebar,.popover,.popupmenu{background:var(--analytics-panel)!important;color:var(--analytics-ink)!important;border-color:var(--analytics-line)!important;}
@media(max-width:999px){body.task-login #layout{padding:80px 0 35px;}body.task-login #layout-content{flex:0 1 420px;max-width:min(420px,calc(100% - 34px));min-width:0;}}

/* Framed settings pages belong to the interface; mail bodies are excluded. */
html body.task-settings,html.dark-mode body.task-settings{background:var(--analytics-panel)!important;color:var(--analytics-ink)!important;}
body.task-settings .form-control{background:var(--analytics-bg)!important;color:var(--analytics-ink)!important;border-color:var(--analytics-line)!important;}
body.task-settings .form-control:focus{border-color:var(--analytics-accent)!important;}
body.task-settings .frame-content a,.ui-dialog a:not(.button){color:var(--analytics-accent);}
body.task-settings button.mainaction,body.task-settings .btn-primary,.ui-dialog .btn-primary,.popover .btn-primary{background:var(--analytics-action,var(--analytics-accent))!important;border-color:var(--analytics-action,var(--analytics-accent))!important;color:var(--analytics-panel)!important;}
body.task-settings .records-table td,body.task-settings .records-table th{border-color:var(--analytics-line)!important;}
body.task-settings .custom-control-input:checked~.custom-control-label::before{background:var(--analytics-accent);border-color:var(--analytics-accent);}
.ui-dialog .btn-secondary{background:var(--analytics-panel);border-color:var(--analytics-line);color:var(--analytics-muted);}
