:root{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#edf4ff;background:#070d19;font-synthesis:none;text-rendering:optimizeLegibility;--bg: #070d19;--panel: rgba(13, 23, 40, .96);--panel-solid: #0d1728;--panel-2: #111e32;--panel-3: #19283f;--line: rgba(152, 180, 217, .13);--line-strong: rgba(152, 180, 217, .23);--text: #edf4ff;--muted: #8495ad;--muted-2: #64768f;--accent: #4d8dff;--accent-2: #735cff;--accent-soft: rgba(77, 141, 255, .15);--bubble: #19283e;--bubble-own: linear-gradient(135deg, #2878f2 0%, #6654ed 100%);--danger: #ff5570;--success: #27d397;--shadow: 0 24px 80px rgba(0, 0, 0, .35)}:root[data-theme=light]{color:#18253a;background:#edf3fb;--bg: #edf3fb;--panel: rgba(249, 252, 255, .97);--panel-solid: #f8fbff;--panel-2: #eef4fb;--panel-3: #e2ebf6;--line: rgba(37, 67, 105, .1);--line-strong: rgba(37, 67, 105, .18);--text: #18253a;--muted: #64758c;--muted-2: #8795a8;--accent: #347cf4;--accent-2: #6655ed;--accent-soft: rgba(52, 124, 244, .12);--bubble: #e5edf7;--shadow: 0 24px 80px rgba(35, 57, 91, .16)}*{box-sizing:border-box}html,body,#root{width:100%;height:100%;min-height:100%}html{overflow:hidden;background:var(--bg);overscroll-behavior:none}body{margin:0;min-width:320px;overflow:hidden;color:var(--text);background:var(--bg);touch-action:manipulation}button,input,textarea{font:inherit}button{color:inherit}button,a{-webkit-tap-highlight-color:transparent}button:focus-visible,input:focus-visible,textarea:focus-visible,a:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.app-shell{display:grid;grid-template-columns:minmax(310px,380px) minmax(0,1fr);width:100%;height:100dvh;max-height:100dvh;padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom);overflow:hidden;background:radial-gradient(circle at 80% -10%,rgba(78,86,255,.12),transparent 30%),var(--bg)}.sidebar{display:flex;flex-direction:column;min-width:0;overflow:hidden;border-right:1px solid var(--line);background:var(--panel);-webkit-backdrop-filter:blur(26px);backdrop-filter:blur(26px)}.brand-row,.conversation-header{display:flex;align-items:center;height:76px;min-height:76px;padding:0 20px;border-bottom:1px solid var(--line)}.brand-row{justify-content:space-between}.brand{display:flex;align-items:center;gap:11px}.brand img{width:40px;height:40px;border-radius:12px;box-shadow:0 8px 22px #206bff45}.brand>span{display:flex;align-items:baseline;font-family:Manrope,sans-serif;font-size:17px;letter-spacing:-.04em}.brand b{font-weight:700}.brand em{margin-left:2px;color:var(--accent);font-style:normal;font-weight:700}.header-actions{display:flex;align-items:center;gap:8px;margin-left:auto}.icon-button,.composer-button{display:inline-grid;place-items:center;width:40px;height:40px;padding:0;border:1px solid var(--line);border-radius:13px;color:var(--muted);background:var(--panel-2);cursor:pointer;transition:.16s ease}.icon-button:hover,.composer-button:hover{color:var(--text);border-color:var(--line-strong);transform:translateY(-1px)}.icon-button.accent{color:#fff;border-color:transparent;background:linear-gradient(135deg,var(--accent),var(--accent-2));box-shadow:0 10px 24px #4868f647}.icon-button:disabled,.composer-button:disabled{opacity:.5;cursor:default}.sidebar-title{display:flex;align-items:flex-end;justify-content:space-between;padding:24px 22px 16px}.eyebrow{display:block;margin-bottom:4px;color:var(--accent);font-size:10px;font-weight:700;letter-spacing:.15em;text-transform:uppercase}.sidebar-title h1,.modal-header h2,.login-card h1{margin:0;font-family:Manrope,sans-serif;font-size:29px;line-height:1.1;letter-spacing:-.045em}.count-badge{display:grid;place-items:center;min-width:27px;height:27px;padding:0 8px;border-radius:10px;color:var(--accent);background:var(--accent-soft);font-size:12px;font-weight:700}.search-field{display:flex;align-items:center;min-height:46px;gap:10px;padding:0 13px;border:1px solid var(--line);border-radius:14px;color:var(--muted);background:var(--panel-2)}.search-field input{width:100%;min-width:0;padding:0;border:0;outline:0;color:var(--text);background:transparent}.search-field input::placeholder,textarea::placeholder,.field input::placeholder{color:var(--muted-2)}.sidebar-search{margin:0 18px 13px}.chat-list{flex:1;min-height:0;overflow:auto;padding:0 10px 18px;scrollbar-width:thin;scrollbar-color:var(--panel-3) transparent}.chat-row,.user-row{display:flex;align-items:center;width:100%;gap:12px;padding:11px 12px;border:1px solid transparent;border-radius:17px;text-align:left;background:transparent;cursor:pointer}.chat-row:hover{background:var(--panel-2)}.chat-row.active{border-color:#4d8dff29;background:linear-gradient(100deg,var(--accent-soft),rgba(109,87,255,.05))}.chat-copy{flex:1;min-width:0}.chat-copy>span{display:flex;align-items:baseline;justify-content:space-between;gap:8px}.chat-copy b{overflow:hidden;font-size:14px;font-weight:650;text-overflow:ellipsis;white-space:nowrap}.chat-copy time{color:var(--muted-2);font-size:10px}.chat-copy small{display:block;overflow:hidden;margin-top:5px;color:var(--muted);font-size:12px;text-overflow:ellipsis;white-space:nowrap}.avatar{display:grid;flex:0 0 auto;place-items:center;overflow:hidden;border:1px solid rgba(255,255,255,.08);color:#fff;background:linear-gradient(145deg,#226ee7,#7757ef);font-family:Manrope,sans-serif;font-weight:700;box-shadow:inset 0 1px #ffffff2e}.avatar img{width:100%;height:100%;object-fit:cover}.avatar-small{width:36px;height:36px;border-radius:12px;font-size:11px}.avatar-medium{width:48px;height:48px;border-radius:16px;font-size:13px}.avatar-large{width:92px;height:92px;border-radius:30px;font-size:24px}.avatar-group{background:linear-gradient(145deg,#167eb7,#3b65dd)}.profile-row{display:flex;align-items:center;gap:11px;min-height:72px;padding:12px 18px calc(12px + env(safe-area-inset-bottom));border-top:1px solid var(--line);background:var(--panel-solid)}.profile-row>span{display:flex;flex:1;min-width:0;flex-direction:column;gap:3px}.profile-row b{overflow:hidden;font-size:13px;text-overflow:ellipsis;white-space:nowrap}.profile-row small{color:var(--muted-2);font-size:9px}.profile-row .icon-button{width:36px;height:36px}.conversation{display:flex;min-width:0;height:100%;flex-direction:column;overflow:hidden;background:radial-gradient(circle at 50% 22%,rgba(71,124,255,.07),transparent 37%)}.conversation-header{background:color-mix(in srgb,var(--panel-solid) 88%,transparent);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}.conversation-person{display:flex;min-width:0;flex:1;flex-direction:column;gap:3px;margin-left:11px}.conversation-person b{overflow:hidden;font-family:Manrope,sans-serif;font-size:15px;text-overflow:ellipsis;white-space:nowrap}.conversation-person small{color:var(--muted);font-size:11px}.mobile-back{display:none;margin-right:4px}.conversation-empty{display:grid;flex:1;place-content:center;justify-items:center;padding:30px;text-align:center}.empty-orb{display:grid;place-items:center;width:96px;height:96px;margin-bottom:22px;border:1px solid rgba(89,122,255,.2);border-radius:33px;color:#7aa9ff;background:linear-gradient(145deg,#4d8dff24,#7457ff24);box-shadow:0 28px 80px #284aa033}.conversation-empty h2,.empty-list h3{margin:0;font-family:Manrope,sans-serif;letter-spacing:-.035em}.conversation-empty p,.empty-list p{margin:8px 0 0;color:var(--muted);font-size:13px}.message-area{flex:1;min-height:0;overflow:auto;padding:22px clamp(18px,5vw,76px) 24px;overscroll-behavior:contain}.date-pill{width:fit-content;margin:0 auto 24px;padding:7px 11px;border:1px solid var(--line);border-radius:99px;color:var(--muted);background:var(--panel);font-size:10px}.message-row{display:flex;align-items:flex-end;max-width:min(72%,680px);gap:9px;margin:12px 0}.message-row.own{justify-content:flex-end;margin-left:auto}.message-bubble{min-width:82px;padding:10px 13px 7px;border:1px solid var(--line);border-radius:19px 19px 19px 5px;background:var(--bubble);box-shadow:0 8px 22px #0000000f}.message-row.own .message-bubble{color:#fff;border-color:transparent;border-radius:19px 19px 5px;background:var(--bubble-own)}.message-bubble strong{display:block;margin-bottom:4px;color:#77a8ff;font-size:11px}.message-bubble p{margin:0;font-size:13px;line-height:1.48;overflow-wrap:anywhere;white-space:pre-wrap}.message-bubble>time{display:flex;align-items:center;justify-content:flex-end;gap:3px;margin-top:4px;color:var(--muted);font-size:9px}.message-row.own .message-bubble>time{color:#ffffffad}.message-image,.message-video{display:block;width:min(360px,56vw);max-height:420px;margin:-5px -8px 7px;border-radius:14px;object-fit:cover}.message-audio{display:block;width:min(310px,54vw);height:36px}.attachment-file,.attachment-loading{display:flex;align-items:center;min-width:min(300px,48vw);gap:10px;color:inherit;text-decoration:none}.attachment-file>span{display:flex;flex:1;min-width:0;flex-direction:column;gap:2px}.attachment-file b{overflow:hidden;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.attachment-file small{color:var(--muted);font-size:9px}.composer-wrap{padding:10px clamp(18px,5vw,76px) calc(12px + env(safe-area-inset-bottom));border-top:1px solid var(--line);background:color-mix(in srgb,var(--panel-solid) 92%,transparent);-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px)}.composer{display:flex;align-items:flex-end;gap:8px;min-height:52px;padding:6px;border:1px solid var(--line-strong);border-radius:18px;background:var(--panel-2);box-shadow:0 10px 36px #00000017}.composer textarea{flex:1;min-width:0;max-height:112px;resize:none;padding:10px 4px;border:0;outline:0;color:var(--text);background:transparent;line-height:1.4}.composer-button{width:40px;height:40px;border:0;background:transparent}.send-button{display:grid;flex:0 0 auto;place-items:center;width:40px;height:40px;padding:0;border:0;border-radius:13px;color:#fff;background:linear-gradient(135deg,var(--accent),var(--accent-2));cursor:pointer;box-shadow:0 8px 20px #4868f64d}.mic-button.active{color:#fff;background:var(--danger);animation:mic-pulse 1s infinite}.hold-hint{display:block;margin-top:6px;color:var(--muted-2);font-size:9px;text-align:center}.pending-file{display:flex;align-items:center;max-width:480px;gap:9px;margin:0 0 8px;padding:8px 10px;border:1px solid var(--line);border-radius:13px;background:var(--panel-2)}.pending-file>span{display:flex;flex:1;min-width:0;flex-direction:column}.pending-file b{overflow:hidden;font-size:11px;text-overflow:ellipsis;white-space:nowrap}.pending-file small{color:var(--muted);font-size:9px}.pending-file button{display:grid;place-items:center;padding:3px;border:0;color:var(--muted);background:transparent;cursor:pointer}.error-toast{display:flex;align-items:center;justify-content:space-between;width:100%;gap:8px;margin-bottom:7px;padding:7px 10px;border:1px solid rgba(255,85,112,.2);border-radius:10px;color:#ff8b9d;background:#ff557014;font-size:10px;cursor:pointer}.empty-list{display:grid;justify-items:center;padding:58px 26px;color:var(--muted);text-align:center}.empty-list h3{margin-top:14px;color:var(--text);font-size:16px}.empty-list button{margin-top:16px;padding:9px 13px;border:0;border-radius:11px;color:#fff;background:var(--accent);cursor:pointer}.center-loader{display:grid;place-items:center;padding:20px;color:var(--accent)}.spin{animation:spin .85s linear infinite}.modal-backdrop{position:fixed;z-index:70;inset:0;display:grid;place-items:center;padding:max(18px,env(safe-area-inset-top)) 18px max(18px,env(safe-area-inset-bottom));background:#020710ab;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.modal-card{width:min(100%,480px);max-height:min(720px,92dvh);overflow:auto;padding:22px;border:1px solid var(--line-strong);border-radius:26px;background:var(--panel-solid);box-shadow:var(--shadow)}.modal-header{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:18px}.modal-header h2{font-size:24px}.segmented{display:grid;grid-template-columns:1fr 1fr;gap:4px;margin-bottom:18px;padding:4px;border-radius:13px;background:var(--panel-2)}.segmented button{padding:9px;border:0;border-radius:10px;color:var(--muted);background:transparent;cursor:pointer}.segmented button.active{color:var(--text);background:var(--panel-3);box-shadow:0 3px 12px #00000014}.field{display:flex;flex-direction:column;gap:7px;margin:14px 0}.field span{color:var(--muted);font-size:11px;font-weight:600}.field input{width:100%;height:48px;padding:0 13px;border:1px solid var(--line-strong);border-radius:13px;outline:0;color:var(--text);background:var(--panel-2)}.field input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.selected-users{display:flex;flex-wrap:wrap;gap:5px;margin:0 0 10px}.selected-users button{display:flex;align-items:center;gap:5px;padding:6px 8px;border:0;border-radius:9px;color:#8db5ff;background:var(--accent-soft);cursor:pointer}.user-results{max-height:260px;overflow:auto;margin:8px 0 14px}.user-row:hover{background:var(--panel-2)}.user-row>span:not(.check){display:flex;flex:1;flex-direction:column;gap:3px}.user-row b{font-size:13px}.user-row small{color:var(--muted);font-size:10px}.check{display:grid;place-items:center;width:22px;height:22px;border:1px solid var(--line-strong);border-radius:8px}.check.checked{color:#fff;border-color:transparent;background:var(--accent)}.empty-small{padding:20px;color:var(--muted);font-size:12px;text-align:center}.primary-button{display:flex;align-items:center;justify-content:center;width:100%;min-height:48px;gap:8px;padding:0 16px;border:0;border-radius:14px;color:#fff;background:linear-gradient(135deg,var(--accent),var(--accent-2));font-weight:650;cursor:pointer;box-shadow:0 12px 28px #4868f63d}.primary-button:disabled{opacity:.5;cursor:default}.form-error{margin:9px 0;color:#ff788e;font-size:11px;line-height:1.4}.login-screen{display:grid;width:100%;min-height:100dvh;place-items:center;padding:max(24px,env(safe-area-inset-top)) 18px max(24px,env(safe-area-inset-bottom));overflow:auto;background:radial-gradient(circle at 50% 0%,rgba(55,112,255,.2),transparent 38%),var(--bg)}.login-card{width:min(100%,430px);padding:34px;border:1px solid var(--line-strong);border-radius:30px;background:var(--panel);box-shadow:var(--shadow)}.login-logo{width:72px;height:72px;margin-bottom:24px;border-radius:22px;box-shadow:0 18px 44px #3656eb4d}.login-card h1{font-size:31px}.login-card>p{margin:12px 0 24px;color:var(--muted);font-size:13px;line-height:1.55}.login-segmented{margin-top:-6px}.login-card>small{display:block;margin-top:18px;color:var(--muted-2);font-size:10px;line-height:1.5;text-align:center}.call-layer{position:fixed;z-index:100;inset:0;display:grid;place-items:center;overflow:hidden;padding:max(24px,env(safe-area-inset-top)) 20px max(24px,env(safe-area-inset-bottom));color:#fff;background:radial-gradient(circle at 50% 22%,rgba(70,132,255,.35),transparent 30%),linear-gradient(155deg,#08101f,#090b19 60%,#15103a)}.call-panel{position:relative;z-index:2;display:flex;align-items:center;width:min(100%,440px);flex-direction:column;text-align:center}.call-kicker{margin-top:22px;color:#89adf5;font-size:10px;font-weight:700;letter-spacing:.13em;text-transform:uppercase}.call-panel h2{margin:6px 0;font-family:Manrope,sans-serif;font-size:clamp(25px,5vw,36px);letter-spacing:-.04em}.call-panel p{margin:0;color:#aab8ce;font-size:13px}.call-progress{display:flex;width:min(280px,70vw);gap:5px;margin:26px 0 36px}.call-progress span{flex:1;height:3px;border-radius:9px;background:#ffffff21}.call-progress span.done{background:linear-gradient(90deg,#38b7ff,#7c65ff);box-shadow:0 0 12px #4c8cff80}.call-actions{display:flex;justify-content:center;gap:28px}.call-button{display:grid;place-items:center;width:66px;height:66px;padding:0;border:0;border-radius:25px;color:#fff;cursor:pointer;box-shadow:0 15px 34px #00000040}.call-button.reject{background:#f0445e}.call-button.answer{background:#22c88b;animation:answer-pulse 1.6s infinite}.video-stage{position:absolute;z-index:0;inset:0;background:#02050b}.video-stage>video:first-child{width:100%;height:100%;object-fit:cover}.video-stage>video:last-child{position:absolute;right:max(18px,env(safe-area-inset-right));top:max(18px,env(safe-area-inset-top));width:min(28vw,220px);aspect-ratio:3 / 4;border:1px solid rgba(255,255,255,.25);border-radius:22px;object-fit:cover;background:#111827;box-shadow:var(--shadow)}.video-call:after{position:absolute;z-index:1;inset:0;content:"";background:linear-gradient(transparent 42%,#02050dd1);pointer-events:none}.video-call .call-panel{align-self:end}@keyframes spin{to{transform:rotate(360deg)}}@keyframes mic-pulse{50%{box-shadow:0 0 0 7px #ff55701f}}@keyframes answer-pulse{50%{box-shadow:0 0 0 13px #22c88b1f,0 15px 34px #00000040}}@media(max-width:760px){.app-shell{display:block}.sidebar,.conversation{width:100%;height:100%;border:0}.sidebar.mobile-hidden{display:none}.conversation:not(.mobile-visible){display:none}.mobile-back{display:inline-grid}.brand-row,.conversation-header{height:64px;min-height:64px;padding-right:13px;padding-left:13px}.sidebar-title{padding:20px 18px 13px}.sidebar-title h1{font-size:26px}.message-area{padding:18px 11px}.message-row{max-width:88%}.message-row>.avatar{width:29px;height:29px;border-radius:10px;font-size:9px}.message-bubble{padding:9px 11px 6px}.message-bubble p{font-size:13px}.composer-wrap{padding:8px 9px max(8px,env(safe-area-inset-bottom))}.composer{min-height:49px;border-radius:16px}.hold-hint{display:none}.message-image,.message-video{width:min(68vw,340px)}.message-audio{width:min(68vw,290px)}.attachment-file,.attachment-loading{min-width:min(62vw,280px)}.modal-backdrop{align-items:end;padding:0}.modal-card{width:100%;max-height:calc(100dvh - env(safe-area-inset-top) - 10px);padding:20px 18px calc(20px + env(safe-area-inset-bottom));border-right:0;border-bottom:0;border-left:0;border-radius:27px 27px 0 0}.login-card{padding:28px 22px;border-radius:25px}.login-card h1{font-size:28px}.call-layer{align-items:end}.call-panel{padding-bottom:22px}}@media(max-width:380px){.conversation-header .header-actions{gap:4px}.conversation-header .icon-button{width:35px;height:35px;border-radius:11px}.conversation-person{margin-left:8px}.conversation-person b{font-size:13px}.brand>span{font-size:15px}}@media(orientation:landscape)and (max-height:560px){.brand-row,.conversation-header{height:56px;min-height:56px}.call-layer{padding-top:12px;padding-bottom:12px}.call-panel .avatar{width:62px;height:62px;border-radius:21px}.call-kicker{margin-top:10px}.call-progress{margin:13px 0 18px}.call-button{width:54px;height:54px;border-radius:19px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
