[hidden] { display:none !important; }
.inbox-heading,.inbox-filters { display:flex; align-items:center; flex-wrap:wrap; gap:12px; }
.inbox-heading h2,.inbox-heading h3 { margin:0; flex:1; overflow-wrap:anywhere; }
.inbox-filters { margin:16px 0; }.inbox-filters input { flex:1; min-width:170px; }
.inbox-layout { display:grid; grid-template-columns:minmax(210px, .7fr) minmax(300px, 1.6fr); gap:20px; }
.inbox-sidebar { border-right:1px solid var(--line); padding-right:16px; min-width:0; }
.inbox-list { max-height:640px; overflow:auto; }.inbox-thread { display:block; width:100%; text-align:left; border:1px solid var(--line); border-radius:12px; padding:13px; margin:0 0 8px; background:var(--panel-2); color:var(--text); }
.inbox-thread[aria-pressed=true] { border-color:var(--accent); background:var(--panel-3); }.inbox-thread strong,.inbox-thread small { display:block; overflow-wrap:anywhere; }.inbox-thread small { color:var(--muted); margin-top:7px; }.inbox-thread-state { color:var(--accent); font-size:12px; }
.inbox-detail { min-width:0; }.inbox-history { height:390px; overflow:auto; overscroll-behavior:contain; padding:14px; border:1px solid var(--line); border-radius:14px; margin:12px 0; background:var(--bg); }
.inbox-message { border:1px solid var(--line); background:var(--panel-2); border-radius:12px; padding:12px; margin:0 14% 12px 0; overflow-wrap:anywhere; }.inbox-message.outgoing { margin:0 0 12px 14%; border-color:var(--accent); }.inbox-message p { white-space:pre-wrap; margin:8px 0; }.inbox-message small { display:block; color:var(--muted); }.inbox-message img,.inbox-composer>img { display:block; max-width:100%; max-height:270px; border-radius:8px; margin:10px 0; object-fit:contain; }.inbox-delivery { margin-top:8px; }
.inbox-composer label { display:block; margin:12px 0; }.inbox-composer textarea { display:block; width:100%; box-sizing:border-box; margin-top:8px; resize:vertical; }.inbox-composer input { display:block; max-width:100%; margin-top:8px; }.inbox-composer button { margin:4px 8px 4px 0; }
@media(max-width:760px){.inbox-layout { grid-template-columns:1fr; }.inbox-sidebar { border-right:0; border-bottom:1px solid var(--line); padding:0 0 14px; }.inbox-list { max-height:200px; }.inbox-message { margin-right:5%; }.inbox-message.outgoing { margin-left:5%; }}

.inbox-thread .inbox-language { margin:5px 0; font-size:12px; }
#inboxCard .inbox-filters { display:grid; grid-template-columns:minmax(0,1fr) 220px; gap:12px; }
#inboxCard .inbox-filters input[type=search] { width:100%; min-width:0; box-sizing:border-box; padding:10px 12px; color:var(--text); background:var(--panel-2); border:1px solid var(--line); border-radius:8px; font:inherit; }
#inboxCard .inbox-filters select { margin:0; width:100%; }
#inboxCard .inbox-template-bar { display:grid; grid-template-columns:minmax(0,1fr) 160px auto; gap:10px 12px; align-items:end; padding:16px 0; border-bottom:1px solid var(--line); }
#inboxCard .inbox-template-bar label { display:block; min-width:0; margin:0; font-size:12px; }
#inboxCard .inbox-template-bar select { display:block; box-sizing:border-box; width:100%; margin:6px 0 0; }
#inboxCard .inbox-template-bar button { margin:0; white-space:nowrap; }
#inboxCard .inbox-template-bar .hint { grid-column:1/-1; margin:0; font-size:12px; }
#inboxCard .inbox-template-actions { grid-column:1/-1; display:flex; gap:16px; }
#inboxCard .inbox-template-actions button { padding:0; border:0; background:none; color:var(--muted); font-size:12px; min-height:28px; box-shadow:none; }
#inboxCard .inbox-template-actions button:hover { color:var(--accent); }
#inboxCard .inbox-template-editor { width:calc(100% - 32px); max-width:640px; max-height:calc(100dvh - 40px); box-sizing:border-box; overflow:auto; margin:auto; padding:28px; border:1px solid var(--line); border-radius:16px; color:var(--text); background:var(--panel); box-shadow:0 24px 80px #0006; }
.inbox-template-editor::backdrop { background:rgba(0,0,0,.6); }
#inboxCard .inbox-template-editor h3 { margin:0; font-size:20px; line-height:1.3; }
#inboxCard .inbox-template-intro { margin:8px 0 24px; color:var(--muted); font-size:13px; }
#inboxCard .inbox-template-editor label { display:block; margin:0; min-width:0; font-size:13px; color:var(--muted); }
#inboxCard .inbox-template-editor input,#inboxCard .inbox-template-editor textarea { display:block; box-sizing:border-box; width:100%; margin:8px 0 0; padding:11px 12px; color:var(--text); background:var(--bg); border:1px solid var(--line); border-radius:8px; font:inherit; font-size:14px; line-height:1.6; }
#inboxCard .inbox-template-editor input:focus,#inboxCard .inbox-template-editor textarea:focus { outline:2px solid var(--accent); outline-offset:2px; }
#inboxCard .inbox-template-editor textarea { height:210px; min-height:140px; resize:vertical; }
#inboxCard .inbox-template-tabs { display:flex; gap:4px; margin:24px 0 16px; border-bottom:1px solid var(--line); }
#inboxCard .inbox-template-tabs button { display:flex; align-items:center; gap:8px; margin:0 0 -1px; padding:10px 16px; border:0; border-bottom:2px solid transparent; border-radius:0; background:none; color:var(--muted); font-size:13px; box-shadow:none; }
#inboxCard .inbox-template-tabs button[aria-selected=true] { border-bottom-color:var(--accent); color:var(--text); }
#inboxCard .inbox-template-tabs button::after { content:''; width:5px; height:5px; border-radius:50%; background:var(--line); }
#inboxCard .inbox-template-tabs button.is-ready::after { background:var(--accent); }
#inboxCard .inbox-template-editor [role=status]:empty { display:none; }
#inboxCard .inbox-template-footer { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:12px; border-top:1px solid var(--line); margin-top:24px; padding-top:18px; }
#inboxCard .inbox-template-footer>div { display:flex; gap:8px; margin-left:auto; }
#inboxCard .inbox-template-footer button { margin:0; padding:10px 16px; font-size:13px; }
#inboxCard .inbox-template-footer .hint { margin:0; font-size:12px; }
@media(max-width:760px){
 #inboxCard .inbox-filters { grid-template-columns:1fr; }
 #inboxCard .inbox-template-bar { grid-template-columns:minmax(0,1fr) auto; }
 #inboxCard .inbox-template-bar>label:first-child { grid-column:1/-1; }
 #inboxCard .inbox-template-editor { padding:20px; max-height:calc(100dvh - 24px); }
 #inboxCard .inbox-template-editor textarea { height:180px; }
}
.message-remove { margin-top: 8px; }
.message-recalled-label { display:block; width:fit-content; padding:4px 9px; margin-bottom:8px; border:1px solid var(--muted); border-radius:6px; color:var(--text); font-size:12px; font-weight:700; }
.message-recall-dialog { width:calc(100% - 40px); max-width:440px; box-sizing:border-box; padding:24px; border:1px solid var(--line); border-radius:14px; color:var(--text); background:var(--panel); }
.message-recall-dialog::backdrop { background:#0009; }
.message-recall-dialog h3 { margin:0 0 12px; }
.message-recall-dialog p { line-height:1.5; }
.message-recall-dialog > div { display:flex; justify-content:flex-end; gap:10px; margin-top:20px; }
.inbox-message.message-deleted { border-color:var(--line); color:var(--muted); background:var(--panel); }
.inbox-message.message-deleted p,.inbox-message.message-deleted img { opacity:.5; filter:grayscale(1); }
.sent-bot-messages form { display:flex; flex-wrap:wrap; gap:10px; margin:16px 0; }
.sent-bot-messages input[type=search] { flex:1 1 240px; min-width:0; padding:10px 12px; border:1px solid var(--line); border-radius:8px; background:var(--panel-2); color:var(--text); font:inherit; }
.sent-bot-messages select { width:auto; }
.sent-message-list .inbox-message { margin:12px 0; }
.inbox-recipient-picker { width:calc(100% - 32px); max-width:640px; max-height:calc(100dvh - 40px); box-sizing:border-box; overflow:auto; padding:24px; border:1px solid var(--line); border-radius:16px; color:var(--text); background:var(--panel); }
.inbox-recipient-picker::backdrop { background:#0009; }
.inbox-recipient-search { display:flex; align-items:end; gap:12px; margin:20px 0; }
.inbox-recipient-search label { flex:1; min-width:0; }
.inbox-recipient-search input { display:block; box-sizing:border-box; width:100%; margin-top:8px; padding:12px; border:1px solid var(--line); border-radius:8px; color:var(--text); background:var(--panel-2); font:inherit; }
.inbox-recipient-row { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:12px; padding:16px 0; border-bottom:1px solid var(--line); }
.inbox-recipient-row > div { flex:1 1 200px; min-width:0; overflow-wrap:anywhere; }
.inbox-recipient-row small { display:block; color:var(--muted); margin-top:6px; }
/* Whether the bot may message this person: green when allowed, amber when not. */
.inbox-reach { display:inline-flex; flex-wrap:wrap; align-items:baseline; gap:4px 8px; margin:6px 0 0 8px; padding:4px 12px; border-radius:999px; border:1px solid; font-weight:600; line-height:1.4; }
.inbox-reach.allowed { color:var(--green, #2fb57a); background:rgba(72,213,151,.14); border-color:rgba(72,213,151,.5); }
.inbox-reach.not-allowed { color:var(--amber, #c77d00); background:rgba(245,176,65,.15); border-color:rgba(245,176,65,.55); border-radius:12px; }
.inbox-reach small, .inbox-recipient-row .inbox-reach small { display:inline; margin:0; color:inherit; font-weight:400; }
.inbox-recipient-row .inbox-reach { margin:8px 0 0; }
/* Player video, voice, files and locations; a staff reply video. */
.inbox-message video,.inbox-composer>video { display:block; width:320px; max-width:100%; max-height:320px; border-radius:8px; margin:10px 0; background:#000; }
.inbox-message audio { display:block; width:300px; max-width:100%; margin:10px 0 4px; }
.inbox-media a { display:inline-block; margin:8px 0 2px; color:var(--accent); font-weight:600; overflow-wrap:anywhere; }
.inbox-media-video_note video { width:220px; height:220px; object-fit:cover; border-radius:50%; }
