/* Nova Mail theme on top of Roundcube Elastic. Structural rules only apply on desktop (html.nova-desk). */
@import url("https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap");

:root {
  --nv-bg: #0c0c0f;
  --nv-panel: #141418;
  --nv-panel-2: #1a1a1f;
  --nv-line: #26262d;
  --nv-text: #f4f4f6;
  --nv-muted: #9b9ca6;
  --nv-dim: #6c6d77;
  --nv-red: #f0434b;
  --nv-red-2: #ff5a61;
  --nv-red-soft: rgba(240, 67, 75, .13);
  --nv-green: #2fd07a;
  --nv-radius: 16px;
}

html, body, input, textarea, select, button, .btn, table { font-family: "Inter", system-ui, -apple-system, "Segoe UI", sans-serif !important; }
body { background: var(--nv-bg) !important; color: var(--nv-text); }

/* ---------- global colours (all screen sizes) ---------- */
#layout > div, #layout > .sidebar, #layout-content, #layout-list, #layout-sidebar { background: var(--nv-panel) !important; color: var(--nv-text); }
#layout .header, #layout .footer { background: transparent !important; border-color: var(--nv-line) !important; color: var(--nv-text); }
a, .listing li a { color: var(--nv-text); }
.btn-primary, .btn.btn-primary, .formbuttons .btn.mainaction, button.mainaction { background: var(--nv-red) !important; border-color: var(--nv-red) !important; color: #fff !important; }
.btn-primary:hover, button.mainaction:hover { background: var(--nv-red-2) !important; }
input.form-control, textarea.form-control, select.custom-select, .form-control { background: var(--nv-panel-2) !important; border-color: var(--nv-line) !important; color: var(--nv-text) !important; border-radius: 10px; }
.popover, .popupmenu, .ui-dialog, .ui-dialog-content, .ui-dialog-buttonpane { background: var(--nv-panel-2) !important; border-color: var(--nv-line) !important; color: var(--nv-text); }
.listing li.selected, .listing li.focused { background: transparent; }
::selection { background: rgba(240, 67, 75, .35); }

/* ---------- desktop layout ---------- */
html.nova-desk #layout { position: fixed; top: 76px; left: 0; right: 0; bottom: 0; height: auto !important; gap: 12px; padding: 0 14px 14px 0; background: var(--nv-bg); }
html.nova-desk #layout > div:not(#layout-menu) { border: 1px solid var(--nv-line); border-radius: var(--nv-radius); overflow: hidden; }

/* top bar */
#nova-topbar { display: none; }
html.nova-desk #nova-topbar { display: flex; position: fixed; top: 0; left: 0; right: 0; height: 76px; align-items: center; gap: 28px; padding: 0 28px 0 24px; background: var(--nv-bg); z-index: 50; }
#nova-topbar .nv-brand { display: flex; align-items: center; gap: 18px; width: 275px; flex: none; color: var(--nv-text); text-decoration: none; }
#nova-topbar .nv-brand svg { width: 34px; height: 34px; flex: none; }
#nova-topbar .nv-brand span { font-weight: 700; font-size: 19px; letter-spacing: .38em; }
#nova-topbar .nv-search { flex: 1; max-width: 780px; }
#nova-topbar .nv-search .searchbar { display: flex !important; align-items: center; position: static !important; width: 100% !important; height: 52px; margin: 0 !important; padding: 0 14px 0 6px; background: var(--nv-panel) !important; border: 1px solid var(--nv-line); border-radius: 14px; }
#nova-topbar .nv-search .searchbar input { background: transparent !important; border: 0 !important; color: var(--nv-text) !important; font-size: 17px; height: 50px; box-shadow: none !important; }
#nova-topbar .nv-search .searchbar input::placeholder { color: var(--nv-muted); }
#nova-topbar .nv-search .searchbar a, #nova-topbar .nv-search .searchbar button { color: var(--nv-muted) !important; }
#nova-topbar .nv-right { margin-left: auto; display: flex; align-items: center; gap: 26px; }
#nova-topbar .nv-status { display: flex; align-items: center; gap: 10px; color: var(--nv-muted); font-size: 15px; padding-right: 26px; border-right: 1px solid var(--nv-line); }
#nova-topbar .nv-status i { width: 9px; height: 9px; border-radius: 50%; background: var(--nv-green); box-shadow: 0 0 0 3px rgba(47, 208, 122, .15); }
#nova-topbar .nv-status.off i { background: var(--nv-dim); box-shadow: none; }
#nova-topbar .nv-icon { position: relative; background: none; border: 0; color: var(--nv-text); cursor: pointer; padding: 6px; }
#nova-topbar .nv-icon svg { width: 25px; height: 25px; }
#nova-topbar .nv-icon b { display: none; position: absolute; top: 4px; right: 4px; width: 9px; height: 9px; border-radius: 50%; background: var(--nv-red); border: 2px solid var(--nv-bg); }
#nova-topbar .nv-icon.has-dot b { display: block; }
#nova-topbar .nv-user { display: flex; align-items: center; gap: 12px; padding-left: 26px; border-left: 1px solid var(--nv-line); cursor: pointer; position: relative; }
#nova-topbar .nv-user .nv-chev { width: 18px; height: 18px; color: var(--nv-muted); }
#nova-topbar .nv-usermenu { display: none; position: absolute; right: 0; top: 58px; min-width: 230px; padding: 8px; background: var(--nv-panel-2); border: 1px solid var(--nv-line); border-radius: 14px; box-shadow: 0 18px 40px rgba(0, 0, 0, .5); }
#nova-topbar .nv-user.open .nv-usermenu { display: block; }
#nova-topbar .nv-usermenu div { padding: 10px 12px 12px; color: var(--nv-muted); font-size: 13px; border-bottom: 1px solid var(--nv-line); margin-bottom: 6px; }
#nova-topbar .nv-usermenu a { display: block; padding: 10px 12px; border-radius: 10px; color: var(--nv-text); text-decoration: none; font-size: 15px; }
#nova-topbar .nv-usermenu a:hover { background: var(--nv-red-soft); }

/* avatars */
.nv-avatar { display: inline-flex; align-items: center; justify-content: center; flex: none; width: 54px; height: 54px; border-radius: 50%; font-weight: 600; font-size: 19px; color: #1b1b22; letter-spacing: .02em; }
.nv-avatar.sm { width: 46px; height: 46px; font-size: 17px; }

/* icon rail */
html.nova-desk #layout-menu { width: 70px !important; min-width: 70px !important; background: var(--nv-bg) !important; border: 0 !important; border-right: 1px solid var(--nv-line) !important; padding-top: 18px; }
html.nova-desk #layout-menu > .popover-header, html.nova-desk #layout-menu #logo, html.nova-desk #layout-menu a.logo { display: none !important; }
html.nova-desk #taskmenu { display: flex; flex-direction: column; align-items: center; height: 100%; }
html.nova-desk #taskmenu a { width: 48px; height: 48px; margin: 6px auto; padding: 0 !important; border-radius: 12px; display: flex; align-items: center; justify-content: center; color: #c9cad1 !important; background: none !important; }
html.nova-desk #taskmenu a:before { font-size: 21px !important; margin: 0 !important; }
html.nova-desk #taskmenu a .inner { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
html.nova-desk #taskmenu a.selected { background: var(--nv-red-soft) !important; color: var(--nv-red) !important; }
html.nova-desk #taskmenu a:hover { background: rgba(255, 255, 255, .06) !important; }
html.nova-desk #taskmenu .action-buttons, html.nova-desk #taskmenu a.theme { display: none !important; }
html.nova-desk #taskmenu .special-buttons { margin-top: auto; padding-bottom: 14px; }

/* sidebar */
html.nova-desk #layout-sidebar { width: 275px !important; min-width: 275px !important; max-width: 275px !important; }
html.nova-desk #layout-sidebar > .header { display: none !important; }
#nova-compose { display: flex; align-items: center; gap: 14px; margin: 18px 16px 22px; height: 56px; padding: 0 22px; border: 0; border-radius: 12px; background: var(--nv-red); color: #fff; font-weight: 600; font-size: 17px; cursor: pointer; box-shadow: 0 8px 24px rgba(240, 67, 75, .25); width: calc(100% - 32px); }
#nova-compose:hover { background: var(--nv-red-2); }
#nova-compose svg { width: 22px; height: 22px; }
html.nova-desk #mailboxlist, html.nova-desk #layout-sidebar .listing { padding: 0 10px; background: transparent !important; }
html.nova-desk #mailboxlist li { border: 0 !important; margin: 2px 0; }
html.nova-desk #mailboxlist li a { display: flex; align-items: center; height: 50px; padding: 0 16px !important; border-radius: 11px; font-size: 16px; color: #e8e8ec !important; position: relative; }
html.nova-desk #mailboxlist li a:before { width: 26px; margin-right: 14px !important; font-size: 18px; color: #c9cad1; }
html.nova-desk #mailboxlist li.selected > a, html.nova-desk #mailboxlist li.nv-active > a { background: var(--nv-red-soft) !important; font-weight: 600; color: #fff !important; }
html.nova-desk #mailboxlist li.selected > a:after, html.nova-desk #mailboxlist li.nv-active > a:after { content: ""; position: absolute; left: -10px; top: 8px; bottom: 8px; width: 4px; border-radius: 0 4px 4px 0; background: var(--nv-red); }
html.nova-desk #mailboxlist li.selected > a:before { color: var(--nv-red); }
html.nova-desk #mailboxlist li.nv-starred-filter.selected:not(.nv-active) > a, html.nova-desk #mailboxlist.nv-starred-on li.inbox.selected > a { background: none !important; font-weight: 400; }
html.nova-desk #mailboxlist.nv-starred-on li.inbox.selected > a:after { display: none; }
html.nova-desk #mailboxlist .unreadcount { background: none !important; color: var(--nv-red) !important; font-weight: 700; font-size: 15px; }
html.nova-desk #mailboxlist li:not(.selected) .unreadcount { color: var(--nv-muted) !important; font-weight: 500; }
html.nova-desk #mailboxlist li.nv-starred-filter > a:before { content: "\f005"; font-family: "Icons"; font-weight: 400; }
html.nova-desk #layout-sidebar > .footer { border-top: 1px solid var(--nv-line) !important; }

/* message list column */
html.nova-desk #layout-list { width: 460px !important; min-width: 400px !important; max-width: 460px !important; flex: none !important; }
html.nova-desk #messagelist-header { display: block !important; height: auto !important; padding: 22px 22px 10px 26px !important; border: 0 !important; }
html.nova-desk #messagelist-header > .header-title, html.nova-desk #messagelist-header > .back-sidebar-button, html.nova-desk #messagelist-header > .task-menu-button { display: none !important; }
html.nova-desk #messagelist-header #toolbar-list-menu { position: absolute; right: 16px; top: 16px; }
html.nova-desk #messagelist-header #toolbar-list-menu li:not(:last-child) { display: none; }
html.nova-desk #messagelist-header a.refresh { position: absolute; right: 64px; top: 16px; }
#nova-listhead h1 { display: inline; margin: 0; font-size: 34px; font-weight: 700; color: var(--nv-text); }
#nova-listhead .nv-unread { margin-left: 14px; color: var(--nv-red); font-weight: 600; font-size: 17px; }
#nova-listhead .nv-pills { display: inline-flex; margin-top: 20px; padding: 3px; gap: 2px; background: var(--nv-panel-2); border: 1px solid var(--nv-line); border-radius: 11px; }
#nova-listhead .nv-pills button { border: 1px solid transparent; background: none; color: #d9d9de; font-size: 15px; padding: 7px 22px; border-radius: 9px; cursor: pointer; }
#nova-listhead .nv-pills button.on { background: var(--nv-red-soft); border-color: rgba(240, 67, 75, .55); color: #fff; font-weight: 600; }

html.nova-desk #messagelist-content { padding: 0 10px; }
html.nova-desk #messagelist { border-collapse: separate !important; border-spacing: 0 2px; background: transparent !important; }
html.nova-desk #messagelist tbody tr td { background: transparent !important; border: 0 !important; border-bottom: 1px solid var(--nv-line) !important; color: var(--nv-text); }
html.nova-desk #messagelist tbody tr td.subject { position: relative; padding: 18px 12px 18px 98px !important; height: 104px; }
html.nova-desk #messagelist tbody tr .nv-avatar { position: absolute; left: 30px; top: 22px; }
html.nova-desk #messagelist tbody tr.unread td.subject:before { content: ""; position: absolute; left: 12px; top: 41px; width: 8px; height: 8px; border-radius: 50%; background: var(--nv-red); }
html.nova-desk #messagelist tbody tr span.fromto { font-size: 16px; font-weight: 600; color: var(--nv-text) !important; }
html.nova-desk #messagelist tbody tr span.fromto .rcmContactAddress { color: var(--nv-text) !important; }
html.nova-desk #messagelist tbody tr span.date { color: var(--nv-muted) !important; font-size: 14px; }
html.nova-desk #messagelist tbody tr span.size { display: none; }
html.nova-desk #messagelist tbody tr span.subject { display: block; margin-top: 4px; font-size: 16px; }
html.nova-desk #messagelist tbody tr span.subject a, html.nova-desk #messagelist tbody tr span.subject span { color: #e6e6ea !important; }
html.nova-desk #messagelist tbody tr.unread span.subject a { color: #fff !important; font-weight: 600; }
html.nova-desk #messagelist tbody tr span.msgicon.status { display: none !important; }
html.nova-desk #messagelist tbody tr td.flags { width: 46px; vertical-align: bottom; padding-bottom: 20px !important; }
html.nova-desk #messagelist tbody tr td.flags span.flag span { color: var(--nv-muted); }
html.nova-desk #messagelist tbody tr td.flags span.flag span.flagged:before { color: #ffc24a; }
html.nova-desk #messagelist tbody tr.selected td, html.nova-desk #messagelist tbody tr.focused.selected td { background: rgba(240, 67, 75, .10) !important; border-top: 1px solid rgba(240, 67, 75, .45) !important; border-bottom: 1px solid rgba(240, 67, 75, .45) !important; }
html.nova-desk #messagelist tbody tr.selected td:first-child, html.nova-desk #messagelist tbody tr.selected td.subject { border-left: 1px solid rgba(240, 67, 75, .45) !important; border-radius: 14px 0 0 14px; }
html.nova-desk #messagelist tbody tr.selected td:last-child { border-right: 1px solid rgba(240, 67, 75, .45) !important; border-radius: 0 14px 14px 0; }
html.nova-desk #messagelist tbody tr:hover td { background: rgba(255, 255, 255, .025) !important; }
html.nova-desk #layout-list > .footer { border-top: 1px solid var(--nv-line) !important; }

/* reading column toolbar */
html.nova-desk #layout-content > .header { height: 64px !important; padding: 0 16px !important; border-bottom: 1px solid var(--nv-line) !important; }
html.nova-desk #layout-content > .header > .header-title { display: none !important; }
html.nova-desk #layout-content > .header .menu.toolbar { justify-content: flex-start !important; gap: 4px; }
html.nova-desk #layout-content > .header .menu.toolbar a.button, html.nova-desk #layout-content > .header .menu.toolbar a { display: inline-flex !important; flex-direction: row !important; align-items: center; gap: 10px; min-width: 0 !important; height: 44px; padding: 0 14px !important; border-radius: 10px; color: #e6e6ea !important; font-size: 15px; }
html.nova-desk #layout-content > .header .menu.toolbar a:before { font-size: 18px !important; margin: 0 !important; display: inline-block !important; }
html.nova-desk #layout-content > .header .menu.toolbar a .inner { display: inline !important; font-size: 15px; }
html.nova-desk #layout-content > .header .menu.toolbar a:hover { background: rgba(255, 255, 255, .06) !important; }
html.nova-desk #layout-content > .header .menu.toolbar a.disabled { opacity: .45; }
html.nova-desk #layout-content > .header .menu.toolbar a.dropbutton { padding: 0 6px !important; margin-left: -12px; }
html.nova-desk #layout-content > .header .menu.toolbar .spacer { width: 1px; height: 26px; margin: 0 10px; background: var(--nv-line); }
html.nova-desk #layout-content iframe { background: var(--nv-panel) !important; }

/* ---------- inside the reading pane (preview iframe) ---------- */
body.action-preview, body.action-show { background: var(--nv-panel) !important; }
body.action-preview #layout-content, body.action-show #layout-content { background: var(--nv-panel) !important; border: 0 !important; }
body.action-preview .frame-content { padding: 28px 32px 150px !important; }
body.action-preview #message-header { border: 0 !important; background: transparent !important; padding: 0 !important; }
body.action-preview #message-header h2.subject { font-size: 31px; font-weight: 800; line-height: 1.2; color: var(--nv-text); margin: 0 0 24px; padding-right: 50px; letter-spacing: -.01em; }
body.action-preview #message-header h2.subject a.extwin { display: none; }
body.action-preview #message-header .header { display: flex; align-items: center; gap: 18px; }
body.action-preview #message-header .header img.contactphoto { display: none; }
body.action-preview #message-header .header .nv-avatar { width: 58px; height: 58px; font-size: 20px; }
body.action-preview #message-header .header-content { flex: 1; }
body.action-preview #message-header .header-summary { font-size: 16px; color: var(--nv-muted); }
body.action-preview #message-header .header-summary a, body.action-preview #message-header .header-summary .adr a { color: var(--nv-text) !important; font-weight: 600; font-size: 19px; }
body.action-preview #message-header .header-links { margin-top: 6px; }
body.action-preview #message-header .header-links a { color: var(--nv-muted) !important; font-size: 13px; margin-right: 14px; }
body.action-preview #message-content { border: 0 !important; margin-top: 26px; }
body.action-preview #messagebody, body.action-preview .message-part, body.action-preview .message-htmlpart { background: transparent !important; border: 0 !important; color: #e9e9ed; font-size: 17px; line-height: 1.6; }
body.action-preview .message-part pre, body.action-preview .message-part div.pre { color: #e9e9ed; font-family: "Inter", sans-serif !important; font-size: 17px; white-space: pre-wrap; }
body.action-preview .message-htmlpart.nv-light { background: #fff !important; color: #111 !important; border-radius: 14px; padding: 18px !important; }
body.action-preview .message-htmlpart.nv-dark .rcmBody, body.action-preview .message-htmlpart.nv-dark { background: transparent !important; color: #e9e9ed !important; }
body.action-preview .message-htmlpart.nv-dark .rcmBody * { color: inherit; }
body.action-preview .message-htmlpart.nv-dark a { color: var(--nv-red-2) !important; }
body.action-preview #attachment-list { display: flex; flex-wrap: wrap; gap: 12px; padding: 0; border: 0 !important; }
body.action-preview #attachment-list li { width: 336px; min-height: 74px; display: flex; align-items: center; padding: 14px 16px !important; background: var(--nv-panel-2) !important; border: 1px solid var(--nv-line) !important; border-radius: 12px; }
body.action-preview #attachment-list li a { color: var(--nv-text) !important; }
body.action-preview #attachment-list li .attachment-size { color: var(--nv-muted); }
body.action-preview .leftcol { border: 0 !important; }

#nova-quickreply { position: fixed; left: 18px; right: 18px; bottom: 18px; display: flex; flex-direction: column; gap: 14px; padding: 16px 18px; background: var(--nv-panel-2); border: 1px solid var(--nv-line); border-radius: 16px; box-shadow: 0 -10px 30px rgba(0, 0, 0, .35); }
#nova-quickreply .nv-row { display: flex; align-items: center; gap: 16px; }
#nova-quickreply .nv-placeholder { flex: 1; color: var(--nv-muted); font-size: 17px; cursor: text; }
#nova-quickreply .nv-tools { display: flex; align-items: center; gap: 22px; color: #cfd0d6; }
#nova-quickreply .nv-tools svg { width: 22px; height: 22px; cursor: pointer; }
#nova-quickreply .nv-send { margin-left: auto; display: inline-flex; align-items: center; gap: 12px; height: 46px; padding: 0 22px; border: 0; border-radius: 11px; background: var(--nv-red); color: #fff; font-weight: 600; font-size: 16px; cursor: pointer; }
#nova-quickreply .nv-send svg { width: 20px; height: 20px; }

/* ---------- login page ---------- */
body.task-login { background: radial-gradient(1200px 600px at 50% -10%, rgba(240, 67, 75, .18), transparent 60%), var(--nv-bg) !important; }
body.task-login #layout-content { background: transparent !important; }
body.task-login #login-form { background: var(--nv-panel); border: 1px solid var(--nv-line); border-radius: 22px; padding: 36px 40px; max-width: 440px; margin: 0 auto; box-shadow: 0 30px 80px rgba(0, 0, 0, .55); }
body.task-login #logo { display: none; }
body.task-login .nv-login-brand { display: flex; flex-direction: column; align-items: center; gap: 14px; margin-bottom: 26px; }
body.task-login .nv-login-brand svg { width: 52px; height: 52px; }
body.task-login .nv-login-brand span { font-weight: 700; font-size: 22px; letter-spacing: .38em; color: var(--nv-text); }
body.task-login #login-footer, body.task-login #login-footer a { color: var(--nv-dim) !important; }

/* ---------- round 2 fixes ---------- */
* { scrollbar-width: thin; scrollbar-color: #34343c transparent; }
::-webkit-scrollbar { width: 8px; height: 8px; background: transparent; }
::-webkit-scrollbar-thumb { background: #34343c; border-radius: 8px; }
::-webkit-scrollbar-track { background: transparent; }
html.nova-desk #mailboxlist li, html.nova-desk #mailboxlist li.selected { background: transparent !important; }
html.nova-desk #messagelist-header a .inner, html.nova-desk #messagelist-header .toolbar a .inner { display: none !important; }
html.nova-desk #messagelist-header a.refresh, html.nova-desk #messagelist-header #toolbar-list-menu a { width: 40px; height: 40px; border-radius: 10px; color: var(--nv-muted) !important; }
html.nova-desk #messagelist-header a.refresh:hover, html.nova-desk #messagelist-header #toolbar-list-menu a:hover { background: rgba(255, 255, 255, .06); color: var(--nv-text) !important; }
html.nova-desk #messagelist tbody tr span.fromto, html.nova-desk #messagelist tbody tr span.subject { padding-left: 0 !important; margin-left: 0 !important; }
html.nova-desk #messagelist tbody tr span.fromto { display: inline-block; max-width: calc(100% - 120px); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
html.nova-desk #messagelist tbody tr span.date { float: right; }
html.nova-desk #layout-content > .header .menu.toolbar a .inner { max-width: none !important; width: auto !important; overflow: visible !important; text-overflow: clip !important; white-space: nowrap; }
html.nova-desk #layout-content > .header .menu.toolbar a.compose,
html.nova-desk #layout-content > .header .menu.toolbar a.select,
html.nova-desk #layout-content > .header .menu.toolbar a.threads,
html.nova-desk #layout-content > .header .menu.toolbar a.options,
html.nova-desk #layout-content > .header .menu.toolbar a.junk,
html.nova-desk #layout-content > .header .menu.toolbar a.print,
html.nova-desk #layout-content > .header .menu.toolbar a.download,
html.nova-desk #layout-content > .header .menu.toolbar a.source,
html.nova-desk #layout-content > .header .menu.toolbar a.extwin { display: none !important; }
html.nova-desk #layout-content > .header .menu.toolbar a.dropbutton .inner { display: none !important; }
html.nova-desk #layout-content > .header .menu.toolbar a.dropbutton { width: 22px; padding: 0 !important; margin-left: -10px; }
html.nova-desk #layout-content > .header .menu.toolbar a.dropbutton:before { font-size: 11px !important; }
html.nova-desk #layout-content > .header .menu.toolbar a.more { margin-left: auto; }
html.nova-desk #layout-content > .header .menu.toolbar a.more .inner { display: none !important; }
html.nova-desk #layout-content > .header .menu.toolbar a.archive { margin-left: 18px; }
html.nova-desk #layout-content > .header .menu.toolbar a.archive:after { content: ""; position: absolute; }
html.nova-desk #layout-content > .header { border-bottom-color: var(--nv-line) !important; }
html.nova-desk #layout-content > .header .menu.toolbar { width: 100%; flex-wrap: nowrap; overflow: hidden; }
html.nova-desk #layout-content { background: var(--nv-panel) !important; }
html.nova-desk #layout-content .iframe-wrapper, html.nova-desk #layout-content .content { background: var(--nv-panel) !important; }
html.nova-desk #layout-content .watermark { opacity: .12; filter: grayscale(1); }
#nova-topbar .nv-search .searchbar a.button:before, #nova-topbar .nv-search .searchbar .input-group-prepend { color: var(--nv-muted) !important; }
#nova-topbar .nv-search .searchbar input { padding-left: 4px !important; }
html.nova-desk #layout-content > .header #toolbar-menu { margin: 0 !important; width: 100%; justify-content: flex-start !important; display: flex !important; align-items: center; }
html.nova-desk #layout-content > .header #toolbar-menu > li { display: flex; align-items: center; }
html.nova-desk #layout-content > .header #toolbar-menu a { max-width: none !important; width: auto !important; }
html.nova-desk #layout-content > .header #toolbar-menu a.dropdown { width: 20px !important; min-width: 0 !important; padding: 0 !important; margin-left: -12px; }
html.nova-desk #layout-content > .header #toolbar-menu a.dropdown .inner { display: none !important; }
html.nova-desk #layout-content > .header #toolbar-menu a.dropdown:before { font-size: 10px !important; color: var(--nv-muted); }
html.nova-desk #layout-content > .header #toolbar-menu li.spacer { width: 1px; height: 26px; margin: 0 12px; background: var(--nv-line); }
html.nova-desk #layout-content > .header #toolbar-menu > li:has(a.more) { margin-left: auto; }
html.nova-desk #messagelist tbody tr span.date { display: inline !important; visibility: visible !important; }
html.nova-desk #layout-content > .header #toolbar-menu li, html.nova-desk #layout-content > .header #toolbar-menu a,
html.nova-desk #messagelist-header #toolbar-list-menu, html.nova-desk #messagelist-header #toolbar-list-menu li { border: 0 !important; box-shadow: none !important; }
html.nova-desk #layout-content > .header #toolbar-menu a:after { display: none !important; }
html.nova-desk #messagelist tbody tr span.date { position: absolute; right: 14px; top: 20px; float: none; }
html.nova-desk #messagelist tbody tr span.fromto { max-width: calc(100% - 96px); }
html.nova-desk #messagelist tbody tr td.flags { position: relative; }
#nova-topbar .nv-search .searchbar { gap: 4px; }
#nova-topbar .nv-search .searchbar > * { align-self: center; margin-top: 0 !important; margin-bottom: 0 !important; }
/* notices */
#messagestack div { background: var(--nv-panel-2) !important; color: var(--nv-text) !important; border: 1px solid var(--nv-line) !important; border-left: 4px solid var(--nv-muted) !important; border-radius: 12px !important; box-shadow: 0 14px 34px rgba(0, 0, 0, .45) !important; }
#messagestack div.confirmation { border-left-color: var(--nv-green) !important; }
#messagestack div.error { border-left-color: var(--nv-red) !important; }
#messagestack div.warning { border-left-color: #ffc24a !important; }
#messagestack div.loading { border-left-color: var(--nv-red) !important; }
/* compose */
.editor-toolbar, #layout-content .editor-toolbar, .mce-container, .tox .tox-toolbar, .tox .tox-editor-header { background: var(--nv-panel-2) !important; border-color: var(--nv-line) !important; }
#composebody, textarea#composebody, .tox-edit-area__iframe { background: var(--nv-panel) !important; color: var(--nv-text) !important; }
.btn-secondary, .btn.btn-secondary, .input-group-append .btn, a.input-group-text, .input-group-text { background: var(--nv-panel-2) !important; border-color: var(--nv-line) !important; color: var(--nv-text) !important; }
.btn-secondary:hover { background: #24242b !important; }
#compose-attachments, .compose-attachments, .file-upload { border-color: var(--nv-line) !important; border-radius: 14px; }
.custom-switch .custom-control-label:before { background: var(--nv-panel-2) !important; border-color: #3a3a43 !important; }
.custom-switch .custom-control-input:checked ~ .custom-control-label:before { background: var(--nv-red) !important; border-color: var(--nv-red) !important; }
.recipient-input, ul.recipient-input { background: var(--nv-panel-2) !important; border-color: var(--nv-line) !important; }
.recipient-input li.recipient { background: var(--nv-red-soft) !important; border-color: rgba(240, 67, 75, .4) !important; color: var(--nv-text) !important; }
.form-control:focus, .recipient-input.focus { border-color: rgba(240, 67, 75, .6) !important; box-shadow: 0 0 0 3px rgba(240, 67, 75, .15) !important; }
