:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#f5f6fb;background:#090b12;font-synthesis:none;text-rendering:optimizeLegibility;--bg: #090b12;--panel: #10131d;--panel-raised: #171b28;--panel-hover: #1d2231;--border: rgba(255, 255, 255, .08);--muted: #969daf;--text: #f5f6fb;--accent: #8066ff;--accent-bright: #9a85ff;--danger: #ff7588}*{box-sizing:border-box}html,body,#root{width:100%;min-height:100%;margin:0}body{min-width:320px;min-height:100vh;min-height:100dvh;overflow:hidden;background:radial-gradient(circle at 15% 0%,rgba(118,87,255,.12),transparent 27rem),var(--bg)}button,input,textarea{font:inherit}button{color:inherit}button:focus-visible,input:focus-visible,textarea:focus-visible{outline:2px solid var(--accent-bright);outline-offset:2px}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.app-shell{display:grid;grid-template-columns:minmax(270px,330px) minmax(0,1fr);height:100vh;height:100dvh;background:var(--bg)}.sidebar{position:relative;z-index:2;min-width:0;display:flex;flex-direction:column;background:#0d1018;border-right:1px solid var(--border)}.sidebar-header,.chat-header{min-height:74px;display:flex;align-items:center;gap:12px;padding:14px 18px;border-bottom:1px solid var(--border)}.sidebar-header{justify-content:space-between}.brand-lockup{display:flex;align-items:center;gap:11px;font-size:1.08rem}.brand-mark{width:52px;height:52px;display:inline-flex;align-items:center;justify-content:center;color:#fff;background:var(--accent);border-radius:17px;box-shadow:0 12px 35px #7657ff47}.brand-mark.small{width:38px;height:38px;border-radius:12px;box-shadow:none}.icon-button{width:42px;height:42px;flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;padding:0;border:0;border-radius:13px;color:var(--muted);background:transparent;cursor:pointer;transition:color .15s ease,background .15s ease,transform .15s ease}.icon-button:hover{color:var(--text);background:#ffffff0f}.icon-button:active{transform:scale(.96)}.icon-button:disabled{cursor:not-allowed;opacity:.45}.icon-button.accent{color:#d8d0ff;background:#8066ff29}.icon-button.accent:hover{background:#8066ff42}.sidebar-label{display:flex;justify-content:space-between;padding:22px 20px 8px;color:#72798b;font-size:.74rem;font-weight:750;letter-spacing:.1em;text-transform:uppercase}.conversation-list{flex:1;min-height:0;overflow-y:auto;padding:5px 10px 16px}.conversation-row,.person-row{width:100%;border:0;cursor:pointer;text-align:left}.conversation-row{display:flex;align-items:center;gap:12px;min-height:70px;padding:10px;border-radius:16px;color:var(--text);background:transparent;transition:background .14s ease}.conversation-row:hover{background:#ffffff09}.conversation-row.active{background:var(--panel-raised)}.avatar{width:44px;height:44px;flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;color:#d7d3ff;background:#28243f;font-size:.77rem;font-weight:800;letter-spacing:.03em}.avatar.small{width:36px;height:36px;font-size:.68rem}.avatar.general-avatar{color:#fff;background:var(--accent)}.conversation-copy{min-width:0;flex:1;display:grid;gap:5px}.conversation-copy>span{display:flex;align-items:center;gap:8px}.conversation-copy strong{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.92rem}.conversation-copy time{color:#737a8d;font-size:.71rem}.conversation-copy small{color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.79rem}.account-row{display:flex;align-items:center;gap:10px;min-height:72px;padding:12px 15px;border-top:1px solid var(--border);background:#ffffff05}.account-row>span:nth-child(2){flex:1;min-width:0;display:grid;gap:2px}.account-row strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.84rem}.account-row small{color:var(--muted);font-size:.74rem}.chat-panel{min-width:0;min-height:0;display:flex;flex-direction:column;background:#0b0e16}.chat-header{background:#0e111ae6;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.chat-header>div{min-width:0}.chat-header h1{margin:0 0 3px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:1rem}.chat-header p{margin:0;color:var(--muted);font-size:.75rem}.mobile-back{display:none}.message-list{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;scroll-behavior:smooth;padding:30px clamp(18px,5vw,80px) 22px}.load-earlier{display:block;margin:0 auto 20px;padding:8px 13px;border:1px solid var(--border);border-radius:999px;color:#b9bfd0;background:#ffffff09;cursor:pointer;font-size:.74rem}.load-earlier:hover:not(:disabled){color:#fff;background:#ffffff12}.load-earlier:disabled{cursor:wait;opacity:.6}.message-row{position:relative;display:flex;align-items:flex-end;gap:10px;max-width:860px;margin:15px auto 0;touch-action:pan-y}.message-row.grouped{margin-top:5px}.message-row.mine{justify-content:flex-end}.message-avatar{width:34px;height:34px;font-size:.65rem}.message-avatar-spacer{width:34px;flex:0 0 34px}.message-stack{position:relative;max-width:min(76%,620px);display:grid;gap:5px}.message-stack.has-media{max-width:min(90%,760px)}.mine .message-stack{justify-items:end}.swipe-cue{position:absolute;left:-29px;bottom:11px;width:25px;height:25px;display:grid;place-items:center;border-radius:50%;color:#c6bbff;background:#8066ff29;pointer-events:none}.message-meta{display:flex;align-items:baseline;gap:8px;padding:0 3px}.message-meta strong{font-size:.73rem}.message-meta time{color:#747b8d;font-size:.66rem}.bubble{width:fit-content;overflow:hidden;border:1px solid var(--border);border-radius:7px 19px 19px;color:#eceef6;background:var(--panel-raised);box-shadow:0 7px 24px #0000001f}.bubble-wrap{max-width:100%;display:flex;align-items:center;gap:4px}.mine .bubble-wrap{flex-direction:row-reverse}.message-reply-button{width:31px;height:31px;flex:0 0 auto;display:grid;place-items:center;padding:0;border:0;border-radius:10px;color:#9aa1b3;background:transparent;opacity:0;cursor:pointer;transition:opacity .14s ease,color .14s ease,background .14s ease}.message-row:hover .message-reply-button,.message-reply-button:focus-visible{opacity:1}.message-reply-button:hover{color:#fff;background:#ffffff0f}.quoted-message{width:calc(100% - 12px);display:grid;gap:2px;margin:6px 6px 0;padding:8px 10px;overflow:hidden;border:0;border-left:3px solid var(--accent-bright);border-radius:8px;color:#cbd0dd;background:#05060a40;text-align:left;cursor:pointer}.quoted-message strong{color:#c7bdff;font-size:.7rem}.quoted-message span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.72rem}.mine .quoted-message{border-left-color:#c4baff;background:#0b082033}.mine .bubble{border-color:#9a85ff33;border-radius:19px 7px 19px 19px;background:#46369b}.bubble p{margin:0;padding:10px 13px;white-space:pre-wrap;overflow-wrap:anywhere;font-size:.94rem;line-height:1.48}.bubble.with-media p{border-top:1px solid rgba(255,255,255,.08)}.message-media{display:block;max-width:min(680px,100%);max-height:70vh;background:#05060a;object-fit:contain}img.message-media{min-width:min(280px,100%)}.center-status{min-height:50%;display:grid;place-items:center}.empty-chat{flex:1;min-height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--muted);text-align:center}.empty-chat h2{margin:14px 0 5px;color:#dfe2ed;font-size:1.02rem}.empty-chat p{margin:0;font-size:.85rem}.empty-icon{width:54px;height:54px;display:grid;place-items:center;border-radius:18px;color:#bfb2ff;background:#8066ff1f}.composer-wrap{padding:10px clamp(14px,4vw,56px) max(14px,env(safe-area-inset-bottom));background:linear-gradient(180deg,#0b0e1600,#0b0e16 28%)}.typing-slot{max-width:900px;height:23px;margin:0 auto;padding:0 12px;color:#9fa6b8;font-size:.74rem}.typing-slot span{display:inline-flex;align-items:center;gap:2px}.typing-slot i{width:3px;height:3px;margin-left:1px;border-radius:50%;background:#bdb3f5;animation:typing-dot .9s ease-in-out infinite}.typing-slot i:nth-child(2){animation-delay:.12s}.typing-slot i:nth-child(3){animation-delay:.24s}@keyframes typing-dot{0%,60%,to{opacity:.3;transform:translateY(0)}30%{opacity:1;transform:translateY(-2px)}}.composer{max-width:900px;min-height:58px;margin:0 auto;display:flex;align-items:flex-end;gap:7px;padding:8px;border:1px solid rgba(255,255,255,.1);border-radius:20px;background:#171b27;box-shadow:0 18px 45px #0000003d}.composer textarea{min-width:0;flex:1;min-height:40px;max-height:126px;resize:none;overflow-y:auto;padding:9px 5px 7px;border:0;outline:0;color:var(--text);background:transparent;font-size:.94rem;line-height:1.4}.composer textarea::placeholder{color:#72798a}.send-button{width:42px;height:42px;flex:0 0 auto;display:grid;place-items:center;padding:0;border:0;border-radius:13px;color:#fff;background:var(--accent);cursor:pointer;transition:background .15s ease,transform .15s ease}.send-button:hover:not(:disabled){background:var(--accent-bright)}.send-button:active:not(:disabled){transform:scale(.95)}.send-button:disabled{color:#777d8e;background:#262b38;cursor:not-allowed}.attachment-preview,.reply-preview,.composer-error{position:relative;max-width:900px;margin:0 auto 8px;display:flex;align-items:center;gap:10px;overflow:hidden;border:1px solid var(--border);border-radius:15px;background:#171b27}.attachment-preview{padding:7px}.attachment-preview img,.attachment-preview video{width:48px;height:48px;flex:0 0 auto;border-radius:10px;background:#07080d;object-fit:cover}.attachment-preview>span:nth-child(2){min-width:0;flex:1;display:grid;gap:2px}.attachment-preview strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.78rem}.attachment-preview small{color:var(--muted);font-size:.69rem}.attachment-preview button,.composer-error button{border:0;color:var(--muted);background:transparent;cursor:pointer}.upload-percent{padding-right:9px;color:#c7bdff;font-size:.72rem}.upload-track{position:absolute;left:0;right:0;bottom:0;height:2px;background:#ffffff0f}.upload-track span{display:block;height:100%;background:var(--accent-bright);transition:width .12s linear}.reply-preview{padding:8px 10px;color:#bdb2fb}.reply-preview>svg{flex:0 0 auto}.reply-preview>span{min-width:0;flex:1;display:grid;gap:2px}.reply-preview strong{color:#ddd8ff;font-size:.76rem}.reply-preview small{overflow:hidden;color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:.7rem}.reply-preview button{width:32px;height:32px;display:grid;place-items:center;padding:0;border:0;border-radius:9px;color:var(--muted);background:transparent;cursor:pointer}.reply-preview button:hover{color:#fff;background:#ffffff0f}.composer-error{justify-content:space-between;padding:9px 12px;color:#ffc0c9;border-color:#ff758833;background:#5d1d2b80;font-size:.78rem}.auth-page,.loading-page{min-height:100vh;min-height:100dvh;display:grid;place-items:center;padding:24px;background:radial-gradient(circle at 50% 15%,rgba(128,102,255,.18),transparent 28rem),var(--bg)}.loading-page{align-content:center;gap:20px}.auth-card{width:min(100%,410px);padding:38px;border:1px solid var(--border);border-radius:28px;background:#141824e0;box-shadow:0 30px 80px #00000057;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}.auth-card .brand-mark{margin-bottom:24px}.eyebrow{margin:0 0 7px;color:var(--accent-bright);font-size:.68rem;font-weight:850;letter-spacing:.15em}.auth-card h1{margin:0;font-size:clamp(1.75rem,7vw,2.25rem);line-height:1.08;letter-spacing:-.04em}.auth-intro{margin:10px 0 28px;color:var(--muted);font-size:.91rem;line-height:1.5}.auth-card form{display:grid;gap:15px}.auth-card label{display:grid;gap:7px;color:#c7cbd7;font-size:.78rem;font-weight:650}.auth-card input,.search-field input{width:100%;border:1px solid rgba(255,255,255,.1);color:var(--text);background:#0d1018}.auth-card input{height:50px;padding:0 14px;border-radius:14px}.auth-card input::placeholder,.search-field input::placeholder{color:#686f81}.auth-card input:focus,.search-field:focus-within{border-color:#9a85ffbf}.primary-button{height:51px;margin-top:4px;border:0;border-radius:14px;color:#fff;background:var(--accent);font-weight:750;cursor:pointer}.primary-button:hover:not(:disabled){background:var(--accent-bright)}.primary-button:disabled{opacity:.6;cursor:wait}.mode-switch{width:100%;margin-top:20px;padding:6px;border:0;color:#b8adf5;background:transparent;cursor:pointer;font-size:.79rem}.form-error{margin:0;color:#ffacb8;font-size:.76rem;line-height:1.4}.overlay{position:fixed;z-index:10;inset:0;display:grid;place-items:center;padding:18px;background:#020307b3;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.new-chat-panel{width:min(100%,470px);max-height:min(650px,calc(100dvh - 36px));display:flex;flex-direction:column;overflow:hidden;border:1px solid var(--border);border-radius:24px;background:#121620;box-shadow:0 28px 90px #00000080}.new-chat-panel>header{display:flex;justify-content:space-between;align-items:flex-start;padding:22px 22px 16px}.new-chat-panel h2{margin:0;font-size:1.25rem;letter-spacing:-.02em}.new-chat-panel footer{padding:13px 20px;border-top:1px solid var(--border);color:var(--muted);font-size:.7rem}.search-field{height:47px;margin:0 18px 13px;display:flex;align-items:center;gap:9px;padding:0 13px;border:1px solid var(--border);border-radius:14px;color:var(--muted);background:#0b0e15}.search-field input{min-width:0;flex:1;height:100%;padding:0;border:0;outline:0;background:transparent}.new-chat-panel>.form-error{padding:0 20px 10px}.people-list{min-height:150px;overflow-y:auto;padding:0 10px 12px}.person-row{display:flex;align-items:center;gap:11px;padding:10px;border-radius:14px;color:var(--text);background:transparent}.person-row:hover{background:var(--panel-hover)}.person-row>span:nth-child(2){min-width:0;flex:1;display:grid;gap:2px}.person-row strong{font-size:.86rem}.person-row small{color:var(--muted);font-size:.72rem}.empty-people{min-height:170px;display:grid;place-items:center;align-content:center;gap:7px;color:var(--muted)}.empty-people p{margin:0;font-size:.8rem}.camera-panel{width:min(100%,560px);overflow:hidden;border:1px solid var(--border);border-radius:26px;background:#10131c;box-shadow:0 30px 100px #00000094}.camera-panel>header{min-height:72px;display:flex;align-items:center;justify-content:space-between;padding:14px 18px 13px 22px}.camera-panel h2{margin:0;font-size:1.15rem;letter-spacing:-.02em}.camera-view{position:relative;width:100%;aspect-ratio:4 / 3;overflow:hidden;background:#05060a}.camera-view video{width:100%;height:100%;display:block;object-fit:cover}.camera-status{position:absolute;inset:0;display:grid;place-items:center;align-content:center;gap:12px;color:var(--muted);text-align:center}.camera-status p{max-width:330px;margin:0;padding:0 20px;font-size:.82rem;line-height:1.5}.camera-error{color:#d2d5df}.camera-panel>footer{height:94px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:12px 24px}.camera-flip{justify-self:start;color:#d0c8fa;background:#8066ff1f}.camera-footer-spacer{width:42px;justify-self:end}.shutter-button{width:62px;height:62px;display:grid;place-items:center;padding:0;border:3px solid white;border-radius:50%;background:transparent;cursor:pointer}.shutter-button span{width:47px;height:47px;border-radius:50%;background:#fff;transition:transform .13s ease,background .13s ease}.shutter-button:hover:not(:disabled) span{transform:scale(.92);background:#dcd6ff}.shutter-button:active:not(:disabled) span{transform:scale(.84)}.shutter-button:disabled{cursor:wait;opacity:.4}.loader,.mini-loader{display:inline-block;border:2px solid rgba(255,255,255,.16);border-top-color:var(--accent-bright);border-radius:50%;animation:spin .7s linear infinite}.loader{width:25px;height:25px}.mini-loader{width:17px;height:17px}.mini-loader.light{border-top-color:#fff}@keyframes spin{to{transform:rotate(360deg)}}@media(max-width:760px){body{background:var(--bg)}.app-shell{display:block}.sidebar,.chat-panel{width:100%;height:100%}.chat-panel,.app-shell.chat-open .sidebar{display:none}.app-shell.chat-open .chat-panel{display:flex}.sidebar-header,.chat-header{min-height:calc(66px + env(safe-area-inset-top));padding-top:calc(10px + env(safe-area-inset-top))}.sidebar-header{padding-left:16px;padding-right:14px}.mobile-back{display:inline-flex;margin-left:-7px}.message-list{padding:22px 12px 16px}.message-row{gap:7px}.message-stack{max-width:82%}.message-stack.has-media{max-width:95%}.message-avatar{width:30px;height:30px}.message-avatar-spacer{width:30px;flex-basis:30px}.message-media{width:auto;max-width:100%;max-height:65dvh}.composer-wrap{padding-left:8px;padding-right:8px}.composer{border-radius:18px}.account-row{padding-bottom:max(12px,env(safe-area-inset-bottom))}}@media(max-width:430px){.auth-page{padding:0;align-items:stretch}.auth-card{min-height:100dvh;display:flex;flex-direction:column;justify-content:center;padding:30px 24px max(30px,env(safe-area-inset-bottom));border:0;border-radius:0;background:transparent;box-shadow:none}.conversation-row{min-height:72px}.bubble p{font-size:.92rem}.new-chat-panel{align-self:end;width:100%;max-height:82dvh;border-radius:24px 24px 0 0;border-bottom:0;padding-bottom:env(safe-area-inset-bottom)}.overlay{padding:0}.camera-overlay{background:#05060a}.camera-panel{width:100%;height:100dvh;display:flex;flex-direction:column;border:0;border-radius:0}.camera-panel>header{min-height:calc(66px + env(safe-area-inset-top));padding-top:calc(10px + env(safe-area-inset-top))}.camera-view{flex:1;min-height:0;aspect-ratio:auto}.camera-panel>footer{height:calc(100px + env(safe-area-inset-bottom));padding-bottom:calc(12px + env(safe-area-inset-bottom))}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}}
