/* Compact inbox and floating chat controls, shared by mobile and desktop. */
#messageForm.compact-message-composer,.floating-chat-form.compact-message-composer{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:6px;margin:0;padding:8px 10px;min-width:0;flex:none;background:var(--panel);border-top:1px solid var(--line)}
#messageForm.compact-message-composer[hidden]{display:none!important}
#messageForm.compact-message-composer>input[name=body],.floating-chat-form.compact-message-composer>textarea{grid-column:1;grid-row:1;width:100%;min-width:0;height:44px;min-height:44px;max-height:100px;margin:0;padding:10px 12px;font-size:16px;line-height:22px;border-radius:12px;resize:vertical}
#messageForm.compact-message-composer>button[type=submit],.floating-chat-form.compact-message-composer>button[type=submit]{grid-column:2;grid-row:1;width:auto;min-width:66px;min-height:44px;height:44px;padding:8px 14px;margin:0;align-self:start}
#messageForm.compact-message-composer>.message-tools,.floating-chat-form.compact-message-composer>.message-tools{grid-column:1/-1;grid-row:2;display:flex;align-items:center;flex-wrap:wrap;gap:4px;min-width:0;padding:0;margin:0}
#messageForm.compact-message-composer .voice-controls{display:contents}
.compact-message-composer .message-tool,.compact-message-composer .camera-upload-control,.compact-message-composer .chat-emoji>summary{display:flex;position:relative;align-items:center;justify-content:center;flex:0 0 44px;min-width:44px;width:44px;min-height:44px;height:44px;margin:0;padding:10px;border:1px solid var(--line);border-radius:12px;background:transparent;color:var(--text);cursor:pointer;overflow:hidden;line-height:1}
#messageForm.compact-message-composer .message-file-label,#messageForm.compact-message-composer .camera-upload-control{width:44px;min-height:44px;margin:0;flex:0 0 44px}
.compact-message-composer .message-tool .mobile-icon,.compact-message-composer .camera-upload-control .mobile-icon{width:22px;height:22px;display:block}
.compact-message-composer .message-tools input[type=file]{position:absolute;inset:0;width:100%;height:100%;opacity:0;margin:0;padding:0;cursor:pointer}
.compact-message-composer .message-tool:focus-within,.compact-message-composer .camera-upload-control:focus-within{outline:2px solid var(--accent);outline-offset:2px}
.compact-message-composer .message-tool[hidden]{display:none!important}
.compact-message-composer .message-tools>.message-rules-link{margin-left:auto;color:var(--muted);border-color:transparent}
.compact-message-composer .voice-status{flex:1 1 100%;margin:0;padding:2px 0;font-size:12px;line-height:1.4;color:var(--muted);order:10}
.compact-message-composer .voice-status:empty,.compact-message-composer .chat-send-error:empty,.compact-message-composer .chat-file-count:empty{display:none}
.compact-message-composer .chat-send-error{grid-column:1/-1;grid-row:3;margin:0;padding:2px 0;font-size:12px;line-height:1.4}
.compact-message-composer .chat-file-count{flex:1;min-width:0;font-size:12px;color:var(--muted);overflow-wrap:anywhere}
.compact-message-composer .chat-emoji{position:relative;flex:none}
.compact-message-composer .chat-emoji>summary{list-style:none;font-size:22px}
.compact-message-composer .chat-emoji>summary::-webkit-details-marker{display:none}
.compact-message-composer .chat-emoji>div{bottom:48px;left:0;right:auto;z-index:5}
#messageForm.compact-message-composer>.upload-previews,.floating-chat-form.compact-message-composer>.upload-previews{grid-column:1/-1;grid-row:4;display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:6px;margin:0;max-height:180px;overflow:auto;overscroll-behavior:contain}
#messageForm.compact-message-composer>.upload-previews:empty,.floating-chat-form.compact-message-composer>.upload-previews:empty{display:none}
.compact-message-composer .upload-preview img,.compact-message-composer .upload-preview video{height:64px}
.compact-message-composer .upload-preview a{min-height:44px;padding:8px;font-size:12px}
.message-rules ul{padding-left:1.25rem}
.message-rules li{margin:.7rem 0;line-height:1.6}
@media(max-width:720px){
  #messageForm.compact-message-composer,.floating-chat-form.compact-message-composer{padding:8px 10px calc(8px + env(safe-area-inset-bottom));max-height:45%;overflow:auto;overscroll-behavior:contain}
  #messageForm.compact-message-composer>.upload-previews,.floating-chat-form.compact-message-composer>.upload-previews{max-height:min(180px,24dvh)}
}
