.family-comms{display:grid;grid-template-columns:248px minmax(0,1fr);height:680px;max-height:84dvh;min-height:420px;background:#fff;border:1px solid var(--line);border-radius:16px;overflow:hidden;margin-top:20px}
.family-comms-list{display:flex;flex-direction:column;min-height:0;background:#fafbf7;border-right:1px solid var(--line)}
.family-comms-list>header{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:18px 16px 12px}.family-comms-list h2{font-size:14px;margin:0}.family-comms-list h2>span{color:var(--secondary);font-weight:400;margin-left:5px}.family-comms-list .icon-btn{min-width:32px;width:32px;height:32px}
.family-comms-thread-list{overflow:auto;min-height:0;flex:1;padding:6px 10px}.family-comms-list>footer{padding:12px 16px;border-top:1px solid var(--line)}.family-comms-list>footer .text-btn{font-size:12px}
.family-thread{display:flex;flex-direction:column;gap:7px;width:100%;text-align:left;padding:14px 12px;margin:0 0 5px;border:1px solid transparent;border-radius:10px;background:transparent;color:var(--ink);cursor:pointer;overflow-wrap:anywhere}.family-thread:hover{background:#f0f4ee}.family-thread.selected{background:#e9f2e9;border-color:#cedfd0}.family-thread:focus-visible,.family-history-source:focus-visible{outline:3px solid #91b8a0;outline-offset:-3px}.family-thread>b{font-size:14px;line-height:1.45}.family-thread small{font-size:11px;line-height:1.5;color:var(--secondary)}.family-thread-channel{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%}
.family-thread-all{flex-direction:row;align-items:center;width:auto;margin:2px 10px 8px;padding:13px 12px;gap:12px;flex-shrink:0}.family-thread-all>svg{flex:none;color:var(--green)}.family-thread-all span{display:flex;flex-direction:column;gap:4px}.family-thread-all b{font-size:13px}
.family-comms-content{display:flex;flex-direction:column;min-width:0;min-height:0}.family-comms-mobile{display:none}.family-recipient{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:14px 20px;border-bottom:1px solid var(--line);background:#f8faf5;flex-shrink:0}.family-recipient>div{min-width:0;display:grid;gap:4px}.family-recipient span{font-size:10px;color:var(--secondary)}.family-recipient b{font-size:15px;overflow-wrap:anywhere}.family-recipient small{font-size:11px;color:var(--secondary);line-height:1.5;overflow-wrap:anywhere}.family-recipient>.text-btn{font-size:12px;flex:none}
.family-history{display:flex;flex-direction:column;min-height:0;flex:1}.family-comms-heading{padding:20px 24px;display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid var(--line)}.family-comms-heading h2{font-size:19px;margin:0 0 6px}.family-comms-heading p{font-size:12px;line-height:1.6;color:var(--secondary);margin:0}.family-history-log{flex:1;min-height:0;overflow:auto;overscroll-behavior:contain;padding:12px 24px 24px;background:#fbfcf8}.family-history-day{text-align:center;font-size:11px;color:var(--secondary);margin:15px 0 22px}.family-history-message{width:fit-content;max-width:84%;margin:0 0 22px}.family-history-message.out{margin-left:auto}.family-history-message>header{display:flex;gap:15px;align-items:baseline;justify-content:space-between;margin:0 3px 6px;font-size:11px;color:var(--secondary)}.family-history-message>header span{overflow-wrap:anywhere;line-height:1.5}.family-history-message time{white-space:nowrap;flex:none}.family-history-bubble{border:1px solid #e1e6da;border-radius:14px 14px 14px 4px;background:#fff;padding:12px 16px;overflow-wrap:anywhere}.family-history-message.out .family-history-bubble{background:#edf4e9;border-color:#dce8d5;border-radius:14px 14px 4px 14px}.family-history-bubble p{font-size:14px;line-height:1.65;white-space:pre-wrap;margin:0}.family-history-bubble>.meta{display:block;font-size:10px;line-height:1.5;margin-top:8px}.family-history-source{display:flex;align-items:center;gap:7px;max-width:100%;text-align:left;background:none;border:0;border-radius:5px;padding:7px 2px;font-size:10px;color:var(--secondary);cursor:pointer}.family-history-source>span:not(.channel-badge){overflow-wrap:anywhere}.family-history-source .channel-badge{font-size:9px;padding:3px 5px;flex:none}.family-history-source svg{flex:none}.family-history-file{display:flex;align-items:center;gap:8px;margin:7px 0;font-size:12px;line-height:1.6}.family-history-file svg{flex:none}.family-history-note{display:flex;gap:10px;align-items:center;padding:14px 24px;font-size:11px;line-height:1.6;color:var(--secondary);border-top:1px solid var(--line);flex-shrink:0}.family-history-note svg{flex:none}.family-history-older{display:flex;margin:4px auto 18px;font-size:12px}.family-comms-empty{padding:30px;line-height:1.65;color:var(--secondary);font-size:13px}.family-comms-empty h2,.family-comms-empty h3{color:var(--ink);font-size:17px;margin:0 0 12px}
.family-telegram{display:flex;flex-direction:column;min-height:0;flex:1}.family-telegram .chat-grid{display:flex;flex:1;min-height:0;gap:0}.family-telegram .chat-aside{display:none}.family-telegram .panel.chat{height:100%;min-height:0;max-height:none;flex:1;min-width:0;display:flex;flex-direction:column;border:0;border-radius:0;margin:0;overflow:hidden}.family-telegram .chat-title{padding:10px 18px;flex:none;gap:8px;flex-wrap:wrap;min-height:44px}.family-telegram .chat-heading-copy{display:none}.family-telegram .chat-heading-actions{margin-right:auto}.family-telegram .messages{flex:1;min-height:0;max-height:none;padding:20px;overflow:auto}.family-telegram .composer{flex:none;position:static;margin:0;padding:12px;gap:8px;background:#fff}.family-telegram .composer textarea{font-size:16px;max-height:104px}.family-telegram .chat-media-panel{overflow:auto;height:100%;margin:0;border:0;border-radius:0}.family-telegram #reply-pilot-slot{flex-shrink:0;max-height:30%;overflow:auto}.family-comms [data-channel-context],.family-comms [data-channel-link],.family-comms .channel-back,.family-comms .channel-context [data-channel-client]{display:none!important}.family-comms .channel-chat-header{padding:9px 18px}.family-comms .channel-chat-header>div{display:none}.family-comms .channel-context:has([data-channel-client]:only-child){display:none}.family-comms .channel-chat-header:empty{display:none}
.dialog-family-heading{display:flex;justify-content:space-between;align-items:center;width:100%;gap:8px;text-align:left;border:0;border-bottom:1px solid var(--line);padding:13px 16px;background:#f0f4eb;color:var(--green);font:600 12px inherit;cursor:pointer}.dialog-family-heading span{overflow-wrap:anywhere}.dialog-family-heading small{white-space:nowrap;font-size:10px;font-weight:400}
@media(max-width:1000px){.family-comms{grid-template-columns:210px minmax(0,1fr)}.family-history-log{padding:10px 18px 20px}.family-comms-heading{padding:18px}.family-history-message{max-width:94%}}
@media(max-width:640px){.family-comms{display:flex;flex-direction:column;flex:1;height:auto;max-height:none;min-height:0;margin:0;border:0;border-radius:0}.family-comms-list{display:none}.family-comms-mobile{display:flex;align-items:center;gap:6px;padding:8px 12px;border-bottom:1px solid var(--line);background:#f8faf5;flex:none}.family-comms-mobile label{flex:1;min-width:0}.family-comms-mobile select{width:100%;min-width:0;border:1px solid #dbe3d6;border-radius:8px;background:#fff;padding:10px 9px;font:14px inherit;min-height:42px}.family-comms-mobile>.icon-btn{min-width:38px;width:38px}.family-comms-content{flex:1}.family-comms-heading{padding:14px 16px}.family-comms-heading h2{font-size:16px}.family-comms-heading p{font-size:11px}.family-history-log{padding:6px 14px 18px}.family-history-message{max-width:94%;margin-bottom:18px}.family-history-bubble{padding:11px 13px}.family-history-bubble p{font-size:14px}.family-history-note{padding:10px 14px max(10px,env(safe-area-inset-bottom));font-size:10px}.family-recipient{padding:9px 14px;gap:8px}.family-recipient span{display:none}.family-recipient b{font-size:13px}.family-recipient small{font-size:10px}.family-recipient .text-btn{font-size:11px}.family-telegram .chat-title{display:flex!important;padding:5px 12px;min-height:35px}.family-telegram .chat-title .chat-heading-actions,.family-telegram .chat-title .chat-media-link{display:flex}.family-telegram .chat-title .text-btn{font-size:11px}.family-telegram .messages{padding:14px}.family-telegram .composer{gap:4px;padding:8px 10px max(8px,env(safe-area-inset-bottom))}.family-telegram .composer .icon-btn{min-width:32px;width:32px}.family-telegram .composer textarea{min-width:0;padding-left:4px}.family-telegram .composer .primary{min-width:40px;width:40px;padding:8px}.family-comms .channel-chat-header{padding:5px 10px}.mobile-chat.keyboard-open .family-recipient{display:none}.mobile-chat.keyboard-open .family-comms-mobile{padding:4px 10px}.mobile-chat.keyboard-open .family-comms-mobile select{min-height:34px;padding:6px;font-size:12px}}
