:root{color:#f4f5f7;font-synthesis:none;text-rendering:optimizelegibility;--bg:#080a0d;--surface:#0e1116;--surface-2:#141820;--surface-3:#1a1f28;--border:#202630;--border-soft:#181d25;--text:#f4f5f7;--muted:#8e98a8;--accent:#6d7cff;--accent-soft:#6d7cff24;--bubble:#171c24;--bubble-mine:#5d6df1;background:#080a0d;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html,body,#root{width:100%;min-width:320px;height:100%;min-height:100%;margin:0}body{background:radial-gradient(circle at 12% 0%, #6d7cff14, transparent 28rem), var(--bg);overflow:hidden}button,input{font:inherit}button{color:inherit}button:focus-visible,input:focus-visible{outline-offset:2px;outline:2px solid #6d7cffe6}.app-shell{background:var(--surface);grid-template-columns:minmax(310px,360px) minmax(0,1fr);width:100vw;height:100dvh;display:grid}.sidebar{border-right:1px solid var(--border);background:#0b0e13;flex-direction:column;min-width:0;height:100%;display:flex}.sidebar-header,.chat-header{flex:none;align-items:center;display:flex}.sidebar-header{justify-content:space-between;padding:26px 22px 16px}.eyebrow{color:var(--muted);letter-spacing:.12em;text-transform:uppercase;margin-bottom:3px;font-size:.72rem;font-weight:700;display:block}h1{letter-spacing:-.04em;margin:0;font-size:1.65rem;line-height:1.15}.icon-button,.composer-button,.send-button,.back-button{cursor:pointer;border:0;place-items:center;transition:background .16s,transform .16s,opacity .16s;display:inline-grid}.icon-button{color:#aab2c0;background:0 0;border-radius:12px;width:38px;height:38px;font-size:1.1rem}.icon-button:hover{background:var(--surface-2);color:var(--text)}.search-box{border:1px solid var(--border-soft);height:42px;color:var(--muted);background:#11151b;border-radius:13px;align-items:center;gap:9px;margin:0 16px 14px;padding:0 14px;display:flex}.search-box:focus-within{background:#131820;border-color:#313a48}.search-box span{font-size:1.25rem;transform:rotate(-15deg)}.search-box input,.composer input{width:100%;color:var(--text);background:0 0;border:0;outline:0}.search-box input::placeholder,.composer input::placeholder{color:#687281}.conversation-list{flex:1;min-height:0;padding:0 8px 10px;overflow-y:auto}.conversation-list::-webkit-scrollbar{width:6px}.messages-area::-webkit-scrollbar{width:6px}.conversation-list::-webkit-scrollbar-thumb{background:#262d37;border-radius:999px}.messages-area::-webkit-scrollbar-thumb{background:#262d37;border-radius:999px}.conversation-item{text-align:left;cursor:pointer;background:0 0;border:0;border-radius:14px;align-items:center;gap:12px;width:100%;min-width:0;padding:11px 10px;transition:background .15s;display:flex}.conversation-item:hover{background:#10141a}.conversation-item.active{background:var(--accent-soft)}.avatar{color:#dce1e8;letter-spacing:.02em;background:linear-gradient(145deg,#242b36,#151a22);border:1px solid #2b3340;border-radius:15px;flex:0 0 45px;place-items:center;width:45px;height:45px;font-size:.78rem;font-weight:800;display:grid}.conversation-item.active .avatar{background:linear-gradient(145deg,#313a69,#202741);border-color:#6d7cff66}.conversation-content{flex:1;min-width:0}.conversation-topline,.conversation-preview{align-items:center;gap:8px;display:flex}.conversation-topline{justify-content:space-between;margin-bottom:5px}.conversation-topline strong{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:.94rem;overflow:hidden}.conversation-topline time{color:#707b89;flex:none;font-size:.72rem}.conversation-preview{justify-content:space-between}.conversation-preview>span{min-width:0;color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:.82rem;line-height:1.25;overflow:hidden}.conversation-preview b{background:var(--accent);color:#fff;border-radius:999px;flex:none;place-items:center;min-width:20px;height:20px;font-size:.68rem;display:grid}.sidebar-footer{border:1px solid var(--border-soft);background:#0f1319;border-radius:15px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;margin:0 10px 10px;padding:11px 10px;display:grid}.sidebar-footer .avatar{border-radius:12px;flex-basis:38px;width:38px;height:38px}.sidebar-footer strong,.sidebar-footer span{display:block}.sidebar-footer strong{font-size:.86rem}.sidebar-footer span{color:var(--muted);margin-top:2px;font-size:.72rem}.chat-panel{background:#0c0f14;grid-template-rows:auto minmax(0,1fr) auto;min-width:0;height:100%;display:grid}.chat-header{border-bottom:1px solid var(--border-soft);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#0c0f14f0;gap:11px;min-height:72px;padding:11px 18px}.chat-header .avatar{border-radius:14px;flex-basis:42px;width:42px;height:42px}.chat-person{flex:1;min-width:0}.chat-person strong,.chat-person span{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.chat-person strong{font-size:.92rem}.chat-person span{color:var(--muted);margin-top:3px;font-size:.72rem}.chat-actions{align-items:center;gap:2px;display:flex}.back-button{color:#c5ccd6;background:0 0;border-radius:11px;width:36px;height:36px;font-size:1.9rem;line-height:1;display:none}.messages-area{background-color:#0c0f14;background-image:linear-gradient(#ffffff03 1px,#0000 1px),linear-gradient(90deg,#ffffff03 1px,#0000 1px),none;background-position:0 0,0 0,0 0;background-repeat:repeat,repeat,repeat;background-size:36px 36px;background-attachment:scroll,scroll,scroll;background-origin:padding-box,padding-box,padding-box;background-clip:border-box,border-box,border-box;min-height:0;padding:26px clamp(18px,5vw,64px) 20px;overflow-y:auto}.date-pill{color:#7f8998;background:#141820db;border:1px solid #202630;border-radius:999px;width:fit-content;margin:0 auto 26px;padding:5px 10px;font-size:.7rem;font-weight:700}.messages-column{flex-direction:column;gap:7px;width:min(820px,100%);margin:0 auto;display:flex}.message-row{justify-content:flex-start;display:flex}.message-row.mine{justify-content:flex-end}.message-bubble{background:var(--bubble);border:1px solid #222934;border-radius:15px 15px 15px 5px;width:fit-content;max-width:min(72%,590px);padding:9px 11px 7px;box-shadow:0 8px 30px #00000014}.message-row.mine .message-bubble{background:var(--bubble-mine);border-color:#ffffff0f;border-radius:15px 15px 5px}.message-author{color:#9ea9ff;margin-bottom:4px;font-size:.71rem;font-weight:800;display:block}.message-bubble p{color:#e9ecf1;overflow-wrap:anywhere;margin:0;font-size:.9rem;line-height:1.42}.message-row.mine .message-bubble p{color:#fff}.message-meta{color:#778292;justify-content:flex-end;align-items:center;gap:4px;min-width:52px;margin-top:4px;font-size:.63rem;display:flex}.message-row.mine .message-meta{color:#ffffffad}.composer{border-top:1px solid var(--border-soft);background:#0c0f14;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:9px;min-height:76px;padding:12px clamp(16px,4vw,44px);display:grid}.composer input{background:#12161d;border:1px solid #222934;border-radius:15px;height:46px;padding:0 15px;transition:border .15s,background .15s}.composer input:focus{background:#141920;border-color:#343d4a}.composer-button,.send-button{border-radius:14px;width:43px;height:43px}.composer-button{color:#929dac;background:#141920;font-size:1.25rem}.send-button{background:var(--accent);color:#fff;font-size:1rem;box-shadow:0 8px 24px #4958e142}.composer-button:hover,.send-button:hover{transform:translateY(-1px)}@media (width<=740px){.app-shell{display:block;position:relative;overflow:hidden}.sidebar,.chat-panel{border:0;width:100%;height:100%;transition:transform .22s cubic-bezier(.2,.7,.2,1);position:absolute;inset:0}.sidebar{z-index:1;transform:translate(0)}.chat-panel{z-index:2;transform:translate(100%)}.app-shell.chat-open .sidebar{transform:translate(-16%)}.app-shell.chat-open .chat-panel{transform:translate(0)}.sidebar-header{padding:22px 18px 15px}.search-box{margin-inline:12px}.conversation-list{padding-inline:6px}.conversation-item{padding:12px 9px}.sidebar-footer{margin-inline:8px}.back-button{display:grid}.chat-header{min-height:66px;padding:9px 10px}.chat-header .avatar{flex-basis:39px;width:39px;height:39px}.chat-actions .icon-button:first-child{display:none}.messages-area{padding:20px 11px 16px}.message-bubble{max-width:84%}.composer{min-height:68px;padding:9px 9px max(9px, env(safe-area-inset-bottom));gap:7px}.composer input{height:44px}.composer-button,.send-button{width:42px;height:42px}}@media (width<=390px){.composer-button{display:none}.composer{grid-template-columns:minmax(0,1fr) auto}}.loading-screen,.auth-page{background:radial-gradient(circle at 50% 0,#6d7cff1f,#0000 32rem),#080a0d;place-items:center;width:100vw;height:100dvh;display:grid}.loading-screen{color:var(--muted);font-size:.9rem}.auth-card{border:1px solid var(--border);background:#0e1116f5;border-radius:22px;width:min(420px,100vw - 32px);padding:30px;box-shadow:0 28px 80px #00000057}.auth-brand{background:var(--accent-soft);color:#cbd1ff;letter-spacing:.05em;border:1px solid #6d7cff61;border-radius:15px;place-items:center;width:48px;height:48px;margin-bottom:24px;font-size:.82rem;font-weight:900;display:grid}.auth-card h1{margin-top:3px}.auth-subtitle{color:var(--muted);margin:9px 0 24px;font-size:.9rem;line-height:1.5}.auth-form{gap:14px;display:grid}.auth-form label{gap:7px;display:grid}.auth-form label>span{color:#aab2c0;font-size:.78rem;font-weight:700}.auth-form input{border:1px solid var(--border);width:100%;height:46px;color:var(--text);background:#11151b;border-radius:13px;outline:0;padding:0 13px}.auth-form input:focus{background:#131820;border-color:#414b5d}.primary-button{background:var(--accent);color:#fff;min-height:46px;font:inherit;cursor:pointer;border:0;border-radius:13px;padding:0 18px;font-weight:800}.primary-button:hover:not(:disabled){filter:brightness(1.05)}.primary-button:disabled,.send-button:disabled,.icon-button:disabled{cursor:not-allowed;opacity:.5}.primary-button.compact{min-height:42px;padding-inline:16px}.text-button{color:#aab3ff;width:100%;font:inherit;cursor:pointer;background:0 0;border:0;margin-top:16px;padding:8px;font-size:.82rem}.form-message,.inline-error{border-radius:11px;font-size:.78rem;line-height:1.45}.form-message{padding:10px 11px}.form-message.error,.inline-error{color:#faa;background:#ff565614;border:1px solid #ff6f6f33}.form-message.success{color:#a9e9c4;background:#46d68714;border:1px solid #6fffb129}.inline-error{margin:0 16px 12px;padding:9px 10px}.empty-list{color:var(--muted);text-align:center;padding:22px 16px;font-size:.82rem;line-height:1.5}.conversation-empty{padding-top:36px}.sidebar-footer>div:nth-child(2){min-width:0}.sidebar-footer span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.chat-panel-empty{place-items:center;display:grid}.empty-chat{text-align:center;width:min(420px,100% - 40px)}.empty-chat-icon{border:1px solid var(--border);background:var(--surface-2);border-radius:20px;place-items:center;width:64px;height:64px;margin:0 auto 18px;font-size:1.65rem;display:grid}.empty-chat h2,.modal-card h2{letter-spacing:-.035em;margin:0}.empty-chat p{color:var(--muted);margin:8px auto 20px;font-size:.88rem;line-height:1.55}.conversation-start{border:1px solid var(--border);width:fit-content;max-width:90%;color:var(--muted);background:#141820e0;border-radius:999px;margin:10vh auto 20px;padding:9px 13px;font-size:.72rem}.composer-simple{grid-template-columns:minmax(0,1fr) auto}.modal-backdrop{z-index:50;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#030508b8;place-items:center;padding:18px;display:grid;position:fixed;inset:0}.modal-card{border:1px solid var(--border);background:#0e1116;border-radius:20px;grid-template-rows:auto auto minmax(0,1fr);width:min(440px,100%);max-height:min(620px,100dvh - 36px);display:grid;overflow:hidden;box-shadow:0 30px 90px #00000073}.modal-header{justify-content:space-between;align-items:center;gap:16px;padding:20px 20px 14px;display:flex}.modal-card h2{margin-top:3px;font-size:1.2rem}.modal-search{margin-inline:14px}.people-list{min-height:0;padding:0 8px 10px;overflow-y:auto}.person-item{width:100%;color:var(--text);text-align:left;cursor:pointer;background:0 0;border:0;border-radius:14px;align-items:center;gap:12px;padding:10px;display:flex}.person-item:hover{background:var(--surface-2)}.person-item strong{font-size:.9rem}@media (width<=740px){.auth-card{border-radius:18px;padding:24px 20px}.chat-panel-empty{display:none}.app-shell.chat-open .chat-panel-empty{display:grid}.modal-backdrop{align-items:end;padding:10px}.modal-card{border-radius:20px 20px 14px 14px;width:100%;max-height:78dvh}}.avatar.presence-online{position:relative}.avatar.presence-online:after{content:"";background:#55d88a;border:2px solid #0b0e13;border-radius:999px;width:10px;height:10px;position:absolute;bottom:-2px;right:-2px;box-shadow:0 0 0 2px #55d88a14}.chat-header .avatar.presence-online:after{border-color:#0c0f14}.typing-status{font-weight:700;color:#aab3ff!important}.read-receipt{text-align:right;letter-spacing:-.12em;min-width:22px;color:inherit}.read-receipt.delivered{color:#aeb6c2}.read-receipt.read{color:#d5d9ff}@media (width<=740px){.sidebar,.chat-panel{width:100%;height:100%;transition:none;position:absolute;inset:0;transform:none!important}.sidebar{z-index:1;visibility:visible;pointer-events:auto;display:flex}.chat-panel{z-index:2;visibility:hidden;pointer-events:none;display:none}.app-shell.chat-open .sidebar{visibility:hidden;pointer-events:none;display:none}.app-shell.chat-open .chat-panel{visibility:visible;pointer-events:auto;display:grid}.chat-header{z-index:10;min-height:calc(66px + env(safe-area-inset-top));padding-top:max(9px, env(safe-area-inset-top));position:relative}.back-button{z-index:12;color:#f4f5f7;touch-action:manipulation;-webkit-tap-highlight-color:transparent;background:#141920;border-radius:13px;flex:0 0 44px;place-items:center;width:44px;height:44px;font-size:2rem;line-height:1;display:grid;position:relative}.back-button:active{background:#1a2029;transform:scale(.96)}}.loading-screen{min-height:var(--app-height,100dvh);padding:max(24px, env(safe-area-inset-top)) 24px max(24px, env(safe-area-inset-bottom));color:#8f98aa;letter-spacing:.025em;text-align:center;background:radial-gradient(circle at 50% 44%,#6675ff29,#0000 28%),#080a0d;flex-direction:column;justify-content:center;align-items:center;gap:15px;font-size:.78rem;font-weight:600;display:flex}.loading-screen:before{content:"";filter:drop-shadow(0 16px 30px #00000052);background:url(/icons/icon-192-v3.png) 50%/contain no-repeat;border-radius:22px;width:84px;height:84px;animation:.42s cubic-bezier(.2,.75,.25,1) both splash-mark-in;display:block}.loading-screen:after{content:"";background:linear-gradient(90deg,#6675ff29,#6675ff,#6675ff29) 0 0/220% 100%;border-radius:999px;width:46px;height:3px;margin-top:1px;animation:1.05s ease-in-out infinite splash-progress}@keyframes splash-mark-in{0%{opacity:0;transform:translateY(6px)scale(.94)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes splash-progress{0%{opacity:.55;background-position:100% 0}50%{opacity:1}to{opacity:.55;background-position:-120% 0}}@media (prefers-reduced-motion:reduce){.loading-screen:before,.loading-screen:after{animation:none}}@media (display-mode:standalone){html,body,#root{min-height:100%}body{overscroll-behavior:none;min-height:100dvh}}@media (display-mode:standalone) and (width<=740px){.sidebar-header{padding-top:calc(22px + env(safe-area-inset-top));padding-left:max(18px, env(safe-area-inset-left));padding-right:max(18px, env(safe-area-inset-right))}.search-box,.conversation-list,.sidebar-footer{margin-left:max(8px, env(safe-area-inset-left));margin-right:max(8px, env(safe-area-inset-right))}.chat-header{padding-left:max(10px, env(safe-area-inset-left));padding-right:max(10px, env(safe-area-inset-right))}.messages-area{padding-left:max(11px, env(safe-area-inset-left));padding-right:max(11px, env(safe-area-inset-right))}.composer{padding-left:max(9px, env(safe-area-inset-left));padding-right:max(9px, env(safe-area-inset-right));padding-bottom:max(9px, env(safe-area-inset-bottom))}}.sidebar-footer{grid-template-columns:auto minmax(0,1fr) auto auto}.notification-toggle{font-size:1rem;position:relative}.notification-toggle.active:after{content:"";background:#55d88a;border:2px solid #0f1319;border-radius:999px;width:7px;height:7px;position:absolute;top:7px;right:7px}@media (width<=740px){.notification-toggle{width:42px;height:42px}}.audio-record-button,.audio-cancel-button{cursor:pointer;width:43px;height:43px;font:inherit;border:0;border-radius:14px;place-items:center;transition:background .15s,transform .15s,opacity .15s;display:inline-grid}.audio-record-button{color:#c8ced8;background:#141920;font-size:1.05rem}.audio-record-button:hover:not(:disabled),.audio-cancel-button:hover:not(:disabled){transform:translateY(-1px)}.audio-record-button:disabled,.audio-cancel-button:disabled{cursor:not-allowed;opacity:.5}.audio-cancel-button{color:#ffb2b8;background:#21171a;font-size:1.25rem}.audio-recording-status{color:#e7e9ee;background:#151216;border:1px solid #2c2428;border-radius:15px;align-items:center;gap:10px;min-width:0;height:46px;padding:0 14px;font-size:.83rem;font-weight:700;display:flex}.audio-recording-dot{background:#ff6673;border-radius:999px;flex:0 0 9px;width:9px;height:9px;animation:1.1s ease-in-out infinite audio-pulse;box-shadow:0 0 0 5px #ff667314}@keyframes audio-pulse{50%{opacity:.45;transform:scale(.88)}}.audio-message{grid-template-columns:38px minmax(120px,1fr) auto;align-items:center;gap:9px;min-width:min(300px,70vw);display:grid}.audio-native{display:none}.audio-play-button,.audio-speed-button{cursor:pointer;height:36px;font:inherit;border:0;font-weight:800;transition:background .14s,transform .14s,opacity .14s}.audio-play-button{width:36px;color:inherit;background:#ffffff21;border-radius:999px;place-items:center;font-size:.76rem;display:grid}.audio-speed-button{min-width:43px;color:inherit;background:#ffffff14;border-radius:11px;padding:0 8px;font-size:.69rem}.audio-play-button:hover:not(:disabled),.audio-speed-button:hover:not(:disabled){background:#ffffff2e}.audio-play-button:active:not(:disabled),.audio-speed-button:active:not(:disabled){transform:scale(.96)}.audio-play-button:disabled,.audio-speed-button:disabled{cursor:default;opacity:.5}.audio-track{gap:3px;min-width:0;display:grid}.audio-track input[type=range]{cursor:pointer;accent-color:currentColor;width:100%;height:18px;margin:0}.audio-track input[type=range]:disabled{cursor:default;opacity:.5}.audio-time{color:inherit;font-variant-numeric:tabular-nums;opacity:.72;justify-content:space-between;gap:8px;font-size:.62rem;display:flex}.audio-message-status{color:inherit;font-size:.76rem}.audio-message-error{color:#ffb2b8}.audio-message-error-inline{grid-column:1/-1}.message-row.mine .audio-play-button,.message-row.mine .audio-speed-button{color:#fff}@media (width<=740px){.composer-with-audio{grid-template-columns:minmax(0,1fr) 42px 42px}.audio-record-button,.audio-cancel-button{width:42px;height:42px}.audio-recording-status{height:44px}.audio-message{grid-template-columns:36px minmax(105px,1fr) auto;gap:7px;min-width:min(270px,76vw)}.audio-play-button{width:34px;height:34px}.audio-speed-button{min-width:39px;height:34px;padding-inline:6px}}.composer-with-audio{grid-template-columns:minmax(0,1fr) auto auto auto}.attachment-button{color:#c8ced8;cursor:pointer;width:43px;height:43px;font:inherit;touch-action:manipulation;-webkit-tap-highlight-color:transparent;background:#141920;border:0;border-radius:14px;place-items:center;font-size:1.08rem;transition:background .15s,transform .15s,opacity .15s;display:inline-grid}.attachment-button:hover:not(:disabled){transform:translateY(-1px)}.attachment-button:disabled{cursor:not-allowed;opacity:.5}.attachment-menu-wrap{place-items:center;display:grid;position:relative}.attachment-menu{z-index:20;border:1px solid var(--border);background:#0e1116fa;border-radius:14px;gap:4px;min-width:150px;padding:6px;display:grid;position:absolute;bottom:calc(100% + 10px);right:0;box-shadow:0 16px 44px #00000061}.attachment-menu button{color:#e7e9ee;cursor:pointer;min-height:40px;font:inherit;text-align:left;touch-action:manipulation;background:0 0;border:0;border-radius:10px;align-items:center;gap:9px;padding:0 11px;font-size:.82rem;font-weight:700;display:flex}.attachment-menu button:hover{background:#171c24}.attachment-draft{background:#11151b;border:1px solid #252c36;border-radius:15px;grid-template-columns:36px minmax(0,1fr) 34px;align-items:center;gap:9px;min-width:0;min-height:46px;padding:5px 7px;display:grid}.attachment-draft img,.attachment-draft-icon{border-radius:9px;width:36px;height:36px}.attachment-draft img{object-fit:cover}.attachment-draft-icon{background:#171d25;place-items:center;display:grid}.attachment-draft-info{gap:2px;min-width:0;display:grid}.attachment-draft-info strong{color:#eef0f4;text-overflow:ellipsis;white-space:nowrap;font-size:.78rem;overflow:hidden}.attachment-draft-info span{color:var(--muted);font-size:.7rem}.attachment-draft>button{color:#ffb2b8;cursor:pointer;width:32px;height:32px;font:inherit;touch-action:manipulation;background:#21171a;border:0;border-radius:9px;font-size:1.1rem}.attachment-image-message,.attachment-image-loading,.attachment-image-error{width:min(320px,68vw)}.attachment-image-message{display:grid}.attachment-image-message a{background:#00000029;border-radius:12px;display:block;overflow:hidden}.attachment-image-message img{object-fit:cover;width:100%;max-height:360px;display:block}.attachment-image-loading{color:#ffffff9e;background:#00000029;border-radius:12px;place-items:center;min-height:180px;font-size:1.45rem;animation:.9s ease-in-out infinite alternate attachment-loading;display:grid}@keyframes attachment-loading{to{opacity:.58}}.attachment-image-error{background:#00000029;border-radius:12px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;min-height:92px;padding:12px;font-size:.75rem;display:grid}.attachment-image-error>span:first-child{font-size:1.25rem}.attachment-image-error button{min-height:34px;color:inherit;cursor:pointer;font:inherit;background:#0000002e;border:0;border-radius:9px;padding:0 10px;font-size:.72rem;font-weight:800}.attachment-file-message{background:#ffffff0e;border-radius:12px;grid-template-columns:38px minmax(0,1fr) 34px;align-items:center;gap:9px;min-width:min(300px,68vw);padding:8px;display:grid;position:relative}.attachment-file-icon{background:#00000029;border-radius:10px;place-items:center;width:38px;height:38px;display:grid}.attachment-file-info{gap:2px;min-width:0;display:grid}.attachment-file-info strong{text-overflow:ellipsis;white-space:nowrap;font-size:.78rem;overflow:hidden}.attachment-file-info span{opacity:.72;font-size:.69rem}.attachment-file-message>button{width:32px;height:32px;color:inherit;cursor:pointer;font:inherit;touch-action:manipulation;background:#00000029;border:0;border-radius:9px;font-size:1rem;font-weight:800}.attachment-file-message>button:disabled{opacity:.55}.attachment-error{color:#ffb2b8;grid-column:1/-1;font-size:.7rem}@media (width<=740px){.composer-with-audio{grid-template-columns:minmax(0,1fr) 42px 42px 42px}.attachment-button{width:42px;height:42px}.attachment-menu{right:-42px}.attachment-image-message,.attachment-image-loading,.attachment-image-error{width:min(280px,76vw)}.attachment-file-message{min-width:min(260px,76vw)}}.call-header-button{border:1px solid var(--border);color:#dfe3eb;cursor:pointer;width:40px;height:40px;font:inherit;touch-action:manipulation;-webkit-tap-highlight-color:transparent;background:#131820;border-radius:13px;place-items:center;margin-left:auto;font-size:1rem;transition:transform .15s,background .15s,opacity .15s;display:inline-grid}.call-header-button:hover:not(:disabled){background:#181e27;transform:translateY(-1px)}.call-header-button:active:not(:disabled){transform:scale(.96)}.call-header-button:disabled{cursor:not-allowed;opacity:.45}.call-backdrop{z-index:10000;padding:max(18px, env(safe-area-inset-top)) 18px max(18px, env(safe-area-inset-bottom));-webkit-backdrop-filter:blur(18px);background:#040609db;place-items:center;display:grid;position:fixed;inset:0}.call-card{text-align:center;background:radial-gradient(circle at 50% 10%,#7580ff1f,#0000 38%),#0e1218;border:1px solid #222935;border-radius:28px;flex-direction:column;justify-content:center;align-items:center;width:min(390px,100%);min-height:430px;padding:38px 24px 30px;display:flex;box-shadow:0 32px 90px #0000007a}.call-card audio{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute}.call-avatar{color:#eef0ff;letter-spacing:-.03em;background:linear-gradient(145deg,#1b2230,#121720);border:1px solid #303848;border-radius:30px;place-items:center;width:94px;height:94px;font-size:1.7rem;font-weight:850;display:grid;box-shadow:0 20px 55px #00000047}.call-card h2{color:#f2f3f6;letter-spacing:-.02em;margin:22px 0 0;font-size:1.32rem}.call-status{color:#aab0bc;min-height:22px;margin:7px 0 0;font-size:.86rem;font-weight:650}.call-network{color:#7f8793;border:1px solid #272e39;border-radius:999px;margin-top:8px;padding:5px 9px;font-size:.62rem;font-weight:700}.call-network.relay{color:#91d8af;border-color:#65d6982e}.call-actions{justify-content:center;align-items:flex-start;gap:32px;min-height:84px;margin-top:54px;display:flex}.call-action{color:#ccd1da;cursor:pointer;width:72px;font:inherit;touch-action:manipulation;-webkit-tap-highlight-color:transparent;background:0 0;border:0;justify-items:center;gap:8px;padding:0;display:grid}.call-action>span{background:#1b212a;border:1px solid #2d3541;border-radius:999px;place-items:center;width:58px;height:58px;font-size:1.08rem;font-weight:900;transition:transform .15s,filter .15s;display:grid}.call-action:hover:not(:disabled)>span{filter:brightness(1.08);transform:translateY(-2px)}.call-action:active:not(:disabled)>span{transform:scale(.94)}.call-action small{font-size:.69rem;font-weight:750}.call-action.danger>span{color:#ffc0c4;background:#4b2026;border-color:#ff677138}.call-action.accept>span{color:#baf5d2;background:#17442c;border-color:#56db8e38}.call-action.neutral.active>span{color:#11151a;background:#e4e7ed;border-color:#444d5d}.call-action:disabled{cursor:wait;opacity:.5}@media (width<=740px){.call-header-button{border-radius:12px;width:38px;height:38px}.call-backdrop{-webkit-backdrop-filter:none;background:#040609f5;padding-inline:12px}.call-card{width:100%;min-height:min(520px, calc(var(--app-height,100dvh) - 28px));border-radius:24px}}.app-error{width:100vw;height:var(--app-height,100dvh);background:#080a0d;place-items:center;padding:20px;display:grid}.app-error-card{border:1px solid var(--border);text-align:center;background:#0e1116;border-radius:20px;width:min(420px,100%);padding:28px}.app-error-icon{border:1px solid var(--border);background:var(--surface-2);color:#cbd1ff;border-radius:16px;place-items:center;width:52px;height:52px;margin:0 auto 16px;font-size:1.5rem;display:grid}.app-error h1{font-size:1.25rem}.app-error p{color:var(--muted);margin:10px 0 20px;font-size:.88rem;line-height:1.5}.global-error{z-index:100;top:max(10px, env(safe-area-inset-top));color:#ffb3b3;text-align:center;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#2b1418f5;border:1px solid #ff6f6f3d;border-radius:12px;width:min(520px,100vw - 24px);padding:10px 13px;font-size:.78rem;line-height:1.4;position:fixed;left:50%;transform:translate(-50%);box-shadow:0 12px 36px #00000052}html[data-conexao=offline] body:after{content:"Sem conexão";z-index:9999;top:max(8px, env(safe-area-inset-top));color:#ffd0a3;pointer-events:none;background:#221812f5;border:1px solid #ffb46440;border-radius:999px;padding:7px 11px;font-size:.72rem;font-weight:800;position:fixed;left:50%;transform:translate(-50%);box-shadow:0 8px 28px #00000040}.loading-screen{gap:10px}.loading-screen:after{content:"";opacity:.45;background:currentColor;border-radius:999px;width:20px;height:4px;animation:.85s ease-in-out infinite alternate loading-breathe}@keyframes loading-breathe{to{opacity:.85;width:36px}}.conversation-list,.messages-area,.people-list{contain:layout paint}.conversation-item,.person-item,.icon-button,.back-button,.send-button,.audio-record-button,.audio-cancel-button{-webkit-tap-highlight-color:transparent}.conversation-item:active,.person-item:active,.icon-button:active:not(:disabled),.back-button:active,.send-button:active:not(:disabled),.audio-record-button:active:not(:disabled),.audio-cancel-button:active:not(:disabled){transform:scale(.98)}.conversation-item.active{box-shadow:inset 3px 0 #8b96ffb3}.message-row:nth-last-child(2){animation:.14s ease-out both message-enter}@keyframes message-enter{0%{opacity:0;transform:translateY(3px)}}.message-bubble{transition:border-color .15s,box-shadow .15s}.message-row.mine .message-bubble{box-shadow:0 8px 26px #323eaa1f}.read-receipt{transition:color .16s,opacity .16s}.composer{transition:border-color .16s,background .16s}.composer:focus-within{background:#0d1015;border-top-color:#272e3a}.composer input,.composer textarea{transition:border-color .15s,background .15s,box-shadow .15s}.composer input:focus,.composer textarea:focus{box-shadow:0 0 0 3px #6d7cff0f}.composer textarea{resize:none;field-sizing:content;width:100%;min-height:44px;max-height:116px;color:var(--text);font:inherit;scrollbar-width:thin;background:#12161d;border:1px solid #222934;border-radius:15px;outline:0;padding:11px 15px;line-height:1.4;overflow-y:auto}.composer textarea:focus{background:#141920;border-color:#343d4a}.composer textarea::placeholder{color:#687281}.send-button{transition:transform .14s,filter .14s,opacity .14s,box-shadow .14s}.send-button:not(:disabled):hover{filter:brightness(1.06);box-shadow:0 10px 28px #4958e152}.send-button:disabled{box-shadow:none}.send-button.is-sending{animation:.7s ease-in-out infinite alternate sending-pulse}@keyframes sending-pulse{to{opacity:.62}}.typing-status{animation:.9s ease-in-out infinite alternate typing-fade}@keyframes typing-fade{to{opacity:.6}}@media (width<=740px){.app-shell,.loading-screen,.auth-page{height:var(--app-height,100dvh)}.chat-header{-webkit-backdrop-filter:none;backdrop-filter:none;background:#0c0f14}.conversation-list,.messages-area,.people-list{overscroll-behavior:contain;-webkit-overflow-scrolling:touch}.conversation-item,.icon-button,.back-button,.send-button,.audio-record-button,.audio-cancel-button{touch-action:manipulation}.sidebar-footer{padding-bottom:max(11px, env(safe-area-inset-bottom))}.message-bubble{max-width:88%}.composer textarea{min-height:44px;max-height:104px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media (width>=741px){.app-shell{grid-template-columns:clamp(290px,22vw,340px) minmax(0,1fr)}.chat-header{min-height:70px;padding-inline:clamp(20px,3vw,40px)}.messages-area{padding-inline:clamp(24px,4vw,72px)}.messages-column{width:100%;max-width:960px}.message-bubble{max-width:min(76%,680px)}.composer{border-top:0;width:min(1000px,100% - 48px);min-height:72px;margin-inline:auto;padding-inline:0}}@media (width>=1500px) and (height>=850px){#root{place-items:center;display:grid}.app-shell{border:1px solid var(--border);border-radius:18px;width:min(1480px,100vw - 40px);height:calc(100dvh - 40px);overflow:hidden;box-shadow:0 24px 80px #00000047}}
