:root{--bg-dark: #1c1d21;--bg-sidebar: #17212b;--bg-chat: #0e1621;--text-main: #ffffff;--text-muted: #7f91a4;--accent: #2481cc;--accent-hover: #288fde;--border: #101921;--msg-in: #182533;--msg-out: #2b5278;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;color-scheme:dark}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--bg-chat);color:var(--text-main);min-height:100vh;overflow:hidden}#root{height:100vh;display:flex}.scrollbar-hide::-webkit-scrollbar{display:none}:root{--tg-bg: #0e1621;--tg-sidebar: #17212b;--tg-active: #2481cc;--tg-active-hover: #288ada;--tg-border: #0b1118;--tg-text: #ffffff;--tg-text-muted: #7f91a4;--tg-msg-out: #2b5278;--tg-msg-in: #182533;--tg-danger: #ea596e;--sidebar-w: 280px;--panel-w: 320px}*{box-sizing:border-box;margin:0;padding:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased}body{background-color:var(--tg-bg);color:var(--tg-text);overflow:hidden;height:100vh}.layout{display:flex;height:100vh;width:100vw;background:var(--tg-bg)}.sidebar{width:var(--sidebar-w);background:var(--tg-sidebar);border-right:1px solid var(--tg-border);display:flex;flex-direction:column;transition:transform .3s ease;z-index:100}.sidebar-header{padding:24px 20px;border-bottom:1px solid var(--tg-border)}.sidebar-header h2{font-size:18px;font-weight:600;margin-bottom:16px;color:var(--tg-text)}.system-status{display:inline-flex;align-items:center;gap:8px;font-size:13px;padding:6px 12px;border-radius:20px;background:#ea596e1a;color:var(--tg-danger);margin-bottom:16px}.system-status.active{background:#10b9811a;color:#10b981}.system-controls{display:flex;gap:10px}.btn-primary,.btn-secondary{flex:1;padding:10px;border:none;border-radius:8px;cursor:pointer;font-size:14px;font-weight:500;display:flex;align-items:center;justify-content:center;gap:8px;transition:all .2s;outline:none}.btn-primary{background:var(--tg-active);color:#fff}.btn-primary:hover{background:var(--tg-active-hover)}.btn-secondary{background:#242f3d;color:#fff}.btn-danger{padding:10px 16px;border:none;border-radius:8px;cursor:pointer;font-size:14px;font-weight:500;display:inline-flex;align-items:center;justify-content:center;transition:all .2s;outline:none;background:#ea596e33;color:var(--tg-danger)}.btn-danger:hover{background:#ea596e66}.card-footer .btn-danger{flex:1}.btn-primary.small,.btn-secondary.small,.btn-danger.small{padding:6px 14px;font-size:12px}.sidebar-nav{flex:1;padding:12px 0}.nav-item{display:flex;align-items:center;gap:16px;padding:12px 20px;color:var(--tg-text-muted);background:none;border:none;width:100%;cursor:pointer;font-size:15px;transition:all .2s;text-align:left}.nav-item:hover{background:#ffffff0d;color:#fff}.nav-item.active{color:#fff;background:var(--tg-active)}.sidebar-footer{padding:16px 20px;border-top:1px solid var(--tg-border)}.btn-logout{color:var(--tg-text-muted);background:none;border:none;cursor:pointer;font-size:14px}.btn-logout:hover{color:var(--tg-danger)}.chat-list-panel{width:var(--panel-w);background:var(--tg-sidebar);border-right:1px solid var(--tg-border);display:flex;flex-direction:column}.panel-header{padding:16px 20px;border-bottom:1px solid var(--tg-border)}.panel-header h3{font-size:13px;font-weight:600;color:var(--tg-active);text-transform:uppercase;letter-spacing:.5px}.list-content{flex:1;overflow-y:auto}.list-item{display:flex;align-items:center;gap:12px;padding:12px 20px;cursor:pointer;transition:background .1s}.list-item:hover{background:#ffffff0a}.list-item.active{background:var(--tg-active)}.list-item-info{flex:1;overflow:hidden}.btn-delete-chat{opacity:0;background:#ea596e1a;border:none;color:var(--tg-danger);cursor:pointer;padding:4px 10px;border-radius:6px;transition:all .2s;font-size:11px;font-weight:600}.list-item:hover .btn-delete-chat{opacity:.8}.btn-delete-chat:hover{background:#ea596e4d;color:var(--tg-danger);opacity:1!important}.btn-icon{background:none;border:none;color:var(--tg-text-muted);cursor:pointer;display:flex;align-items:center;justify-content:center;padding:8px;border-radius:50%;transition:all .2s}.btn-icon:hover{background:#ffffff1a;color:#fff}.chat-name-row{display:flex;justify-content:space-between;align-items:center}.chat-title{font-size:15px;font-weight:500;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chat-subtitle{display:block;font-size:13px;color:var(--tg-text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chat-divider{padding:15px 15px 8px;font-size:11px;font-weight:600;text-transform:uppercase;color:var(--tg-active);letter-spacing:.5px;opacity:.8}.chat-avatar{position:relative;display:flex;align-items:center;justify-content:center;width:42px;height:42px;background:#242f3d;border-radius:50%;color:var(--tg-active)}.avatar-container{width:100%;height:100%;border-radius:50%;overflow:hidden;display:flex;align-items:center;justify-content:center;font-weight:600;color:#fff;text-transform:uppercase}.avatar-image{width:100%;height:100%;object-fit:cover}.avatar-fallback-0{background-color:#f87171}.avatar-fallback-1{background-color:#fb923c}.avatar-fallback-2{background-color:#fbbf24}.avatar-fallback-3{background-color:#4ade80}.avatar-fallback-4{background-color:#22d3ee}.avatar-fallback-5{background-color:#818cf8}.avatar-fallback-6{background-color:#c084fc}.avatar-fallback-7{background-color:#f472b6}.unread-badge{position:absolute;top:-2px;right:-2px;background:var(--tg-active);color:#fff;font-size:10px;font-weight:600;min-width:18px;height:18px;border-radius:9px;display:flex;align-items:center;justify-content:center;padding:0 5px;border:2px solid var(--tg-sidebar)}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}.bot-bounce{animation:bounce .5s ease infinite}.chat-header-info{display:flex;flex-direction:column}.chat-window{flex:1;display:flex;flex-direction:column;background:var(--tg-bg);position:relative}.chat-header{height:60px;padding:0 24px;display:flex;align-items:center;background:var(--tg-sidebar);border-bottom:1px solid var(--tg-border)}.messages-container{flex:1;padding:20px;overflow-y:auto;display:flex;flex-direction:column;gap:8px;background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADIAAAAyCAMAAAApe8faAAAABGdBTUEAALGPC/xhBQAAAAFzUkdCAK7OHOkAAAADUExURf///6enp2ZmZllZWVhYWFdXV1cXF1UVFRESERAQEA8PDw4ODg0NDQwMCwsLCwoKCgkJCQgICAcHBwYGBgUFBQQEBAICAgEBAQEAAA8PDw0NDQsLCwoKCgkJCQgICAcHBwYGBgUFBQQEBAICAgEBAQEADMTMAAAAAXfUEQTA0MTMAAAAAXfUEQTA0MTMAAAAAXfUEQTA0MTMAAAAAXfUEQTA0MTMA)}.message{max-width:80%;padding:8px 14px;font-size:15px;line-height:1.45;position:relative;word-wrap:break-word}.message-in{background:var(--tg-msg-in);align-self:flex-start;border-radius:4px 15px 15px;display:flex;flex-direction:column;padding-left:14px;position:relative;margin-left:40px}.msg-avatar-mini{position:absolute;left:-36px;bottom:0;width:32px;height:32px}.message-out{background:var(--tg-msg-out);align-self:flex-end;border-radius:15px 15px 4px}.message-system{align-self:center;background:#647382d9;color:#fff;padding:6px 16px;border-radius:20px;font-size:13px;font-weight:500;text-align:center;max-width:80%;margin:8px auto}.msg-sender{font-size:13px;font-weight:600;color:var(--tg-active);margin-bottom:4px}.msg-time{font-size:11px;color:var(--tg-text-muted);text-align:right;margin-top:4px}.chat-input-area{padding:12px 16px;background:var(--tg-sidebar);display:flex;align-items:center;gap:12px}.chat-input-area input{flex:1;background:var(--tg-bg);border:1px solid var(--tg-border);padding:12px 18px;border-radius:24px;color:#fff;outline:none;font-size:15px}.btn-send{background:none;border:none;color:var(--tg-active);cursor:pointer;display:flex;transition:transform .2s}.btn-send:hover{transform:scale(1.1)}.emoji-picker-wrapper{position:relative}.btn-emoji{background:none;border:none;color:var(--tg-text-muted);cursor:pointer;display:flex;align-items:center;justify-content:center;padding:8px;border-radius:50%;transition:all .2s}.btn-emoji:hover{color:var(--tg-active);background:#2481cc1a}.emoji-picker{position:absolute;bottom:50px;left:0;background:var(--tg-sidebar);border:1px solid var(--tg-border);border-radius:16px;padding:12px;width:320px;max-height:350px;overflow-y:auto;box-shadow:0 8px 32px #0006;z-index:1000;animation:emojiSlideUp .2s ease}@keyframes emojiSlideUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.emoji-category{margin-bottom:12px}.emoji-category-name{font-size:12px;color:var(--tg-text-muted);margin-bottom:8px;text-transform:uppercase;letter-spacing:.5px}.emoji-grid{display:grid;grid-template-columns:repeat(10,1fr);gap:2px}.emoji-item{font-size:20px;padding:4px;cursor:pointer;border-radius:6px;text-align:center;transition:all .15s}.emoji-item:hover{background:#2481cc33;transform:scale(1.2)}.management-panel{flex:1;overflow-y:auto;background:var(--tg-bg);padding:32px}.panel-top{display:flex;flex-direction:column;align-items:center;gap:16px;margin-bottom:32px;text-align:center}.panel-top h2{font-size:24px;font-weight:700;color:var(--tg-text)}.card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:20px}.card{background:var(--tg-sidebar);border:1px solid var(--tg-border);border-radius:12px;padding:20px;display:flex;flex-direction:column;gap:16px;transition:transform .2s}.card:hover{transform:translateY(-2px);border-color:#2c394a}.card-header{display:flex;align-items:center;gap:12px}.card-header h4{flex:1;font-size:17px;font-weight:600}.card-body{font-size:14px;color:var(--tg-text-muted)}.card-footer{display:flex;gap:10px;margin-top:auto}.card-footer button{flex:1;padding:8px;border:none;border-radius:6px;background:#242f3d;color:#fff;font-size:13px;font-weight:500;cursor:pointer}.card-footer .btn-accent{background:var(--tg-active)}.card-footer .btn-danger{background:#ea596e33;color:var(--tg-danger)}.card-footer .btn-danger:hover{background:#ea596e66}.bot-toggle-btn{border:none;padding:6px 12px;border-radius:6px;font-size:11px;font-weight:600;cursor:pointer;transition:all .2s;text-transform:uppercase;letter-spacing:.5px;background:#242f3d;color:var(--tg-text-muted);border:1px solid var(--tg-border)}.bot-toggle-btn:hover{background:#2c394a;border-color:#3e4b5c}.bot-toggle-btn.active-ai{background:#2481cc26;color:var(--tg-active);border-color:var(--tg-active)}.bot-toggle-btn.manual{background:#ea596e1a;color:var(--tg-danger);border-color:var(--tg-danger)}.edit-form-container{max-width:600px;margin:0 auto;background:var(--tg-sidebar);padding:32px;border-radius:16px;border:1px solid var(--tg-border)}.field-group{margin-bottom:20px}.field-group label{display:block;font-size:14px;color:var(--tg-text-muted);margin-bottom:8px}.field-group input:not([type=checkbox]),.field-group textarea,.field-group select{width:100%;padding:12px;background:var(--tg-bg);border:1px solid var(--tg-border);border-radius:8px;color:#fff;outline:none;font-size:15px}.field-group select{appearance:none;-webkit-appearance:none;-moz-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%236c7883' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;padding-right:36px;cursor:pointer;transition:all .2s}.field-group select:hover{border-color:var(--tg-active)}.field-group select:focus{border-color:var(--tg-active);box-shadow:0 0 0 2px #2481cc33}.field-group select option{background:var(--tg-sidebar);color:#fff;padding:10px}.participant-item:hover{background:#ffffff08}.participant-item{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;border-bottom:1px solid var(--tg-border)}.participant-item:last-child{border-bottom:none}.participant-avatar-container{width:38px;height:38px;min-width:38px;margin-right:12px}.btn-delete-chat{background:transparent;border:none;color:var(--tg-text-muted);padding:8px;border-radius:6px;opacity:0;transition:all .2s;cursor:pointer}.list-item:hover .btn-delete-chat{opacity:1}.btn-delete-chat:hover{color:var(--tg-danger);background:#ea596e1a}@media(max-width:1024px){:root{--sidebar-w: 80px}.nav-item span,.sidebar-header h2,.system-status,.btn-primary span,.btn-secondary span,.sidebar-header .system-controls{display:none}.sidebar-header{padding:20px 0;display:flex;justify-content:center}.nav-item{justify-content:center;padding:16px 0}.nav-item svg{width:24px;height:24px}}@media(max-width:768px){.layout{flex-direction:column}.sidebar{width:100%;height:60px;flex-direction:row;position:fixed;bottom:0;left:0;border-right:none;border-top:1px solid var(--tg-border);justify-content:space-around;padding:0}.sidebar-header,.sidebar-footer{display:none}.sidebar-nav{display:flex;width:100%;padding:0;margin:0}.nav-item{flex:1;flex-direction:column;justify-content:center;gap:4px;padding:0;text-align:center}.nav-item span{display:block;font-size:10px}.nav-item svg{width:20px;height:20px}.chat-list-panel{width:100%;height:100%;position:absolute;top:0;left:0;z-index:50;transition:transform .3s ease}.chat-list-panel.hidden{transform:translate(-100%)}.chat-window{width:100%;height:calc(100vh - 60px);margin-bottom:60px}.management-panel{padding:16px;height:calc(100vh - 60px);margin-bottom:60px}.card-grid{grid-template-columns:1fr}.panel-top h2{font-size:20px}}.login-page{position:fixed;top:0;left:0;width:100vw;height:100vh;display:flex;align-items:center;justify-content:center;background:var(--tg-bg);z-index:1000}.login-box{width:100%;max-width:360px;padding:40px;background:var(--tg-sidebar);border-radius:16px;text-align:center}.login-box h1{font-size:22px;margin-bottom:8px}.login-box p{color:var(--tg-text-muted);font-size:14px;margin-bottom:32px}.login-input{width:100%;padding:14px;background:var(--tg-bg);border:1px solid var(--tg-border);border-radius:10px;color:#fff;margin-bottom:12px;outline:none}.btn-login{width:100%;padding:14px;background:var(--tg-active);color:#fff;border:none;border-radius:10px;font-weight:600;cursor:pointer;margin-top:8px}.mobile-only{display:none}@media(max-width:768px){.mobile-only{display:flex}}.bot-selector-list{display:flex;flex-direction:column;gap:4px;background:var(--tg-bg);padding:12px;border-radius:12px;border:1px solid var(--tg-border);max-height:260px;overflow-y:auto}.bot-checkbox-item{display:flex;align-items:center;gap:0;cursor:pointer;padding:14px 16px;border-radius:8px;transition:all .2s ease;background:transparent}.bot-checkbox-item:hover{background:#ffffff14}.bot-checkbox-item input[type=checkbox]{appearance:none;-webkit-appearance:none;width:22px;height:22px;min-width:22px;border:2px solid rgba(255,255,255,.4);border-radius:6px;background:transparent;cursor:pointer;position:relative;flex-shrink:0;margin:0;transition:all .2s ease}.bot-checkbox-item input[type=checkbox]:hover{border-color:#fff9}.bot-checkbox-item input[type=checkbox]:checked{background:var(--tg-active);border-color:var(--tg-active)}.bot-checkbox-item input[type=checkbox]:checked:after{content:"";position:absolute;width:5px;height:10px;border:solid white;border-width:0 2px 2px 0;top:50%;left:50%;transform:translate(-50%,-60%) rotate(45deg)}.bot-checkbox-name{font-size:16px;font-weight:500;color:var(--tg-text);line-height:22px;margin-left:16px;-webkit-user-select:none;user-select:none;display:inline-block}.modal-overlay{position:fixed;inset:0;background:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:10000;animation:fadeIn .2s ease-out}.modal-content{background:var(--tg-sidebar);padding:24px;border-radius:16px;border:1px solid var(--tg-border);box-shadow:0 16px 48px #00000080;width:100%;max-width:400px;animation:scaleIn .3s cubic-bezier(.175,.885,.32,1.275)}.toast-container{position:fixed;top:24px;right:24px;display:flex;flex-direction:column;gap:12px;z-index:10001}.custom-toast{background:var(--tg-sidebar);padding:16px 20px;border-radius:12px;border:1px solid var(--tg-border);box-shadow:0 8px 24px #0000004d;display:flex;align-items:center;gap:12px;min-width:280px;max-width:400px;animation:slideInRight .3s cubic-bezier(.175,.885,.32,1.275)}.toast-icon{flex-shrink:0}.toast-success .toast-icon{color:#4caf50}.toast-error .toast-icon{color:#f44336}.toast-content{flex:1}.toast-title{font-weight:600;font-size:14px;margin-bottom:2px}.toast-message{font-size:13px;color:var(--tg-text-muted)}@keyframes slideInRight{0%{transform:translate(120%);opacity:0}to{transform:translate(0);opacity:1}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes scaleIn{0%{transform:scale(.9);opacity:0}to{transform:scale(1);opacity:1}}.list-item.bot-bounce{animation:bounceBot 1s infinite}@keyframes bounceBot{0%,to{transform:translateY(0)}50%{transform:translateY(-3px)}}.custom-toast.clickable-toast{cursor:pointer;transition:all .2s}.custom-toast.clickable-toast:hover{border-color:var(--tg-active);background:#2481cc0d;transform:translateY(-2px)}.message-media{margin:8px 0;max-width:100%}.message-media img{max-width:100%;max-height:400px;border-radius:8px;display:block;cursor:pointer;box-shadow:0 2px 8px #0003;transition:filter .2s}.message-media img:hover{filter:brightness(1.1)}
