/* New Life Host - Custom Dark Theme for Roundcube */

/* Force dark mode always */
html {
  scrollbar-color: #4DBF8A #131319;
}

html:not(.touch) ::-webkit-scrollbar-track {
  background-color: #131319;
}
html:not(.touch) ::-webkit-scrollbar-thumb {
  background-color: #4DBF8A;
}

body {
  color: #FAFAFA !important;
  background-color: #0E0E13 !important;
}

/* Task menu sidebar */
#layout-menu {
  background: #131319 !important;
  border-right-color: #393D42 !important;
}

#layout-menu a.button {
  color: #ABB1B9 !important;
}

#layout-menu a.button.selected,
#layout-menu a.button:hover {
  color: #4DBF8A !important;
  background-color: #232830 !important;
}

#layout-menu a.button-logout {
  color: #dc4d2f !important;
}

/* Header and footer bars */
#layout > div > .header,
.header {
  background-color: #1a1d24 !important;
  border-color: #393D42 !important;
  color: #FAFAFA !important;
}

#layout > div > .footer,
.footer {
  background-color: #131319 !important;
  border-color: #393D42 !important;
  color: #ABB1B9 !important;
}

#layout > div > .header a.button,
#layout > div > .footer a.button {
  color: #FAFAFA !important;
}

/* Layout panels */
#layout-sidebar,
#layout-list,
#layout-content {
  background-color: #131319 !important;
  border-color: #393D42 !important;
}

/* Toolbar */
.toolbar {
  background-color: #1a1d24 !important;
}

.toolbar a.button {
  color: #ABB1B9 !important;
}

.toolbar a.button:hover {
  color: #4DBF8A !important;
  background-color: #232830 !important;
}

/* Searchbar */
#searchbar,
.searchbar {
  background-color: #232830 !important;
  border-color: #393D42 !important;
}

#searchbar input,
.searchbar input {
  color: #FAFAFA !important;
  background-color: #232830 !important;
}

/* Message list */
.messagelist tr,
.messagelist tr td {
  color: #DADDE1 !important;
  border-color: #232830 !important;
}

.messagelist tr.selected,
.messagelist tr.selected td {
  background-color: #232830 !important;
  color: #4DBF8A !important;
}

.messagelist tr:hover td,
.messagelist tr.focused td {
  background-color: #1a1d24 !important;
}

.messagelist tr .subject span.unread {
  color: #4DBF8A !important;
}

/* Folder list */
.listing {
  background-color: transparent !important;
}

.listing li a,
.listing li span {
  color: #DADDE1 !important;
}

.listing li.selected > a,
.listing li.selected > div > a {
  background-color: #232830 !important;
  color: #4DBF8A !important;
}

.listing li:hover > a,
.listing li:hover > div > a {
  background-color: #1a1d24 !important;
}

.treelist li div.treetoggle {
  color: #ABB1B9 !important;
}

/* Listing borders */
.listing tbody td,
.listing li {
  border-color: #232830 !important;
}

/* Content frame / message view */
.content,
#messagecontent,
.formcontent,
#message-header {
  background-color: #131319 !important;
  color: #FAFAFA !important;
}

/* Message headers */
.message-part .headers-table td {
  color: #ABB1B9 !important;
}

.message-part .headers-table td.header-title {
  color: #4DBF8A !important;
}

/* Forms */
input, select, textarea, .form-control {
  background-color: #232830 !important;
  color: #FAFAFA !important;
  border-color: #393D42 !important;
}

input:focus, select:focus, textarea:focus, .form-control:focus {
  border-color: #4DBF8A !important;
  box-shadow: 0 0 0 0.2rem rgba(77, 191, 138, 0.25) !important;
}

/* Buttons */
.btn-primary,
button.btn-primary,
input.btn-primary,
a.btn-primary {
  background-color: #4DBF8A !important;
  border-color: #4DBF8A !important;
  color: #131319 !important;
  font-weight: bold !important;
}

.btn-primary:hover {
  background-color: #5CD99D !important;
  border-color: #5CD99D !important;
  color: #131319 !important;
}

.btn-secondary {
  background-color: #393D42 !important;
  border-color: #393D42 !important;
  color: #FAFAFA !important;
}

.btn-secondary:hover {
  background-color: #4a4f55 !important;
}

/* Login page */
#login-form {
  background-color: #232830 !important;
  border-radius: 12px !important;
  border: 1px solid #393D42 !important;
}

#login-form .formbuttons .btn {
  background-color: #4DBF8A !important;
  border-color: #4DBF8A !important;
  color: #131319 !important;
  font-weight: bold !important;
  border-radius: 6px !important;
}

#login-form .formbuttons .btn:hover {
  background-color: #5CD99D !important;
}

#login-form label {
  color: #ABB1B9 !important;
}

#login-footer {
  color: #ABB1B9 !important;
}

#login-footer a {
  color: #4DBF8A !important;
}

/* Logo on login page */
#logo {
  max-width: 80px !important;
  border-radius: 12px !important;
}

/* Dropdown menus / popovers */
.popover,
.dropdown-menu,
.popup {
  background-color: #232830 !important;
  border-color: #393D42 !important;
}

.popover .popover-header {
  background-color: #1a1d24 !important;
  border-color: #393D42 !important;
  color: #FAFAFA !important;
}

.dropdown-menu a,
.popover a,
.popup a {
  color: #DADDE1 !important;
}

.dropdown-menu a:hover,
.popover a:hover {
  background-color: #4DBF8A !important;
  color: #131319 !important;
}

/* Dialog/Modal */
.ui-dialog,
.modal-content {
  background-color: #232830 !important;
  border-color: #393D42 !important;
  color: #FAFAFA !important;
}

.modal-header {
  border-color: #393D42 !important;
  color: #FAFAFA !important;
}

.modal-footer {
  border-color: #393D42 !important;
}

/* Alerts / messages */
.ui-alert,
.notice,
.boxinformation,
.boxwarning,
.boxerror {
  background-color: #232830 !important;
  border-color: #393D42 !important;
}

/* Links */
a {
  color: #4DBF8A !important;
}

a:hover {
  color: #5CD99D !important;
}

/* Quota bar */
.quota-text {
  color: #ABB1B9 !important;
}

.quota-bar .bar {
  background-color: #4DBF8A !important;
}

/* Propform (settings) */
.propform td,
.propform th {
  border-color: #393D42 !important;
  color: #DADDE1 !important;
}

fieldset legend {
  color: #4DBF8A !important;
}

/* Tab navigation */
.tabsbar a,
.nav-tabs a {
  color: #ABB1B9 !important;
}

.tabsbar a.selected,
.tabsbar a:hover,
.nav-tabs a.active,
.nav-tabs a:hover {
  color: #4DBF8A !important;
  border-color: #4DBF8A !important;
}

/* Composing email */
#composebody,
.mce-content-body {
  background-color: #1a1d24 !important;
  color: #FAFAFA !important;
}

/* Badge/unread count */
.badge {
  background-color: #4DBF8A !important;
  color: #131319 !important;
}

/* Product name text */
#topline .topleft,
span.voice {
  color: #4DBF8A !important;
}

/* Custom NLH branding accent bar on top */
body::before {
  content: "";
  display: block;
  height: 3px;
  background: linear-gradient(90deg, #4DBF8A, #5CD99D, #438A6A);
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 99999;
}
