/* The mailbox stays mounted below the resizable native editor. */
.mailserver-composer-window {
  box-sizing: border-box; display: flex; flex-direction: column;
  background: #fff; border: 1px solid #e3e5e8; border-radius: 14px;
  box-shadow: 0 12px 46px #17203229; overflow: hidden; resize: both;
  min-width: 320px; min-height: 260px; font: 14px/1.5 Arial,Helvetica,sans-serif;
}
.mailserver-composer-window.is-minimized {
  visibility: hidden; pointer-events: none;
}
.mailserver-composer-window.is-inline-reply { border-radius: 10px; border: 1px solid #e6e7eb; box-shadow: 0 3px 14px #1720320d; resize: none; min-width: 0; min-height: 0; }
.mailserver-composer-window.is-inline-reply .mailserver-composer-heading { position:relative; z-index:4; height:0; min-height:0; padding:0; border:0; cursor:default; }
.mailserver-composer-window.is-inline-reply .mailserver-composer-heading>strong { display:none; }
.mailserver-composer-window.is-inline-reply .mailserver-composer-controls { position:absolute; top:7px; right:8px; }
.mailserver-composer-window.is-inline-reply .mailserver-composer-controls button:not(:last-child) { display:none; }
.mailserver-composer-heading {
  display: flex; align-items: center; gap: 16px; min-height: 42px;
  padding: 2px 12px 2px 20px; flex: 0 0 auto; cursor: move; touch-action: none;
  background: #fff; border-bottom: 1px solid #f0f0f0;
}
.mailserver-composer-heading > strong { flex: 1; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: 14px; }
.mailserver-composer-controls { display: flex; gap: 4px; flex: 0 0 auto; }
.mailserver-composer-controls button { border: 0; background: transparent; border-radius: 7px; color: #696c72; font-size: 23px; line-height: 32px; width: 34px; padding: 0; }
.mailserver-composer-controls button:hover { background: #f0f1f3; color: #202124; }
.mailserver-composer-controls button:focus-visible,.mailserver-composer-notice button:focus-visible,.mailserver-compose-dock-item:focus-visible { outline: 2px solid #8b6c00; outline-offset: 2px; }
.mailserver-composer-notice { padding: 0 20px; flex: 0 0 auto; background: #fff9dc; color: #665317; }
.mailserver-composer-notice:has(.mailserver-composer-status:empty) { display: none; }
.mailserver-composer-status { margin: 0; font-size: 13px; line-height: 1.5; padding: 7px 0; }
.mailserver-composer-notice button { border: 1px solid #d8bf58; background: white; color: #42380f; font-size: 12px; border-radius: 6px; padding: 4px 10px; margin: 0 6px 7px 0; }
.mailserver-composer-notice button[hidden] { display: none; }
.mailserver-composer-frame { border: 0; display: block; width: 100%; flex: 1 1 auto; min-height: 0; background: white; }
.mailserver-compose-dock { position: fixed; bottom: 0; right: 18px; z-index: 1500; display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 8px; max-width: calc(100vw - 40px); pointer-events: none; }
.mailserver-compose-dock-item { pointer-events:auto; display:flex; align-items:center; gap:3px; background:#333e56; color:#fff; border:1px solid #333e56; box-shadow:0 3px 18px #17203224; border-radius:8px 8px 0 0; min-height:38px; width:280px; max-width:calc(100vw - 24px); padding:3px 5px; box-sizing:border-box; }
.mailserver-compose-dock-item[hidden] { display:none!important; }
.mailserver-compose-dock-open { display:flex; flex:1; min-width:0; align-items:center; gap:8px; padding:2px 4px; border:0; background:transparent; color:inherit; text-align:left; font:13px/24px Arial,Helvetica,sans-serif; cursor:pointer; }
.mailserver-dock-avatar { display:flex; flex:0 0 24px; width:24px; height:24px; align-items:center; justify-content:center; border-radius:50%; color:#fff; font:12px/1 Arial,Helvetica,sans-serif; }
.mailserver-dock-label { min-width:0; overflow:hidden; white-space:nowrap; text-overflow:ellipsis; }
.mailserver-dock-controls { display:flex; flex:none; gap:1px; }
.mailserver-dock-controls button { display:flex; align-items:center; justify-content:center; width:26px; height:28px; padding:5px; border:0; border-radius:4px; background:transparent; color:inherit; cursor:pointer; }
.mailserver-dock-controls button::before { content:""; display:block; width:16px; height:16px; background:currentColor; mask:center/contain no-repeat; }
.mailserver-dock-controls .mailserver-dock-large::before { mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Crect x='3' y='4' width='18' height='16' rx='1' fill='none' stroke='black' stroke-width='2'/%3E%3Cpath d='M3 8h18' stroke='black' stroke-width='2'/%3E%3C/svg%3E"); }
.mailserver-dock-controls .mailserver-dock-normal::before { mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M8 8V4h13v12h-4M3 9h13v12H3z' fill='none' stroke='black' stroke-width='2' stroke-linejoin='round'/%3E%3C/svg%3E"); }
.mailserver-dock-controls .mailserver-dock-close::before { mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='m6 6 12 12M18 6 6 18' fill='none' stroke='black' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E"); }
.mailserver-compose-dock-open:hover,.mailserver-dock-controls button:hover { background:#ffffff16; color:#fff; }
.mailserver-dock-controls button:focus-visible,.mailserver-compose-dock-open:focus-visible { outline:2px solid #ffdb4d; outline-offset:0; border-radius:4px; }
.mailserver-compose-dock-item[data-send-state="waiting"],.mailserver-compose-dock-item[data-send-state="submitting"] { border-color: #e6c44a; background: #fff9dc; color:#665317; }
.mailserver-compose-dock-item[data-send-state="upload-error"],.mailserver-compose-dock-item[data-send-state="uncertain"] { border-color: #dd6666; background: #fff0f0; color:#763b36; }
.mailserver-window-dragging iframe { pointer-events: none; }
.mailserver-window-maximized { resize: none; }

/* Native Elastic compose, including TinyMCE, address chips, file drop/upload,
 * attachment preview and cloud hooks. No replacement contenteditable/form. */
html.mailserver-workspace-compose,html.mailserver-workspace-compose body { height: 100%; margin: 0; background: white; overflow: hidden; font: 14px/1.5 Arial,Helvetica,sans-serif !important; }
body.mailserver-workspace-compose #layout { height: 100%; background: white; padding: 0 !important; gap: 0 !important; }
body.mailserver-workspace-compose #layout-menu,body.mailserver-workspace-compose #taskmenu,body.mailserver-workspace-compose .mailserver-topbar { display: none !important; }
body.mailserver-workspace-compose #layout-content { margin: 0 !important; border: 0 !important; border-radius: 0 !important; width: auto !important; flex: 1; min-width: 0; }
body.mailserver-workspace-compose #layout-content > .header { order: 2; height: auto !important; min-height: 44px !important; max-height: none !important; flex: 0 0 auto; align-items: center; justify-content: flex-start; flex-wrap: wrap; gap: 4px; padding: 4px 12px !important; line-height: normal !important; overflow: visible !important; white-space: normal; border-top: 1px solid #f0f1f3; border-bottom: 0; background: #fff; }
body.mailserver-workspace-compose #layout-content > .header .header-title,body.mailserver-workspace-compose .task-menu-button { display: none !important; }
body.mailserver-workspace-compose #layout-content > .footer.content-frame-navigation { display: none !important; }
/* Elastic replaces #messagetoolbar with #toolbar-menu on init. Both structures
 * need the same control metrics; native 58px stacked labels do not fit here. */
body.mailserver-workspace-compose #messagetoolbar,body.mailserver-workspace-compose #toolbar-menu { display: flex !important; position: static !important; flex: 1 1 auto; flex-wrap: wrap; align-items: center; justify-content: flex-start; width: auto !important; min-width: 0; height: auto !important; min-height: 36px; max-height: none !important; gap: 4px; padding: 0 !important; margin: 0; overflow: visible; border: 0; box-shadow: none; background: transparent; list-style: none; }
body.mailserver-workspace-compose #toolbar-menu > li { height: auto; min-height: 36px; margin: 0; padding: 0; float: none; }
body.mailserver-workspace-compose #toolbar-menu > li.spacer,body.mailserver-workspace-compose #messagetoolbar > .spacer,body.mailserver-workspace-compose #layout-content > .header > .toolbar-menu-button { display: none !important; }
body.mailserver-workspace-compose #toolbar-menu > li:has(> a.options),body.mailserver-workspace-compose #messagetoolbar > a.options { display: none !important; }
body.mailserver-workspace-compose #toolbar-menu a,body.mailserver-workspace-compose #messagetoolbar a { display: inline-flex; float: none; align-items: center; justify-content: center; gap: 6px; height: 36px; min-width: 36px; max-width: none; width: auto; padding: 6px 9px; border-radius: 6px; font: 13px/24px Arial,Helvetica,sans-serif; white-space: nowrap; }
body.mailserver-workspace-compose #toolbar-menu a::before,body.mailserver-workspace-compose #messagetoolbar a::before { float: none !important; flex: 0 0 auto; height: 1em !important; width: 1em !important; margin: 0 !important; line-height: 1 !important; font-size: 15px; }
body.mailserver-workspace-compose #toolbar-menu .inner,body.mailserver-workspace-compose #messagetoolbar .inner { display: inline !important; font: inherit; white-space: nowrap; }
body.mailserver-workspace-compose #toolbar-menu .dropbutton,body.mailserver-workspace-compose #messagetoolbar .dropbutton { align-items: center; }
body.mailserver-workspace-compose #toolbar-menu a.dropdown,body.mailserver-workspace-compose #messagetoolbar a.dropdown { min-width: 24px; padding-left: 3px; padding-right: 3px; }
body.mailserver-workspace-compose #toolbar-menu a:focus-visible,body.mailserver-workspace-compose #messagetoolbar a:focus-visible { outline: 2px solid #8b6c00; outline-offset: 1px; }
body.mailserver-workspace-compose #compose-content { order: 1; padding: 0; display: flex; flex-direction: column; overflow: hidden; flex: 1; min-height: 0; }
body.mailserver-workspace-compose #compose-content > form { display: flex; flex-direction: column; padding: 8px 22px 0; flex: 1; min-height: 0; }
body.mailserver-workspace-compose #compose-headers { flex: 0 0 auto; }
body.mailserver-workspace-compose #compose-headers .form-group { margin: 0; min-height: 37px; border-bottom: 1px solid #f0f1f3; align-items: center; }
body.mailserver-workspace-compose #compose-headers .col-form-label { flex: 0 0 66px; max-width: 66px; padding: 8px 0; color: #68717e; font-size: 13px; }
body.mailserver-workspace-compose #compose-headers .col-10 { flex: 1; max-width: none; padding: 0; min-width: 0; }
body.mailserver-workspace-compose #compose-headers input.form-control,body.mailserver-workspace-compose #compose-headers select.form-control { border: 0; box-shadow: none; background: transparent; font-size: 14px; }
body.mailserver-workspace-compose #compose-headers input,body.mailserver-workspace-compose #compose-headers select,body.mailserver-workspace-compose #compose-headers label { font-family: Arial,Helvetica,sans-serif; }
body.mailserver-workspace-compose #compose-headers .input-group-text { background: transparent; border: 0; color: #8b8f98; }
body.mailserver-workspace-compose #composebodycontainer { flex: 1; min-height: 100px; padding-top: 12px; }
/* Elastic's plain-text editor toolbar is absolutely positioned at the top of
 * this textarea. Reserve its 33px row so the first text line remains visible. */
body.mailserver-workspace-compose #composebody { border: 0; resize: none; box-shadow: none; box-sizing: border-box; height: 100%; padding: 42px 0 6px !important; font: 14px/1.5 Arial,Helvetica,sans-serif !important; }
body.mailserver-workspace-compose #composebodycontainer .tox-tinymce { border: 0; border-radius: 0; }
body.mailserver-workspace-compose #compose-content > .formbuttons { display: flex !important; flex: 0 0 auto; align-items: center; flex-wrap: wrap; gap: 8px; border: 0; background: #fff; padding: 8px 22px; }
body.mailserver-workspace-compose #compose-content > .formbuttons button { margin: 0; white-space: nowrap; font: 14px/20px Arial,Helvetica,sans-serif; }
body.mailserver-workspace-compose #compose-content .send { background: #ffdc50 !important; border: 0; border-color: #ffdc50 !important; color: #16171a !important; font-weight: 600; padding: 9px 22px; border-radius: 9px; min-height: 40px; }
body.mailserver-workspace-compose #compose-content .send:hover { background: #ffd438 !important; border-color: #ffd438 !important; }
body.mailserver-workspace-compose #layout-sidebar { display: none; order: 3; flex: 0 0 235px !important; width: 235px !important; min-width: 0; max-width: none; background: #fafafb; border-left: 1px solid #eee; }
body.mailserver-workspace-compose.mailserver-compose-show-options #layout-sidebar { display: flex !important; }
body.mailserver-workspace-compose #layout-sidebar .header { display: none; }
body.mailserver-workspace-compose #compose-attachments { flex: 0 0 auto; height: auto !important; min-height: 0 !important; padding: 0 22px; max-height: 150px; overflow-y: auto; border-top: 1px solid #f2f2f2; background: none !important; }
body.mailserver-workspace-compose #compose-attachments::before,body.mailserver-workspace-compose #compose-attachments::after,
body.mailserver-workspace-compose #attachment-list::before,body.mailserver-workspace-compose #attachment-list::after { display: none !important; content: none !important; }
body.mailserver-workspace-compose #compose-attachments:not(:has(#attachment-list > li)) { display: none !important; }
body.mailserver-workspace-compose #compose-attachments .upload-form { display: none; }
body.mailserver-workspace-compose #compose-attachments #attachment-list { display: flex; flex-wrap: wrap; gap: 8px; padding: 6px 0; }
body.mailserver-workspace-compose #compose-attachments #attachment-list > li { background: #f1f2f4; border: 0; border-radius: 8px; margin: 0; padding: 7px 12px; min-width: 150px; max-width: 240px; }
body.mailserver-workspace-compose #cloud-attachment-hint { margin: 3px 0 !important; padding: 3px 22px !important; background: transparent !important; font-size: 12px !important; line-height: 18px !important; }
body.mailserver-workspace-compose .mailserver-compose-options-button { display: inline-flex; align-items: center; justify-content: center; min-width: 36px; padding: 0 8px; background: transparent; border: 0; border-radius: 6px; font-size: 24px; color: #626b78; height: 36px; }
body.mailserver-workspace-compose .mailserver-compose-options-button:focus-visible { outline: 2px solid #8b6c00; outline-offset: 1px; }
body.mailserver-workspace-compose.mailserver-compose-show-options .mailserver-compose-options-button { background: #fff0b1; }
body.mailserver-workspace-compose #compose-options { font-size: 12px; }
body.mailserver-workspace-inline-reply #compose-headers,body.mailserver-workspace-inline-reply #compose-objects { display: none; }
body.mailserver-workspace-inline-reply #compose-content > form { padding-top: 0; }
@media (max-width: 850px) {
  body.mailserver-workspace-compose #toolbar-menu > li.hidden-small:has(> a.attach),body.mailserver-workspace-compose #toolbar-menu a.attach.hidden-small,body.mailserver-workspace-compose #messagetoolbar a.attach.hidden-small { display: inline-flex !important; }
  body.mailserver-workspace-compose #layout-sidebar { flex-basis: 190px !important; width: 190px !important; }
  body.mailserver-workspace-compose #compose-content > form { padding-left: 14px; padding-right: 14px; }
  body.mailserver-workspace-compose #cloud-attachment-hint { padding-left: 14px !important; padding-right: 14px !important; }
}
@media (max-width: 620px) {
  .mailserver-composer-window { min-width: 240px; resize: none; border-radius: 8px; }
  .mailserver-composer-heading { padding-left: 12px; }
  .mailserver-compose-dock { bottom: 6px; right: 6px; max-width: calc(100vw - 12px); }
  body.mailserver-workspace-compose #layout-content > .header { padding-left: 8px !important; padding-right: 8px !important; }
  body.mailserver-workspace-compose #toolbar-menu .inner,body.mailserver-workspace-compose #messagetoolbar .inner { display: none !important; }
  body.mailserver-workspace-compose #toolbar-menu a,body.mailserver-workspace-compose #messagetoolbar a { height: 40px; min-width: 40px; padding: 10px; }
  body.mailserver-workspace-compose #toolbar-menu a.dropdown,body.mailserver-workspace-compose #messagetoolbar a.dropdown { min-width: 24px; padding-left: 3px; padding-right: 3px; }
  body.mailserver-workspace-compose #compose-content > .formbuttons { padding: 8px 14px; }
  body.mailserver-workspace-compose .mailserver-compose-options-button { position: relative; z-index: 101; height: 40px; min-width: 40px; }
  body.mailserver-workspace-compose #layout-sidebar { display: none; }
  body.mailserver-workspace-compose #layout-sidebar.selected,body.mailserver-workspace-compose.mailserver-compose-show-options #layout-sidebar { display: flex; position: absolute; right: 0; top: 0; bottom: 0; z-index: 100; width: min(90vw, 300px) !important; overflow-y: auto; }
}

/* Keep the native sender control enabled and serialized; hide its display row. */
body.task-mail.action-compose #compose_from { display:none!important; }
