*{box-sizing:border-box}html,body,#root{width:100%;min-width:320px;height:100%;min-height:100%;margin:0}html{background:#08080b}body{-webkit-tap-highlight-color:transparent;background:#08080b;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;overflow:hidden}input,button{font:inherit}.app{color:#f4f4f5;background:#08080b;grid-template-columns:300px minmax(0,1fr);width:100%;min-height:100dvh;display:grid;overflow:hidden}.chat-pane{min-width:0;height:100dvh}.sidebar{background:#0e0e13;border-right:1px solid #24242d;min-width:0;height:100dvh;padding:18px;overflow-y:auto}.sidebar-user,.chat-header{align-items:center;gap:12px;display:flex}.sidebar-user__info{flex-grow:1;min-width:0}.sidebar-user h2,.chat-header h2,.chat-item h3{margin:0}.sidebar-user span,.chat-header span{color:#858593;font-size:13px}.avatar{aspect-ratio:1;background:#1c1b2a;border:1px solid #7168c9;border-radius:50%;flex-shrink:0;place-items:center;width:42px;display:grid}.search-input{width:100%;color:inherit;background:#17171e;border:1px solid #292933;border-radius:10px;outline:none;margin:18px 0;padding:12px 14px}.search-input:focus{border-color:#7168c9}.chat-list{gap:6px;display:grid}.chat-item{width:100%;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:10px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;padding:12px;display:grid}.chat-item:hover,.chat-item--active{background:#191922}.chat-item__content{min-width:0}.chat-item p{color:#9999a5;text-overflow:ellipsis;white-space:nowrap;margin:4px 0 0;font-size:13px;overflow:hidden}.chat-item time{color:#777784;align-self:start;font-size:12px}.chat-window{background:linear-gradient(#0a0a0eed,#0a0a0eed),radial-gradient(circle,#1a1828,#0a0a0e 70%);grid-template-rows:auto minmax(0,1fr) auto;min-width:0;height:100dvh;display:grid}.chat-header{background:#0e0e13f2;border-bottom:1px solid #24242d;min-width:0;padding:16px 22px}.chat-actions{gap:8px;margin-left:auto;display:flex}.mobile-back-button,.mobile-empty-back-button{display:none}.logout-button{border-radius:10px;flex-shrink:0;place-items:center;width:38px;height:38px;display:grid}.logout-button:hover{background:#191922}.message-list{flex-direction:column;gap:10px;padding:24px;display:flex;overflow-y:auto}.empty-chat{background:linear-gradient(#0a0a0eed,#0a0a0eed),radial-gradient(circle,#1a1828,#0a0a0e 70%);justify-content:center;align-items:center;height:100dvh;display:flex;position:relative}.empty-message{color:#777784;margin:auto}.message{background:#18181f;border:1px solid #2a2a34;border-radius:12px 12px 12px 4px;align-self:flex-start;max-width:min(65%,520px);padding:10px 12px}.message--own{background:#393467;border-color:#514a9c;border-radius:12px 12px 4px;align-self:flex-end}.message__author{color:#9b93ed;margin-bottom:4px;font-size:13px;font-weight:600;display:block}.message__text{overflow-wrap:anywhere;margin:0;line-height:1.4}.message__footer{color:#aaaab4;justify-content:flex-end;align-items:center;gap:5px;margin-top:5px;font-size:11px;display:flex}.message__delete{opacity:0;font-size:16px;transition:opacity .15s}.message:hover .message__delete{opacity:1}.message-form{background:#0e0e13f2;border-top:1px solid #24242d;grid-template-columns:auto minmax(0,1fr) auto auto;gap:10px;padding:14px 20px;display:grid}.message-form input{min-width:0;color:inherit;background:#17171e;border:1px solid #292933;border-radius:12px;outline:none;padding:12px 16px}.message-form input:focus{border-color:#7168c9}button{color:inherit;font:inherit;cursor:pointer;background:0 0;border:0;padding:8px}.send-button{aspect-ratio:1;background:#655cc5;border-radius:50%;width:42px}.send-button:hover{background:#756ce0}@media (width<=1000px) and (width>=721px){.app{grid-template-columns:250px minmax(0,1fr)}.message{max-width:78%}}.auth-page{color:#f4f4f5;background:radial-gradient(circle,#1a1828,#08080b 70%);place-items:center;min-height:100vh;padding:20px;display:grid}.auth-form{background:#0e0e13;border:1px solid #292933;border-radius:18px;gap:14px;width:min(100%,380px);padding:32px;display:grid}.auth-form h1,.auth-form h2{margin:0}.auth-form h1{color:#9b93ed;font-size:32px}.auth-form h2{margin-bottom:8px;font-size:20px}.auth-form input{box-sizing:border-box;width:100%;color:inherit;background:#17171e;border:1px solid #292933;border-radius:10px;outline:none;padding:13px 14px}.auth-form input:focus{border-color:#7168c9}.auth-submit{background:#655cc5;border-radius:10px;padding:12px}.auth-submit:disabled{cursor:default;opacity:.6}.auth-switch{color:#9b93ed}.auth-error{color:#ff7b7b;margin:0;font-size:14px}.search-results{gap:6px;display:grid}.search-user{text-align:left;border-radius:10px;align-items:center;gap:12px;width:100%;padding:10px;display:flex}.search-user:hover{background:#191922}.search-user .avatar{width:38px}.search-message{color:#858593;margin:12px 4px;font-size:13px}.search-error{color:#ff7b7b;margin:12px 4px;font-size:13px}.delete-modal-backdrop{z-index:1000;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#000000b3;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.delete-modal{background:#111318;border:1px solid #ffffff1a;border-radius:18px;width:min(100%,420px);padding:24px;animation:.16s ease-out delete-modal-appear;box-shadow:0 24px 70px #0000008c}.delete-modal__title{color:#fff;margin:0 0 10px;font-size:21px;font-weight:600}.delete-modal__text{color:#969ba7;margin:0;font-size:15px;line-height:1.5}.delete-modal__actions{justify-content:flex-end;gap:10px;margin-top:24px;display:flex}.delete-modal__button{min-width:100px;font:inherit;cursor:pointer;border:none;border-radius:10px;padding:10px 16px;font-weight:500;transition:background-color .15s,opacity .15s,transform .15s}.delete-modal__button:hover:not(:disabled){transform:translateY(-1px)}.delete-modal__button:disabled{opacity:.55;cursor:default}.delete-modal__button--cancel{color:#fff;background:#272a31}.delete-modal__button--cancel:hover:not(:disabled){background:#323640}.delete-modal__button--delete{color:#fff;background:#d93b4b}.delete-modal__button--delete:hover:not(:disabled){background:#ed4758}@keyframes delete-modal-appear{0%{opacity:0;transform:translateY(8px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}@media (width<=720px){.app{width:100%;height:100dvh;min-height:0;display:block;overflow:hidden}.sidebar{width:100%;height:100dvh;padding:calc(14px + env(safe-area-inset-top)) 14px calc(14px + env(safe-area-inset-bottom));overscroll-behavior:contain;border-right:0;overflow-y:auto}.chat-pane{width:100%;height:100dvh;display:none}.app--mobile-chat-open .sidebar{display:none}.app--mobile-chat-open .chat-pane{display:block}.sidebar-user{min-height:52px}.sidebar-user h2,.chat-header h2{text-overflow:ellipsis;white-space:nowrap;font-size:18px;overflow:hidden}.sidebar-user__info,.chat-header>div:not(.avatar):not(.chat-actions){min-width:0}.avatar{width:44px}.logout-button{background:#17171e;width:42px;height:42px}.search-input{margin:16px 0 12px;padding:13px 14px;font-size:16px}.chat-list,.search-results{gap:4px}.chat-item{touch-action:manipulation;gap:12px;min-height:70px;padding:11px 10px}.chat-item:hover{background:0 0}.chat-item:active,.chat-item--active{background:#191922}.chat-item h3{text-overflow:ellipsis;white-space:nowrap;font-size:16px;overflow:hidden}.chat-item p{font-size:14px}.chat-item time{padding-top:2px}.search-user{min-height:62px;padding:10px;font-size:16px}.chat-window,.empty-chat{width:100%;height:100dvh;min-height:0}.chat-header{min-height:calc(66px + env(safe-area-inset-top));padding:calc(10px + env(safe-area-inset-top)) 12px 10px;gap:10px}.mobile-back-button{touch-action:manipulation;border-radius:50%;flex-shrink:0;place-items:center;width:42px;height:42px;padding:0;font-size:25px;line-height:1;display:grid}.mobile-back-button:active{background:#20202a}.chat-header .avatar{width:40px}.chat-header span{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.chat-actions{display:none}.message-list{overscroll-behavior:contain;scrollbar-width:thin;gap:8px;min-height:0;padding:14px 12px}.message{max-width:86%;padding:9px 11px;font-size:15px}.message__footer{gap:6px}.message__delete{opacity:1;min-width:34px;min-height:30px;padding:3px 6px;font-size:12px}.message-form{padding:10px 10px calc(10px + env(safe-area-inset-bottom));grid-template-columns:minmax(0,1fr) auto;gap:8px}.message-form>button:not(.send-button){display:none}.message-form input{width:100%;padding:11px 14px;font-size:16px}.send-button{touch-action:manipulation;width:44px;min-width:44px;height:44px;padding:0}.mobile-empty-back-button{top:calc(12px + env(safe-area-inset-top));background:#17171e;border-radius:50%;place-items:center;width:42px;height:42px;padding:0;font-size:25px;display:grid;position:absolute;left:12px}.empty-chat .auth-error,.empty-chat .empty-message{text-align:center;max-width:calc(100% - 48px);padding:20px}.auth-page{min-height:100dvh;padding:calc(18px + env(safe-area-inset-top)) 16px calc(18px + env(safe-area-inset-bottom))}.auth-form{border-radius:16px;padding:24px 20px}.auth-form input{font-size:16px}.delete-modal-backdrop{padding:16px 16px calc(16px + env(safe-area-inset-bottom));align-items:flex-end}.delete-modal{border-radius:20px;width:100%;padding:22px 18px}.delete-modal__actions{grid-template-columns:1fr 1fr;display:grid}.delete-modal__button{min-width:0;min-height:46px}}@media (width<=380px){.sidebar{padding-left:10px;padding-right:10px}.message{max-width:90%}.message-list,.message-form{padding-left:8px;padding-right:8px}}
