/* EMU Messaging V2.2.1 — Design Center aware */
.emu-messaging{
  box-sizing:border-box;
  width:min(100%,var(--emu-messaging-max-width,1180px));
  margin-inline:auto;
  background:var(--emu-messaging-bg,var(--emu-bg,#0b0f19));
  color:var(--emu-messaging-text,var(--emu-text,#f8fafc));
  border:1px solid var(--emu-messaging-border,var(--emu-border,#263247));
  border-radius:var(--emu-messaging-radius,var(--emu-radius,14px));
  padding:clamp(14px,2vw,24px);
  box-shadow:var(--emu-messaging-shadow,var(--emu-shadow,0 14px 40px rgba(0,0,0,.22)));
  font-family:var(--emu-shell-font,var(--emu-font,inherit));
}
.emu-messaging *{box-sizing:border-box}
.emu-messaging h1,.emu-messaging h2,.emu-messaging h3,.emu-messaging strong{color:var(--emu-messaging-text,var(--emu-text,#f8fafc))}
.emu-messaging a{color:inherit}
.emu-messaging-app__header{display:flex;align-items:flex-end;justify-content:space-between;gap:1rem;margin-bottom:1rem}
.emu-messaging-app__header h1{margin:0 0 .25rem;font-size:clamp(1.45rem,3vw,2rem)}
.emu-messaging-app__header p{margin:0;color:var(--emu-messaging-muted,var(--emu-muted,#94a3b8))}
.emu-messaging-app__grid{display:grid;grid-template-columns:minmax(260px,340px) minmax(0,1fr);gap:1rem;min-height:540px}
.emu-messaging-app__inbox,.emu-messaging-app__thread{min-width:0;background:var(--emu-messaging-surface,var(--emu-surface,#111827));border:1px solid var(--emu-messaging-border,var(--emu-border,#263247));border-radius:calc(var(--emu-messaging-radius,14px)*.85);padding:1rem}
.emu-messaging-app__inbox h2{margin:.1rem 0 .85rem}
.emu-messaging-inbox-list{display:flex;flex-direction:column;gap:.55rem}
.emu-message-row{display:grid;grid-template-columns:48px minmax(0,1fr) auto;gap:.75rem;align-items:center;padding:.75rem;margin:0;background:color-mix(in srgb,var(--emu-messaging-surface,var(--emu-surface,#111827)) 88%,var(--emu-messaging-bg,var(--emu-bg,#0b0f19)));border:1px solid var(--emu-messaging-border,var(--emu-border,#263247));border-radius:calc(var(--emu-messaging-radius,14px)*.75);color:inherit;text-decoration:none;transition:border-color .16s ease,transform .16s ease,background .16s ease}
.emu-message-row:hover,.emu-message-row:focus-visible,.emu-message-row.is-active{border-color:var(--emu-messaging-primary,var(--emu-primary,#15d9df));transform:translateY(-1px);outline:none;background:color-mix(in srgb,var(--emu-messaging-primary,var(--emu-primary,#15d9df)) 8%,var(--emu-messaging-surface,var(--emu-surface,#111827)))}
.emu-message-avatar{width:48px;height:48px;border-radius:50%;overflow:hidden;display:grid;place-items:center;background:var(--emu-messaging-bg,var(--emu-bg,#0b0f19));border:1px solid var(--emu-messaging-border,var(--emu-border,#263247))}
.emu-message-avatar img{width:100%;height:100%;object-fit:cover;display:block}
.emu-message-row__body{min-width:0;display:block}.emu-message-title{display:block;font-weight:800;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.emu-message-preview{display:block;margin-top:.15rem;color:var(--emu-messaging-muted,var(--emu-muted,#94a3b8));overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.emu-message-row__meta{display:flex;min-width:70px;flex-direction:column;align-items:flex-end;gap:.4rem}.emu-message-row time{white-space:nowrap}
.emu-badge,.emu-messaging-menu-badge{display:inline-flex;min-width:1.65rem;height:1.65rem;align-items:center;justify-content:center;background:var(--emu-messaging-badge,var(--emu-secondary,#9b5cff));color:#fff;border-radius:999px;padding:.08rem .45rem;font-weight:800;font-size:.78em;line-height:1}
.emu-messaging-app__thread{display:flex;flex-direction:column}
.emu-messaging-welcome{margin:auto;max-width:360px;text-align:center;color:var(--emu-messaging-muted,var(--emu-muted,#94a3b8));padding:2rem}.emu-messaging-welcome>span{display:inline-grid;place-items:center;width:64px;height:64px;border-radius:50%;font-size:1.8rem;background:color-mix(in srgb,var(--emu-messaging-primary,var(--emu-primary,#15d9df)) 12%,transparent);color:var(--emu-messaging-primary,var(--emu-primary,#15d9df))}
.emu-messaging-back{display:none;margin-bottom:.75rem;text-decoration:none;color:var(--emu-messaging-primary,var(--emu-primary,#15d9df))!important;font-weight:700}
.emu-messaging-thread-head{display:flex;align-items:center;gap:.8rem;padding-bottom:.9rem;margin-bottom:.5rem;border-bottom:1px solid var(--emu-messaging-border,var(--emu-border,#263247))}.emu-messaging-thread-head img{width:52px;height:52px;border-radius:50%;object-fit:cover}.emu-messaging-thread-head h2{margin:0}.emu-messaging-thread-head a{display:inline-block;margin-top:.18rem;color:var(--emu-messaging-primary,var(--emu-primary,#15d9df))!important;text-decoration:none;font-size:.9rem}
.emu-conversation{display:flex;min-height:0;flex:1;flex-direction:column}.emu-message-thread{display:flex;flex:1;flex-direction:column;gap:.75rem;max-height:min(70vh,var(--emu-messaging-thread-height,560px));overflow:auto;padding:.75rem .2rem;scrollbar-gutter:stable}
.emu-message{align-self:flex-start;background:var(--emu-messaging-message-other,var(--emu-card,#182131));border:1px solid var(--emu-messaging-border,var(--emu-border,#263247));border-radius:var(--emu-messaging-radius,14px);padding:.7rem .85rem;max-width:var(--emu-messaging-bubble-width,76%);box-shadow:var(--emu-messaging-shadow,var(--emu-shadow,0 8px 24px rgba(0,0,0,.12)))}
.emu-message.is-own{align-self:flex-end;background:var(--emu-messaging-message-own,color-mix(in srgb,var(--emu-primary,#15d9df) 18%,var(--emu-card,#182131)));border-color:color-mix(in srgb,var(--emu-messaging-primary,var(--emu-primary,#15d9df)) 42%,var(--emu-messaging-border,var(--emu-border,#263247)))}
.emu-message time,.emu-message-row time{font-size:.8em;color:var(--emu-messaging-muted,var(--emu-muted,#94a3b8));opacity:.9}
.emu-composer{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:.55rem;align-items:end;margin-top:auto;padding-top:1rem;border-top:1px solid var(--emu-messaging-border,var(--emu-border,#263247))}
.emu-composer textarea{width:100%;min-height:4.5rem;resize:vertical;background:var(--emu-messaging-bg,var(--emu-bg,#0b0f19));color:var(--emu-messaging-text,var(--emu-text,#f8fafc));border:1px solid var(--emu-messaging-border,var(--emu-border,#263247));border-radius:calc(var(--emu-messaging-radius,14px)*.75);padding:.75rem .85rem;font:inherit;outline:none}.emu-composer textarea:focus{border-color:var(--emu-messaging-primary,var(--emu-primary,#15d9df));box-shadow:0 0 0 3px color-mix(in srgb,var(--emu-messaging-primary,var(--emu-primary,#15d9df)) 20%,transparent)}
.emu-composer button,.emu-messaging-button{min-height:var(--emu-touch-target,44px);display:inline-flex;align-items:center;justify-content:center;background:var(--emu-messaging-primary,var(--emu-primary,#15d9df));color:var(--emu-button-text,var(--emu-admin-button-text,#071014));border:0;border-radius:calc(var(--emu-messaging-radius,14px)*.75);padding:.65rem 1rem;cursor:pointer;font:inherit;font-weight:800;text-decoration:none}.emu-composer button:hover,.emu-messaging-button:hover{filter:brightness(1.06)}.emu-composer button:focus-visible,.emu-messaging-button:focus-visible{outline:2px solid var(--emu-messaging-primary,var(--emu-primary,#15d9df));outline-offset:2px}
.emu-emoji-picker{position:relative}.emu-emoji-picker>button{background:transparent;color:var(--emu-messaging-text,var(--emu-text,#f8fafc));border:1px solid var(--emu-messaging-border,var(--emu-border,#263247))}.emu-emoji-list{position:absolute;bottom:calc(100% + 8px);right:0;background:var(--emu-messaging-surface,var(--emu-surface,#111827));color:var(--emu-messaging-text,var(--emu-text,#f8fafc));border:1px solid var(--emu-messaging-border,var(--emu-border,#263247));border-radius:var(--emu-messaging-radius,14px);padding:.65rem;width:14rem;line-height:2.1;box-shadow:var(--emu-messaging-shadow,var(--emu-shadow,0 14px 40px rgba(0,0,0,.22)));z-index:120}
.emu-empty{color:var(--emu-messaging-muted,var(--emu-muted,#94a3b8));opacity:.95}
.emu-messaging-menu-item>a{position:relative}.emu-messaging-menu-badge{margin-left:.35rem;vertical-align:middle}.emu-platform-app-nav .emu-messaging-menu-badge{position:absolute;top:2px;right:calc(50% - 22px);min-width:1.1rem;height:1.1rem;font-size:.62rem;padding:0 .28rem}.emu-messaging-menu-icon{font-style:normal}

/* Backend follows EMU Design Center admin tokens */
.emu-messaging-admin{max-width:1180px;color:var(--emu-admin-text,var(--emu-text,#1f2937))}.emu-messaging-admin>h1{margin-bottom:.25rem}.emu-messaging-admin>p{color:var(--emu-admin-muted,var(--emu-muted,#64748b))}.emu-messaging-admin h2{margin-top:1.6rem}.emu-messaging-admin-list,.emu-messaging-admin .widefat,.emu-messaging-admin form:not(.inline){background:var(--emu-admin-surface,var(--emu-surface,#fff));color:var(--emu-admin-text,var(--emu-text,#1f2937));border:1px solid var(--emu-admin-border,var(--emu-border,#d7dce3));border-radius:var(--emu-admin-radius,var(--emu-radius,12px));box-shadow:var(--emu-admin-shadow,var(--emu-shadow,none))}.emu-messaging-admin-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:0;list-style:none;padding:0;margin:1rem 0;overflow:hidden}.emu-messaging-admin-list li{padding:1rem;border-right:1px solid var(--emu-admin-border,var(--emu-border,#d7dce3));margin:0}.emu-messaging-admin .widefat{overflow:hidden}.emu-messaging-admin .widefat th,.emu-messaging-admin .widefat td{color:inherit;border-bottom-color:var(--emu-admin-border,var(--emu-border,#d7dce3))}.emu-messaging-admin form:not(.inline){padding:1rem}.emu-messaging-admin label{display:inline-flex;align-items:center;gap:.45rem;margin:.3rem 0}.emu-messaging-admin .button-primary{background:var(--emu-admin-primary,var(--emu-primary,#2271b1));border-color:var(--emu-admin-primary,var(--emu-primary,#2271b1));color:var(--emu-admin-button-text,#fff)}

@media(max-width:760px){
  .emu-messaging{padding:12px;border-radius:calc(var(--emu-messaging-radius,14px)*.8)}
  .emu-messaging-app__grid{grid-template-columns:1fr;min-height:0}
  .emu-messaging-app__grid.has-thread .emu-messaging-app__inbox{display:none}
  .emu-messaging-app__grid:not(.has-thread) .emu-messaging-app__thread{display:none}
  .emu-messaging-back{display:inline-flex}
  .emu-message{max-width:88%}
  .emu-composer{grid-template-columns:minmax(0,1fr) auto}.emu-composer>button[type="submit"]{grid-column:1/-1;width:100%}
  .emu-messaging-admin-list{grid-template-columns:1fr 1fr}
}

/* EMU Messaging V2.2.1 — new conversation flow + Community profile action */
.emu-messaging-app__header-actions{display:flex;align-items:center;justify-content:flex-end;gap:.65rem;flex-wrap:wrap}
.emu-messaging-new-button{min-height:var(--emu-touch-target,44px);display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--emu-messaging-primary,var(--emu-primary,#15d9df));border-radius:calc(var(--emu-messaging-radius,14px)*.75);padding:.65rem 1rem;background:var(--emu-messaging-primary,var(--emu-primary,#15d9df));color:var(--emu-button-text,#071014);font:inherit;font-weight:800;cursor:pointer}
.emu-messaging-new-button:hover{filter:brightness(1.06)}
.emu-messaging-new-button:focus-visible{outline:2px solid var(--emu-messaging-primary,var(--emu-primary,#15d9df));outline-offset:2px}

.emu-messaging-dialog[hidden]{display:none!important}
.emu-messaging-dialog{position:fixed;inset:0;z-index:99990;display:grid;place-items:center;padding:20px}
.emu-messaging-dialog__backdrop{position:absolute;inset:0;background:rgba(0,0,0,.68);backdrop-filter:blur(5px)}
.emu-messaging-dialog__panel{position:relative;z-index:1;width:min(620px,100%);max-height:min(760px,calc(100vh - 40px));overflow:auto;background:var(--emu-messaging-surface,var(--emu-surface,#111827));color:var(--emu-messaging-text,var(--emu-text,#f8fafc));border:1px solid var(--emu-messaging-border,var(--emu-border,#263247));border-radius:var(--emu-messaging-radius,14px);padding:clamp(16px,3vw,24px);box-shadow:var(--emu-messaging-shadow,var(--emu-shadow,0 22px 70px rgba(0,0,0,.4)))}
.emu-messaging-dialog__head{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:1rem}
.emu-messaging-dialog__head h2{margin:0 0 .25rem;color:inherit}.emu-messaging-dialog__head p{margin:0;color:var(--emu-messaging-muted,var(--emu-muted,#94a3b8))}
.emu-messaging-dialog__close{flex:0 0 auto;width:40px;height:40px;border:1px solid var(--emu-messaging-border,var(--emu-border,#263247));border-radius:50%;background:transparent;color:inherit;font:inherit;font-size:1.5rem;line-height:1;cursor:pointer}
.emu-messaging-dialog__close:hover,.emu-messaging-dialog__close:focus-visible{border-color:var(--emu-messaging-primary,var(--emu-primary,#15d9df));outline:none}
.emu-messaging-user-search{display:grid;gap:.4rem;margin-bottom:1rem;font-weight:700}
.emu-messaging-user-search input{width:100%;min-height:46px;background:var(--emu-messaging-bg,var(--emu-bg,#0b0f19));color:var(--emu-messaging-text,var(--emu-text,#f8fafc));border:1px solid var(--emu-messaging-border,var(--emu-border,#263247));border-radius:calc(var(--emu-messaging-radius,14px)*.75);padding:.7rem .85rem;font:inherit;outline:none}
.emu-messaging-user-search input:focus{border-color:var(--emu-messaging-primary,var(--emu-primary,#15d9df));box-shadow:0 0 0 3px color-mix(in srgb,var(--emu-messaging-primary,var(--emu-primary,#15d9df)) 20%,transparent)}
.emu-messaging-user-results{display:flex;flex-direction:column;gap:.55rem;min-height:70px}
.emu-messaging-user-result{width:100%;display:grid;grid-template-columns:48px minmax(0,1fr) auto;align-items:center;gap:.75rem;text-align:left;padding:.7rem;border:1px solid var(--emu-messaging-border,var(--emu-border,#263247));border-radius:calc(var(--emu-messaging-radius,14px)*.75);background:color-mix(in srgb,var(--emu-messaging-surface,var(--emu-surface,#111827)) 90%,var(--emu-messaging-bg,var(--emu-bg,#0b0f19)));color:inherit;cursor:pointer;font:inherit}
.emu-messaging-user-result:hover,.emu-messaging-user-result:focus-visible{border-color:var(--emu-messaging-primary,var(--emu-primary,#15d9df));outline:none;background:color-mix(in srgb,var(--emu-messaging-primary,var(--emu-primary,#15d9df)) 7%,var(--emu-messaging-surface,var(--emu-surface,#111827)))}
.emu-messaging-user-result__body{display:flex;min-width:0;flex-direction:column;gap:.12rem}.emu-messaging-user-result__body strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.emu-messaging-user-result__body small{color:var(--emu-messaging-muted,var(--emu-muted,#94a3b8));overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.emu-messaging-user-result__action{color:var(--emu-messaging-primary,var(--emu-primary,#15d9df));font-weight:800;font-size:.9rem;white-space:nowrap}
.emu-messaging-dialog-open{overflow:hidden}

/* Inside EMU Community use the Community pill geometry instead of the larger standalone CTA. */
.emu-profile-v2-actions .emu-messaging-profile-button{min-height:32px;padding:6px 12px;border-radius:999px;background:transparent;color:var(--emu-community-primary,var(--emu-messaging-primary,var(--emu-primary,#15d9df)));border:1px solid var(--emu-community-border,var(--emu-messaging-border,var(--emu-border,#263247)));font-size:12px;font-weight:800;line-height:1.15;box-shadow:none}
.emu-profile-v2-actions .emu-messaging-profile-button:hover,.emu-profile-v2-actions .emu-messaging-profile-button:focus-visible{border-color:var(--emu-community-primary,var(--emu-messaging-primary,var(--emu-primary,#15d9df)));background:color-mix(in srgb,var(--emu-community-primary,var(--emu-messaging-primary,var(--emu-primary,#15d9df))) 9%,transparent);filter:none}

@media(max-width:760px){
  .emu-messaging-app__header{align-items:flex-start;flex-direction:column}
  .emu-messaging-app__header-actions{width:100%;justify-content:space-between}
  .emu-messaging-new-button{flex:1}
  .emu-messaging-dialog{padding:10px;align-items:end}
  .emu-messaging-dialog__panel{width:100%;max-height:88vh;border-radius:var(--emu-messaging-radius,14px) var(--emu-messaging-radius,14px) 0 0}
  .emu-messaging-user-result{grid-template-columns:44px minmax(0,1fr)}
  .emu-messaging-user-result__action{grid-column:2;font-size:.82rem}
}

/* EMU Messaging V2.2.2 — grouped dates, responsive emoji picker, immediate send feedback */
.emu-message-date{display:flex;align-items:center;gap:.75rem;margin:.35rem 0;color:var(--emu-messaging-muted,var(--emu-muted,#94a3b8));font-size:.78rem;font-weight:800;letter-spacing:.02em;text-align:center}.emu-message-date::before,.emu-message-date::after{content:"";height:1px;flex:1;background:var(--emu-messaging-border,var(--emu-border,#263247));opacity:.8}.emu-message-date span{white-space:nowrap;padding:0 .25rem}
.emu-message.is-pending{opacity:.68}.emu-message.is-pending time::after{content:" · …"}
.emu-composer button:disabled{opacity:.55;cursor:wait;filter:none}
.emu-emoji-list{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:.2rem;width:min(22rem,calc(100vw - 36px));max-height:15rem;overflow:auto;line-height:1;padding:.55rem}
.emu-emoji-list[hidden]{display:none!important}.emu-emoji-option{display:grid!important;place-items:center!important;min-width:0!important;width:2.15rem!important;height:2.15rem!important;min-height:2.15rem!important;padding:0!important;border:0!important;border-radius:.55rem!important;background:transparent!important;color:inherit!important;font-size:1.28rem!important;font-weight:400!important;line-height:1!important}.emu-emoji-option:hover,.emu-emoji-option:focus-visible{background:color-mix(in srgb,var(--emu-messaging-primary,var(--emu-primary,#15d9df)) 14%,transparent)!important;outline:none!important;filter:none!important}
@media(max-width:520px){.emu-emoji-list{right:-3.2rem;grid-template-columns:repeat(7,minmax(0,1fr));width:min(19rem,calc(100vw - 24px));max-height:13rem}}

/* EMU Messaging V2.3.0 — live presence, typing and unified notifications */
.emu-messaging-thread-head__body{min-width:0;display:flex;flex-direction:column;align-items:flex-start}
.emu-messaging-presence{display:inline-flex;align-items:center;gap:.38rem;margin-top:.18rem;color:var(--emu-messaging-muted,var(--emu-muted,#94a3b8));font-size:.82rem;font-weight:750}
.emu-messaging-presence__dot{width:.52rem;height:.52rem;border-radius:50%;background:var(--emu-messaging-muted,var(--emu-muted,#94a3b8));box-shadow:0 0 0 2px color-mix(in srgb,var(--emu-messaging-muted,var(--emu-muted,#94a3b8)) 16%,transparent)}
.emu-messaging-presence.is-online{color:var(--emu-success,#22c55e)}
.emu-messaging-presence.is-online .emu-messaging-presence__dot{background:var(--emu-success,#22c55e);box-shadow:0 0 0 2px color-mix(in srgb,var(--emu-success,#22c55e) 18%,transparent),0 0 12px color-mix(in srgb,var(--emu-success,#22c55e) 32%,transparent)}
.emu-messaging-typing{margin-top:.18rem;color:var(--emu-messaging-primary,var(--emu-primary,#15d9df));font-size:.82rem;font-weight:800}
.emu-messaging-typing[hidden]{display:none!important}
.emu-messaging-notification-item .emu-community-header-notifications__message{display:flex;min-width:0;flex-direction:column;gap:.15rem}
.emu-messaging-notification-item .emu-community-header-notifications__message strong{font-size:13px;line-height:1.3}
.emu-messaging-notification-item .emu-community-header-notifications__message small{display:block;color:var(--emu-muted,#94a3b8);font-size:11px;line-height:1.3;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.emu-community-header-notifications.has-unread .emu-community-header-notifications__toggle{color:var(--emu-primary,#15d9df)!important}
