.messaging-header-link { position: relative; display: inline-flex; align-items: center; justify-content: center; width: 36px; height: 36px; border-radius: 8px; color: var(--color-text-light); flex-shrink: 0; }
.messaging-header-link:hover { background: var(--color-primary-light); }
.messaging-unread { background: var(--color-primary-dark); color: #fff; border-radius: 10px; padding: 1px 5px; min-width: 16px; text-align: center; font-size: 10px; line-height: 15px; }
.messaging-header-link .messaging-unread { position: absolute; right: -5px; top: -3px; }
@media(max-width: 767px) { .messaging-header-link { width: 44px; height: 44px; } }

.messaging-share-dialog { margin: auto; inset: 0; width: min(480px, calc(100vw - 24px)); max-height: calc(100dvh - 32px); padding: 24px; border: 1px solid var(--color-border, #ddd); border-radius: 12px; color: var(--color-text); background: var(--color-surface, #fff); overflow: auto; }
.messaging-share-dialog::backdrop { background: rgb(20 30 35 / 40%); }
.messaging-share-dialog header, .messaging-share-dialog footer { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.messaging-share-dialog h2 { font-size: 20px; margin: 0; }
.messaging-share-dialog [data-close] { border: 0; background: transparent; color: inherit; font-size: 26px; width: 40px; height: 40px; cursor: pointer; }
.messaging-share-dialog [data-resource] { overflow-wrap: anywhere; margin: 10px 0 20px; }
.messaging-share-dialog .form-input { width: 100%; margin: 8px 0; }
.messaging-share-people { max-height: min(340px, 42dvh); overflow-y: auto; min-height: 72px; }
.messaging-share-people label { display: flex; align-items: center; gap: 12px; min-height: 56px; padding: 8px; cursor: pointer; border-radius: 6px; }
.messaging-share-people label:hover, .messaging-share-people label:has(:checked) { background: var(--color-primary-light, #edf3f1); }
.messaging-share-people label > span:nth-child(2) { flex: 1; min-width: 0; overflow-wrap: anywhere; }
.messaging-share-people input { width: 18px; height: 18px; flex-shrink: 0; accent-color: var(--color-primary); }
.messaging-share-avatar { display: grid; place-items: center; width: 36px; height: 36px; flex-shrink: 0; border-radius: 50%; background: var(--color-primary-light, #edf3f1); font-size: 12px; font-weight: 600; }
.messaging-share-status { font-size: 13px; overflow-wrap: anywhere; }
.messaging-share-dialog footer { margin-top: 16px; font-size: 13px; }
@media (max-width: 480px) { .messaging-share-dialog { padding: 16px; } }

@keyframes messaging-share-check {
    0% { transform: scale(.5); opacity: 0; }
    65% { transform: scale(1.16); opacity: 1; }
    100% { transform: scale(1); opacity: 1; }
}
.messaging-share-success .flash-symbol { animation: messaging-share-check 380ms ease-out both; }
@media (prefers-reduced-motion: reduce) { .messaging-share-success .flash-symbol { animation: none; } }

/* One sidebar indicator component for unread counts and current activity. */
.nav-bottom .nav-item .nav-indicator { display:inline-flex; align-items:center; justify-content:center; flex-shrink:0; min-width:22px; height:21px; margin-left:auto; padding:0 7px; border-radius:7px; background:#ffffff12; border:1px solid #ffffff16; color:#c8d5fa; font-size:10px; font-weight:650; line-height:1; font-variant-numeric:tabular-nums; }
.nav-bottom .nav-item.active .nav-indicator { background:#8199e62b; border-color:#a7b9ff30; color:#e0e8ff; }
.nav-bottom .nav-item .nav-indicator-live { color:#a8e0c9; gap:5px; font-size:9px; }
.nav-bottom .nav-indicator-live::before { content:''; width:5px; height:5px; border-radius:50%; background:currentColor; }
.nav-bottom .nav-indicator[hidden] { display:none; }
