:root{--background:#eef2f7;--surface:#fff;--surface-muted:#f7f9fc;--text:#172033;--text-muted:#697386;--border:#dce3ee;--primary:#3468f6;--primary-contrast:#fff;--danger:#d9363e;--shadow:0 20px 60px #14203a1f;color:var(--text);background:var(--background);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{margin:0}textarea{font:inherit}.call-button{color:var(--primary-contrast);background:#22c55e}.call-button:not(:disabled):hover{background:#16a34a}h1,h2,p{margin:0}#root{height:100svh;min-height:0}.auth-page{place-items:center;min-height:100svh;padding:24px;display:grid}.auth-card{border:1px solid var(--border);background:var(--surface);width:min(100%,420px);box-shadow:var(--shadow);border-radius:28px;gap:24px;padding:32px;display:grid}.auth-card h1{margin-top:6px}.eyebrow{color:var(--primary);letter-spacing:.12em;text-transform:uppercase;font-size:12px;font-weight:700}.muted,.empty{color:var(--text-muted)}.messenger-shell{grid-template-columns:360px minmax(0,1fr);gap:18px;height:100svh;min-height:0;padding:18px;display:grid}.sidebar,.conversation-panel{border:1px solid var(--border);background:var(--surface);height:calc(100svh - 36px);min-height:0;box-shadow:var(--shadow);border-radius:28px}.sidebar{flex-direction:column;min-width:0;display:flex;overflow:hidden}.chat-header,.section-title{justify-content:space-between;align-items:center;gap:16px;display:flex}.panel-section{gap:14px;padding:18px 22px;display:grid}.search-panel-header{grid-template-columns:minmax(0,1fr) 24px;align-items:center;column-gap:16px;display:grid}.search-panel-header .MuiIconButton-root{justify-self:end}.settings-menu-user{justify-items:center;gap:8px;min-width:220px;padding:12px 16px;display:grid}.settings-menu-build{letter-spacing:.02em}.saved-users{min-height:0;overflow:auto}.section-title h2{font-size:17px}.section-title span{color:var(--text-muted);font-size:14px}.user-list{gap:8px;display:grid}.user-row{background:var(--surface-muted);min-width:0;color:var(--text);text-align:left;border:1px solid #0000;border-radius:18px;justify-content:space-between;align-items:center;gap:12px;padding:10px;display:flex}.user-row.active{border-color:var(--primary);background:#eef3ff}.user-main{width:100%;min-width:0;color:var(--text);background:0 0;align-items:center;gap:12px;padding:0;display:flex}.user-avatar{flex-shrink:0}.button-row{grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:4px 8px;width:100%;min-width:0;display:grid}.user-title,.user-preview{text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}.user-title{grid-area:1/1;font-size:14px}.user-date{color:var(--text-muted);white-space:nowrap;grid-area:1/2;font-size:12px}.user-preview{grid-area:2/1/auto/-1}.user-row small{color:var(--text-muted)}.conversation-panel{min-width:0;display:grid;position:relative;overflow:hidden}.chat,.chat-empty{height:100%;min-height:0;display:grid}.chat{grid-template-rows:auto minmax(0,1fr) auto}.chat-empty{text-align:center;align-content:center;justify-items:center;gap:8px;padding:24px}.chat-header{border-bottom:1px solid var(--border);padding:14px 18px}.chat-actions{flex-wrap:nowrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.chat-search{flex:0 260px;width:min(260px,100%);position:relative}.chat-search .MuiTextField-root{width:100%}.chat-search-results{z-index:4;width:min(360px,80vw);max-height:min(360px,56vh);padding:8px;display:grid;position:absolute;top:calc(100% + 8px);right:0;overflow:auto}.chat-search-result{border-radius:10px;justify-items:start;gap:2px;display:grid}.chat-search-result-text{text-overflow:ellipsis;white-space:nowrap;width:100%;overflow:hidden}.chat-header h1{font-size:20px}.chat-header .muted{font-size:13px}.messages{flex-direction:column;gap:10px;min-height:0;padding:22px;display:flex;overflow:auto}.message{background:var(--surface-muted);border-radius:20px 20px 20px 6px;align-self:flex-start;max-width:min(72%,620px);padding:12px 14px}.message.own{background:var(--primary);color:var(--primary-contrast);border-radius:20px 20px 6px;align-self:flex-end}.message.target{outline-offset:3px;outline:3px solid #3468f652}.message time{color:currentColor;opacity:.65;margin-top:6px;font-size:12px;display:block}.message-meta{justify-content:flex-end;align-items:center;gap:4px;margin-top:6px;display:flex}.message-meta time{margin-top:0}.message-status{opacity:.75;align-items:center;font-size:14px;line-height:1;display:inline-flex}.message-status.read{opacity:1}.message.own .message-status.read{color:#dbeafe}.user-unread-badge .MuiBadge-badge{position:static;transform:none}.message-form{border-top:1px solid var(--border);flex-direction:column;gap:10px;padding:12px 18px;display:flex}.message-form-input-row{grid-template-columns:1fr auto;align-items:center;gap:10px;display:grid}.message-quote,.message-quote-preview-content{border-left:3px solid var(--primary);text-align:left;background:#3468f614;border-radius:8px;gap:2px;min-width:0;padding:8px 10px;display:grid}.message-quote.own,.message.own .message-quote{background:#ffffff24;border-left-color:#ffffffb8}.message-quote.clickable{cursor:pointer;border:none;width:100%;margin-bottom:8px}.message-quote.clickable:hover{background:#3468f624}.message.own .message-quote.clickable:hover{background:#ffffff38}.message-quote-author{color:var(--primary);font-weight:600}.message.own .message-quote-author{color:#ffffffeb}.message-quote-text{-webkit-line-clamp:3;white-space:pre-line;color:var(--text-muted);-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.message.own .message-quote-text{color:#ffffffd1}.message-quote-preview{grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:8px;display:grid}.forward-dialog-preview{width:100%}.forward-target-list .MuiListItemButton-root{border-radius:12px;align-items:center;gap:12px;margin-bottom:4px;display:flex}.message-textarea{border:1px solid var(--border);background:var(--surface);width:100%;color:var(--text);resize:none;border-radius:14px;outline:none;max-height:160px;padding:10px 12px;line-height:1.4;overflow:hidden}.message-textarea:focus{border-color:var(--primary)}.call-panel{border:1px solid var(--border);width:min(420px,100% - 44px);box-shadow:var(--shadow);background:#fffffff0;border-radius:24px;gap:12px;padding:14px;display:grid;position:absolute;bottom:88px;right:22px}.call-title{color:var(--text-muted);justify-content:space-between;gap:12px;font-size:14px;display:flex}.call-title strong{color:var(--text)}.video-grid{aspect-ratio:16/9;background:#101827;border-radius:20px;position:relative;overflow:hidden}.remote-video,.local-video{object-fit:cover;width:100%;height:100%}.call-remote-placeholder{background:#101827;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.local-video{border:2px solid var(--surface);border-radius:14px;width:30%;height:34%;position:absolute;bottom:12px;right:12px}.call-actions{flex-wrap:wrap;justify-content:center}@media (width<=760px){.messenger-shell{grid-template-columns:1fr;gap:0;height:100svh;padding:0}.sidebar,.conversation-panel{box-shadow:none;border:0;border-radius:0}.sidebar{border-bottom:1px solid var(--border);height:46svh;max-height:46svh}.conversation-panel{height:54svh}.chat-header,.panel-section{padding:16px}.chat-header{align-items:flex-start}.chat-actions{width:100%}.chat-search{flex:auto;width:auto;min-width:0}.message-form-input-row{grid-template-columns:1fr}.message{max-width:86%}.message-form{padding:12px 16px 16px}.call-panel{width:calc(100% - 20px);bottom:10px;right:10px}.call-actions{grid-template-columns:1fr}}
