body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;caret-color:#0000;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}#root{margin:0 auto;width:100%}input,textarea{caret-color:auto}*{box-sizing:border-box;margin:0;padding:0}body,html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Open Sans,Helvetica Neue,sans-serif;height:100%;width:100%}body{color:#333;line-height:1.5}a{color:inherit;text-decoration:none}button{background:none;border:none;cursor:pointer;font:inherit}ol,ul{list-style:none}img{display:block;height:auto;max-width:100%}button,input,select,textarea{font:inherit}:focus{outline:none}table{border-collapse:collapse;border-spacing:0}.LoginPage_loginContainer__2Oooe{align-items:center;background-color:#f5f5f5;display:flex;justify-content:center;min-height:100vh}.LoginPage_loginBox__3q1Nh{background-color:#fff;border-radius:10px;box-shadow:0 0 20px #0000001a;max-width:400px;padding:2rem;width:100%}.LoginPage_loginTitle__28ivr{color:#333;font-size:2rem;margin-bottom:2rem;text-align:center}.LoginPage_loginForm__kZwDv{display:flex;flex-direction:column;gap:1rem}.LoginPage_inputGroup__gbk1L{margin-bottom:1rem}.LoginPage_inputLabel__FF7Bx{color:#666;display:block;margin-bottom:.5rem}.LoginPage_inputField__Xq\+9W{border:1px solid #ddd;border-radius:5px;font-size:1rem;padding:.75rem;transition:border-color .3s;width:100%}.LoginPage_inputField__Xq\+9W:focus{border-color:#4caf50;outline:none}.LoginPage_loginButton__YVVo2{background-color:#4caf50;border:none;border-radius:5px;color:#fff;cursor:pointer;font-size:1rem;margin-top:1rem;padding:.75rem;transition:background-color .3s}.LoginPage_loginButton__YVVo2:hover{background-color:#45a049}.LoginPage_registerLink__2p3nJ{margin-top:1rem;text-align:center}.LoginPage_registerLink__2p3nJ a{color:#4caf50;font-size:.9rem;text-decoration:none}.LoginPage_registerLink__2p3nJ a:hover{text-decoration:underline}.RegisterPage_registerContainer__R\+G\+s{align-items:center;background-color:#ddd;display:flex;justify-content:center;min-height:100vh}.RegisterPage_registerBox__qOvbV{background-color:#fff;border-radius:10px;box-shadow:0 0 20px #0000001a;max-width:400px;padding:2rem;width:100%}.RegisterPage_registerTitle__3S3sw{color:#333;font-size:2rem;margin-bottom:2rem;text-align:center}.RegisterPage_registerForm__CiF0K{display:flex;flex-direction:column;gap:1rem}.RegisterPage_inputGroup__-gBRs{margin-bottom:1rem}.RegisterPage_inputLabel__mzQ36{color:#666;display:block;margin-bottom:.5rem}.RegisterPage_inputField__LOyAe{border:1px solid #ddd;border-radius:5px;font-size:1rem;padding:.75rem;transition:border-color .3s;width:100%}.RegisterPage_inputField__LOyAe:focus{border-color:#4caf50;outline:none}.RegisterPage_registerButton__Otder{background-color:#4caf50;border:none;border-radius:5px;color:#fff;cursor:pointer;font-size:1rem;margin-top:1rem;padding:.75rem;transition:background-color .3s}.RegisterPage_registerButton__Otder:hover{background-color:#45a049}.RegisterPage_loginLink__hAqBl{margin-top:1rem;text-align:center}.RegisterPage_loginLink__hAqBl a{color:#4caf50;font-size:.9rem;text-decoration:none}.RegisterPage_loginLink__hAqBl a:hover{text-decoration:underline}.RegisterPage_errorMessage__y9YZf{color:#f44;font-size:.9rem;margin-top:.5rem;text-align:center}.modal-content{box-shadow:0 4px 6px #0000001a;padding:2rem}.tab_wrap{border-bottom:2px solid #eee;display:flex;gap:1rem;margin-bottom:1.5rem;padding-bottom:.5rem}.tab_btn{caret-color:#0000;color:#666;cursor:pointer;font-weight:500;padding:.5rem 1rem;transition:all .3s ease}.tab_btn.active{border-bottom:2px solid #4a90e2;color:#4a90e2;margin-bottom:-.5rem}.cont_search form{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1rem}.cont_search input{border:1px solid #ddd;border-radius:6px;flex:1 1;font-size:1rem;padding:.8rem}.cont_search button{background:#4a90e2;border:none;border-radius:6px;color:#fff;cursor:pointer;padding:.8rem 1.5rem;transition:background .3s ease}.cont_search button:hover{background:#357abd}.search-results{margin-top:1rem;max-height:300px;overflow-y:auto;width:100%}.user-item{align-items:center;border:1px solid #eee;display:flex;justify-content:space-between;margin-bottom:10px;padding:1rem}.user-item:last-child{margin-bottom:0}.friend-requests{margin-top:1rem;max-height:300px;overflow-y:auto}.request-item{align-items:center;border-bottom:1px solid #eee;display:flex;justify-content:space-between;padding:1rem}.request-actions{display:flex;gap:.5rem}.request-actions button{border:none;border-radius:4px;cursor:pointer;padding:.5rem 1rem;transition:all .3s ease}.request-actions button:first-child{background:#4a90e2;color:#fff}.request-actions button:last-child{background:#e74c3c;color:#fff}.request-actions button:hover{opacity:.9}.searching{padding:1rem}.no-requests,.searching{color:#666;text-align:center}.no-requests{font-style:italic;padding:2rem}.modal-content>button:last-child{background:#f5f5f5;border:none;border-radius:6px;cursor:pointer;margin-top:1.5rem;padding:.8rem 1.5rem;transition:background .3s ease;width:100%}.modal-content>button:last-child:hover{background:#e0e0e0}.friend-requests::-webkit-scrollbar,.search-results::-webkit-scrollbar{width:6px}.friend-requests::-webkit-scrollbar-track,.search-results::-webkit-scrollbar-track{background:#f1f1f1}.friend-requests::-webkit-scrollbar-thumb,.search-results::-webkit-scrollbar-thumb{background:#888;border-radius:3px}.friend-requests::-webkit-scrollbar-thumb:hover,.search-results::-webkit-scrollbar-thumb:hover{background:#555}.header{background-color:#1a365d;box-shadow:0 2px 4px #0000001a;padding:1rem;position:sticky;top:0;z-index:1000}.nav{align-items:center;display:flex;justify-content:space-between;margin:0 auto;max-width:1200px;padding:0 1rem}.navLeft,.navRight{align-items:center;display:flex;gap:1rem}.navLink{border-radius:.375rem;color:#fff;font-size:18px;padding:.5rem 1rem;text-align:center;text-decoration:none;transition:all .3s ease}.navLink:hover{background-color:#f3f4f6;color:#1a365d}.activeLink{background-color:#fff;color:#1a365d;font-weight:700}.userInfo{color:#fff;text-align:center}.addFriendButton{align-items:center;background-color:#4caf50;border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;gap:8px;padding:8px 16px;transition:background-color .3s}.addFriendButton:hover{background-color:#45a049}.requestCountStyle{background-color:#f44;border-radius:50%;color:#fff;font-size:12px;font-weight:700;min-width:20px;padding:2px 6px;position:absolute;right:-8px;text-align:center;top:-8px}.logoutButton{background:none;border:none;border-radius:.375rem;color:#fff;cursor:pointer;padding:.5rem 1rem;text-decoration:none;transition:all .3s ease}.logoutButton:hover{background-color:#f3f4f6;color:#1a365d}@media (max-width:768px){.header{padding:.5rem}.nav{padding:0 .5rem}.navLeft{margin-right:10px}.navLeft,.navRight{gap:.5rem}.navLink{font-size:.8rem;padding:.3rem .5rem}.userInfo{font-size:.9rem}.addFriendButton{font-size:.9rem;gap:4px;padding:6px 12px}.requestCountStyle{font-size:10px;min-width:16px;padding:1px 4px}.logoutButton{padding:3px 6px}}.friend-list-container{background-color:#f8f9fa;display:flex;flex-direction:column;height:calc(100vh - 64px);margin:0 auto;max-width:1200px;padding:1rem;width:100%}.friend-list-header{background-color:#fff;border-radius:12px;box-shadow:0 2px 4px #0000000d;margin-bottom:1rem;padding:1rem}.friend-list-header h2{color:#1a1a1a;font-size:1.5rem;margin:0 0 1rem}.friend-list-search{position:relative}.friend-list-search input{background-color:#f8f9fa;border:1px solid #e1e4e8;border-radius:8px;font-size:.9rem;padding:.75rem 1rem .75rem 2.5rem;transition:all .2s ease;width:100%}.friend-list-search input:focus{background-color:#fff;border-color:#4a90e2;box-shadow:0 0 0 3px #4a90e21a;outline:none}.friend-list-search:before{color:#666;content:"🔍";font-size:.9rem;left:1rem;position:absolute;top:50%;transform:translateY(-50%)}.friends-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));padding:.5rem}.friend-card{align-items:center;background:#fff;border-radius:12px;box-shadow:0 2px 4px #0000000d;display:flex;flex-direction:column;gap:1rem;padding:1.5rem;position:relative;transition:all .2s ease}.friend-card:hover{box-shadow:0 4px 8px #0000001a;transform:translateY(-2px)}.friend-avatar{align-items:center;background:#f8f9fa;border-radius:50%;display:flex;height:80px;justify-content:center;overflow:hidden;width:80px}.friend-avatar img{height:100%;object-fit:cover;width:100%}.friend-default-avatar{align-items:center;background:#4a90e2;color:#fff;display:flex;font-size:2rem;font-weight:600;height:100%;justify-content:center;width:100%}.friend-info{text-align:center}.friend-info h3{color:#1a1a1a;font-size:1.2rem;font-weight:600;margin:0 0 .5rem}.friend-email{color:#666;font-size:.9rem;margin:0}.chat-button{background:#4a90e2;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:.9rem;font-weight:600;padding:.75rem 1.5rem;transition:background-color .2s ease;width:100%}.chat-button:hover{background:#357abd}.no-friends{align-items:center;background:#fff;border-radius:12px;box-shadow:0 2px 4px #0000000d;display:flex;flex-direction:column;justify-content:center;margin-top:2rem;padding:3rem;text-align:center}.no-friends-icon{font-size:3rem;margin-bottom:1rem}.no-friends h3{color:#1a1a1a;font-size:1.25rem;margin:0 0 .5rem}.no-friends p{color:#666;margin:0 0 1.5rem}.add-friend-button{background:#4a90e2;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:.9rem;font-weight:600;padding:.75rem 1.5rem;transition:background-color .2s ease}.add-friend-button:hover{background:#357abd}.remove-friend-button{align-items:center;background:#ff4d4f;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:1.2rem;height:24px;justify-content:center;line-height:1;opacity:0;position:absolute;right:.5rem;top:.5rem;transform:scale(.8);transition:all .2s ease;width:24px}.friend-card:hover .remove-friend-button{opacity:1;transform:scale(1)}.remove-friend-button:hover{background:#ff7875;transform:scale(1.1)}.chat-list-container{background-color:#f8f9fa;display:flex;flex-direction:column;height:calc(100vh - 64px);margin:0 auto;max-width:1200px;padding:1rem;width:100%}.chat-list-header{align-items:center;background-color:#fff;border-radius:12px;box-shadow:0 2px 4px #0000000d;display:flex;justify-content:space-between;margin-bottom:1rem;padding:1rem}.chat-list-header h2{color:#1a1a1a;font-size:1.5rem;margin:0 0 1rem}.chat-list-search{position:relative}.create-group-btn{background-color:#007bff;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;padding:8px 16px;transition:background-color .2s}.create-group-btn:hover{background-color:#0056b3}.chat-rooms{flex:1 1;overflow-y:auto;padding:.5rem}.chat-room-card{background:#fff;border-radius:12px;box-shadow:0 2px 4px #0000000d;cursor:pointer;margin-bottom:.75rem;padding:1rem;transition:all .2s ease}.chat-room-card:hover{box-shadow:0 4px 8px #0000001a;transform:translateY(-2px)}.chat-room-info{align-items:center;display:flex;gap:1rem}.chat-room-avatar{flex-shrink:0}.chat-default-avatar{align-items:center;background:#4a90e2;border-radius:50%;color:#fff;display:flex;font-size:1.2rem;font-weight:600;height:48px;justify-content:center;width:48px}.chat-room-details{flex:1 1;min-width:0}.chat-room-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:.25rem}.chat-room-header h3{color:#1a1a1a;font-size:1rem;font-weight:600;margin:0}.chat-time{color:#666;font-size:.75rem}.chat-room-footer{align-items:center;display:flex;justify-content:space-between}.last-message{color:#666;font-size:.875rem;margin:0;max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.unread-badge{background:#4a90e2;border-radius:50%;color:#fff;font-size:15px;font-weight:600;height:25px;line-height:25px;text-align:center;width:25px}.loading-container{align-items:center;background-color:#f8f9fa;display:flex;flex-direction:column;height:100vh;justify-content:center}.loading-spinner{animation:spin 1s linear infinite;border:3px solid #f3f3f3;border-radius:50%;border-top-color:#4a90e2;height:40px;margin-bottom:1rem;width:40px}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.no-chats{align-items:center;background:#fff;border-radius:12px;box-shadow:0 2px 4px #0000000d;display:flex;flex-direction:column;justify-content:center;margin-top:2rem;padding:3rem;text-align:center}.no-chats-icon{font-size:3rem;margin-bottom:1rem}.no-chats h3{color:#1a1a1a;font-size:1.25rem;margin:0 0 .5rem}.no-chats p{color:#666;margin:0 0 1.5rem}.start-chat-button{background:#4a90e2;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:.9rem;font-weight:600;padding:.75rem 1.5rem;transition:background-color .2s ease}.start-chat-button:hover{background:#357abd}.chat-rooms::-webkit-scrollbar{width:6px}.chat-rooms::-webkit-scrollbar-track{background:#f1f1f1;border-radius:3px}.chat-rooms::-webkit-scrollbar-thumb{background:#ccc;border-radius:3px}.chat-rooms::-webkit-scrollbar-thumb:hover{background:#999}.modal-content{border-radius:15px}.modal-header{border-bottom:1px solid #e9ecef}.friend-list{max-height:300px;overflow-y:auto}.friend-item{align-items:center;display:flex;padding:10px}.friend-item:hover{background-color:#f8f9fa}.friend-item.selected{background-color:#e3f2fd}.friend-info{margin-left:10px}.friend-name{color:#333}.group-name-input{display:flex;flex-direction:column;gap:8px}.group-name-input input{border:1px solid #ced4da;border-radius:8px;font-size:1rem;padding:10px}.modal-footer{border-top:1px solid #e9ecef;gap:10px}.btn{border:none;border-radius:8px;font-size:1rem;padding:8px 20px}.btn:disabled{cursor:not-allowed;opacity:.7}.cancel{background-color:#6c757d;color:#fff}.create,.next{background-color:#007bff;color:#fff}.back{background-color:#6c757d;color:#fff}.chatContainer{height:calc(100vh - 75px);overflow-y:auto}.chatHeader{align-items:center;background-color:#fff;border-bottom:1px solid #ddd;display:flex;flex-direction:row;justify-content:space-between;margin-bottom:20px;padding:15px 30px;position:fixed;width:100%}.leaveBtn{background-color:#e74c3c}.InviteBtn,.leaveBtn{border:none;border-radius:20px;box-shadow:0 2px 4px #0000001a;color:#fff;cursor:pointer;font-weight:700;padding:8px 16px;transition:background-color .2s}.InviteBtn{background-color:#4caf50;margin-right:10px}.chatInfo{font-size:20px;font-weight:700}.chatBox{background-color:#fff;border-radius:.5rem;box-shadow:0 1px 3px #0000001a;display:flex;flex:1 1;flex-direction:column;gap:1rem;padding:1.5rem}.messageWrap{min-height:700px}.messageList{display:flex;flex:1 1;flex-direction:column;gap:1rem;overflow-y:auto;padding:1rem}.message{display:flex;font-size:.875rem;height:100%;line-height:1.25rem;max-width:70%}.myMessage{align-self:flex-end;color:#fff;flex-direction:row-reverse}.senderLabel{font-size:15px;font-weight:700;padding:3px}.otherMessage{align-self:flex-start;color:#1f2937;flex-direction:row}.myMessage2{background-color:#2563eb}.myMessage2,.otherMessage2{border-radius:.5rem;padding:.75rem 1rem}.otherMessage2{background-color:#f3f4f6}.messagesContainer{background-color:#fff;border-radius:.5rem;box-shadow:0 1px 3px #0000001a;display:flex;flex:1 1;flex-direction:column;gap:1rem;padding:1rem}.messageDateWrap{display:flex;justify-content:center;margin:20px 0}.messageDateWrap:after,.messageDateWrap:before{border-bottom:1px solid #e5e7eb;content:"";flex:1 1}.messageDate{background-color:#f9fafb;border-radius:12px;color:#6b7280;font-size:.875rem;margin:0 10px;padding:0 10px}.messageInput{background-color:#fff;border-radius:.5rem;box-shadow:0 1px 3px #0000001a;display:flex;gap:.5rem;padding:1rem}.input{background-color:#f9fafb;border:1px solid #e5e7eb;border-radius:.5rem;flex:1 1;font-size:.875rem;outline:none;padding:.875rem 1rem;transition:all .2s ease}.input:focus{background-color:#fff;border-color:#2563eb;box-shadow:0 0 0 2px #2563eb1a}.input::placeholder{color:#9ca3af}.sendButton{background-color:#2563eb;border:none;border-radius:.375rem;color:#fff;cursor:pointer;font-weight:500;padding:.75rem 1.5rem;transition:background-color .2s ease}.sendButton:hover{background-color:#1d4ed8}.messageInfo{color:#6b7280;font-size:.75rem;margin-top:.25rem}.messageContent{word-break:break-word}.inputForm{background-color:#fff;border:1px solid #e5e7eb;border-bottom:none;border-radius:.75rem .75rem 0 0;box-shadow:0 -2px 4px #0000000d;display:flex;gap:.75rem;padding:1rem}.button{align-items:center;background-color:#4caf50;border:none;border-radius:4px;color:#fff;cursor:pointer;display:flex;gap:8px;padding:10px 20px;transition:background-color .3s}.button:hover{background-color:#45a049}.notification{animation:slideIn .3s ease-out;border-radius:4px;box-shadow:0 2px 5px #0003;color:#fff;padding:12px 24px;position:fixed;right:20px;top:20px;z-index:1000}.readCounting{align-self:flex-end;color:green}.myCounting{margin-right:10px;text-align:right}.otherCounting{margin-left:10px}.messageTime{color:#000;width:auto}.test{color:#000}.actionMessage{align-items:center;display:flex;justify-content:center}.actionMessageText{background:#999;border-radius:15px;color:#fff;font-size:14px;margin:10px 0;padding:6px 20px}@media (max-width:768px){.chatHeader{flex-direction:column;gap:10px;padding:10px}.chatInfo{font-size:15px}.InviteBtn,.leaveBtn{font-size:14px;padding:6px 12px}.input,.messageInput{padding:.5rem}.sendButton{padding:.5rem 1rem}.button{font-size:14px;padding:5px 10px}.message{max-width:100%}}.modal-overlay{align-items:center;background-color:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.modal-content{background:#fff;border-radius:12px;display:flex;flex-direction:column;max-height:80vh;max-width:500px;width:90%}.modal-header{align-items:center;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;padding:1rem}.modal-header h2{color:#1a1a1a;font-size:1.25rem;margin:0}.close-btn{background:none;border:none;color:#6b7280;cursor:pointer;font-size:1.5rem}.modal-body{flex:1 1;overflow-y:auto;padding:1rem}.friend-list{display:flex;flex-direction:column;gap:.5rem}.friend-item{border-radius:8px;cursor:pointer;padding:.75rem;transition:background-color .2s}.friend-item.disabled{background-color:#f3f4f6;cursor:not-allowed}.member-status{color:#6b7280;font-size:.8rem;margin-left:.5rem}.friend-item:hover{background-color:#f3f4f6}.friend-item.selected{background-color:#e5e7eb}.friend-info{align-items:center;display:flex;gap:.75rem}.friend-name{color:#1a1a1a;font-size:1rem}.modal-footer{border-top:1px solid #e5e7eb;display:flex;gap:.75rem;justify-content:flex-end;padding:1rem}.btn{border-radius:6px;cursor:pointer;font-size:.875rem;font-weight:500;padding:.5rem 1rem;transition:all .2s}.btn.cancel{background-color:#f3f4f6;border:none;color:#4b5563}.btn.cancel:hover{background-color:#e5e7eb}.btn.invite{background-color:#4a90e2;border:none;color:#fff}.btn.invite:hover{background-color:#357abd}.btn.invite:disabled{background-color:#93c5fd;cursor:not-allowed}.StartPage_container__zqS9J{align-items:center;background:linear-gradient(135deg,#f5f7fa,#c3cfe2);display:flex;justify-content:center;min-height:100vh}.StartPage_content__u9mtq{background:#ffffffe6;border-radius:20px;box-shadow:0 10px 30px #0000001a;max-width:500px;padding:3rem;text-align:center;width:90%}.StartPage_logoContainer__xsacZ{margin-bottom:1.5rem}.StartPage_logo__jiT3l{animation:StartPage_bounce__qLcc4 2s infinite;display:inline-block;font-size:4rem}.StartPage_title__ZnwHi{color:#2c3e50;font-size:2.5rem;font-weight:700;margin-bottom:1rem}.StartPage_subtitle__8P3vA{color:#666;font-size:1.1rem;margin-bottom:2.5rem}.StartPage_startButton__gYYD5{align-items:center;background:linear-gradient(135deg,#4caf50,#45a049);border:none;border-radius:50px;color:#fff;cursor:pointer;display:flex;font-size:1.2rem;gap:.5rem;justify-content:center;margin:0 auto;padding:1rem 2rem;transition:all .3s ease;width:200px}.StartPage_startButton__gYYD5:hover{box-shadow:0 5px 15px #4caf504d;transform:translateY(-2px)}.StartPage_buttonIcon__xWfxI{transition:transform .3s ease}.StartPage_startButton__gYYD5:hover .StartPage_buttonIcon__xWfxI{transform:translateX(5px)}.StartPage_features__JpRYp{display:flex;gap:2rem;justify-content:center;margin-top:3rem}.StartPage_feature__za5wL{align-items:center;color:#666;display:flex;flex-direction:column;gap:.5rem}.StartPage_featureIcon__8IYU4{font-size:1.5rem}@keyframes StartPage_bounce__qLcc4{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@media (max-width:600px){.StartPage_content__u9mtq{padding:2rem}.StartPage_features__JpRYp{flex-direction:column;gap:1.5rem}.StartPage_title__ZnwHi{font-size:2rem}}
/*# sourceMappingURL=main.31430daa.css.map*/