/* SmartBiz Mail skin layer over Roundcube Elastic */
:root {
  --smartbiz-yellow: #ffcb05;
  --smartbiz-black: #080808;
  --smartbiz-ink: #111111;
  --smartbiz-muted: #5f6368;
  --smartbiz-line: #dedede;
  --smartbiz-soft: #f6f4ef;
}

/* 2026-08-27 mailbox production override.
   Roundcube's primary task rail is narrow by design; keep it icon-only and
   move readable navigation to the folder/list panes to prevent clipping. */
body:not(.task-login) {
  --smartbiz-rail: 76px;
  --smartbiz-folders: 360px;
  --smartbiz-messages: 520px;
  --smartbiz-yellow: #ffcb05;
  --smartbiz-night: #07120f;
  --smartbiz-panel: #ffffff;
  --smartbiz-paper: #fbfaf4;
  --smartbiz-border: rgba(7, 18, 15, .12);
}

body:not(.task-login) #layout,
body:not(.task-login) #layout-content,
body:not(.task-login) #layout-list,
body:not(.task-login) #layout-sidebar {
  color: #12201d !important;
}

body:not(.task-login) #layout-menu {
  width: var(--smartbiz-rail) !important;
  min-width: var(--smartbiz-rail) !important;
  max-width: var(--smartbiz-rail) !important;
  background: #ffffff !important;
  border-right: 1px solid var(--smartbiz-border) !important;
  overflow: hidden !important;
  z-index: 50 !important;
}

body:not(.task-login) #layout-menu .popover-header,
body:not(.task-login) #layout-menu .header {
  height: 72px !important;
  min-height: 72px !important;
  padding: 0 !important;
  background: #ffffff !important;
  border-bottom: 1px solid var(--smartbiz-border) !important;
}

body:not(.task-login) #layout-menu .popover-header::before,
body:not(.task-login) #layout-menu .header::before {
  width: 54px !important;
  height: 28px !important;
  left: 10px !important;
  top: 22px !important;
  background-size: contain !important;
  background-position: center !important;
}

body:not(.task-login) #taskmenu,
body:not(.task-login) #layout-menu .special-buttons {
  width: var(--smartbiz-rail) !important;
  padding: 10px 0 !important;
  background: #ffffff !important;
}

body:not(.task-login) #taskmenu a,
body:not(.task-login) #layout-menu .special-buttons a {
  width: 58px !important;
  height: 58px !important;
  min-height: 58px !important;
  margin: 7px 9px !important;
  padding: 0 !important;
  border-radius: 18px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  color: #07120f !important;
  background: transparent !important;
  overflow: hidden !important;
}

body:not(.task-login) #taskmenu a::before,
body:not(.task-login) #layout-menu .special-buttons a::before {
  margin: 0 !important;
  font-size: 25px !important;
  line-height: 1 !important;
  color: currentColor !important;
}

body:not(.task-login) #taskmenu a .inner,
body:not(.task-login) #taskmenu a span,
body:not(.task-login) #layout-menu .special-buttons a .inner,
body:not(.task-login) #layout-menu .special-buttons a span {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  margin: -1px !important;
  padding: 0 !important;
  border: 0 !important;
  clip: rect(0 0 0 0) !important;
  clip-path: inset(50%) !important;
  overflow: hidden !important;
  white-space: nowrap !important;
}

body:not(.task-login) #taskmenu a.selected,
body:not(.task-login) #taskmenu a:hover,
body:not(.task-login) #layout-menu .special-buttons a:hover {
  background: var(--smartbiz-yellow) !important;
  color: #07120f !important;
}

body:not(.task-login) #layout-menu .special-buttons {
  border-top: 1px solid var(--smartbiz-border) !important;
}

@media (min-width: 1100px) {
  body:not(.task-login) #layout-sidebar {
    left: var(--smartbiz-rail) !important;
    width: var(--smartbiz-folders) !important;
    background: var(--smartbiz-paper) !important;
    border-right: 1px solid var(--smartbiz-border) !important;
  }

  body:not(.task-login) #layout-list {
    left: calc(var(--smartbiz-rail) + var(--smartbiz-folders)) !important;
    width: var(--smartbiz-messages) !important;
    background: #ffffff !important;
    border-right: 1px solid var(--smartbiz-border) !important;
  }

  body:not(.task-login) #layout-content {
    left: calc(var(--smartbiz-rail) + var(--smartbiz-folders) + var(--smartbiz-messages)) !important;
    background: #ffffff !important;
  }
}

body:not(.task-login) #layout-sidebar .header,
body:not(.task-login) #layout-list .header,
body:not(.task-login) #layout-content .header,
body:not(.task-login) .toolbar {
  background: #ffffff !important;
  border-color: var(--smartbiz-border) !important;
  color: #12201d !important;
}

body:not(.task-login) #mailboxlist li a {
  min-height: 44px !important;
  padding: 12px 18px !important;
  color: #12201d !important;
  font-weight: 700 !important;
  border-radius: 0 !important;
}

body:not(.task-login) #mailboxlist li.selected > a,
body:not(.task-login) #mailboxlist li a:hover {
  background: #fff0a8 !important;
  color: #07120f !important;
}

body:not(.task-login) #messagelist tbody td,
body:not(.task-login) #messagelist tbody a,
body:not(.task-login) .listing tbody td,
body:not(.task-login) .listing tbody a {
  color: #12201d !important;
}

body:not(.task-login) .searchbar,
body:not(.task-login) input[type="text"],
body:not(.task-login) input[type="search"],
body:not(.task-login) textarea {
  background: #ffffff !important;
  color: #12201d !important;
  border-color: rgba(7, 18, 15, .18) !important;
}

body:not(.task-login) #layout-content .watermark,
body:not(.task-login) .watermark {
  opacity: .07 !important;
  filter: grayscale(1) !important;
}

body:not(.task-login) img[src*="roundcube"],
body:not(.task-login) .roundcube-logo {
  display: none !important;
}

html[data-smartbiz-theme="dark"] body:not(.task-login),
body.dark-mode:not(.task-login) {
  --smartbiz-panel: #111b1a;
  --smartbiz-paper: #101917;
  --smartbiz-border: rgba(255, 255, 255, .14);
  background: #07120f !important;
  color: #f8f4e8 !important;
}

html[data-smartbiz-theme="dark"] body:not(.task-login) #layout-menu,
body.dark-mode:not(.task-login) #layout-menu,
html[data-smartbiz-theme="dark"] body:not(.task-login) #taskmenu,
body.dark-mode:not(.task-login) #taskmenu,
html[data-smartbiz-theme="dark"] body:not(.task-login) #layout-menu .special-buttons,
body.dark-mode:not(.task-login) #layout-menu .special-buttons,
html[data-smartbiz-theme="dark"] body:not(.task-login) #layout-sidebar,
body.dark-mode:not(.task-login) #layout-sidebar,
html[data-smartbiz-theme="dark"] body:not(.task-login) #layout-list,
body.dark-mode:not(.task-login) #layout-list,
html[data-smartbiz-theme="dark"] body:not(.task-login) #layout-content,
body.dark-mode:not(.task-login) #layout-content,
html[data-smartbiz-theme="dark"] body:not(.task-login) #layout-sidebar .header,
body.dark-mode:not(.task-login) #layout-sidebar .header,
html[data-smartbiz-theme="dark"] body:not(.task-login) #layout-list .header,
body.dark-mode:not(.task-login) #layout-list .header,
html[data-smartbiz-theme="dark"] body:not(.task-login) #layout-content .header,
body.dark-mode:not(.task-login) #layout-content .header,
html[data-smartbiz-theme="dark"] body:not(.task-login) .toolbar,
body.dark-mode:not(.task-login) .toolbar {
  background: #101917 !important;
  border-color: var(--smartbiz-border) !important;
  color: #f8f4e8 !important;
}

html[data-smartbiz-theme="dark"] body:not(.task-login) #taskmenu a,
body.dark-mode:not(.task-login) #taskmenu a,
html[data-smartbiz-theme="dark"] body:not(.task-login) #layout-menu .special-buttons a,
body.dark-mode:not(.task-login) #layout-menu .special-buttons a,
html[data-smartbiz-theme="dark"] body:not(.task-login) #mailboxlist li a,
body.dark-mode:not(.task-login) #mailboxlist li a,
html[data-smartbiz-theme="dark"] body:not(.task-login) #messagelist tbody td,
body.dark-mode:not(.task-login) #messagelist tbody td,
html[data-smartbiz-theme="dark"] body:not(.task-login) #messagelist tbody a,
body.dark-mode:not(.task-login) #messagelist tbody a,
html[data-smartbiz-theme="dark"] body:not(.task-login) .listing tbody td,
body.dark-mode:not(.task-login) .listing tbody td,
html[data-smartbiz-theme="dark"] body:not(.task-login) .listing tbody a,
body.dark-mode:not(.task-login) .listing tbody a {
  color: #f8f4e8 !important;
}

html[data-smartbiz-theme="dark"] body:not(.task-login) #taskmenu a.selected,
body.dark-mode:not(.task-login) #taskmenu a.selected,
html[data-smartbiz-theme="dark"] body:not(.task-login) #taskmenu a:hover,
body.dark-mode:not(.task-login) #taskmenu a:hover,
html[data-smartbiz-theme="dark"] body:not(.task-login) #mailboxlist li.selected > a,
body.dark-mode:not(.task-login) #mailboxlist li.selected > a,
html[data-smartbiz-theme="dark"] body:not(.task-login) #mailboxlist li a:hover,
body.dark-mode:not(.task-login) #mailboxlist li a:hover {
  background: var(--smartbiz-yellow) !important;
  color: #07120f !important;
}

@media (max-width: 1099px) {
  body:not(.task-login) {
    --smartbiz-rail: 68px;
  }

  body:not(.task-login) #layout-menu {
    width: var(--smartbiz-rail) !important;
    min-width: var(--smartbiz-rail) !important;
  }

  body:not(.task-login) #taskmenu a,
  body:not(.task-login) #layout-menu .special-buttons a {
    width: 52px !important;
    height: 52px !important;
    min-height: 52px !important;
    margin: 6px 8px !important;
  }
}

body {
  font-family: "MTN Brighter Sans", Roboto, Arial, Helvetica, sans-serif;
}

a,
.listing td a,
.menu a:focus,
.menu a:hover {
  color: #111;
}

.btn-primary,
button.btn-primary,
input.button.mainaction,
a.button.mainaction,
.formbuttons .button {
  color: #111 !important;
  background-color: var(--smartbiz-yellow) !important;
  border-color: var(--smartbiz-yellow) !important;
  border-radius: 12px !important;
  font-weight: 900 !important;
}

.btn-primary:hover,
button.btn-primary:hover,
input.button.mainaction:hover,
a.button.mainaction:hover {
  background-color: #f4c000 !important;
  border-color: #f4c000 !important;
}

#layout-menu,
html.dark-mode #layout-menu {
  background: #090909 !important;
}

#layout-menu .popover-header,
html.dark-mode #layout-menu .popover-header {
  background: #090909 !important;
}

#layout-menu .menu a.selected,
#layout-menu .menu a:focus,
#layout-menu .menu a:hover {
  color: var(--smartbiz-yellow) !important;
  background: rgba(255, 203, 5, .12) !important;
}

#layout>div>.header,
#layout>div>.footer {
  background: #fff !important;
  border-color: rgba(15, 23, 42, .08) !important;
}

.listing tbody tr.selected td,
.listing li.selected,
.listing tr.selected td {
  background-color: rgba(255, 203, 5, .18) !important;
  color: #111 !important;
}

.searchbar input,
input.form-control,
textarea.form-control {
  border-radius: 12px !important;
}

html.dark-mode body:not(.task-login) {
  background: #070707;
}

html.dark-mode #layout-content,
html.dark-mode #layout-list,
html.dark-mode #layout-sidebar,
html.dark-mode #layout>div>.header,
html.dark-mode #layout>div>.footer {
  background: #0f0f0f !important;
  border-color: rgba(255, 255, 255, .12) !important;
}

html.dark-mode .listing tbody tr.selected td,
html.dark-mode .listing li.selected,
html.dark-mode .listing tr.selected td {
  background-color: rgba(255, 203, 5, .18) !important;
  color: #fff !important;
}

/* Login experience */
body.task-login {
  margin: 0 !important;
  background: #fff !important;
  color: #0b0b0b !important;
  min-width: 320px !important;
  overflow: hidden !important;
}

body.task-login:before {
  content: none !important;
  display: none !important;
}

body.task-login #layout,
body.task-login #layout-content,
body.task-login #login-form,
body.task-login .smartbiz-login-v1,
body.task-login .smartbiz-login-v1 * {
  box-sizing: border-box !important;
}

body.task-login #layout {
  display: block !important;
  width: 100vw !important;
  height: 100vh !important;
  min-height: 100vh !important;
  overflow: hidden !important;
}

body.task-login #layout-menu,
body.task-login #layout-sidebar,
body.task-login #layout-list,
body.task-login #layout-content > .header,
body.task-login #layout-content > .footer,
body.task-login .popover-header,
body.task-login .roundcube-logo,
body.task-login .logo,
body.task-login #logo,
body.task-login img[src*="roundcube"],
body.task-login img[alt*="Roundcube"],
body.task-login img[alt*="roundcube"] {
  display: none !important;
}

body.task-login #layout-content.smartbiz-login-v1 {
  position: fixed !important;
  inset: 0 !important;
  display: grid !important;
  grid-template-rows: 78px minmax(0, 1fr) auto !important;
  width: 100vw !important;
  height: 100vh !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: auto !important;
  background: #fff !important;
}

.smartbiz-login-topbar {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 24px !important;
  min-height: 78px !important;
  padding: 0 44px !important;
  background: #fff !important;
  border-bottom: 1px solid rgba(15, 23, 42, .06) !important;
  z-index: 3 !important;
}

.smartbiz-logo-wrap {
  position: relative !important;
  display: block !important;
  width: 178px !important;
  height: 52px !important;
  flex: 0 0 auto !important;
}

.smartbiz-login-logo {
  position: absolute !important;
  inset: 0 auto auto 0 !important;
  display: block !important;
  width: 178px !important;
  height: 52px !important;
  object-fit: contain !important;
  object-position: left center !important;
  padding: 0 !important;
  background: transparent !important;
  border-radius: 0 !important;
}

.smartbiz-logo-dark {
  opacity: 0 !important;
}

.smartbiz-theme-switch {
  display: inline-flex !important;
  align-items: center !important;
  gap: 3px !important;
  height: 42px !important;
  padding: 3px !important;
  background: #f3f3f3 !important;
  border: 2px solid var(--smartbiz-line) !important;
  border-radius: 999px !important;
}

.smartbiz-theme-switch button {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-width: 58px !important;
  height: 32px !important;
  padding: 0 12px !important;
  color: #333 !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 999px !important;
  box-shadow: none !important;
  cursor: pointer !important;
  font-size: 12px !important;
  font-weight: 900 !important;
  line-height: 1 !important;
}

.smartbiz-theme-switch button[aria-pressed="true"] {
  color: #111 !important;
  background: var(--smartbiz-yellow) !important;
}

.smartbiz-login-hero {
  width: min(1360px, calc(100vw - 72px)) !important;
  min-height: 520px !important;
  height: min(640px, calc(100vh - 184px)) !important;
  justify-self: center !important;
  margin: 10px 0 !important;
  display: grid !important;
  grid-template-columns: minmax(420px, .92fr) minmax(520px, 1.08fr) !important;
  overflow: hidden !important;
  border-radius: 22px !important;
  background: #fbf4e9 !important;
  box-shadow: none !important;
}

.smartbiz-login-copy {
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  min-width: 0 !important;
  padding: 34px 58px !important;
  text-align: left !important;
  background: linear-gradient(90deg, rgba(255,255,255,.96) 0%, rgba(255,255,255,.90) 74%, rgba(255,255,255,.56) 100%) !important;
  z-index: 2 !important;
}

.smartbiz-login-kicker {
  margin: 0 0 12px !important;
  color: #111 !important;
  text-transform: uppercase !important;
  letter-spacing: .05em !important;
  font-size: 14px !important;
  line-height: 1.25 !important;
  font-weight: 950 !important;
  text-align: left !important;
}

.smartbiz-login-copy h2 {
  max-width: 560px !important;
  margin: 0 0 12px !important;
  color: #080808 !important;
  font-size: clamp(38px, 4vw, 56px) !important;
  line-height: 1.02 !important;
  letter-spacing: 0 !important;
  font-weight: 950 !important;
  text-align: left !important;
}

.smartbiz-login-lead {
  max-width: 520px !important;
  margin: 0 0 22px !important;
  color: #4b4b4b !important;
  font-size: 16px !important;
  line-height: 1.3 !important;
  font-weight: 700 !important;
  text-align: left !important;
}

.smartbiz-login-media {
  position: relative !important;
  min-width: 0 !important;
  min-height: 100% !important;
}

.smartbiz-login-media:before {
  content: "" !important;
  position: absolute !important;
  inset: 0 auto 0 0 !important;
  width: 28% !important;
  z-index: 1 !important;
  background: linear-gradient(90deg, rgba(255,255,255,.78), rgba(255,255,255,0)) !important;
  pointer-events: none !important;
}

.smartbiz-login-media img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center right !important;
}

body.task-login #login-form.smartbiz-login-card {
  position: static !important;
  width: min(500px, 100%) !important;
  margin: 0 !important;
  padding: 0 !important;
  transform: none !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  color: #111 !important;
  text-align: left !important;
}

body.task-login #login-form.smartbiz-login-card::before,
body.task-login #login-form.smartbiz-login-card::after {
  content: none !important;
  display: none !important;
}

.smartbiz-login-card .smartbiz-login-eyebrow {
  margin: 0 0 10px !important;
  color: #6b5a00 !important;
  text-transform: uppercase !important;
  letter-spacing: .08em !important;
  font-size: 12px !important;
  line-height: 1.2 !important;
  font-weight: 950 !important;
}

.smartbiz-login-card h3 {
  margin: 0 0 12px !important;
  color: #111 !important;
  font-size: 30px !important;
  line-height: 1 !important;
  font-weight: 950 !important;
  text-align: left !important;
}

.smartbiz-login-card table,
.smartbiz-login-card tbody,
.smartbiz-login-card tr,
.smartbiz-login-card td {
  display: block !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
}

.smartbiz-login-card td.title {
  display: none !important;
}

.smartbiz-login-card td.input {
  position: relative !important;
  margin-bottom: 10px !important;
}

.smartbiz-login-card .input-group-prepend {
  position: absolute !important;
  left: 1px !important;
  top: 1px !important;
  z-index: 5 !important;
  display: flex !important;
  width: 54px !important;
  height: 48px !important;
}

.smartbiz-login-card .input-group-text {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 54px !important;
  height: 48px !important;
  color: #111 !important;
  background: #f3f4f6 !important;
  border: 0 !important;
  border-right: 1px solid #dfdfdf !important;
  border-radius: 14px 0 0 14px !important;
}

.smartbiz-login-card #rcmloginuser,
.smartbiz-login-card #rcmloginpwd {
  position: relative !important;
  z-index: 1 !important;
  width: 100% !important;
  height: 50px !important;
  margin: 0 !important;
  padding: 0 18px 0 72px !important;
  color: #111 !important;
  background: #fff !important;
  border: 2px solid var(--smartbiz-line) !important;
  border-radius: 15px !important;
  box-shadow: none !important;
  font-size: 15px !important;
  font-weight: 750 !important;
  line-height: 50px !important;
}

.smartbiz-login-card #rcmloginuser:focus,
.smartbiz-login-card #rcmloginpwd:focus {
  border-color: var(--smartbiz-yellow) !important;
  box-shadow: 0 0 0 4px rgba(255,203,5,.24) !important;
}

.smartbiz-login-card .formbuttons,
.smartbiz-login-card p.formbuttons {
  width: 100% !important;
  margin: 12px 0 0 !important;
}

.smartbiz-login-card #rcmloginsubmit {
  width: 100% !important;
  height: 50px !important;
  color: #111 !important;
  background: var(--smartbiz-yellow) !important;
  border: 2px solid var(--smartbiz-yellow) !important;
  border-radius: 15px !important;
  box-shadow: none !important;
  font-size: 15px !important;
  font-weight: 950 !important;
  text-transform: none !important;
  cursor: pointer !important;
}

.smartbiz-login-card #login-footer {
  margin-top: 12px !important;
  color: #515151 !important;
  font-size: 12px !important;
  line-height: 1.4 !important;
  text-align: left !important;
}

.smartbiz-login-trust {
  display: inline-flex !important;
  align-items: center !important;
  min-height: 32px !important;
  padding: 0 14px !important;
  color: #111 !important;
  background: rgba(255,203,5,.18) !important;
  border: 1px solid rgba(255,203,5,.45) !important;
  border-radius: 999px !important;
  font-size: 12px !important;
  font-weight: 850 !important;
}

.smartbiz-login-footer {
  width: 100% !important;
  align-self: end !important;
  background: #070707 !important;
  border-top: 1px solid rgba(255,255,255,.14) !important;
  color: #888 !important;
}

.smartbiz-login-footer-inner {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 24px !important;
  width: min(1160px, calc(100vw - 96px)) !important;
  min-height: 74px !important;
  margin: 0 auto !important;
  border-top: 1px solid rgba(255,255,255,.08) !important;
}

.smartbiz-login-footer p {
  margin: 0 !important;
  color: #888 !important;
  font-size: 12px !important;
  line-height: 1.4 !important;
  font-weight: 650 !important;
}

.smartbiz-login-footer strong,
.smartbiz-login-footer a {
  color: #d8d8d8 !important;
  font-weight: 900 !important;
  text-decoration: none !important;
}

html[data-smartbiz-theme="dark"] body.task-login,
html[data-smartbiz-theme="dark"] body.task-login #layout-content.smartbiz-login-v1 {
  background: #070707 !important;
  color: #f7f7f7 !important;
}

html[data-smartbiz-theme="dark"] .smartbiz-login-topbar {
  background: #0b0b0b !important;
  border-bottom-color: rgba(255,255,255,.1) !important;
}

html[data-smartbiz-theme="dark"] .smartbiz-logo-light {
  opacity: 0 !important;
}

html[data-smartbiz-theme="dark"] .smartbiz-logo-dark {
  opacity: 1 !important;
}

html[data-smartbiz-theme="dark"] .smartbiz-theme-switch {
  background: #151515 !important;
  border-color: rgba(255,255,255,.18) !important;
}

html[data-smartbiz-theme="dark"] .smartbiz-theme-switch button {
  color: #f8f8f8 !important;
}

html[data-smartbiz-theme="dark"] .smartbiz-theme-switch button[aria-pressed="true"] {
  color: #111 !important;
  background: var(--smartbiz-yellow) !important;
}

html[data-smartbiz-theme="dark"] .smartbiz-login-hero {
  background: #101010 !important;
}

html[data-smartbiz-theme="dark"] .smartbiz-login-copy {
  background: linear-gradient(90deg, rgba(9,9,9,.98) 0%, rgba(9,9,9,.93) 74%, rgba(9,9,9,.64) 100%) !important;
}

html[data-smartbiz-theme="dark"] .smartbiz-login-kicker,
html[data-smartbiz-theme="dark"] .smartbiz-login-copy h2,
html[data-smartbiz-theme="dark"] .smartbiz-login-card h3 {
  color: #fff !important;
}

html[data-smartbiz-theme="dark"] .smartbiz-login-lead {
  color: #d6d6d6 !important;
}

html[data-smartbiz-theme="dark"] .smartbiz-login-card .smartbiz-login-eyebrow {
  color: var(--smartbiz-yellow) !important;
}

html[data-smartbiz-theme="dark"] .smartbiz-login-media:before {
  background: linear-gradient(90deg, rgba(9,9,9,.82), rgba(9,9,9,0)) !important;
}

html[data-smartbiz-theme="dark"] .smartbiz-login-card .input-group-text {
  color: #f7f7f7 !important;
  background: #1d1d1d !important;
  border-right-color: rgba(255,255,255,.14) !important;
}

html[data-smartbiz-theme="dark"] .smartbiz-login-card #rcmloginuser,
html[data-smartbiz-theme="dark"] .smartbiz-login-card #rcmloginpwd {
  color: #fff !important;
  background: #101010 !important;
  border-color: rgba(255,255,255,.22) !important;
}

html[data-smartbiz-theme="dark"] .smartbiz-login-trust {
  color: var(--smartbiz-yellow) !important;
  background: rgba(255,203,5,.12) !important;
  border-color: rgba(255,203,5,.32) !important;
}

html[data-smartbiz-theme="light"] .smartbiz-logo-light {
  opacity: 1 !important;
}

html[data-smartbiz-theme="light"] .smartbiz-logo-dark {
  opacity: 0 !important;
}

@media (prefers-color-scheme: dark) {
  .smartbiz-logo-light {
    opacity: 0 !important;
  }
  .smartbiz-logo-dark {
    opacity: 1 !important;
  }
}

@media (max-width: 980px) {
  body.task-login #layout-content.smartbiz-login-v1 {
    grid-template-rows: auto auto auto !important;
  }
  .smartbiz-login-topbar {
    height: auto !important;
    padding: 16px 22px !important;
  }
  .smartbiz-logo-wrap {
    width: 128px !important;
    height: 50px !important;
  }
  .smartbiz-login-logo {
    width: 128px !important;
  }
  .smartbiz-theme-switch {
    height: 38px !important;
  }
  .smartbiz-theme-switch button {
    min-width: 44px !important;
    height: 28px !important;
    padding: 0 8px !important;
    font-size: 11px !important;
  }
  .smartbiz-login-hero {
    width: min(520px, calc(100vw - 28px)) !important;
    height: auto !important;
    grid-template-columns: 1fr !important;
    margin: 14px 0 18px !important;
    border-radius: 26px !important;
  }
  .smartbiz-login-media {
    order: -1 !important;
    height: 210px !important;
  }
  .smartbiz-login-media:before {
    display: none !important;
  }
  .smartbiz-login-copy {
    padding: 30px 26px 34px !important;
  }
  .smartbiz-login-copy h2 {
    font-size: 38px !important;
    margin-bottom: 16px !important;
  }
  .smartbiz-login-lead {
    font-size: 16px !important;
    margin-bottom: 24px !important;
  }
  .smartbiz-login-footer-inner {
    flex-direction: column !important;
    align-items: flex-start !important;
    justify-content: center !important;
    gap: 6px !important;
    width: min(520px, calc(100vw - 44px)) !important;
    min-height: 86px !important;
  }
}

@media (max-width: 560px) {
  body.task-login {
    overflow: auto !important;
  }
  body.task-login #layout,
  body.task-login #layout-content.smartbiz-login-v1 {
    min-height: 100vh !important;
    height: auto !important;
  }
  .smartbiz-login-topbar {
    padding: 14px 16px !important;
    gap: 12px !important;
  }
  .smartbiz-logo-wrap,
  .smartbiz-login-logo {
    width: 136px !important;
    height: 42px !important;
  }
  .smartbiz-theme-switch button {
    min-width: 42px !important;
    padding: 0 7px !important;
  }
  .smartbiz-login-hero {
    width: calc(100vw - 20px) !important;
    margin: 10px 0 14px !important;
    border-radius: 18px !important;
  }
  .smartbiz-login-media {
    height: 174px !important;
  }
  .smartbiz-login-copy {
    padding: 24px 18px 28px !important;
  }
  .smartbiz-login-copy h2 {
    font-size: 31px !important;
  }
  .smartbiz-login-card h3 {
    font-size: 26px !important;
  }
  .smartbiz-login-trust {
    width: 100% !important;
    justify-content: center !important;
    border-radius: 12px !important;
    white-space: normal !important;
    text-align: center !important;
  }
  .smartbiz-login-footer-inner {
    width: calc(100vw - 32px) !important;
  }
}

/* Mailbox experience: keep Roundcube panes native, only apply SmartBiz identity.
   This avoids broken/oversized columns and preserves all standard webmail actions. */
body:not(.task-login) {
  background: #ffffff !important;
  color: #242424 !important;
}

body:not(.task-login) #layout-sidebar,
body:not(.task-login) #layout-menu {
  background: #f7f7f7 !important;
  border-right: 1px solid #d9d9d9 !important;
  box-shadow: none !important;
}

body:not(.task-login) #layout-sidebar .header,
body:not(.task-login) #layout-menu .header {
  background: #ffffff url(/skins/smartbiz/images/smartbiz-primary-transparent.png) 18px center / 112px auto no-repeat !important;
  border-bottom: 1px solid #d9d9d9 !important;
  box-shadow: none !important;
}

body:not(.task-login) #taskmenu a {
  color: #242424 !important;
  font-weight: 750 !important;
  border-radius: 0 18px 18px 0 !important;
  margin: 4px 12px 4px 0 !important;
}

body:not(.task-login) #taskmenu a:before,
body:not(.task-login) #taskmenu a .inner {
  color: currentColor !important;
}

body:not(.task-login) #taskmenu a.selected,
body:not(.task-login) #taskmenu a:focus,
body:not(.task-login) #taskmenu a:hover {
  background: var(--smartbiz-yellow) !important;
  color: #111111 !important;
}

body:not(.task-login) #taskmenu a.compose,
body:not(.task-login) #taskmenu a.button-compose,
body:not(.task-login) a.compose {
  background: var(--smartbiz-yellow) !important;
  color: #111111 !important;
  border-radius: 24px !important;
  font-weight: 900 !important;
}

body:not(.task-login) .folderlist li.mailbox > a {
  color: #252525 !important;
  border-radius: 10px !important;
}

body:not(.task-login) .folderlist li.mailbox.selected > a,
body:not(.task-login) .folderlist li.mailbox > a:hover {
  background: #fff8d6 !important;
  color: #111111 !important;
  font-weight: 800 !important;
}

body:not(.task-login) .header,
body:not(.task-login) #messagetoolbar,
body:not(.task-login) #compose-toolbar,
body:not(.task-login) .toolbar {
  background: #ffffff !important;
  border-color: #d9d9d9 !important;
  box-shadow: none !important;
}

body:not(.task-login) .toolbar a.button,
body:not(.task-login) .toolbar .dropbutton a,
body:not(.task-login) button.btn,
body:not(.task-login) input.button,
body:not(.task-login) .btn {
  border-radius: 8px !important;
  font-weight: 700 !important;
}

body:not(.task-login) .btn-primary,
body:not(.task-login) input.button.mainaction,
body:not(.task-login) button.mainaction {
  background: var(--smartbiz-yellow) !important;
  border-color: var(--smartbiz-yellow) !important;
  color: #111111 !important;
  font-weight: 900 !important;
}

body:not(.task-login) .listing tr.selected td,
body:not(.task-login) .listing li.selected {
  background: #fff8d6 !important;
  color: #111111 !important;
}

body:not(.task-login) .messagelist tr.unread td.subject a {
  color: #111111 !important;
  font-weight: 800 !important;
}

body:not(.task-login) #messagecontframe,
body:not(.task-login) #messagebody,
body:not(.task-login) #mailpreviewframe {
  background-color: #ffffff !important;
}

body:not(.task-login) #messagecontframe:empty,
body:not(.task-login) #messagebody:empty {
  background-image: linear-gradient(135deg, rgba(255,203,5,.08), rgba(6,63,44,.03)) !important;
}

body:not(.task-login) input[type="text"],
body:not(.task-login) input[type="password"],
body:not(.task-login) textarea,
body:not(.task-login) select,
body:not(.task-login) .form-control {
  border-color: #d6d6d6 !important;
  border-radius: 8px !important;
  background: #ffffff !important;
  color: #242424 !important;
}

body:not(.task-login) input:focus,
body:not(.task-login) textarea:focus,
body:not(.task-login) select:focus,
body:not(.task-login) .form-control:focus {
  border-color: var(--smartbiz-yellow) !important;
  box-shadow: 0 0 0 3px rgba(255, 203, 5, .22) !important;
}

body:not(.task-login) #layout-footer,
body:not(.task-login) .footer {
  background: #ffffff !important;
  border-top: 3px solid var(--smartbiz-yellow) !important;
  color: #555555 !important;
}

/* 2026-08 mail workspace polish.
   Keep Roundcube Elastic behaviour, but make the visible workspace clean,
   readable and aligned with the SmartBiz visual language. */
body:not(.task-login) {
  --mail-bg: #ffffff;
  --mail-panel: #fafafa;
  --mail-rail: #ffffff;
  --mail-rail-border: #ececec;
  --mail-ink: #161616;
  --mail-soft-ink: #5d5d5d;
  --mail-green: #013a2b;
  --mail-yellow: #ffcb05;
  background: var(--mail-bg) !important;
  color: var(--mail-ink) !important;
}

body:not(.task-login) #layout-menu {
  width: 78px !important;
  background: var(--mail-rail) !important;
  border-right: 1px solid var(--mail-rail-border) !important;
  box-shadow: 0 0 22px rgba(0, 0, 0, .04) !important;
}

body:not(.task-login) #layout-menu .popover-header,
body:not(.task-login) #layout-menu .header {
  position: relative !important;
  height: 86px !important;
  min-height: 86px !important;
  padding: 0 !important;
  background: #ffffff !important;
  border: 0 !important;
  border-bottom: 1px solid var(--mail-rail-border) !important;
  box-shadow: none !important;
}

body:not(.task-login) #layout-menu .popover-header img,
body:not(.task-login) #layout-menu .header img,
body:not(.task-login) #layout-menu .popover-header .logo,
body:not(.task-login) #layout-menu .header .logo {
  display: none !important;
}

body:not(.task-login) #layout-menu .popover-header::before,
body:not(.task-login) #layout-menu .header::before {
  content: "" !important;
  position: absolute !important;
  left: 10px !important;
  right: 10px !important;
  top: 16px !important;
  height: 48px !important;
  background: url(/skins/smartbiz/images/smartbiz-primary-transparent.png) center center / contain no-repeat !important;
}

body:not(.task-login) #taskmenu {
  padding-top: 10px !important;
  background: transparent !important;
}

body:not(.task-login) #taskmenu a,
body:not(.task-login) #layout-menu .special-buttons a {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 64px !important;
  margin: 0 0 8px !important;
  padding: 8px 4px !important;
  color: var(--mail-ink) !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 18px 18px 0 !important;
  box-shadow: none !important;
  font-weight: 800 !important;
}

body:not(.task-login) #taskmenu a::before,
body:not(.task-login) #layout-menu .special-buttons a::before,
body:not(.task-login) #taskmenu a .inner,
body:not(.task-login) #layout-menu .special-buttons a .inner {
  color: currentColor !important;
  text-shadow: none !important;
}

body:not(.task-login) #taskmenu a.selected,
body:not(.task-login) #taskmenu a:hover,
body:not(.task-login) #taskmenu a:focus {
  color: #111111 !important;
  background: var(--mail-yellow) !important;
}

body:not(.task-login) #layout-menu .special-buttons {
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  padding: 10px 0 12px !important;
  background: #ffffff !important;
  border-top: 1px solid var(--mail-rail-border) !important;
}

body:not(.task-login) #layout-menu .special-buttons a {
  min-height: 54px !important;
  margin-bottom: 4px !important;
  color: #111111 !important;
  background: #ffffff !important;
}

body:not(.task-login) #layout-menu .special-buttons a:hover,
body:not(.task-login) #layout-menu .special-buttons a:focus {
  background: rgba(255, 203, 5, .2) !important;
}

body:not(.task-login) #layout-sidebar {
  background: #ffffff !important;
  border-right: 1px solid #e6e6e6 !important;
}

body:not(.task-login) #layout-sidebar .header {
  min-height: 64px !important;
  padding: 0 44px 0 22px !important;
  background: #ffffff !important;
  border-bottom: 1px solid #e6e6e6 !important;
  color: #111111 !important;
}

body:not(.task-login) #layout-sidebar .header::before {
  content: none !important;
}

body:not(.task-login) #layout-sidebar .header .username,
body:not(.task-login) #layout-sidebar .header .header-title,
body:not(.task-login) #layout-sidebar .header a,
body:not(.task-login) #layout-sidebar .header span {
  max-width: 100% !important;
  color: #111111 !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
  font-weight: 850 !important;
}

body:not(.task-login) .folderlist li.mailbox > a,
body:not(.task-login) .menu li > a,
body:not(.task-login) .listing li,
body:not(.task-login) .listing td {
  color: #202020 !important;
}

body:not(.task-login) .folderlist li.mailbox.selected > a,
body:not(.task-login) .folderlist li.mailbox > a:hover {
  background: linear-gradient(90deg, rgba(255, 203, 5, .30), rgba(255, 203, 5, .08)) !important;
  color: #111111 !important;
}

body:not(.task-login) #layout-content,
body:not(.task-login) #layout-list,
body:not(.task-login) #messagecontframe,
body:not(.task-login) #messagebody,
body:not(.task-login) #mailpreviewframe {
  background-color: #ffffff !important;
}

body:not(.task-login) #messagecontframe:empty,
body:not(.task-login) #messagebody:empty,
body:not(.task-login) #mailpreviewframe:empty {
  background:
    radial-gradient(circle at 70% 68%, rgba(255, 203, 5, .16), transparent 24%),
    linear-gradient(135deg, rgba(255, 203, 5, .04), rgba(1, 58, 43, .03)) !important;
}

body:not(.task-login) .smartbiz-watermark,
body:not(.task-login) #messagecontframe:empty::after {
  color: rgba(1, 58, 43, .14) !important;
}

body:not(.task-login) .toolbar,
body:not(.task-login) #messagetoolbar,
body:not(.task-login) #compose-toolbar,
body:not(.task-login) .pagenav,
body:not(.task-login) #layout>div>.footer {
  background: #ffffff !important;
  border-color: #e7e7e7 !important;
}

body:not(.task-login) .toolbar a.button,
body:not(.task-login) .toolbar .dropbutton a {
  color: #242424 !important;
}

body:not(.task-login) .btn-primary,
body:not(.task-login) input.button.mainaction,
body:not(.task-login) button.mainaction,
body:not(.task-login) a.button.mainaction,
body:not(.task-login) .formbuttons .button {
  color: #111111 !important;
  background: var(--mail-yellow) !important;
  border-color: var(--mail-yellow) !important;
  box-shadow: none !important;
}

body:not(.task-login) #compose-attachments,
body:not(.task-login) #composeoptions,
body:not(.task-login) .compose-headers {
  background: #ffffff !important;
  color: #222222 !important;
}

body:not(.task-login) #compose-attachments .header,
body:not(.task-login) #composeoptions .header {
  min-height: 58px !important;
  background: #ffffff url(/skins/smartbiz/images/smartbiz-primary-transparent.png) center center / 116px auto no-repeat !important;
}

html.dark-mode body:not(.task-login),
html.dark-mode body:not(.task-login) #layout-content,
html.dark-mode body:not(.task-login) #layout-list,
html.dark-mode body:not(.task-login) #layout-sidebar {
  background: #ffffff !important;
  color: #202020 !important;
}

html.dark-mode body:not(.task-login) #layout-menu,
html.dark-mode body:not(.task-login) #layout-menu .popover-header,
html.dark-mode body:not(.task-login) #layout-menu .header,
html.dark-mode body:not(.task-login) #layout-menu .special-buttons {
  background: #ffffff !important;
}

@media (max-width: 768px) {
  body:not(.task-login) #layout-menu {
    width: min(76vw, 310px) !important;
    background: #ffffff !important;
  }

  body:not(.task-login) #layout-menu .popover-header,
  body:not(.task-login) #layout-menu .header {
    height: 88px !important;
    min-height: 88px !important;
  }

  body:not(.task-login) #layout-menu .popover-header::before,
  body:not(.task-login) #layout-menu .header::before {
    left: 18px !important;
    right: auto !important;
    width: 132px !important;
    height: 52px !important;
  }

  body:not(.task-login) #taskmenu {
    padding: 10px 18px 0 0 !important;
  }

  body:not(.task-login) #taskmenu a,
  body:not(.task-login) #layout-menu .special-buttons a {
    justify-content: flex-start !important;
    min-height: 56px !important;
    padding: 0 22px !important;
    margin: 0 0 10px !important;
    border-radius: 0 26px 26px 0 !important;
    color: #111111 !important;
    background: #ffffff !important;
    font-size: 18px !important;
  }

  body:not(.task-login) #taskmenu a.selected,
  body:not(.task-login) #taskmenu a:hover,
  body:not(.task-login) #taskmenu a:focus {
    background: var(--mail-yellow) !important;
    color: #111111 !important;
  }

  body:not(.task-login) #layout-menu .special-buttons {
    position: static !important;
    padding: 14px 18px 24px 0 !important;
    background: #ffffff !important;
    border-top: 1px solid #eeeeee !important;
  }

  body:not(.task-login) #layout-menu .special-buttons a {
    background: #ffffff !important;
    border: 1px solid #eeeeee !important;
  }

  body:not(.task-login) #layout-sidebar .header {
    min-height: 58px !important;
    padding-left: 18px !important;
  }
}

/* SmartBiz Mail workspace v2.
   Direction: keep the standard webmail usability, add SmartBiz identity,
   remove Roundcube visual noise, and make light/dark modes readable. */
body:not(.task-login) {
  --sb-yellow: #ffcb05;
  --sb-yellow-soft: #fff3b0;
  --sb-ink: #111111;
  --sb-muted: #626262;
  --sb-line: #e7e7e7;
  --sb-white: #ffffff;
  --sb-black: #050505;
  --sb-dark: #12191b;
  --sb-dark-2: #1b2629;
  --sb-dark-line: #2d3b3f;
  background: #ffffff !important;
  color: var(--sb-ink) !important;
}

body:not(.task-login) #layout-menu {
  width: 64px !important;
  background: #ffffff !important;
  border-right: 1px solid var(--sb-line) !important;
  box-shadow: none !important;
}

body:not(.task-login) #layout-menu .popover-header,
body:not(.task-login) #layout-menu .header {
  height: 58px !important;
  min-height: 58px !important;
  padding: 0 !important;
  background: #ffffff !important;
  border: 0 !important;
  border-bottom: 1px solid var(--sb-line) !important;
}

body:not(.task-login) #layout-menu .popover-header img,
body:not(.task-login) #layout-menu .header img,
body:not(.task-login) .skin-logo,
body:not(.task-login) .logo {
  display: none !important;
}

body:not(.task-login) #layout-menu .popover-header::before,
body:not(.task-login) #layout-menu .header::before {
  content: "" !important;
  position: absolute !important;
  left: 5px !important;
  top: 14px !important;
  width: 54px !important;
  height: 28px !important;
  background: url(/skins/smartbiz/images/smartbiz-primary-transparent.png) center / contain no-repeat !important;
}

body:not(.task-login) #taskmenu {
  padding: 8px 0 !important;
  background: #ffffff !important;
}

body:not(.task-login) #taskmenu a,
body:not(.task-login) #layout-menu .special-buttons a {
  width: 58px !important;
  min-height: 58px !important;
  margin: 0 0 6px 0 !important;
  padding: 7px 4px !important;
  color: #111111 !important;
  background: #ffffff !important;
  border: 0 !important;
  border-radius: 0 17px 17px 0 !important;
  box-shadow: none !important;
  text-shadow: none !important;
  font-weight: 760 !important;
}

body:not(.task-login) #taskmenu a::before,
body:not(.task-login) #layout-menu .special-buttons a::before,
body:not(.task-login) #taskmenu a .inner,
body:not(.task-login) #layout-menu .special-buttons a .inner {
  color: #111111 !important;
  text-shadow: none !important;
}

body:not(.task-login) #taskmenu a.selected,
body:not(.task-login) #taskmenu a:hover,
body:not(.task-login) #taskmenu a:focus {
  color: #111111 !important;
  background: var(--sb-yellow) !important;
}

body:not(.task-login) #taskmenu a.compose,
body:not(.task-login) #taskmenu a.button-compose,
body:not(.task-login) a.compose {
  color: #111111 !important;
  background: var(--sb-yellow) !important;
  border-radius: 0 19px 19px 0 !important;
}

body:not(.task-login) #layout-menu .special-buttons {
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  padding: 8px 0 10px !important;
  background: #ffffff !important;
  border-top: 1px solid var(--sb-line) !important;
}

body:not(.task-login) #layout-menu .special-buttons a {
  min-height: 46px !important;
  color: #111111 !important;
  background: #ffffff !important;
  opacity: 1 !important;
}

body:not(.task-login) #layout-sidebar {
  background: #ffffff !important;
  border-right: 1px solid var(--sb-line) !important;
  box-shadow: none !important;
}

body:not(.task-login) #layout-sidebar .header {
  min-height: 58px !important;
  height: 58px !important;
  padding: 0 42px 0 18px !important;
  background: #ffffff !important;
  border-bottom: 1px solid var(--sb-line) !important;
  color: #111111 !important;
}

body:not(.task-login) #layout-sidebar .header::before {
  content: none !important;
}

body:not(.task-login) #layout-sidebar .header .username,
body:not(.task-login) #layout-sidebar .header .header-title,
body:not(.task-login) #layout-sidebar .header a,
body:not(.task-login) #layout-sidebar .header span {
  color: #111111 !important;
  max-width: calc(100% - 8px) !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
  font-weight: 760 !important;
}

body:not(.task-login) .folderlist li.mailbox > a,
body:not(.task-login) #directorylist li > a {
  color: #161616 !important;
  background: #ffffff !important;
  border-radius: 0 !important;
}

body:not(.task-login) .folderlist li.mailbox.selected > a,
body:not(.task-login) .folderlist li.mailbox > a:hover,
body:not(.task-login) #directorylist li.selected > a {
  color: #111111 !important;
  background: var(--sb-yellow-soft) !important;
  font-weight: 820 !important;
}

body:not(.task-login) #layout-content,
body:not(.task-login) #layout-list,
body:not(.task-login) #layout-sidebar,
body:not(.task-login) #messagecontframe,
body:not(.task-login) #messagebody,
body:not(.task-login) #mailpreviewframe,
body:not(.task-login) .iframe-wrapper {
  background-color: #ffffff !important;
  color: #111111 !important;
}

body:not(.task-login) #messagetoolbar,
body:not(.task-login) #compose-toolbar,
body:not(.task-login) .toolbar,
body:not(.task-login) #layout>div>.header,
body:not(.task-login) #layout>div>.footer,
body:not(.task-login) .pagenav {
  background: #ffffff !important;
  border-color: var(--sb-line) !important;
  box-shadow: none !important;
}

body:not(.task-login) .toolbar a.button,
body:not(.task-login) .toolbar .dropbutton a,
body:not(.task-login) .toolbar .button,
body:not(.task-login) .listing td,
body:not(.task-login) .listing li,
body:not(.task-login) .messagelist td,
body:not(.task-login) .messagelist a {
  color: #222222 !important;
}

body:not(.task-login) .listing tr.selected td,
body:not(.task-login) .listing li.selected,
body:not(.task-login) .messagelist tr.selected td {
  color: #111111 !important;
  background: #fff6bf !important;
}

body:not(.task-login) .watermark,
body:not(.task-login) .watermark::before,
body:not(.task-login) .watermark::after,
body:not(.task-login) .emptycontent::before,
body:not(.task-login) .emptycontent::after {
  background-image: none !important;
  opacity: .18 !important;
}

body:not(.task-login) #messagecontframe:empty,
body:not(.task-login) #mailpreviewframe:empty,
body:not(.task-login) #messagebody:empty {
  background:
    radial-gradient(circle at 66% 56%, rgba(255, 203, 5, .10), transparent 19%),
    linear-gradient(135deg, rgba(255, 255, 255, 1), rgba(255, 249, 218, .38)) !important;
}

body:not(.task-login) input[type="text"],
body:not(.task-login) input[type="password"],
body:not(.task-login) input[type="email"],
body:not(.task-login) textarea,
body:not(.task-login) select,
body:not(.task-login) .form-control,
body:not(.task-login) .searchbar input {
  color: #111111 !important;
  background: #ffffff !important;
  border: 1px solid #d8d8d8 !important;
  border-radius: 8px !important;
}

body:not(.task-login) input:focus,
body:not(.task-login) textarea:focus,
body:not(.task-login) select:focus,
body:not(.task-login) .searchbar input:focus {
  border-color: var(--sb-yellow) !important;
  box-shadow: 0 0 0 3px rgba(255, 203, 5, .22) !important;
}

body:not(.task-login) .btn-primary,
body:not(.task-login) input.button.mainaction,
body:not(.task-login) button.mainaction,
body:not(.task-login) a.button.mainaction,
body:not(.task-login) .formbuttons .button,
body:not(.task-login) .button.submit {
  color: #111111 !important;
  background: var(--sb-yellow) !important;
  border-color: var(--sb-yellow) !important;
  border-radius: 10px !important;
  box-shadow: none !important;
  font-weight: 850 !important;
}

body:not(.task-login) #compose-attachments,
body:not(.task-login) #composeoptions {
  background: #ffffff !important;
  color: #111111 !important;
}

body:not(.task-login) #compose-attachments .header,
body:not(.task-login) #composeoptions .header {
  min-height: 56px !important;
  background: #ffffff url(/skins/smartbiz/images/smartbiz-primary-transparent.png) center / 118px auto no-repeat !important;
  border-bottom: 1px solid var(--sb-line) !important;
}

body:not(.task-login) .compose-headers,
body:not(.task-login) .composebody,
body:not(.task-login) #composebodycontainer {
  background: #ffffff !important;
  color: #111111 !important;
}

html.dark-mode body:not(.task-login) {
  background: #141a1d !important;
  color: #f5f5f5 !important;
}

html.dark-mode body:not(.task-login) #layout-menu,
html.dark-mode body:not(.task-login) #layout-menu .popover-header,
html.dark-mode body:not(.task-login) #layout-menu .header,
html.dark-mode body:not(.task-login) #layout-menu .special-buttons {
  background: #101517 !important;
  border-color: var(--sb-dark-line) !important;
}

html.dark-mode body:not(.task-login) #layout-menu .popover-header::before,
html.dark-mode body:not(.task-login) #layout-menu .header::before {
  background-image: url(/skins/smartbiz/images/smartbiz-primary-reverse.png) !important;
}

html.dark-mode body:not(.task-login) #taskmenu a,
html.dark-mode body:not(.task-login) #layout-menu .special-buttons a {
  color: #f5f5f5 !important;
  background: transparent !important;
}

html.dark-mode body:not(.task-login) #taskmenu a.selected,
html.dark-mode body:not(.task-login) #taskmenu a:hover,
html.dark-mode body:not(.task-login) #taskmenu a:focus,
html.dark-mode body:not(.task-login) #taskmenu a.compose {
  color: #111111 !important;
  background: var(--sb-yellow) !important;
}

html.dark-mode body:not(.task-login) #layout-sidebar,
html.dark-mode body:not(.task-login) #layout-sidebar .header,
html.dark-mode body:not(.task-login) #layout-content,
html.dark-mode body:not(.task-login) #layout-list,
html.dark-mode body:not(.task-login) #messagecontframe,
html.dark-mode body:not(.task-login) #messagebody,
html.dark-mode body:not(.task-login) #mailpreviewframe,
html.dark-mode body:not(.task-login) .iframe-wrapper {
  background: #182124 !important;
  border-color: var(--sb-dark-line) !important;
  color: #f5f5f5 !important;
}

html.dark-mode body:not(.task-login) #messagetoolbar,
html.dark-mode body:not(.task-login) #compose-toolbar,
html.dark-mode body:not(.task-login) .toolbar,
html.dark-mode body:not(.task-login) #layout>div>.header,
html.dark-mode body:not(.task-login) #layout>div>.footer,
html.dark-mode body:not(.task-login) .pagenav {
  background: #111719 !important;
  border-color: var(--sb-dark-line) !important;
}

html.dark-mode body:not(.task-login) #layout-sidebar .header .username,
html.dark-mode body:not(.task-login) #layout-sidebar .header .header-title,
html.dark-mode body:not(.task-login) #layout-sidebar .header a,
html.dark-mode body:not(.task-login) #layout-sidebar .header span,
html.dark-mode body:not(.task-login) .toolbar a.button,
html.dark-mode body:not(.task-login) .toolbar .dropbutton a,
html.dark-mode body:not(.task-login) .listing td,
html.dark-mode body:not(.task-login) .listing li,
html.dark-mode body:not(.task-login) .messagelist td,
html.dark-mode body:not(.task-login) .messagelist a,
html.dark-mode body:not(.task-login) .folderlist li.mailbox > a,
html.dark-mode body:not(.task-login) #directorylist li > a {
  color: #f5f5f5 !important;
}

html.dark-mode body:not(.task-login) .folderlist li.mailbox.selected > a,
html.dark-mode body:not(.task-login) .folderlist li.mailbox > a:hover,
html.dark-mode body:not(.task-login) #directorylist li.selected > a,
html.dark-mode body:not(.task-login) .listing tr.selected td,
html.dark-mode body:not(.task-login) .listing li.selected,
html.dark-mode body:not(.task-login) .messagelist tr.selected td {
  color: #111111 !important;
  background: var(--sb-yellow) !important;
}

html.dark-mode body:not(.task-login) input[type="text"],
html.dark-mode body:not(.task-login) input[type="password"],
html.dark-mode body:not(.task-login) input[type="email"],
html.dark-mode body:not(.task-login) textarea,
html.dark-mode body:not(.task-login) select,
html.dark-mode body:not(.task-login) .form-control,
html.dark-mode body:not(.task-login) .searchbar input {
  color: #f5f5f5 !important;
  background: #111719 !important;
  border-color: var(--sb-dark-line) !important;
}

html.dark-mode body:not(.task-login) #messagecontframe:empty,
html.dark-mode body:not(.task-login) #mailpreviewframe:empty,
html.dark-mode body:not(.task-login) #messagebody:empty {
  background:
    radial-gradient(circle at 66% 56%, rgba(255, 203, 5, .10), transparent 20%),
    linear-gradient(135deg, #182124, #101517) !important;
}

@media (max-width: 768px) {
  body:not(.task-login) #layout-menu {
    width: min(78vw, 320px) !important;
  }

  body:not(.task-login) #layout-menu .popover-header,
  body:not(.task-login) #layout-menu .header {
    height: 74px !important;
    min-height: 74px !important;
  }

  body:not(.task-login) #layout-menu .popover-header::before,
  body:not(.task-login) #layout-menu .header::before {
    left: 18px !important;
    top: 18px !important;
    width: 118px !important;
    height: 36px !important;
  }

  body:not(.task-login) #taskmenu {
    padding: 12px 18px 8px 0 !important;
  }

  body:not(.task-login) #taskmenu a,
  body:not(.task-login) #layout-menu .special-buttons a {
    width: auto !important;
    min-height: 54px !important;
    justify-content: flex-start !important;
    gap: 14px !important;
    margin: 0 0 8px !important;
    padding: 0 22px !important;
    border-radius: 0 24px 24px 0 !important;
    font-size: 17px !important;
  }

  body:not(.task-login) #layout-menu .special-buttons {
    position: static !important;
    padding: 12px 18px 18px 0 !important;
    background: transparent !important;
  }

  body:not(.task-login) #layout-menu .special-buttons a {
    border: 1px solid rgba(0, 0, 0, .08) !important;
  }

  html.dark-mode body:not(.task-login) #layout-menu .special-buttons a {
    border-color: rgba(255, 255, 255, .12) !important;
  }
}

/* SmartBiz Mail workspace v3.
   Final clean-up: preserve Roundcube usability, remove visual noise,
   and keep both light/dark modes readable on desktop and mobile. */
body:not(.task-login) {
  --sb-yellow: #ffcb05;
  --sb-yellow-soft: #fff3b0;
  --sb-ink: #171717;
  --sb-muted: #68736f;
  --sb-line: #e6e6e6;
  --sb-paper: #ffffff;
  --sb-dark: #11181a;
  --sb-dark-panel: #182124;
  --sb-dark-line: #314044;
}

body:not(.task-login) #layout-menu {
  width: 58px !important;
  min-width: 58px !important;
  background: var(--sb-paper) !important;
  border-right: 1px solid var(--sb-line) !important;
  box-shadow: none !important;
}

body:not(.task-login) #layout-menu .popover-header,
body:not(.task-login) #layout-menu .header {
  height: 52px !important;
  min-height: 52px !important;
  background: var(--sb-paper) !important;
  border-bottom: 1px solid var(--sb-line) !important;
}

body:not(.task-login) #layout-menu .popover-header::before,
body:not(.task-login) #layout-menu .header::before {
  content: "" !important;
  position: absolute !important;
  inset: 10px auto auto 5px !important;
  width: 48px !important;
  height: 30px !important;
  background: url(/skins/smartbiz/images/smartbiz-primary-transparent.png) center / contain no-repeat !important;
}

body:not(.task-login) #layout-menu .popover-header img,
body:not(.task-login) #layout-menu .header img,
body:not(.task-login) #layout-menu .skin-logo,
body:not(.task-login) #layout-menu .logo {
  display: none !important;
}

body:not(.task-login) #taskmenu a,
body:not(.task-login) #layout-menu .special-buttons a {
  width: 58px !important;
  min-height: 54px !important;
  margin: 0 !important;
  padding: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: var(--sb-ink) !important;
  font-weight: 700 !important;
  opacity: 1 !important;
  box-shadow: none !important;
}

body:not(.task-login) #taskmenu a.selected,
body:not(.task-login) #taskmenu a:hover,
body:not(.task-login) #taskmenu a:focus,
body:not(.task-login) #taskmenu a.compose {
  background: var(--sb-yellow) !important;
  color: #111111 !important;
}

body:not(.task-login) #layout-menu .special-buttons {
  left: 0 !important;
  right: auto !important;
  bottom: 0 !important;
  width: 58px !important;
  padding: 0 !important;
  background: var(--sb-paper) !important;
  border-top: 1px solid var(--sb-line) !important;
}

body:not(.task-login) #layout-sidebar,
body:not(.task-login) #layout-list,
body:not(.task-login) #layout-content,
body:not(.task-login) #messagecontframe,
body:not(.task-login) #mailpreviewframe,
body:not(.task-login) #messagebody {
  background: var(--sb-paper) !important;
  color: var(--sb-ink) !important;
}

body:not(.task-login) #layout-sidebar .header {
  height: 52px !important;
  min-height: 52px !important;
  padding: 0 38px 0 18px !important;
  background: var(--sb-paper) !important;
  border-bottom: 1px solid var(--sb-line) !important;
  color: var(--sb-ink) !important;
}

body:not(.task-login) #layout-sidebar .header::before,
body:not(.task-login) #layout-sidebar .header img {
  display: none !important;
}

body:not(.task-login) #layout-sidebar .header .username,
body:not(.task-login) #layout-sidebar .header .header-title,
body:not(.task-login) #layout-sidebar .header a,
body:not(.task-login) #layout-sidebar .header span {
  color: var(--sb-ink) !important;
  font-size: 14px !important;
  font-weight: 800 !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

body:not(.task-login) .folderlist li.mailbox > a,
body:not(.task-login) #directorylist li > a {
  min-height: 38px !important;
  color: var(--sb-ink) !important;
  background: transparent !important;
  border-radius: 0 !important;
  font-weight: 650 !important;
}

body:not(.task-login) .folderlist li.mailbox.selected > a,
body:not(.task-login) .folderlist li.mailbox > a:hover,
body:not(.task-login) #directorylist li.selected > a {
  background: var(--sb-yellow-soft) !important;
  color: #111111 !important;
  font-weight: 850 !important;
}

body:not(.task-login) #messagetoolbar,
body:not(.task-login) #compose-toolbar,
body:not(.task-login) .toolbar,
body:not(.task-login) #layout>div>.header,
body:not(.task-login) #layout>div>.footer,
body:not(.task-login) .pagenav {
  background: var(--sb-paper) !important;
  border-color: var(--sb-line) !important;
  color: var(--sb-ink) !important;
  box-shadow: none !important;
}

body:not(.task-login) .toolbar a.button,
body:not(.task-login) .toolbar .dropbutton a,
body:not(.task-login) .toolbar .button,
body:not(.task-login) .listing td,
body:not(.task-login) .listing li,
body:not(.task-login) .messagelist td,
body:not(.task-login) .messagelist a {
  color: var(--sb-ink) !important;
}

body:not(.task-login) .watermark,
body:not(.task-login) .watermark::before,
body:not(.task-login) .watermark::after,
body:not(.task-login) .emptycontent::before,
body:not(.task-login) .emptycontent::after {
  display: none !important;
  background: none !important;
  opacity: 0 !important;
}

body:not(.task-login) .emptycontent {
  color: var(--sb-muted) !important;
  font-weight: 700 !important;
}

body:not(.task-login) .listing tr.selected td,
body:not(.task-login) .listing li.selected,
body:not(.task-login) .messagelist tr.selected td {
  background: #fff8d6 !important;
  color: #111111 !important;
}

body:not(.task-login) .btn-primary,
body:not(.task-login) input.button.mainaction,
body:not(.task-login) button.mainaction,
body:not(.task-login) a.button.mainaction,
body:not(.task-login) .button.submit {
  background: var(--sb-yellow) !important;
  border-color: var(--sb-yellow) !important;
  color: #111111 !important;
  border-radius: 12px !important;
  font-weight: 850 !important;
}

html.dark-mode body:not(.task-login) #layout-menu,
html.dark-mode body:not(.task-login) #layout-menu .popover-header,
html.dark-mode body:not(.task-login) #layout-menu .header,
html.dark-mode body:not(.task-login) #layout-menu .special-buttons,
html.dark-mode body:not(.task-login) #messagetoolbar,
html.dark-mode body:not(.task-login) #compose-toolbar,
html.dark-mode body:not(.task-login) .toolbar,
html.dark-mode body:not(.task-login) #layout>div>.header,
html.dark-mode body:not(.task-login) #layout>div>.footer,
html.dark-mode body:not(.task-login) .pagenav {
  background: var(--sb-dark) !important;
  border-color: var(--sb-dark-line) !important;
  color: #f5f5f5 !important;
}

html.dark-mode body:not(.task-login) #layout-sidebar,
html.dark-mode body:not(.task-login) #layout-sidebar .header,
html.dark-mode body:not(.task-login) #layout-list,
html.dark-mode body:not(.task-login) #layout-content,
html.dark-mode body:not(.task-login) #messagecontframe,
html.dark-mode body:not(.task-login) #mailpreviewframe,
html.dark-mode body:not(.task-login) #messagebody {
  background: var(--sb-dark-panel) !important;
  border-color: var(--sb-dark-line) !important;
  color: #f5f5f5 !important;
}

html.dark-mode body:not(.task-login) #layout-menu .popover-header::before,
html.dark-mode body:not(.task-login) #layout-menu .header::before {
  background-image: url(/skins/smartbiz/images/smartbiz-primary-reverse.png) !important;
}

html.dark-mode body:not(.task-login) #taskmenu a,
html.dark-mode body:not(.task-login) #layout-menu .special-buttons a,
html.dark-mode body:not(.task-login) #layout-sidebar .header .username,
html.dark-mode body:not(.task-login) #layout-sidebar .header .header-title,
html.dark-mode body:not(.task-login) #layout-sidebar .header a,
html.dark-mode body:not(.task-login) #layout-sidebar .header span,
html.dark-mode body:not(.task-login) .folderlist li.mailbox > a,
html.dark-mode body:not(.task-login) #directorylist li > a,
html.dark-mode body:not(.task-login) .toolbar a.button,
html.dark-mode body:not(.task-login) .listing td,
html.dark-mode body:not(.task-login) .listing li,
html.dark-mode body:not(.task-login) .messagelist td,
html.dark-mode body:not(.task-login) .messagelist a {
  color: #f5f5f5 !important;
}

html.dark-mode body:not(.task-login) #taskmenu a.selected,
html.dark-mode body:not(.task-login) #taskmenu a:hover,
html.dark-mode body:not(.task-login) #taskmenu a:focus,
html.dark-mode body:not(.task-login) #taskmenu a.compose,
html.dark-mode body:not(.task-login) .folderlist li.mailbox.selected > a,
html.dark-mode body:not(.task-login) .folderlist li.mailbox > a:hover,
html.dark-mode body:not(.task-login) #directorylist li.selected > a,
html.dark-mode body:not(.task-login) .listing tr.selected td,
html.dark-mode body:not(.task-login) .listing li.selected,
html.dark-mode body:not(.task-login) .messagelist tr.selected td {
  background: var(--sb-yellow) !important;
  color: #111111 !important;
}

@media (max-width: 768px) {
  body:not(.task-login) #layout-menu {
    width: min(78vw, 320px) !important;
    min-width: min(78vw, 320px) !important;
    background: #ffffff !important;
  }

  body:not(.task-login) #layout-menu .popover-header,
  body:not(.task-login) #layout-menu .header {
    height: 64px !important;
    min-height: 64px !important;
  }

  body:not(.task-login) #layout-menu .popover-header::before,
  body:not(.task-login) #layout-menu .header::before {
    left: 18px !important;
    top: 15px !important;
    width: 118px !important;
    height: 34px !important;
  }

  body:not(.task-login) #taskmenu {
    padding: 12px 20px 8px 0 !important;
  }

  body:not(.task-login) #taskmenu a,
  body:not(.task-login) #layout-menu .special-buttons a {
    width: auto !important;
    min-height: 54px !important;
    justify-content: flex-start !important;
    gap: 14px !important;
    margin: 0 0 8px !important;
    padding: 0 24px !important;
    border-radius: 0 24px 24px 0 !important;
    font-size: 18px !important;
    color: #111111 !important;
  }

  body:not(.task-login) #layout-menu .special-buttons {
    position: static !important;
    width: auto !important;
    padding: 10px 20px 16px 0 !important;
    background: #ffffff !important;
    border-top: 1px solid var(--sb-line) !important;
  }

  html.dark-mode body:not(.task-login) #layout-menu,
  html.dark-mode body:not(.task-login) #layout-menu .special-buttons {
    background: var(--sb-dark) !important;
  }

  html.dark-mode body:not(.task-login) #layout-menu .special-buttons a,
  html.dark-mode body:not(.task-login) #taskmenu a {
    color: #f5f5f5 !important;
  }

  html.dark-mode body:not(.task-login) #taskmenu a.selected,
  html.dark-mode body:not(.task-login) #taskmenu a:hover,
  html.dark-mode body:not(.task-login) #taskmenu a:focus,
html.dark-mode body:not(.task-login) #taskmenu a.compose {
    color: #111111 !important;
  }
}

/* Stable login composition. Keep this last: Elastic must not reposition it. */
body.task-login h1.voice,
body.task-login #layout-content.smartbiz-login-v1 > .header {
  display: none !important;
}

body.task-login,
html[data-smartbiz-theme="dark"] body.task-login {
  min-width: 0 !important;
  min-height: 100vh !important;
  overflow-x: hidden !important;
  background: #050505 !important;
}

body.task-login #layout-content.smartbiz-login-v1 {
  position: fixed !important;
  inset: 0 !important;
  display: grid !important;
  grid-template-rows: 78px minmax(0, 1fr) 58px !important;
  width: 100vw !important;
  height: 100vh !important;
  min-height: 100vh !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: auto !important;
  background: #050505 !important;
}

body.task-login .smartbiz-login-topbar {
  position: relative !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  min-height: 78px !important;
  height: 78px !important;
  padding: 0 clamp(24px, 4vw, 64px) !important;
  background: #050505 !important;
  border: 0 !important;
  border-bottom: 1px solid rgba(255, 255, 255, .1) !important;
  box-sizing: border-box !important;
}

body.task-login .smartbiz-logo-wrap {
  position: relative !important;
  display: block !important;
  width: 146px !important;
  height: 54px !important;
  flex: 0 0 146px !important;
  overflow: hidden !important;
}

body.task-login .smartbiz-login-logo {
  position: absolute !important;
  inset: 0 !important;
  display: block !important;
  width: 146px !important;
  height: 54px !important;
  max-width: 146px !important;
  max-height: 54px !important;
  object-fit: contain !important;
  opacity: 1 !important;
}

body.task-login .smartbiz-theme-switch {
  z-index: 2 !important;
  height: 38px !important;
  padding: 3px !important;
  background: #181818 !important;
  border: 1px solid rgba(255, 255, 255, .17) !important;
}

body.task-login .smartbiz-theme-switch button {
  min-width: 48px !important;
  height: 30px !important;
  color: #ffffff !important;
  font-size: 12px !important;
}

body.task-login .smartbiz-login-hero {
  align-self: center !important;
  justify-self: center !important;
  width: min(1180px, calc(100vw - 56px)) !important;
  min-height: 390px !important;
  height: min(470px, calc(100vh - 190px)) !important;
  margin: 24px 0 !important;
  display: grid !important;
  grid-template-columns: minmax(360px, .88fr) minmax(460px, 1.12fr) !important;
  overflow: hidden !important;
  border: 1px solid rgba(255, 203, 5, .3) !important;
  border-radius: 28px !important;
  background: #0d0d0d !important;
  box-shadow: 0 28px 80px rgba(0, 0, 0, .38) !important;
}

body.task-login .smartbiz-login-copy {
  position: relative !important;
  z-index: 2 !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  min-width: 0 !important;
  padding: clamp(32px, 5vw, 62px) !important;
  background: #0d0d0d !important;
  color: #ffffff !important;
}

body.task-login .smartbiz-login-kicker {
  margin: 0 0 12px !important;
  color: #ffcb05 !important;
  font-size: 12px !important;
}

body.task-login .smartbiz-login-copy h2 {
  max-width: 440px !important;
  margin: 0 0 14px !important;
  color: #ffffff !important;
  font-size: clamp(34px, 4.2vw, 56px) !important;
  line-height: .98 !important;
}

body.task-login .smartbiz-login-lead {
  max-width: 420px !important;
  margin: 0 0 22px !important;
  color: #d3d3d3 !important;
  font-size: 15px !important;
  line-height: 1.42 !important;
}

body.task-login #login-form.smartbiz-login-card,
body.task-login form#login-form,
body.task-login form[name="login-form"] {
  position: static !important;
  width: min(100%, 360px) !important;
  max-width: 360px !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  transform: none !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

body.task-login .smartbiz-login-card .smartbiz-login-eyebrow {
  margin: 0 0 8px !important;
  color: #ffcb05 !important;
}

body.task-login .smartbiz-login-card h3 {
  margin: 0 0 14px !important;
  color: #ffffff !important;
  font-size: 25px !important;
}

body.task-login .smartbiz-login-card #rcmloginuser,
body.task-login .smartbiz-login-card #rcmloginpwd {
  height: 48px !important;
  color: #ffffff !important;
  background: #151515 !important;
  border-color: rgba(255, 203, 5, .4) !important;
}

body.task-login .smartbiz-login-card .input-group-text {
  height: 46px !important;
  color: #ffffff !important;
  background: #1d1d1d !important;
  border-right-color: rgba(255, 255, 255, .13) !important;
}

body.task-login .smartbiz-login-card #rcmloginsubmit {
  height: 48px !important;
  border-radius: 12px !important;
}

body.task-login .smartbiz-login-trust {
  min-height: 30px !important;
  color: #ffcb05 !important;
  background: rgba(255, 203, 5, .11) !important;
}

body.task-login .smartbiz-login-media {
  position: relative !important;
  display: block !important;
  min-height: 390px !important;
  background: #171717 !important;
}

body.task-login .smartbiz-login-media::before {
  width: 24% !important;
  background: linear-gradient(90deg, rgba(13, 13, 13, .78), rgba(13, 13, 13, 0)) !important;
}

body.task-login .smartbiz-login-media img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center right !important;
}

body.task-login .smartbiz-login-footer {
  min-height: 58px !important;
  background: #050505 !important;
}

body.task-login .smartbiz-login-footer-inner {
  width: min(1180px, calc(100vw - 56px)) !important;
  min-height: 58px !important;
}

@media (max-width: 820px) {
  body.task-login #layout-content.smartbiz-login-v1 {
    grid-template-rows: 68px auto auto !important;
  }

  body.task-login .smartbiz-login-topbar {
    min-height: 68px !important;
    height: 68px !important;
    padding: 0 18px !important;
  }

  body.task-login .smartbiz-logo-wrap,
  body.task-login .smartbiz-login-logo {
    width: 118px !important;
  }

  body.task-login .smartbiz-login-hero {
    width: min(520px, calc(100vw - 28px)) !important;
    height: auto !important;
    min-height: 0 !important;
    grid-template-columns: 1fr !important;
    margin: 16px 0 !important;
  }

  body.task-login .smartbiz-login-media {
    order: -1 !important;
    min-height: 190px !important;
    height: 190px !important;
  }

  body.task-login .smartbiz-login-media::before {
    display: none !important;
  }

  body.task-login .smartbiz-login-copy {
    padding: 30px 24px 34px !important;
  }

  body.task-login .smartbiz-login-copy h2 {
    font-size: 38px !important;
  }

  body.task-login .smartbiz-login-footer-inner {
    width: min(520px, calc(100vw - 36px)) !important;
  }
}

/* Login reset v20260826. This final layer wins over older experiments above. */
body.task-login,
html[data-smartbiz-theme="light"] body.task-login {
  background: #ffffff !important;
  color: #111111 !important;
}

body.task-login #layout-content.smartbiz-login-v1,
html[data-smartbiz-theme="light"] body.task-login #layout-content.smartbiz-login-v1 {
  grid-template-rows: 78px minmax(0, 1fr) auto !important;
  background: #ffffff !important;
}

body.task-login .smartbiz-login-topbar,
html[data-smartbiz-theme="light"] body.task-login .smartbiz-login-topbar {
  height: 78px !important;
  min-height: 78px !important;
  padding: 0 clamp(22px, 4vw, 54px) !important;
  background: #ffffff !important;
  border-bottom: 1px solid rgba(15, 23, 42, .08) !important;
}

body.task-login .smartbiz-logo-wrap,
body.task-login .smartbiz-login-logo {
  width: 174px !important;
  height: 52px !important;
  max-width: 174px !important;
  max-height: 52px !important;
}

body.task-login .smartbiz-theme-switch,
html[data-smartbiz-theme="light"] body.task-login .smartbiz-theme-switch {
  background: #f4f4f4 !important;
  border: 1px solid #dedede !important;
}

body.task-login .smartbiz-theme-switch button,
html[data-smartbiz-theme="light"] body.task-login .smartbiz-theme-switch button {
  color: #202020 !important;
}

body.task-login .smartbiz-theme-switch button[aria-pressed="true"] {
  color: #111111 !important;
  background: #ffcb05 !important;
}

body.task-login .smartbiz-login-hero,
html[data-smartbiz-theme="light"] body.task-login .smartbiz-login-hero {
  width: min(1240px, calc(100vw - 64px)) !important;
  min-height: 500px !important;
  height: min(620px, calc(100vh - 178px)) !important;
  margin: 18px 0 !important;
  grid-template-columns: minmax(390px, .92fr) minmax(500px, 1.08fr) !important;
  border: 1px solid rgba(15, 23, 42, .08) !important;
  border-radius: 22px !important;
  background: #fbf4e9 !important;
  box-shadow: none !important;
}

body.task-login .smartbiz-login-copy,
html[data-smartbiz-theme="light"] body.task-login .smartbiz-login-copy {
  padding: clamp(34px, 5vw, 62px) !important;
  background: linear-gradient(90deg, rgba(255, 255, 255, .98), rgba(255, 255, 255, .9) 74%, rgba(255, 255, 255, .58)) !important;
  color: #111111 !important;
}

body.task-login .smartbiz-login-kicker,
html[data-smartbiz-theme="light"] body.task-login .smartbiz-login-kicker {
  color: #111111 !important;
}

body.task-login .smartbiz-login-copy h2,
html[data-smartbiz-theme="light"] body.task-login .smartbiz-login-copy h2,
body.task-login .smartbiz-login-card h3,
html[data-smartbiz-theme="light"] body.task-login .smartbiz-login-card h3 {
  color: #080808 !important;
}

body.task-login .smartbiz-login-copy h2 {
  max-width: 560px !important;
  font-size: clamp(38px, 4vw, 56px) !important;
  line-height: 1.02 !important;
}

body.task-login .smartbiz-login-lead,
html[data-smartbiz-theme="light"] body.task-login .smartbiz-login-lead {
  max-width: 520px !important;
  color: #4a4a4a !important;
}

body.task-login #login-form.smartbiz-login-card,
body.task-login form#login-form,
body.task-login form[name="login-form"] {
  width: min(100%, 430px) !important;
  max-width: 430px !important;
}

body.task-login .smartbiz-login-card .smartbiz-login-eyebrow,
html[data-smartbiz-theme="light"] body.task-login .smartbiz-login-card .smartbiz-login-eyebrow {
  color: #6b5a00 !important;
}

body.task-login .smartbiz-login-card #rcmloginuser,
body.task-login .smartbiz-login-card #rcmloginpwd,
html[data-smartbiz-theme="light"] body.task-login .smartbiz-login-card #rcmloginuser,
html[data-smartbiz-theme="light"] body.task-login .smartbiz-login-card #rcmloginpwd {
  height: 50px !important;
  color: #111111 !important;
  background: #ffffff !important;
  border: 2px solid #dedede !important;
}

body.task-login .smartbiz-login-card .input-group-text,
html[data-smartbiz-theme="light"] body.task-login .smartbiz-login-card .input-group-text {
  height: 48px !important;
  color: #111111 !important;
  background: #f3f4f6 !important;
  border-right-color: #dfdfdf !important;
}

body.task-login .smartbiz-login-trust,
html[data-smartbiz-theme="light"] body.task-login .smartbiz-login-trust {
  color: #111111 !important;
  background: rgba(255, 203, 5, .18) !important;
  border-color: rgba(255, 203, 5, .45) !important;
}

body.task-login .smartbiz-login-media,
html[data-smartbiz-theme="light"] body.task-login .smartbiz-login-media {
  min-height: 500px !important;
  background: #fbf4e9 !important;
}

body.task-login .smartbiz-login-media::before,
html[data-smartbiz-theme="light"] body.task-login .smartbiz-login-media::before {
  width: 28% !important;
  background: linear-gradient(90deg, rgba(255, 255, 255, .78), rgba(255, 255, 255, 0)) !important;
}

body.task-login .smartbiz-login-footer,
html[data-smartbiz-theme="light"] body.task-login .smartbiz-login-footer {
  min-height: 64px !important;
  background: #070707 !important;
}

body.task-login .smartbiz-login-footer-inner {
  width: min(1180px, calc(100vw - 64px)) !important;
  min-height: 64px !important;
}

html[data-smartbiz-theme="dark"] body.task-login,
html[data-smartbiz-theme="dark"] body.task-login #layout-content.smartbiz-login-v1 {
  background: #070707 !important;
  color: #f7f7f7 !important;
}

html[data-smartbiz-theme="dark"] body.task-login .smartbiz-login-topbar {
  background: #0b0b0b !important;
  border-bottom-color: rgba(255, 255, 255, .1) !important;
}

html[data-smartbiz-theme="dark"] body.task-login .smartbiz-theme-switch {
  background: #151515 !important;
  border-color: rgba(255, 255, 255, .18) !important;
}

html[data-smartbiz-theme="dark"] body.task-login .smartbiz-theme-switch button {
  color: #f8f8f8 !important;
}

html[data-smartbiz-theme="dark"] body.task-login .smartbiz-login-hero {
  border-color: rgba(255, 203, 5, .28) !important;
  background: #101010 !important;
}

html[data-smartbiz-theme="dark"] body.task-login .smartbiz-login-copy {
  background: linear-gradient(90deg, rgba(9, 9, 9, .98), rgba(9, 9, 9, .93) 74%, rgba(9, 9, 9, .64)) !important;
  color: #ffffff !important;
}

html[data-smartbiz-theme="dark"] body.task-login .smartbiz-login-kicker,
html[data-smartbiz-theme="dark"] body.task-login .smartbiz-login-copy h2,
html[data-smartbiz-theme="dark"] body.task-login .smartbiz-login-card h3 {
  color: #ffffff !important;
}

html[data-smartbiz-theme="dark"] body.task-login .smartbiz-login-lead {
  color: #d6d6d6 !important;
}

html[data-smartbiz-theme="dark"] body.task-login .smartbiz-login-card .smartbiz-login-eyebrow,
html[data-smartbiz-theme="dark"] body.task-login .smartbiz-login-trust {
  color: #ffcb05 !important;
}

html[data-smartbiz-theme="dark"] body.task-login .smartbiz-login-card #rcmloginuser,
html[data-smartbiz-theme="dark"] body.task-login .smartbiz-login-card #rcmloginpwd {
  color: #ffffff !important;
  background: #101010 !important;
  border-color: rgba(255, 255, 255, .22) !important;
}

html[data-smartbiz-theme="dark"] body.task-login .smartbiz-login-card .input-group-text {
  color: #f7f7f7 !important;
  background: #1d1d1d !important;
  border-right-color: rgba(255, 255, 255, .14) !important;
}

html[data-smartbiz-theme="dark"] body.task-login .smartbiz-login-media {
  background: #101010 !important;
}

html[data-smartbiz-theme="dark"] body.task-login .smartbiz-login-media::before {
  background: linear-gradient(90deg, rgba(9, 9, 9, .82), rgba(9, 9, 9, 0)) !important;
}

@media (max-width: 900px) {
  body.task-login #layout-content.smartbiz-login-v1 {
    grid-template-rows: auto auto auto !important;
  }

  body.task-login .smartbiz-login-topbar {
    height: auto !important;
    min-height: 68px !important;
    padding: 14px 18px !important;
  }

  body.task-login .smartbiz-logo-wrap,
  body.task-login .smartbiz-login-logo {
    width: 136px !important;
    height: 42px !important;
  }

  body.task-login .smartbiz-login-hero {
    width: min(530px, calc(100vw - 24px)) !important;
    height: auto !important;
    min-height: 0 !important;
    grid-template-columns: 1fr !important;
    margin: 14px 0 18px !important;
    border-radius: 18px !important;
  }

  body.task-login .smartbiz-login-media {
    order: -1 !important;
    min-height: 190px !important;
    height: 190px !important;
  }

  body.task-login .smartbiz-login-media::before {
    display: none !important;
  }

  body.task-login .smartbiz-login-copy {
    padding: 28px 22px 32px !important;
  }

  body.task-login .smartbiz-login-copy h2 {
    font-size: 34px !important;
  }

  body.task-login .smartbiz-login-footer-inner {
    width: min(530px, calc(100vw - 32px)) !important;
  }
}

@media (max-width: 480px) {
  body.task-login .smartbiz-theme-switch button {
    min-width: 42px !important;
    padding: 0 8px !important;
  }

  body.task-login .smartbiz-login-copy h2 {
    font-size: 30px !important;
  }

  body.task-login .smartbiz-login-card h3 {
    font-size: 24px !important;
  }

  body.task-login .smartbiz-login-trust {
    width: 100% !important;
    justify-content: center !important;
    white-space: normal !important;
    text-align: center !important;
    border-radius: 12px !important;
  }
}

/* Logo contrast guardrail: one SmartBiz logo, readable in both themes. */
body.task-login .smartbiz-logo-wrap {
  position: relative !important;
  display: block !important;
  overflow: hidden !important;
}

body.task-login .smartbiz-logo-wrap .smartbiz-login-logo {
  position: absolute !important;
  inset: 0 !important;
  display: block !important;
  object-fit: contain !important;
  object-position: left center !important;
  transition: opacity .15s ease !important;
}

body.task-login .smartbiz-logo-wrap .smartbiz-logo-light,
html[data-smartbiz-theme="light"] body.task-login .smartbiz-logo-wrap .smartbiz-logo-light {
  opacity: 1 !important;
  visibility: visible !important;
}

body.task-login .smartbiz-logo-wrap .smartbiz-logo-dark,
html[data-smartbiz-theme="light"] body.task-login .smartbiz-logo-wrap .smartbiz-logo-dark {
  opacity: 0 !important;
  visibility: hidden !important;
}

html[data-smartbiz-theme="dark"] body.task-login .smartbiz-logo-wrap .smartbiz-logo-light {
  opacity: 0 !important;
  visibility: hidden !important;
}

html[data-smartbiz-theme="dark"] body.task-login .smartbiz-logo-wrap .smartbiz-logo-dark {
  opacity: 1 !important;
  visibility: visible !important;
}

@media (prefers-color-scheme: dark) {
  html:not([data-smartbiz-theme="light"]) body.task-login .smartbiz-logo-wrap .smartbiz-logo-light {
    opacity: 0 !important;
    visibility: hidden !important;
  }

html:not([data-smartbiz-theme="light"]) body.task-login .smartbiz-logo-wrap .smartbiz-logo-dark {
    opacity: 1 !important;
    visibility: visible !important;
  }
}

/* 2026-08-26 mailbox final stabilization.
   Keep Roundcube Elastic behaviour, but remove the broken custom layout rules
   that made the mailbox cramped, unreadable and visually inconsistent. */
body:not(.task-login) {
  --smartbiz-yellow: #ffcb05;
  --smartbiz-ink: #07120f;
  --smartbiz-green: #004f39;
  --smartbiz-soft: #fff8df;
  --smartbiz-mail-menu: 112px;
  --smartbiz-mail-folders: 360px;
  --smartbiz-mail-list: 520px;
  background: #f7f3e8 !important;
  color: #14221e !important;
}

body:not(.task-login) #layout-menu {
  width: var(--smartbiz-mail-menu) !important;
  min-width: var(--smartbiz-mail-menu) !important;
  max-width: var(--smartbiz-mail-menu) !important;
  overflow: hidden !important;
  background: #ffffff !important;
  border-right: 1px solid rgba(0, 0, 0, .1) !important;
  box-shadow: 0 18px 40px rgba(0, 0, 0, .08) !important;
}

body:not(.task-login) #taskmenu {
  padding-top: 12px !important;
}

body:not(.task-login) #taskmenu a,
body:not(.task-login) #layout-menu .special-buttons a {
  width: calc(var(--smartbiz-mail-menu) - 16px) !important;
  min-height: 54px !important;
  margin: 6px 8px !important;
  padding: 8px 6px !important;
  border-radius: 16px !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 4px !important;
  color: #14221e !important;
  background: transparent !important;
  text-align: center !important;
  white-space: normal !important;
  overflow: visible !important;
}

body:not(.task-login) #taskmenu a.selected,
body:not(.task-login) #taskmenu a:hover,
body:not(.task-login) #layout-menu .special-buttons a:hover {
  color: #000 !important;
  background: var(--smartbiz-yellow) !important;
}

body:not(.task-login) #taskmenu a .inner,
body:not(.task-login) #taskmenu a span,
body:not(.task-login) #layout-menu .special-buttons a .inner,
body:not(.task-login) #layout-menu .special-buttons a span {
  position: static !important;
  display: block !important;
  width: auto !important;
  max-width: 92px !important;
  height: auto !important;
  margin: 0 !important;
  clip: auto !important;
  overflow: hidden !important;
  text-indent: 0 !important;
  font-size: 13px !important;
  line-height: 1.15 !important;
  font-weight: 700 !important;
  text-overflow: ellipsis !important;
  opacity: 1 !important;
}

body:not(.task-login) #layout-menu .special-buttons {
  width: var(--smartbiz-mail-menu) !important;
  padding: 8px 0 !important;
  background: #ffffff !important;
  border-top: 1px solid rgba(0, 0, 0, .08) !important;
}

@media (min-width: 1024px) {
  body:not(.task-login) #layout-sidebar {
    left: var(--smartbiz-mail-menu) !important;
    width: var(--smartbiz-mail-folders) !important;
    background: #fbfaf4 !important;
    border-right: 1px solid rgba(0, 0, 0, .1) !important;
  }

  body:not(.task-login) #layout-list {
    left: calc(var(--smartbiz-mail-menu) + var(--smartbiz-mail-folders)) !important;
    width: var(--smartbiz-mail-list) !important;
    background: #ffffff !important;
    border-right: 1px solid rgba(0, 0, 0, .1) !important;
  }

  body:not(.task-login) #layout-content {
    left: calc(var(--smartbiz-mail-menu) + var(--smartbiz-mail-folders) + var(--smartbiz-mail-list)) !important;
    background: #ffffff !important;
  }
}

body:not(.task-login) #layout-sidebar .header,
body:not(.task-login) #layout-list .header,
body:not(.task-login) #layout-content .header,
body:not(.task-login) .toolbar {
  background: #ffffff !important;
  border-color: rgba(0, 0, 0, .1) !important;
  color: #1c2421 !important;
}

body:not(.task-login) #mailboxlist li a,
body:not(.task-login) #messagelist tbody td,
body:not(.task-login) #messagelist tbody a,
body:not(.task-login) .listing tbody td {
  color: #1c2421 !important;
}

body:not(.task-login) #mailboxlist li.selected > a,
body:not(.task-login) #mailboxlist li a:hover {
  background: #fff1a8 !important;
  color: #000 !important;
  border-radius: 12px !important;
}

body:not(.task-login) .searchbar,
body:not(.task-login) input[type="text"],
body:not(.task-login) input[type="search"],
body:not(.task-login) textarea {
  color: #18221f !important;
  background: #ffffff !important;
  border-color: rgba(0, 0, 0, .18) !important;
}

body:not(.task-login) #layout-content .watermark,
body:not(.task-login) #messagecontframe .watermark,
body:not(.task-login) .watermark,
body:not(.task-login) .iframe-wrapper .watermark {
  opacity: .08 !important;
  filter: grayscale(1) !important;
}

body:not(.task-login) img[src*="roundcube"],
body:not(.task-login) .roundcube-logo {
  display: none !important;
}

html[data-smartbiz-theme="dark"] body:not(.task-login),
body.dark-mode:not(.task-login) {
  background: #07120f !important;
  color: #f6f2e7 !important;
}

html[data-smartbiz-theme="dark"] body:not(.task-login) #layout-menu,
body.dark-mode:not(.task-login) #layout-menu,
html[data-smartbiz-theme="dark"] body:not(.task-login) #layout-menu .special-buttons,
body.dark-mode:not(.task-login) #layout-menu .special-buttons {
  background: #050d0b !important;
  border-color: rgba(255, 255, 255, .14) !important;
}

html[data-smartbiz-theme="dark"] body:not(.task-login) #layout-sidebar,
body.dark-mode:not(.task-login) #layout-sidebar,
html[data-smartbiz-theme="dark"] body:not(.task-login) #layout-list,
body.dark-mode:not(.task-login) #layout-list,
html[data-smartbiz-theme="dark"] body:not(.task-login) #layout-content,
body.dark-mode:not(.task-login) #layout-content {
  background: #111b1a !important;
  border-color: rgba(255, 255, 255, .14) !important;
}

html[data-smartbiz-theme="dark"] body:not(.task-login) #layout-sidebar .header,
body.dark-mode:not(.task-login) #layout-sidebar .header,
html[data-smartbiz-theme="dark"] body:not(.task-login) #layout-list .header,
body.dark-mode:not(.task-login) #layout-list .header,
html[data-smartbiz-theme="dark"] body:not(.task-login) #layout-content .header,
body.dark-mode:not(.task-login) #layout-content .header,
html[data-smartbiz-theme="dark"] body:not(.task-login) .toolbar,
body.dark-mode:not(.task-login) .toolbar {
  background: #0a1311 !important;
  border-color: rgba(255, 255, 255, .14) !important;
  color: #f7f3e8 !important;
}

html[data-smartbiz-theme="dark"] body:not(.task-login) #taskmenu a,
body.dark-mode:not(.task-login) #taskmenu a,
html[data-smartbiz-theme="dark"] body:not(.task-login) #layout-menu .special-buttons a,
body.dark-mode:not(.task-login) #layout-menu .special-buttons a,
html[data-smartbiz-theme="dark"] body:not(.task-login) #mailboxlist li a,
body.dark-mode:not(.task-login) #mailboxlist li a,
html[data-smartbiz-theme="dark"] body:not(.task-login) #messagelist tbody td,
body.dark-mode:not(.task-login) #messagelist tbody td,
html[data-smartbiz-theme="dark"] body:not(.task-login) #messagelist tbody a,
body.dark-mode:not(.task-login) #messagelist tbody a,
html[data-smartbiz-theme="dark"] body:not(.task-login) .listing tbody td,
body.dark-mode:not(.task-login) .listing tbody td {
  color: #f7f3e8 !important;
}

html[data-smartbiz-theme="dark"] body:not(.task-login) #taskmenu a.selected,
body.dark-mode:not(.task-login) #taskmenu a.selected,
html[data-smartbiz-theme="dark"] body:not(.task-login) #taskmenu a:hover,
body.dark-mode:not(.task-login) #taskmenu a:hover,
html[data-smartbiz-theme="dark"] body:not(.task-login) #mailboxlist li.selected > a,
body.dark-mode:not(.task-login) #mailboxlist li.selected > a,
html[data-smartbiz-theme="dark"] body:not(.task-login) #mailboxlist li a:hover,
body.dark-mode:not(.task-login) #mailboxlist li a:hover {
  background: var(--smartbiz-yellow) !important;
  color: #000 !important;
}

html[data-smartbiz-theme="dark"] body:not(.task-login) .searchbar,
body.dark-mode:not(.task-login) .searchbar,
html[data-smartbiz-theme="dark"] body:not(.task-login) input[type="text"],
body.dark-mode:not(.task-login) input[type="text"],
html[data-smartbiz-theme="dark"] body:not(.task-login) input[type="search"],
body.dark-mode:not(.task-login) input[type="search"],
html[data-smartbiz-theme="dark"] body:not(.task-login) textarea,
body.dark-mode:not(.task-login) textarea {
  background: #0b1714 !important;
  color: #f7f3e8 !important;
  border-color: rgba(255, 255, 255, .24) !important;
}

@media (max-width: 1023px) {
  body:not(.task-login) {
    --smartbiz-mail-menu: 72px;
  }

  body:not(.task-login) #layout-menu {
    width: var(--smartbiz-mail-menu) !important;
    min-width: var(--smartbiz-mail-menu) !important;
  }

  body:not(.task-login) #taskmenu a,
  body:not(.task-login) #layout-menu .special-buttons a {
    width: 60px !important;
    min-height: 54px !important;
    margin: 5px 6px !important;
  }

  body:not(.task-login) #taskmenu a .inner,
  body:not(.task-login) #taskmenu a span,
  body:not(.task-login) #layout-menu .special-buttons a .inner,
  body:not(.task-login) #layout-menu .special-buttons a span {
    max-width: 54px !important;
    font-size: 10px !important;
    line-height: 1.1 !important;
  }
}

/* 2026-08-27 final runtime precedence.
   This block intentionally sits last: it prevents the old wide-label mailbox
   rules above from overriding the stable production mailbox layout. */
body:not(.task-login) {
  --smartbiz-mail-menu: 76px !important;
  --smartbiz-mail-folders: 360px !important;
  --smartbiz-mail-list: 520px !important;
}

body:not(.task-login) #layout-menu {
  width: 76px !important;
  min-width: 76px !important;
  max-width: 76px !important;
  overflow: hidden !important;
}

body:not(.task-login) #taskmenu a,
body:not(.task-login) #layout-menu .special-buttons a {
  width: 58px !important;
  height: 58px !important;
  min-height: 58px !important;
  margin: 7px 9px !important;
  padding: 0 !important;
  flex-direction: row !important;
  gap: 0 !important;
}

body:not(.task-login) #taskmenu a .inner,
body:not(.task-login) #taskmenu a span,
body:not(.task-login) #layout-menu .special-buttons a .inner,
body:not(.task-login) #layout-menu .special-buttons a span {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  margin: -1px !important;
  padding: 0 !important;
  border: 0 !important;
  clip: rect(0 0 0 0) !important;
  clip-path: inset(50%) !important;
  overflow: hidden !important;
  white-space: nowrap !important;
}

@media (min-width: 1024px) {
  body:not(.task-login) #layout-sidebar {
    left: 76px !important;
    width: 360px !important;
  }

  body:not(.task-login) #layout-list {
    left: 436px !important;
    width: 520px !important;
  }

  body:not(.task-login) #layout-content {
    left: 956px !important;
  }
}
