:root{--bg-main: #080808;--bg-sidebar: #0f0f0f;--bg-chat-header: #0f0f0f;--bg-bubble-self: #0079d3;--bg-bubble-other: #161616;--bg-input: #161616;--border-color: #1a1a1a;--text-primary: #f2f4f5;--text-secondary: #8e8e8f;--text-muted: #575758;--accent-color: #ff4500;--accent-blue: #0079d3;--accent-green: #24a0ed;--online-color: #46d160;--hover-bg: #222222;--shadow-sm: 0 2px 4px rgba(0, 0, 0, .4);--shadow-md: 0 4px 12px rgba(0, 0, 0, .5);--shadow-lg: 0 8px 24px rgba(0, 0, 0, .6)}*{box-sizing:border-box;margin:0;padding:0}body,html,#root{height:100%;width:100%;overflow:hidden;font-family:Inter,sans-serif;background-color:var(--bg-main);color:var(--text-primary)}h1,h2,h3,h4{font-family:Outfit,sans-serif}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}@keyframes slideIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse{0%,to{opacity:.5}50%{opacity:1}}@keyframes pop{0%{transform:scale(.9);opacity:0}to{transform:scale(1);opacity:1}}button{background:none;border:none;color:inherit;cursor:pointer;outline:none;font-family:inherit;transition:all .2s cubic-bezier(.4,0,.2,1)}input{border:none;background:none;color:inherit;font-family:inherit;outline:none}.app-container{display:flex;height:100vh;width:100vw;background-color:var(--bg-main)}.sidebar{width:300px;background-color:var(--bg-sidebar);border-right:1px solid var(--border-color);display:flex;flex-direction:column;height:100%;flex-shrink:0}.sidebar-header{height:68px;border-bottom:1px solid var(--border-color);display:flex;align-items:center;justify-content:space-between;padding:0 20px}.sidebar-title{font-size:1.3rem;font-weight:700;color:var(--text-primary);display:flex;align-items:center;gap:10px}.channel-list{flex:1;overflow-y:auto;padding:14px 10px}.channel-item{width:100%;display:flex;align-items:center;gap:12px;padding:10px 12px;border-radius:8px;margin-bottom:4px;text-align:left;border:1px solid transparent;background:transparent;transition:all .2s cubic-bezier(.4,0,.2,1);color:var(--text-secondary);cursor:pointer}.channel-item:hover{background-color:#ffffff0a;color:var(--text-primary);transform:translate(2px)}.channel-item.active{background-color:#0079d314;border-color:#0079d34d;color:var(--text-primary);box-shadow:0 4px 12px #00000026;font-weight:500}.hover-plus-btn:hover{background:#ffffff26!important;color:#fff!important}.channel-avatar{width:40px;height:40px;border-radius:50%;background:linear-gradient(135deg,#0079d3,#24a0ed);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:1rem;color:#fff;flex-shrink:0}.channel-info{flex:1;min-width:0}.channel-name{font-weight:600;font-size:.92rem;margin-bottom:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.channel-preview{font-size:.76rem;color:var(--text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar-footer{padding:16px;border-top:1px solid var(--border-color);background-color:#00000026;display:flex;align-items:center;gap:12px}.user-avatar-container{position:relative}.user-avatar{width:38px;height:38px;border-radius:50%;background-color:#223033;display:flex;align-items:center;justify-content:center;overflow:hidden;border:1px solid var(--border-color)}.user-avatar img{width:100%;height:100%;object-fit:cover}.online-dot{position:absolute;bottom:0;right:0;width:10px;height:10px;background-color:var(--online-color);border-radius:50%;border:2px solid var(--bg-sidebar)}.user-details{flex:1;min-width:0}.user-name{font-size:.85rem;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-role{font-size:.75rem;color:var(--text-secondary)}.chat-pane{flex:1;display:flex;flex-direction:column;height:100%;background-color:var(--bg-main);position:relative;min-width:0;max-width:100%}.chat-header{height:60px;border-bottom:1px solid var(--border-color);background-color:var(--bg-chat-header);display:flex;align-items:center;justify-content:space-between;padding:0 20px}.chat-header-info{display:flex;flex-direction:column;min-width:0}.chat-header-title{font-weight:700;font-size:1rem;display:flex;align-items:center;gap:8px;min-width:0;width:100%}.chat-header-title span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-header-desc{font-size:.75rem;color:var(--text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-header-actions{display:flex;align-items:center;gap:12px}.chat-messages{flex:1;overflow-y:auto;padding:16px 24px;display:flex;flex-direction:column;gap:12px}.message-row{display:flex;justify-content:space-between;align-items:flex-start;width:100%;padding:4px 0;position:relative;transition:background-color .15s ease}.message-row:hover{background-color:#ffffff05}.message-group{display:flex;gap:12px;animation:pop .15s ease-out;width:100%;align-items:flex-start}.message-avatar{width:36px;height:36px;border-radius:50%;background-color:#223033;display:flex;align-items:center;justify-content:center;overflow:hidden;flex-shrink:0;cursor:pointer}.message-avatar img{width:100%;height:100%;object-fit:cover}.message-content{display:flex;flex-direction:column;gap:3px;flex:1;min-width:0}.message-meta{display:flex;align-items:center;gap:8px;font-size:.85rem;line-height:1}.message-username{font-weight:700;color:var(--text-primary);cursor:pointer}.message-username:hover{color:var(--accent-blue)}.message-time{color:var(--text-secondary);font-size:.75rem}.message-bubble{padding:0;background-color:transparent!important;color:var(--text-primary)!important;border-radius:0!important;font-size:.95rem;line-height:1.45;word-break:break-word;width:100%}.message-media{max-width:360px;border-radius:8px;overflow:hidden;margin-top:4px;border:1px solid var(--border-color)}.message-media img{width:100%;height:auto;display:block}.system-message{align-self:center;background-color:#0003;border:1px solid var(--border-color);padding:4px 14px;border-radius:14px;font-size:.78rem;color:var(--text-secondary);text-align:center;margin:6px 0;font-weight:500}.chat-input-container{padding:16px 20px;border-top:1px solid var(--border-color);background-color:var(--bg-main);position:relative}.chat-input-wrapper{background-color:var(--bg-input);border:1px solid var(--border-color);border-radius:24px;padding:8px 16px;display:flex;align-items:center;gap:12px;transition:border-color .25s}.chat-input-wrapper:focus-within{border-color:var(--text-secondary)}.chat-input-field{flex:1;font-size:.9rem;padding:6px 0;min-width:0}.chat-input-actions{display:flex;align-items:center;gap:8px}.chat-input-btn{width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--text-secondary)}.chat-input-btn:hover{background-color:var(--hover-bg);color:var(--text-primary)}.chat-input-btn.send{color:var(--accent-blue)}.chat-input-btn.send:hover{background-color:#0079d31a;color:#24a0ed}.typing-indicator{display:flex;align-items:center;gap:4px;padding:8px 20px;font-size:.75rem;color:var(--text-secondary);position:absolute;bottom:80px;left:0;background-color:#0b1416f2;width:100%}.typing-dot{width:4px;height:4px;background-color:var(--text-secondary);border-radius:50%;animation:pulse 1s infinite}.typing-dot:nth-child(2){animation-delay:.2s}.typing-dot:nth-child(3){animation-delay:.4s}.mod-panel-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background-color:var(--bg-main);z-index:999;display:flex;justify-content:center;-webkit-backdrop-filter:none;backdrop-filter:none}.mod-panel-content{width:100%;height:100%;background-color:var(--bg-sidebar);padding:24px;display:flex;flex-direction:column;gap:24px;animation:slideIn .2s cubic-bezier(0,0,.2,1);overflow-y:auto}.mod-queue-card{background:linear-gradient(135deg,#0f172a,#1e1b2e);border:1px solid rgba(139,92,246,.12);border-radius:12px;padding:20px;display:flex;flex-direction:column;gap:14px;box-shadow:0 4px 20px #0000004d,inset 0 1px #ffffff08;transition:border-color .25s ease,box-shadow .25s ease}.mod-queue-card:hover{border-color:#8b5cf640}.mod-queue-card.pending{border:1px solid rgba(139,92,246,.3);box-shadow:0 4px 20px #8b5cf614,inset 0 1px #ffffff08}.mod-actions-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}@media (max-width: 480px){.mod-queue-card{padding:12px!important;gap:8px!important}.mod-actions-grid{grid-template-columns:1fr!important;gap:6px!important}.mod-panel-content{padding:14px!important;gap:16px!important}.mod-panel-title{font-size:1rem!important}}.mod-panel-header{display:flex;align-items:center;justify-content:space-between}.mod-panel-title{font-size:1.2rem;font-weight:700;display:flex;align-items:center;gap:10px;color:var(--text-primary)}.storage-stats-container{background-color:var(--bg-main);border:1px solid var(--border-color);border-radius:12px;padding:16px;display:flex;flex-direction:column;gap:12px}.storage-header{display:flex;justify-content:space-between;font-size:.85rem;font-weight:600}.storage-progress-bar{height:10px;background-color:var(--bg-input);border-radius:5px;overflow:hidden;position:relative}.storage-progress-fill{height:100%;background:linear-gradient(90deg,var(--accent-blue),var(--online-color));border-radius:5px;transition:width .3s ease}.storage-legend{display:flex;justify-content:space-between;font-size:.75rem;color:var(--text-secondary)}.mod-section-title{font-size:.85rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--text-secondary);border-bottom:1px solid var(--border-color);padding-bottom:6px;margin-bottom:10px}.purge-buttons-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.btn-purge{padding:8px;border-radius:6px;font-size:.8rem;font-weight:600;background-color:var(--bg-main);border:1px solid var(--border-color);text-align:center}.btn-purge:hover{background-color:var(--hover-bg);border-color:var(--text-secondary)}.btn-purge-danger{width:100%;padding:12px;border-radius:8px;font-size:.85rem;font-weight:600;background-color:#ff450026;border:1px solid var(--accent-color);color:#ff581a;margin-top:8px}.btn-purge-danger:hover{background-color:var(--accent-color);color:#fff}.word-filter-list{max-height:120px;overflow-y:auto;display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.word-badge{background-color:var(--bg-main);border:1px solid var(--border-color);padding:4px 8px;border-radius:12px;font-size:.75rem;display:flex;align-items:center;gap:6px}.word-badge button{color:var(--accent-color);font-size:.75rem}.picker-popover{position:absolute;bottom:80px;right:20px;background-color:var(--bg-sidebar);border:1px solid var(--border-color);border-radius:12px;padding:12px;box-shadow:var(--shadow-lg);z-index:50;width:320px;max-height:400px;display:flex;flex-direction:column;gap:8px;animation:pop .18s cubic-bezier(.34,1.56,.64,1)}.gif-search-input{background-color:var(--bg-input);border:1px solid var(--border-color);padding:8px 12px;border-radius:8px;font-size:.85rem;width:100%}.gif-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:6px;overflow-y:auto;max-height:280px;padding:4px}.gif-item{border-radius:6px;overflow:hidden;cursor:pointer;border:1px solid transparent;height:80px}.gif-item:hover{border-color:var(--accent-blue);transform:scale(1.02)}.gif-item img{width:100%;height:100%;object-fit:cover}.emoji-grid{display:grid;grid-template-columns:repeat(8,1fr);gap:8px;font-size:1.25rem;overflow-y:auto;max-height:200px}.emoji-btn{display:flex;align-items:center;justify-content:center;height:32px;border-radius:6px}.emoji-btn:hover{background-color:var(--hover-bg)}.avatar-selector-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:10px}.avatar-option{width:48px;height:48px;border-radius:50%;overflow:hidden;cursor:pointer;border:2px solid transparent}.avatar-option.selected{border-color:var(--accent-blue)}.avatar-option img{width:100%;height:100%;object-fit:cover}.modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#000000bf;display:flex;align-items:center;justify-content:center;z-index:1000;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.modal-content{background-color:var(--bg-sidebar);border:1px solid var(--border-color);border-radius:16px;padding:32px;width:420px;max-width:90%;box-shadow:var(--shadow-lg);animation:pop .25s cubic-bezier(.34,1.56,.64,1);display:flex;flex-direction:column;gap:20px}.modal-title{font-size:1.4rem;font-weight:700;text-align:center}.form-group{display:flex;flex-direction:column;gap:8px}.form-label{font-size:.85rem;font-weight:600;color:var(--text-secondary)}.form-input{background-color:var(--bg-input);border:1px solid var(--border-color);padding:12px 16px;border-radius:8px;font-size:.9rem;color:var(--text-primary);width:100%}.form-input:focus{border-color:var(--accent-blue)}.btn-primary{background-color:var(--accent-blue);color:#fff;padding:12px;border-radius:8px;font-weight:600;font-size:.9rem;text-align:center;width:100%}.btn-primary:hover{background-color:#24a0ed}.message-actions-menu{display:flex;align-items:center;gap:4px;background-color:#121c1e;border:1px solid var(--border-color);border-radius:20px;padding:3px 10px;position:absolute;right:24px;top:10px;box-shadow:var(--shadow-md);opacity:0;pointer-events:none;transition:opacity .15s ease-in-out;z-index:10}.message-row:hover .message-actions-menu{opacity:1;pointer-events:auto}.action-menu-btn{color:var(--text-secondary);padding:6px;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:background-color .15s,color .15s}.action-menu-btn:hover{background-color:var(--hover-bg);color:var(--text-primary)}.action-menu-btn.delete:hover{color:#ff4500;background-color:#ff45001a}.user-popup-container{position:absolute;background-color:#121c1e;border:1px solid var(--border-color);border-radius:16px;width:260px;box-shadow:var(--shadow-lg);z-index:105;padding:16px;display:flex;flex-direction:column;gap:12px;animation:pop .2s cubic-bezier(.34,1.56,.64,1)}.user-popup-header{display:flex;align-items:center;gap:12px;border-bottom:1px solid var(--border-color);padding-bottom:12px}.user-popup-avatar{width:46px;height:46px;border-radius:50%;overflow:hidden;background-color:var(--bg-input);border:1px solid var(--border-color)}.user-popup-avatar img{width:100%;height:100%;object-fit:cover}.user-popup-info{display:flex;flex-direction:column;gap:2px;min-width:0}.user-popup-username{font-weight:700;font-size:1rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text-primary)}.user-popup-subname{font-size:.75rem;color:var(--text-secondary)}.user-popup-options{display:flex;flex-direction:column;gap:2px}.user-popup-option-btn{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:8px;width:100%;text-align:left;font-size:.88rem;font-weight:500;color:var(--text-primary);transition:background-color .15s}.user-popup-option-btn:hover{background-color:var(--hover-bg)}.user-popup-option-btn.danger{color:#ff581a}.user-popup-option-btn.danger:hover{background-color:#ff45001f}.user-popup-option-btn svg{color:var(--text-secondary)}.user-popup-option-btn:hover svg{color:var(--text-primary)}.user-popup-option-btn.danger svg{color:#ff581a}.slow-mode-buttons{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}.slow-mode-buttons button{flex:1;min-width:50px;padding:8px 4px;border-radius:6px;font-size:.8rem;font-weight:600;border:1px solid var(--border-color);background-color:var(--bg-main);text-align:center;transition:all .15s}.slow-mode-buttons button:hover{background-color:var(--hover-bg)}.slow-mode-buttons button.active{background-color:var(--accent-blue);border-color:var(--accent-blue);color:#fff}.flex.gap-1.mt-1.flex-wrap button{display:inline-flex;align-items:center;gap:6px;background-color:#1a282d!important;border:1px solid var(--border-color)!important;border-radius:9999px!important;padding:4px 10px!important;cursor:pointer;transition:all .15s ease}.flex.gap-1.mt-1.flex-wrap button:hover{background-color:var(--hover-bg)!important;border-color:var(--text-secondary)!important}.message-row.highlight-yellow{background-color:#ffcc0026!important;border-left:4px solid #ffcc00;padding-left:20px!important}.message-row.highlight-yellow:hover{background-color:#ffcc0038!important}.modal-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:16px;width:100%}.btn-secondary{background-color:transparent;color:var(--text-secondary);border:1px solid var(--border-color);padding:8px 16px;border-radius:9999px;font-weight:600;font-size:.85rem;cursor:pointer;transition:all .2s}.btn-secondary:hover{background-color:var(--hover-bg);color:#fff}.btn-danger{background-color:#ff581a;color:#fff;border:none;padding:8px 16px;border-radius:9999px;font-weight:600;font-size:.85rem;cursor:pointer;transition:background-color .2s}.btn-danger:hover{background-color:#ff6c32}.btn-danger:disabled{opacity:.4;cursor:not-allowed}.mod-section-card{background-color:#121212;border:1px solid var(--border-color);border-radius:12px;padding:16px;margin-bottom:18px;display:flex;flex-direction:column;gap:12px}@keyframes flash-highlight{0%{background-color:#ffcc0059!important;box-shadow:inset 4px 0 #fc0}70%{background-color:#ffcc0026!important;box-shadow:inset 4px 0 #fc0}to{background-color:transparent;box-shadow:none}}.message-row.active-highlight-flash{animation:flash-highlight 3.5s ease-out forwards}.channel-avatar-edit-container:hover .hover-overlay{opacity:1!important}@media (max-width: 768px){.sidebar-wrapper{position:fixed;top:0;left:-300px;bottom:0;z-index:1000;transition:left .3s cubic-bezier(.4,0,.2,1)}.sidebar-wrapper.mobile-open{left:0}.sidebar-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;z-index:999;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.mobile-menu-toggle{display:flex!important;align-items:center;justify-content:center;color:var(--text-primary);cursor:pointer;background:none;border:none;padding:8px;margin-right:8px}.mod-panel-content{width:100%!important;max-width:100vw!important;border-left:none!important}.chat-input-container{padding:8px 10px!important}.chat-input-wrapper{padding:6px 10px!important;gap:6px!important}.layout-btn-text{display:none!important}}.virtual-fullscreen{position:fixed!important;top:0!important;left:0!important;width:100vw!important;height:100vh!important;z-index:999999!important}.setting-card{display:flex;justify-content:space-between;align-items:center;background-color:#1a2226;border-radius:12px;padding:16px;border:1px solid var(--border-color)}.setting-title{font-size:1rem;font-weight:700;color:#fff;margin-bottom:4px}.setting-desc{font-size:.75rem;color:#829598;font-weight:700;text-transform:uppercase;letter-spacing:.5px}.setting-input{background-color:#0b0e11;border:1px solid #1a2226;padding:12px 16px;border-radius:8px;font-size:1rem;color:#fff;width:100%;box-sizing:border-box}.setting-input:focus{outline:none;border-color:#6d8df7}.app-container.layout-mobile .sidebar-wrapper{position:fixed;top:0;left:-300px;bottom:0;z-index:1000;transition:left .3s cubic-bezier(.4,0,.2,1);display:block!important}.app-container.layout-mobile .sidebar-wrapper.mobile-open{left:0}.app-container.layout-mobile .mobile-menu-toggle{display:flex!important}.app-container.layout-mobile .sidebar-overlay{display:block!important}@media (min-width: 769px){.sidebar-wrapper:not(.mobile-open){display:none!important}}@keyframes mod-badge-flash{0%,to{opacity:1;text-shadow:0 0 5px rgba(70,209,96,.8)}50%{opacity:.3;text-shadow:none}}.mod-flashing-badge{animation:mod-badge-flash 1.2s infinite ease-in-out}
