:root{--dci-orange:#F47C1A;--dci-orange-dark:#D9650D;--dci-teal:#00C4CC;--dci-navy:#111827;--dci-muted:#667085;--dci-line:#E4E7EC;--dci-page:#F7F8FA;--dci-white:#fff}
/* Inbox page shell: completely neutralise Astra's constrained article wrapper.
 * V2 is an app surface, not a normal article, so it must own the full content
 * width before centering its 1180px shell. Scoped to /inbox/ only.
 */
body.dci2-inbox-page{background:var(--dci-page)}
body.dci2-inbox-page .site-content,
body.dci2-inbox-page #content{padding:0!important;background:var(--dci-page)}
body.dci2-inbox-page .site-content>.ast-container,
body.dci2-inbox-page .ast-container{width:100%!important;max-width:none!important;margin:0!important;padding-left:0!important;padding-right:0!important}
body.dci2-inbox-page #primary,
body.dci2-inbox-page .content-area,
body.dci2-inbox-page .site-main{float:none!important;width:100%!important;max-width:none!important;margin:0!important;padding:0!important}
body.dci2-inbox-page #secondary{display:none!important}
body.dci2-inbox-page article.page,
body.dci2-inbox-page .ast-article-single,
body.dci2-inbox-page .site-main>article{width:100%!important;max-width:none!important;margin:0!important;padding:0!important;border:0!important;background:transparent!important;box-shadow:none!important}
body.dci2-inbox-page .entry-content{width:100%!important;max-width:none!important;margin:0!important;padding:0!important;background:transparent!important}
body.dci2-inbox-page article.page>.entry-header,
body.dci2-inbox-page .site-main>article>.entry-header{display:none!important}
body.dci2-inbox-page .entry-content>p:empty{display:none!important}

.dci2-shell,.dci2-shell *{box-sizing:border-box}.dci2-shell{width:min(1180px,calc(100vw - 40px));margin:14px auto 48px;color:var(--dci-navy);font-family:Roboto,system-ui,sans-serif}.dci2-head{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:10px}.dci2-eyebrow{color:var(--dci-orange-dark);font:800 10px/1 Poppins,sans-serif;text-transform:uppercase;letter-spacing:.06em}.dci2-head h1{margin:3px 0 1px;font:800 25px/1.12 Poppins,sans-serif}.dci2-head p{margin:0;color:var(--dci-muted);font-size:12.5px;line-height:1.35}.dci2-new-button,.dci2-composer button,.dci2-modal form button{min-height:40px;padding:0 15px;border:0;border-radius:10px;background:var(--dci-orange);color:#111;font:800 12px/1 Poppins,sans-serif;cursor:pointer}.dci2-grid{display:grid;grid-template-columns:370px minmax(0,1fr);height:clamp(600px,calc(100dvh - 220px),760px);min-height:0;overflow:hidden;border:1px solid var(--dci-line);border-radius:18px;background:#fff;box-shadow:0 12px 35px rgba(16,24,40,.06)}.dci2-sidebar{display:flex;height:100%;min-height:0;flex-direction:column;overflow:hidden;border-right:1px solid var(--dci-line);background:#fff}.dci2-search{padding:16px 16px 10px}.dci2-search input,.dci2-modal input,.dci2-modal textarea,.dci2-composer textarea{width:100%;border:1px solid var(--dci-line);border-radius:10px;background:#fff;color:var(--dci-navy);font:400 14px/1.4 Roboto,sans-serif;outline:0}.dci2-search input{height:42px;padding:0 13px}.dci2-search input:focus,.dci2-modal input:focus,.dci2-modal textarea:focus,.dci2-composer textarea:focus{border-color:var(--dci-teal);box-shadow:0 0 0 3px rgba(0,196,204,.09)}.dci2-filters{display:flex;gap:6px;padding:0 16px 12px;overflow:auto}.dci2-filters a{flex:0 0 auto;padding:7px 10px;border-radius:999px;color:var(--dci-muted);font:700 10.5px/1 Poppins,sans-serif;text-decoration:none}.dci2-filters a.is-active{background:#FFF1E6;color:#B54708}.dci2-conversation-list{flex:1 1 auto;min-height:0;overflow-y:auto;border-top:1px solid #F0F1F3}.dci2-conversation{position:relative;display:grid;grid-template-columns:48px minmax(0,1fr) auto;gap:11px;align-items:center;padding:13px 14px;border-bottom:1px solid #F0F1F3;color:inherit!important;text-decoration:none!important}.dci2-conversation:hover,.dci2-conversation.is-active{background:#F8FAFC}.dci2-conversation.is-active{box-shadow:inset 3px 0 0 var(--dci-orange)}.dci2-avatar,.dci2-thread-avatar{display:grid;overflow:hidden;place-items:center;border-radius:50%;background:#EEF2F6;color:#475467;font:800 14px/1 Poppins,sans-serif}.dci2-avatar{width:48px;height:48px}.dci2-avatar img,.dci2-thread-avatar img{width:100%;height:100%;object-fit:cover}.dci2-avatar.is-announcement,.dci2-thread-avatar.is-announcement{background:#111827;color:#fff}.dci2-conversation-copy{min-width:0}.dci2-conversation-top{display:flex;align-items:center;justify-content:space-between;gap:8px}.dci2-conversation-top strong{overflow:hidden;color:#101828;font:800 12.5px/1.3 Poppins,sans-serif;text-overflow:ellipsis;white-space:nowrap}.dci2-conversation-top time{flex:0 0 auto;color:#98A2B3;font-size:10px}.dci2-preview{display:block;overflow:hidden;margin-top:4px;color:#667085;font-size:12px;line-height:1.35;text-overflow:ellipsis;white-space:nowrap}.dci2-conversation.is-unread .dci2-preview{color:#344054;font-weight:600}.dci2-unread-badge{display:grid;width:20px;height:20px;place-items:center;border-radius:50%;background:var(--dci-orange);font:800 9px/1 Poppins,sans-serif}.dci2-thread-panel{min-width:0;min-height:0;height:100%;overflow:hidden;background:#F8FAFC}.dci2-thread{display:flex;height:100%;min-height:0;overflow:hidden;flex-direction:column}.dci2-thread-head{display:flex;min-height:76px;align-items:center;gap:11px;padding:12px 18px;border-bottom:1px solid var(--dci-line);background:#fff}.dci2-thread-avatar{width:46px;height:46px;flex:0 0 46px}.dci2-thread-person{display:flex;min-width:0;flex:1;flex-direction:column}.dci2-thread-person strong{font:800 14px/1.3 Poppins,sans-serif}.dci2-thread-person small{margin-top:3px;color:#98A2B3;font-size:11px}.dci2-thread-menu{display:flex;gap:5px}.dci2-thread-menu button,.dci2-report-link{border:0;background:transparent;color:#667085;font:700 10px/1 Poppins,sans-serif;cursor:pointer}.dci2-back{display:none;border:0;background:transparent;font-size:20px}.dci2-messages{display:flex;flex:1 1 auto;min-height:0;flex-direction:column;gap:10px;overflow-y:auto;overscroll-behavior:contain;padding:22px 24px}.dci2-message{display:flex}.dci2-message.is-mine{justify-content:flex-end}.dci2-bubble{position:relative;max-width:min(72%,620px);padding:11px 13px;border:1px solid var(--dci-line);border-radius:14px 14px 14px 4px;background:#fff;box-shadow:0 1px 2px rgba(16,24,40,.03)}.dci2-message.is-mine .dci2-bubble{border-color:#FFD7B8;border-radius:14px 14px 4px 14px;background:#FFF4EA}.dci2-bubble p{margin:0;color:#344054;font-size:14px;line-height:1.55}.dci2-legacy-subject{display:block;margin-bottom:6px;color:#101828;font:800 11px/1.3 Poppins,sans-serif}.dci2-message-meta{display:flex;justify-content:flex-end;gap:8px;margin-top:6px;color:#98A2B3;font-size:9.5px}.dci2-report-link{position:absolute;right:9px;bottom:-17px;opacity:0}.dci2-bubble:hover .dci2-report-link{opacity:1}.dci2-composer{display:grid;flex:0 0 auto;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:end;padding:14px 16px;border-top:1px solid var(--dci-line);background:#fff}.dci2-composer textarea{min-height:44px;max-height:130px;resize:vertical;padding:11px 12px}.dci2-readonly{display:flex;gap:8px;align-items:center;padding:15px 18px;border-top:1px solid var(--dci-line);background:#fff;color:#667085;font-size:12px}.dci2-readonly strong{color:#344054;font-family:Poppins,sans-serif}.dci2-empty-list,.dci2-empty-thread{display:flex;min-height:280px;align-items:center;justify-content:center;flex-direction:column;gap:6px;padding:30px;color:#98A2B3;text-align:center}.dci2-empty-thread{height:100%}.dci2-empty-thread strong{color:#475467;font:800 15px/1.3 Poppins,sans-serif}.dci2-modal[hidden]{display:none}.dci2-modal{position:fixed;z-index:999999;inset:0;display:grid;place-items:center;padding:20px;background:rgba(17,24,39,.55)}.dci2-modal-card{position:relative;width:min(520px,100%);max-height:85vh;overflow:auto;padding:24px;border-radius:16px;background:#fff;box-shadow:0 22px 70px rgba(16,24,40,.25)}.dci2-modal-card h2{margin:0;font:800 22px/1.2 Poppins,sans-serif}.dci2-modal-card>p{margin:5px 0 18px;color:#667085;font-size:13px}.dci2-modal-card>.dci2-modal-close{position:absolute!important;top:12px!important;right:13px!important;display:grid!important;width:34px!important;height:34px!important;min-width:34px!important;min-height:34px!important;padding:0!important;place-items:center!important;border:1px solid #E4E7EC!important;border-radius:50%!important;background:#F8FAFC!important;color:#667085!important;box-shadow:none!important;line-height:1!important;cursor:pointer!important;appearance:none!important;-webkit-appearance:none!important}.dci2-modal-card>.dci2-modal-close:hover,.dci2-modal-card>.dci2-modal-close:focus-visible{border-color:#D0D5DD!important;background:#F2F4F7!important;color:#344054!important}.dci2-modal-card>.dci2-modal-close svg{display:block!important;width:16px!important;height:16px!important;margin:0!important;pointer-events:none!important}.dci2-modal label{display:block;margin-top:12px;color:#344054;font:700 11px/1.4 Poppins,sans-serif}.dci2-modal input{height:43px;margin-top:6px;padding:0 12px}.dci2-modal textarea{margin-top:6px;padding:11px 12px}.dci2-member-results{margin-top:8px}.dci2-member-result{display:flex;width:100%;align-items:center;gap:10px;padding:9px;border:0;border-radius:10px;background:#fff;text-align:left;cursor:pointer}.dci2-member-result:hover{background:#F8FAFC}.dci2-member-result img{width:38px;height:38px;border-radius:50%}.dci2-member-result span{display:flex;flex-direction:column}.dci2-member-result strong{font:800 12px/1.3 Poppins,sans-serif}.dci2-member-result small{color:#98A2B3}.dci2-selected-member{margin:12px 0 0;padding:10px 12px;border-radius:10px;background:#F8FAFC;font:700 12px/1.4 Poppins,sans-serif}.dci2-modal form button{width:100%;margin-top:14px}.dci2-login{max-width:650px;margin:50px auto;padding:28px;border:1px solid var(--dci-line);border-radius:16px;background:#fff;text-align:center}.dci2-login a{display:inline-flex;margin-top:10px;padding:10px 15px;border-radius:9px;background:var(--dci-orange);color:#111!important;font-weight:700;text-decoration:none}
@media(max-width:780px){.dci2-shell{width:100%;margin:0 auto 72px}.dci2-head{padding:12px 14px 8px}.dci2-head h1{font-size:22px}.dci2-head p{display:none}.dci2-new-button{min-height:38px;padding:0 12px}.dci2-grid{display:block;height:calc(100dvh - 150px);min-height:420px;border-right:0;border-left:0;border-radius:0;box-shadow:none}.dci2-sidebar{border-right:0}.dci2-grid.has-thread .dci2-sidebar{display:none}.dci2-grid:not(.has-thread) .dci2-thread-panel{display:none}.dci2-thread{height:100%;min-height:0}.dci2-back{display:block}.dci2-thread-head{min-height:66px;padding:9px 12px}.dci2-thread-menu{margin-left:auto}.dci2-thread-menu button{font-size:9.5px}.dci2-messages{padding:16px 12px 24px}.dci2-bubble{max-width:86%}.dci2-composer{position:sticky;bottom:0;padding:10px}.dci2-conversation{padding:12px 13px}.dci2-filters{padding-bottom:10px}.dci2-search{padding-top:10px}}
/* V2.0.0.6 — AJAX thread navigation: keep current content painted while loading. */
.dci2-grid.is-loading-thread .dci2-thread-panel{cursor:progress}
.dci2-grid.is-loading-thread .dci2-conversation{pointer-events:none}

/* V2.0.0.7 — clear admin sender identity: personal profile vs Domechy announcement. */
.dci2-conversation-name{display:flex;min-width:0;align-items:center;gap:6px;overflow:hidden}.dci2-conversation-name strong{min-width:0}.dci2-conversation-name em,.dci2-thread-badge{flex:0 0 auto;padding:3px 6px;border-radius:999px;background:#FFF1E6;color:#B54708;font:800 8px/1 Poppins,sans-serif;font-style:normal;text-transform:uppercase;letter-spacing:.04em}.dci2-thread-name-row{display:flex;align-items:center;gap:7px;min-width:0}.dci2-message.is-announcement .dci2-bubble{max-width:min(78%,680px);border-left:3px solid var(--dci-orange);background:#fff}.dci2-message.is-announcement .dci2-message-meta{justify-content:flex-start}.dci2-send-as{margin:2px 0 18px}.dci2-send-as-label{display:block;margin-bottom:8px;color:#344054;font:700 11px/1.4 Poppins,sans-serif}.dci2-send-as-options{display:grid;grid-template-columns:1fr 1fr;gap:9px}.dci2-modal-card .dci2-send-as-option{display:flex!important;width:100%!important;min-width:0!important;min-height:68px!important;align-items:center!important;gap:10px!important;padding:10px 11px!important;border:1px solid var(--dci-line)!important;border-radius:12px!important;background:#fff!important;color:var(--dci-navy)!important;box-shadow:none!important;text-align:left!important;cursor:pointer!important;appearance:none!important;-webkit-appearance:none!important}.dci2-modal-card .dci2-send-as-option:hover{border-color:#D0D5DD!important;background:#F9FAFB!important}.dci2-modal-card .dci2-send-as-option.is-active{border-color:#F47C1A!important;background:#FFF8F2!important;box-shadow:0 0 0 2px rgba(244,124,26,.09)!important}.dci2-send-as-option>span:last-child{display:flex;min-width:0;flex-direction:column}.dci2-send-as-option strong{overflow:hidden;color:#101828;font:800 11px/1.3 Poppins,sans-serif;text-overflow:ellipsis;white-space:nowrap}.dci2-send-as-option small{margin-top:3px;color:#667085;font:400 10px/1.35 Roboto,sans-serif}.dci2-send-as-avatar{display:grid;overflow:hidden;width:38px;height:38px;flex:0 0 38px;place-items:center;border-radius:50%;background:#EEF2F6;color:#475467;font:800 12px/1 Poppins,sans-serif}.dci2-send-as-avatar img{width:100%;height:100%;object-fit:cover}.dci2-send-as-avatar.is-domechy{background:#111827;color:#fff}.dci2-announcement-audience{display:flex;align-items:center;gap:10px;margin:3px 0 13px;padding:10px 11px;border:1px solid #E4E7EC;border-radius:11px;background:#F8FAFC}.dci2-announcement-audience>span:last-child{display:flex;min-width:0;flex-direction:column}.dci2-announcement-audience strong{color:#344054;font:800 11px/1.35 Poppins,sans-serif}.dci2-announcement-audience small{margin-top:2px;color:#667085;font-size:10px;line-height:1.35}.dci2-modal [hidden]{display:none!important}
@media(max-width:600px){.dci2-send-as-options{grid-template-columns:1fr}.dci2-modal-card .dci2-send-as-option{min-height:60px!important}.dci2-message.is-announcement .dci2-bubble{max-width:90%}}

/* V2.2.3.1 — keep the inbox filter row fully visible inside the flex sidebar. */
.dci2-search,.dci2-filters{flex-shrink:0}
.dci2-filters{min-height:38px;overflow-x:auto;overflow-y:hidden;align-items:center}
.dci2-filters a{display:inline-flex;min-height:30px;align-items:center;justify-content:center;white-space:nowrap}

/* V2.1.0.3 — compact page heading and taller desktop conversation viewport. */
@media(min-width:781px){.dci2-head>div:first-child{min-width:0}.dci2-head p{white-space:nowrap}.dci2-new-button{flex:0 0 auto}}


/* ============================================================
   V2.2.0 — MOBILE-FIRST INBOX
   Single-pane navigation, compact chrome, larger usable thread area,
   touch-friendly controls, keyboard-aware composer and bottom-sheet modal.
   ============================================================ */
@media(max-width:780px){
    .dci2-shell{
        width:100%;
        max-width:none;
        margin:0 0 calc(68px + env(safe-area-inset-bottom));
        padding:0;
        overflow:hidden;
        background:#fff;
    }
    .dci2-head{
        min-height:58px;
        margin:0;
        padding:9px 12px 8px;
        border-bottom:1px solid #EAECF0;
        background:#fff;
    }
    .dci2-shell.is-thread-open .dci2-head{display:none}
    .dci2-eyebrow{display:none}
    .dci2-head h1{
        margin:0;
        font-size:20px;
        line-height:1.15;
        letter-spacing:-.02em;
    }
    .dci2-head p{display:none}
    .dci2-new-button{
        min-height:36px;
        padding:0 12px;
        border-radius:9px;
        font-size:11px;
        white-space:nowrap;
    }

    .dci2-grid{
        display:block;
        width:100%;
        min-height:360px;
        overflow:hidden;
        border:0;
        border-top:1px solid #EAECF0;
        border-bottom:1px solid #EAECF0;
        border-radius:0;
        box-shadow:none;
        background:#fff;
    }
    .dci2-sidebar,
    .dci2-thread-panel,
    .dci2-thread{height:100%;min-height:0}
    .dci2-sidebar{
        overflow:hidden;
        border:0;
        background:#fff;
    }
    .dci2-grid.has-thread .dci2-sidebar{display:none}
    .dci2-grid:not(.has-thread) .dci2-thread-panel{display:none}

    .dci2-search{
        position:relative;
        z-index:2;
        flex:0 0 auto;
        padding:10px 12px 8px;
        background:#fff;
    }
    .dci2-search input{
        height:40px;
        border-radius:10px;
        background:#F9FAFB;
        font-size:16px; /* prevents iOS input zoom */
    }
    .dci2-filters{
        flex:0 0 auto;
        gap:5px;
        padding:0 12px 9px;
        overflow-x:auto;
        border-bottom:1px solid #F0F1F3;
        background:#fff;
        scrollbar-width:none;
        -webkit-overflow-scrolling:touch;
    }
    .dci2-filters::-webkit-scrollbar{display:none}
    .dci2-filters a{
        min-height:31px;
        display:inline-flex;
        align-items:center;
        padding:0 10px;
        font-size:10px;
    }
    .dci2-conversation-list{
        flex:1 1 auto;
        min-height:0;
        overflow-y:auto;
        overscroll-behavior:contain;
        -webkit-overflow-scrolling:touch;
    }
    .dci2-conversation{
        grid-template-columns:44px minmax(0,1fr) auto;
        gap:10px;
        min-height:68px;
        padding:10px 12px;
    }
    .dci2-avatar{width:44px;height:44px}
    .dci2-conversation-top strong{font-size:12px}
    .dci2-conversation-top time{font-size:9.5px}
    .dci2-preview{margin-top:3px;font-size:11.5px}
    .dci2-unread-badge{width:19px;height:19px;font-size:8.5px}

    .dci2-thread-panel{overflow:hidden;background:#F8FAFC}
    .dci2-thread{display:flex;overflow:hidden;flex-direction:column}
    .dci2-thread-head{
        position:relative;
        z-index:3;
        min-height:60px;
        flex:0 0 auto;
        gap:8px;
        padding:7px 9px;
        background:#fff;
    }
    .dci2-back{
        display:grid;
        width:38px;
        height:38px;
        min-width:38px;
        padding:0;
        place-items:center;
        border-radius:50%;
        color:#344054;
        font-size:22px;
        line-height:1;
        cursor:pointer;
    }
    .dci2-back:active{background:#F2F4F7}
    .dci2-thread-avatar{width:38px;height:38px;flex:0 0 38px}
    .dci2-thread-name-row{gap:5px}
    .dci2-thread-person strong{
        overflow:hidden;
        max-width:100%;
        font-size:12.5px;
        text-overflow:ellipsis;
        white-space:nowrap;
    }
    .dci2-thread-person small{
        margin-top:1px;
        overflow:hidden;
        font-size:9.5px;
        text-overflow:ellipsis;
        white-space:nowrap;
    }
    .dci2-thread-badge{padding:3px 5px;font-size:7px}
    .dci2-thread-menu{
        flex:0 0 auto;
        margin-left:auto;
        gap:0;
    }
    .dci2-thread-menu button{
        min-height:36px;
        padding:0 5px;
        font-size:8.5px;
        white-space:nowrap;
    }

    .dci2-messages{
        flex:1 1 auto;
        min-height:0;
        gap:8px;
        overflow-y:auto;
        overscroll-behavior:contain;
        padding:12px 10px 18px;
        scroll-padding-bottom:12px;
        -webkit-overflow-scrolling:touch;
    }
    .dci2-bubble{
        max-width:90%;
        padding:10px 11px;
        border-radius:13px 13px 13px 4px;
    }
    .dci2-message.is-mine .dci2-bubble{border-radius:13px 13px 4px 13px}
    .dci2-message.is-announcement .dci2-bubble{max-width:94%}
    .dci2-bubble p{font-size:13.5px;line-height:1.5}
    .dci2-legacy-subject{font-size:10.5px}
    .dci2-message-meta{gap:6px;margin-top:5px;font-size:8.5px}
    /* Hover does not exist reliably on touch screens. Keep moderation reachable. */
    .dci2-report-link{
        position:static;
        display:block;
        width:max-content;
        margin:5px 0 0 auto;
        padding:4px 0 0 8px;
        opacity:1;
        font-size:8.5px;
    }

    .dci2-composer{
        position:relative;
        z-index:4;
        grid-template-columns:minmax(0,1fr) auto;
        gap:7px;
        padding:8px 9px calc(8px + env(safe-area-inset-bottom));
        background:#fff;
    }
    .dci2-composer textarea{
        min-height:42px;
        max-height:96px;
        resize:none;
        padding:10px 11px;
        border-radius:12px;
        font-size:16px; /* prevents iOS input zoom */
        line-height:1.35;
    }
    .dci2-composer button{
        min-height:42px;
        padding:0 13px;
        border-radius:11px;
        font-size:10.5px;
    }
    .dci2-readonly{
        flex:0 0 auto;
        align-items:flex-start;
        padding:10px 12px calc(10px + env(safe-area-inset-bottom));
        font-size:10.5px;
        line-height:1.4;
    }

    .dci2-empty-list,.dci2-empty-thread{min-height:180px;padding:24px 18px}

    /* New-message flow becomes a bottom sheet on phones. */
    .dci2-modal{
        align-items:end;
        justify-items:stretch;
        padding:0;
        background:rgba(17,24,39,.48);
    }
    .dci2-modal-card{
        width:100%;
        max-width:none;
        max-height:min(90dvh,760px);
        margin:0;
        padding:20px 16px calc(18px + env(safe-area-inset-bottom));
        border-radius:20px 20px 0 0;
        box-shadow:0 -18px 55px rgba(16,24,40,.20);
        -webkit-overflow-scrolling:touch;
    }
    .dci2-modal-card h2{padding-right:46px;font-size:19px}
    .dci2-modal-card>p{margin:4px 44px 14px 0;font-size:11.5px;line-height:1.45}
    .dci2-modal-card>.dci2-modal-close{top:10px!important;right:12px!important}
    .dci2-modal label{font-size:10.5px}
    .dci2-modal input,
    .dci2-modal textarea{font-size:16px}
    .dci2-send-as{margin-bottom:14px}
    .dci2-send-as-options{grid-template-columns:1fr;gap:7px}
    .dci2-modal-card .dci2-send-as-option{min-height:58px!important;padding:8px 10px!important}
    .dci2-send-as-avatar{width:34px;height:34px;flex-basis:34px}
    .dci2-member-result{min-height:54px}
    .dci2-member-result img{width:36px;height:36px}
}

@media(max-width:390px){
    .dci2-head{padding-left:10px;padding-right:10px}
    .dci2-new-button{padding:0 10px;font-size:10px}
    .dci2-thread-menu{flex-direction:column;align-items:flex-end}
    .dci2-thread-menu button{min-height:18px;padding:0 2px;font-size:8px}
    .dci2-bubble{max-width:93%}
    .dci2-message.is-announcement .dci2-bubble{max-width:96%}
}

/* ============================================================
   V2.2.2 — READ RECEIPT + COMPACT CONVERSATION ACTION MENU
   ============================================================ */
.dci2-report-link{display:none!important}
.dci2-thread-actions{
    position:relative;
    flex:0 0 auto;
    margin-left:auto;
}
.dci2-thread-more{
    display:grid!important;
    width:38px!important;
    height:38px!important;
    min-width:38px!important;
    min-height:38px!important;
    padding:0!important;
    place-items:center!important;
    border:1px solid transparent!important;
    border-radius:50%!important;
    background:transparent!important;
    color:#667085!important;
    box-shadow:none!important;
    cursor:pointer!important;
}
.dci2-thread-more:hover,
.dci2-thread-more:focus-visible{
    border-color:#E4E7EC!important;
    background:#F8FAFC!important;
    color:#344054!important;
    outline:0!important;
}
.dci2-thread-more svg{display:block;width:20px;height:20px}
.dci2-thread-dropdown[hidden]{display:none!important}
.dci2-thread-dropdown{
    position:absolute;
    z-index:30;
    top:calc(100% + 5px);
    right:0;
    width:180px;
    overflow:hidden;
    padding:5px;
    border:1px solid #E4E7EC;
    border-radius:11px;
    background:#fff;
    box-shadow:0 12px 30px rgba(16,24,40,.14);
}
.dci2-thread-dropdown button{
    display:flex!important;
    width:100%!important;
    min-height:36px!important;
    align-items:center!important;
    margin:0!important;
    padding:0 10px!important;
    border:0!important;
    border-radius:8px!important;
    background:transparent!important;
    color:#344054!important;
    box-shadow:none!important;
    font:700 10.5px/1.2 Poppins,sans-serif!important;
    text-align:left!important;
    cursor:pointer!important;
}
.dci2-thread-dropdown button:hover,
.dci2-thread-dropdown button:focus-visible{
    background:#F8FAFC!important;
    color:#111827!important;
    outline:0!important;
}
.dci2-thread-dropdown [data-dci2-report-conversation]{color:#B42318!important}

.dci2-report-card{width:min(460px,100%)}
.dci2-report-card select{
    width:100%;
    height:43px;
    margin-top:6px;
    padding:0 36px 0 12px;
    border:1px solid var(--dci-line);
    border-radius:10px;
    background:#fff;
    color:var(--dci-navy);
    font:400 14px/1.4 Roboto,sans-serif;
    outline:0;
}
.dci2-report-card select:focus{
    border-color:var(--dci-teal);
    box-shadow:0 0 0 3px rgba(0,196,204,.09);
}
.dci2-optional{color:#98A2B3;font-weight:500}
.dci2-report-actions{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:9px;
    margin-top:16px;
}
.dci2-report-actions button{margin-top:0!important}
.dci2-report-actions .dci2-report-cancel{
    border:1px solid #D0D5DD!important;
    background:#fff!important;
    color:#344054!important;
}

@media(max-width:780px){
    .dci2-thread-actions{margin-left:auto}
    .dci2-thread-more{
        width:36px!important;
        height:36px!important;
        min-width:36px!important;
        min-height:36px!important;
    }
    .dci2-thread-dropdown{
        top:calc(100% + 4px);
        right:0;
        width:172px;
    }
    .dci2-thread-dropdown button{
        min-height:40px!important;
        font-size:10.5px!important;
    }
    .dci2-report-card select{font-size:16px}
    .dci2-report-actions{grid-template-columns:1fr 1fr}
}

@media(max-width:390px){
    .dci2-thread-dropdown{width:164px}
    .dci2-report-actions{grid-template-columns:1fr}
}
/* V2.2.3 — member avatars open the member's public profile. */
.dci2-avatar[data-dci2-profile-url],a.dci2-thread-avatar{cursor:pointer;transition:box-shadow .16s ease,transform .16s ease}
.dci2-avatar[data-dci2-profile-url]:hover,.dci2-avatar[data-dci2-profile-url]:focus-visible,a.dci2-thread-avatar:hover,a.dci2-thread-avatar:focus-visible{outline:0;box-shadow:0 0 0 3px rgba(244,124,26,.18);transform:translateY(-1px)}
a.dci2-thread-avatar{color:inherit!important;text-decoration:none!important}


/* ============================================================
   V2.2.5 — COMPACT CHAT TIMELINE
   Align profile identity, move timestamps beside bubbles, and show one
   local-date divider per day instead of repeating the date on every message.
   ============================================================ */
.dci2-thread-person{
    justify-content:center;
    gap:2px;
}
.dci2-thread-name-row{
    line-height:1.2;
}
.dci2-thread-person strong,
.dci2-thread-person small{
    display:block;
    margin:0;
    line-height:1.25;
}
.dci2-messages{
    gap:7px;
}
.dci2-message{
    width:100%;
    align-items:flex-end;
    gap:7px;
}
.dci2-message.is-mine{
    justify-content:flex-end;
}
.dci2-message.is-theirs{
    justify-content:flex-start;
}
.dci2-message-side-meta{
    display:flex;
    flex:0 0 auto;
    align-items:center;
    gap:5px;
    padding-bottom:3px;
    color:#98A2B3;
    font-size:9.5px;
    line-height:1;
    white-space:nowrap;
}
.dci2-message-side-meta time{
    color:inherit;
    font:500 9.5px/1 Roboto,system-ui,sans-serif;
}
.dci2-read-avatar{
    display:block;
    overflow:hidden;
    width:18px;
    height:18px;
    flex:0 0 18px;
    align-self:flex-end;
    margin:0 0 1px -2px;
    border-radius:50%;
    background:#EEF2F6;
    box-shadow:0 0 0 2px #F8FAFC;
}
.dci2-read-avatar img{
    display:block;
    width:100%;
    height:100%;
    margin:0!important;
    border-radius:50%;
    object-fit:cover;
}
.dci2-bubble{
    padding:9px 12px;
}
.dci2-bubble p{
    margin:0;
}
.dci2-date-separator{
    display:flex;
    width:100%;
    align-items:center;
    justify-content:center;
    margin:7px 0 5px;
    color:#98A2B3;
    font:700 9px/1 Poppins,sans-serif;
    text-align:center;
}
.dci2-date-separator span{
    display:inline-flex;
    min-height:24px;
    align-items:center;
    padding:0 9px;
    border:1px solid #EAECF0;
    border-radius:999px;
    background:#fff;
    box-shadow:0 1px 2px rgba(16,24,40,.025);
}

@media(max-width:780px){
    .dci2-thread-person{gap:1px}
    .dci2-thread-person small{margin-top:0}
    .dci2-messages{gap:6px}
    .dci2-message{gap:5px}
    .dci2-message-side-meta{
        gap:3px;
        padding-bottom:2px;
        font-size:8px;
    }
    .dci2-message-side-meta time{font-size:8px}
    .dci2-read-avatar{
        width:16px;
        height:16px;
        flex-basis:16px;
        margin-bottom:1px;
    }
    .dci2-message.is-mine .dci2-message-side-meta{
        flex-direction:column;
        align-items:flex-end;
    }
    .dci2-bubble,
    .dci2-message.is-announcement .dci2-bubble{
        max-width:calc(100% - 54px);
        padding:8px 10px;
    }
    .dci2-date-separator{
        margin:5px 0 3px;
        font-size:8px;
    }
    .dci2-date-separator span{
        min-height:22px;
        padding:0 8px;
    }
}

/* ============================================================
   V2.3.3 — MOBILE KEYBOARD / VISUAL-VIEWPORT REPLY COMPOSER
   The global bottom nav is hidden while typing. JavaScript then pins
   the reply composer to the bottom edge of the actual visual viewport
   reported by iOS/Android, instead of relying on CSS bottom:0.
   ============================================================ */
@media(max-width:780px){
    body.dci2-inbox-composer-active{
        padding-bottom:0!important;
    }
    body.dci2-inbox-composer-active #dc-bottomnav,
    body.dci2-inbox-composer-active .dc-menu-sheet,
    body.dci2-inbox-composer-active .dc-macct-sheet{
        display:none!important;
    }
    .dci2-shell.is-composer-focused{
        margin-bottom:0;
    }
    .dci2-shell.is-composer-focused .dci2-grid{
        min-height:0;
    }
    .dci2-shell.is-composer-focused .dci2-composer{
        position:fixed!important;
        z-index:1000001!important;
        margin:0!important;
        padding:8px 9px calc(8px + env(safe-area-inset-bottom))!important;
        border-top:1px solid var(--dci-line)!important;
        background:#fff!important;
        box-shadow:0 -6px 20px rgba(16,24,40,.08)!important;
    }
    .dci2-shell.is-composer-focused .dci2-messages{
        padding-bottom:78px!important;
        scroll-padding-bottom:78px!important;
    }
}


/* ============================================================
   V2.3.4 — CLICKABLE LINKS INSIDE MESSAGE BUBBLES
   ============================================================ */
.dci2-bubble p a{
    color:#0A66C2!important;
    text-decoration:underline!important;
    text-decoration-thickness:1px!important;
    text-underline-offset:2px!important;
    overflow-wrap:anywhere;
    word-break:break-word;
    touch-action:manipulation;
}
.dci2-bubble p a:hover,
.dci2-bubble p a:focus-visible{
    color:#084C91!important;
    outline:none;
    text-decoration-thickness:2px!important;
}


/* ============================================================
   V2.3.6 — COMPACT IMAGE ATTACHMENT UI
   Keeps V2.3.5 upload/privacy behaviour. The image control now joins
   the shared Emoji/Send toolbar, and sent images render as compact
   thumbnails below message text until the member opens the viewer.
   ============================================================ */
.dci2-composer{
    grid-template-columns:minmax(0,1fr) auto;
}
.dci2-compose-main{
    position:relative;
    min-width:0;
}
.dci2-compose-main>textarea{display:block}
.dci2-image-picker,
.dci2-new-image-picker{
    cursor:pointer;
    -webkit-tap-highlight-color:transparent;
}
.dci2-image-picker input,
.dci2-new-image-picker input{
    position:absolute;
    width:1px;
    height:1px;
    overflow:hidden;
    clip:rect(0 0 0 0);
    clip-path:inset(50%);
    white-space:nowrap;
}

/* Fallback before/without Community Writing Tools: keep the image action
   compact and inside the writing surface rather than as its own large row. */
.dci2-compose-main>.dci2-image-picker{
    display:grid;
    width:32px;
    height:32px;
    min-width:32px;
    min-height:32px;
    margin:4px 0 0 4px;
    place-items:center;
    border:0;
    border-radius:8px;
    background:transparent;
    color:#475467;
}
.dci2-compose-main>.dci2-image-picker:hover{background:#F2F4F7;color:#344054}

/* Once the shared writing toolbar exists, Inbox JS moves its own image
   picker directly after the emoji button. Send stays pinned on the right. */
.dci2-composer .de-composer-toolbar.dci2-has-image-control,
.dci2-modal .de-composer-toolbar.dci2-has-image-control{
    justify-content:flex-start!important;
}
.dci2-composer .de-composer-toolbar.dci2-has-image-control .de-dsend-button{
    margin-left:auto!important;
}
.de-composer-toolbar .dci2-image-picker.is-toolbar-control,
.de-composer-toolbar .dci2-new-image-picker.is-toolbar-control{
    position:static!important;
    display:grid!important;
    width:32px!important;
    height:32px!important;
    min-width:32px!important;
    min-height:32px!important;
    max-width:32px!important;
    margin:0!important;
    padding:0!important;
    place-items:center!important;
    flex:0 0 32px!important;
    border:0!important;
    border-radius:8px!important;
    background:transparent!important;
    box-shadow:none!important;
    color:#475467!important;
    font-size:0!important;
    line-height:0!important;
    cursor:pointer!important;
}
.de-composer-toolbar .dci2-image-picker.is-toolbar-control:hover,
.de-composer-toolbar .dci2-image-picker.is-toolbar-control:focus-within,
.de-composer-toolbar .dci2-new-image-picker.is-toolbar-control:hover,
.de-composer-toolbar .dci2-new-image-picker.is-toolbar-control:focus-within{
    background:#F2F4F7!important;
    color:#344054!important;
}
.dci2-image-picker svg,
.dci2-new-image-picker svg{
    display:block;
    width:20px;
    height:20px;
    flex:0 0 20px;
    pointer-events:none;
}

.dci2-image-preview{
    position:relative;
    width:max-content;
    max-width:100%;
    margin-top:8px;
}
.dci2-image-preview[hidden]{display:none!important}
.dci2-image-preview img{
    display:block;
    width:auto;
    max-width:170px;
    height:88px;
    border:1px solid var(--dci-line);
    border-radius:10px;
    object-fit:cover;
    background:#F2F4F7;
}
.dci2-image-preview button{
    position:absolute!important;
    top:-7px!important;
    right:-7px!important;
    display:grid!important;
    width:24px!important;
    height:24px!important;
    min-width:24px!important;
    min-height:24px!important;
    margin:0!important;
    padding:0!important;
    place-items:center!important;
    border:2px solid #fff!important;
    border-radius:50%!important;
    background:#111827!important;
    color:#fff!important;
    font:700 16px/1 system-ui,sans-serif!important;
    box-shadow:0 2px 8px rgba(16,24,40,.18)!important;
}
.dci2-new-image-row{
    display:flex;
    align-items:flex-start;
    gap:12px;
    margin:8px 0 2px;
}
.dci2-new-image-row:has(.dci2-image-preview[hidden]){
    margin:0;
    min-height:0;
}
.dci2-modal .dci2-new-image-picker:not(.is-toolbar-control){
    display:inline-flex;
    width:auto;
    min-height:40px;
    align-items:center;
    gap:7px;
    margin-top:0;
    padding:0 11px;
    border:1px solid var(--dci-line);
    border-radius:10px;
    background:#F8FAFC;
    color:#475467;
    font:700 10.5px/1 Poppins,sans-serif;
}

/* Sent attachment = thumbnail, not the dominant content of the message. */
.dci2-bubble.has-image{
    padding:11px 13px;
}
.dci2-bubble.has-image p{
    padding:0;
}
.dci2-message-image{
    display:block!important;
    width:160px!important;
    max-width:100%!important;
    height:100px!important;
    margin:0!important;
    padding:0!important;
    overflow:hidden!important;
    border:1px solid rgba(127,127,127,.22)!important;
    border-radius:8px!important;
    background:#F2F4F7!important;
    box-shadow:none!important;
    cursor:zoom-in!important;
}
.dci2-bubble p + .dci2-message-image{
    margin-top:8px!important;
}
.dci2-message.is-mine .dci2-message-image{
    margin-left:auto!important;
}
.dci2-message-image img{
    display:block!important;
    width:100%!important;
    height:100%!important;
    max-width:none!important;
    max-height:none!important;
    margin:0!important;
    border:0!important;
    border-radius:0!important;
    object-fit:contain!important;
    background:#F2F4F7!important;
}

.dci2-image-viewer[hidden]{display:none!important}
.dci2-image-viewer{
    position:fixed;
    z-index:1000001;
    inset:0;
    display:flex;
    align-items:center;
    justify-content:center;
    padding:30px;
    background:rgba(3,7,18,.92);
}
.dci2-image-viewer img{
    display:block;
    max-width:min(1200px,96vw);
    max-height:92vh;
    object-fit:contain;
    border-radius:10px;
}
.dci2-image-viewer-close{
    position:fixed;
    z-index:2;
    top:18px;
    right:18px;
    display:grid;
    width:42px;
    height:42px;
    min-width:42px;
    min-height:42px;
    padding:0;
    place-items:center;
    border:1px solid rgba(255,255,255,.25);
    border-radius:50%;
    background:rgba(17,24,39,.8);
    color:#fff;
    font:400 28px/1 system-ui,sans-serif;
    cursor:pointer;
}
html.dci2-image-viewer-open{overflow:hidden}

@media(max-width:780px){
    .dci2-composer{
        grid-template-columns:minmax(0,1fr) auto;
        align-items:end;
    }
    .dci2-image-preview img{max-width:132px;height:72px}
    .dci2-message-image{
        width:140px!important;
        height:88px!important;
    }
    .dci2-image-viewer{padding:0;background:#05070B}
    .dci2-image-viewer img{max-width:100vw;max-height:100dvh;border-radius:0}
    .dci2-image-viewer-close{
        top:max(12px,env(safe-area-inset-top));
        right:12px;
        background:rgba(17,24,39,.72);
    }
    .dci2-new-image-row{align-items:center}
}



/* ============================================================
   V2.3.7 — SEPARATE TEXT + IMAGE CARDS
   Image attachments now sit in their own compact card below the text
   bubble. The text bubble is no longer expanded to contain the image.
   ============================================================ */
.dci2-message-stack{
    display:flex;
    min-width:0;
    max-width:min(72%,620px);
    flex-direction:column;
    align-items:flex-start;
    gap:7px;
}
.dci2-message.is-mine .dci2-message-stack{
    align-items:flex-end;
}
.dci2-message-stack .dci2-bubble{
    width:auto;
    max-width:100%;
}
.dci2-message-stack .dci2-message-image{
    margin:0!important;
    padding:4px!important;
    border-color:#D0D5DD!important;
    border-radius:10px!important;
    background:#fff!important;
    box-shadow:0 1px 2px rgba(16,24,40,.04)!important;
}
.dci2-message.is-mine .dci2-message-stack .dci2-message-image{
    margin-left:0!important;
    border-color:#FFD7B8!important;
}
.dci2-message-stack .dci2-message-image img{
    border-radius:6px!important;
}
@media(max-width:780px){
    .dci2-message-stack{
        max-width:calc(100% - 54px);
        gap:6px;
    }
    .dci2-message-stack .dci2-bubble{
        max-width:100%;
    }
}

/* V2.3.8 — admin-only permanent delete for own sent private messages. */
.dci2-admin-delete-message{display:inline-grid;width:24px;height:24px;min-width:24px;padding:0;place-items:center;border:0;border-radius:7px;background:transparent;color:#98A2B3;cursor:pointer;vertical-align:middle}
.dci2-admin-delete-message svg{width:14px;height:14px;display:block}
.dci2-admin-delete-message:hover,.dci2-admin-delete-message:focus-visible{background:#FEE4E2;color:#B42318;outline:0}
.dci2-admin-delete-message:disabled{opacity:.45;cursor:wait}
@media(max-width:780px){.dci2-admin-delete-message{width:28px;height:28px;min-width:28px}.dci2-admin-delete-message svg{width:15px;height:15px}}


/* ============================================================
   V2.3.9 — NORMAL ANNOUNCEMENT CHAT BUBBLE
   Announcement identity already lives in the thread header/badge. The message
   body now uses the same visual bubble as an ordinary received message.
   ============================================================ */
.dci2-message.is-announcement .dci2-bubble{
    max-width:min(72%,620px);
    border-left:1px solid var(--dci-line);
    background:#fff;
}
@media(max-width:780px){
    .dci2-message.is-announcement .dci2-bubble{
        max-width:calc(100% - 54px);
    }
}


/* ============================================================
   V2.3.10 — SLIGHTLY STRONGER ANNOUNCEMENT SUBJECT
   Keep the normal chat bubble from V2.3.9; only give the official
   announcement subject a little more visual hierarchy.
   ============================================================ */
.dci2-message.is-announcement .dci2-legacy-subject{
    font-size:13px;
    line-height:1.35;
    margin-bottom:8px;
}
@media(max-width:780px){
    .dci2-message.is-announcement .dci2-legacy-subject{
        font-size:12.5px;
    }
}

/* ============================================================
   V2.3.15 — NEW MESSAGE ACTION ROW
   Writing Tools dynamically wraps the textarea and relocates the image picker.
   Do not depend on the submit button margin for separation from that dynamic
   writing surface. A dedicated action row provides non-collapsing padding.
   ============================================================ */
.dci2-modal .dci2-new-actions{
    display:block;
    width:100%;
    padding-top:16px;
}
.dci2-modal .dci2-new-actions>button[type="submit"]{
    display:block!important;
    width:100%!important;
    margin:0!important;
}
@media(max-width:780px){
    .dci2-modal .dci2-new-actions{
        padding-top:14px;
    }
}


/* V2.3.16 — dedicated Domechy System sender for one-way moderation notices. */
@media(min-width:601px){.dci2-send-as-options{grid-template-columns:repeat(3,minmax(0,1fr))}}
.dci2-message.is-system .dci2-bubble{max-width:min(78%,680px);border-left:3px solid var(--dci-orange);background:#fff}
.dci2-message.is-system .dci2-message-meta{justify-content:flex-start}
@media(max-width:600px){.dci2-message.is-system .dci2-bubble{max-width:94%}}
