.sidebar .category-menu{margin:0;padding:0;list-style-type:none}.sidebar .category-menu li{text-align:center;margin:10px 0}.sidebar .category-menu li:last-child{margin:0}.sidebar .category-menu li a,.sidebar .category-menu li button{color:var(--white);background-color:var(--ddark);box-sizing:border-box;border:none;border-radius:10px;width:100%;padding:10px;font-weight:700;text-decoration:none;transition:background-color .2s;display:block;position:relative}.sidebar .category-menu li a:hover,.sidebar .category-menu li button:hover{color:var(--white);background-color:var(--ten)}.sidebar.closed{width:50px}.sidebar.closed .category-menu li a,.sidebar.closed .category-menu li button{text-align:center;font-size:12px}.category-link.active,.sub-category-menu .active{outline:1px solid var(--white-transp);box-shadow:0 0 10px var(--white-transp)}.category-link.active{color:#007bff;font-weight:700}.category-item{margin:5px 0;list-style-type:none}.sub-category-menu{padding-left:20px;list-style-type:none}.category-link{cursor:pointer;color:#333;text-decoration:none}.sub-category-menu a,.sub-category-menu button{color:#555;padding:5px 0;text-decoration:none;display:block}
.mini-chat{bottom:var(--footer-spacer);background:var(--overlay-dark);width:400px;backdrop-filter:var(--glass-blur);border:1px solid var(--outline-main);box-shadow:0 0 12px var(--ten);color:var(--white);z-index:99;overscroll-behavior:none;border-radius:10px;transition:all .4s cubic-bezier(.4,0,.2,1);position:fixed;right:50px;overflow:hidden}.mini-chat.collapsed{opacity:.85;background:var(--overlay-dark);width:50px;height:50px;box-shadow:0 0 12px var(--dslite);border:1px solid var(--outline-main)}.mini-chat.collapsed:hover{opacity:1;transform:scale(1.05)}.btn-sound{color:var(--white);cursor:pointer;z-index:9;background:0 0;border:none;justify-content:center;align-items:center;padding:10px;font-size:20px;transition:all .2s ease-in-out;display:flex}.btn-toggle{color:var(--white);cursor:pointer;z-index:9;background:0 0;border:none;justify-content:center;align-items:center;width:100%;height:100%;padding:10px;font-size:20px;transition:all .2s ease-in-out;display:flex;position:relative}.mini-chat:not(.collapsed) .btn-toggle{width:auto;height:auto;position:absolute;top:10px;right:10px}.mini-chat.collapsed .new-message-indicator{background:var(--dslite);width:10px;height:10px;box-shadow:0 0 0 2px var(--overlay-dark);border-radius:50%;animation:1.5s ease-in-out infinite simplePulse;position:absolute;top:5px;right:5px}@keyframes simplePulse{0%,to{box-shadow:0 0 0 2px var(--overlay-dark),0 0 8px var(--dslite);transform:scale(1)}50%{box-shadow:0 0 0 2px var(--overlay-dark),0 0 12px var(--dslite),0 0 16px #6572fa66;transform:scale(1.1)}}.mini-chat:not(.collapsed) .btn-sound{width:auto;height:auto;position:absolute;top:10px;right:45px}.mini-chat.collapsed .btn-sound{display:none}.btn-sound:hover,.btn-toggle:hover{color:var(--dslite)}.btn-sound i{font-size:18px}.chat-body{flex-direction:column;height:450px;display:flex}.chat-messages{scrollbar-width:thin;scroll-behavior:smooth;scrollbar-color:var(--bbb2)transparent;overscroll-behavior:contain;flex-grow:1;padding:10px;font-size:14px;overflow-y:auto}.chat-messages::-webkit-scrollbar{width:6px}.chat-messages::-webkit-scrollbar-track{background:0 0}.chat-messages::-webkit-scrollbar-thumb{background:var(--dslite);border-radius:3px}.chat-messages::-webkit-scrollbar-thumb:hover{background:var(--ds)}.chat-message{word-break:break-word;align-items:flex-start;gap:8px;margin-bottom:12px;animation:.3s ease-out messageSlideIn;display:flex}.chat-message.highlight{animation:1.5s highlightMsg}.chat-message.react .message-bubble{box-shadow:0 0 12px var(--ten);z-index:2;transition:transform .25s,box-shadow .25s;transform:scale(1.03)}.message-bubble{background:linear-gradient(135deg,var(--bbb)0%,var(--darklite)100%);word-wrap:break-word;border:1px solid var(--outline-main);max-width:260px;box-shadow:0 2px 8px var(--ten);border-radius:16px;padding:10px 14px;transition:all .2s;position:relative}.message-bubble:hover{box-shadow:0 4px 12px var(--ten);transform:translateY(-1px)}.message-content{position:relative}.message-header{color:var(--white2);justify-content:space-between;align-items:flex-start;gap:8px;margin-bottom:4px;font-size:12px;display:flex}.message-header strong{color:var(--white);flex-shrink:0;font-weight:600}.chat-avatar{object-fit:cover;border:1px solid var(--outline-main);border-radius:50%;flex-shrink:0;width:28px;height:28px;margin-top:2px;transition:transform .2s}.chat-avatar:hover{transform:scale(1.1)}.chat-text{color:var(--white);font-size:13.5px;line-height:1.4}.chat-text p{margin:0 auto}.hidden-by-admin{opacity:.6;font-style:italic;position:relative}.hidden-by-admin i{color:#888;margin-right:4px}.muted{color:var(--white2);font-style:italic}.chat-time{color:var(--white2);opacity:.8;flex-shrink:0;font-size:.7rem}.reply-preview{color:var(--white2);border-left:2px solid var(--dslite);opacity:.8;align-items:center;gap:5px;margin-bottom:6px;padding-left:6px;font-size:11px;display:flex}.reply-preview i{font-size:12px}.message-reactions{flex-wrap:wrap;align-items:center;gap:4px;min-height:24px;margin-top:6px;display:flex}.reactions{user-select:none;flex-wrap:wrap;gap:6px;margin-top:6px;font-size:14px;display:flex}.reaction{background:var(--overlay-dark);cursor:pointer;backdrop-filter:blur(10px);border:1px solid #0000;border-radius:12px;align-items:center;gap:4px;padding:4px 8px;font-size:12px;line-height:1;transition:all .2s;display:flex;position:relative}.reaction:hover{background:var(--darklite);transform:scale(1.05)}.reaction.active-reaction{background:var(--dslite);color:var(--white);border-color:var(--dslite);box-shadow:0 2px 8px #0003}.reaction-count{opacity:.9;font-size:11px;font-weight:500}.reaction-menu-backdrop{z-index:99998;background:0 0;position:fixed;inset:0}.reaction-menu{background:var(--darklite);border:1px solid var(--outline-main);z-index:9999;backdrop-filter:blur(20px);border-radius:24px;gap:4px;padding:8px;display:flex;position:absolute;box-shadow:0 8px 24px #0000004d}.reaction-btn{cursor:pointer;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;font-size:16px;transition:all .2s;display:flex}.context-menu{z-index:9999;flex-direction:column;align-items:center;gap:12px;min-width:180px;display:flex;position:fixed}.context-menu-horizontal{background:var(--overlay-dark);outline:1px solid var(--outline-main);backdrop-filter:blur(20px);border-radius:16px;justify-content:center;gap:6px;padding:12px;transition:all .3s;display:flex;box-shadow:0 12px 32px #0006}.context-menu-vertical{background:var(--overlay-dark);outline:1px solid var(--outline-main);backdrop-filter:blur(20px);border-radius:16px;flex-direction:column;gap:4px;width:fit-content;padding:8px;transition:opacity .2s,transform .2s;display:flex;box-shadow:0 12px 32px #0006}.context-menu-vertical.hidden{opacity:0;pointer-events:none;transform:scale(.9)}.context-menu-btn{cursor:pointer;width:36px;height:36px;color:var(--white);background:0 0;border:none;border-radius:10px;justify-content:center;align-items:center;font-size:18px;transition:all .2s;display:flex}.context-menu-btn:hover{background:var(--ten);transform:scale(1.1)}.context-menu-action{cursor:pointer;color:var(--white);text-align:left;background:0 0;border:none;border-radius:8px;align-items:center;gap:10px;width:100%;padding:10px 12px;font-size:14px;font-weight:500;transition:all .2s;display:flex}.context-menu-action:hover{background:var(--ten)}.context-menu-action i{opacity:.8;width:16px;font-size:14px}.context-menu-btn-more{background:var(--ten);cursor:pointer;width:36px;height:36px;color:var(--white);border:none;border-radius:10px;justify-content:center;align-items:center;font-size:16px;transition:all .2s;display:flex}.context-menu-btn-more:hover{background:var(--dslite);transform:scale(1.1)}.reactions-grid-menu{background:var(--overlay-dark);outline:1px solid var(--outline-main);backdrop-filter:blur(20px);z-index:10000;border-radius:16px;grid-template-columns:repeat(5,1fr);gap:6px;max-width:220px;padding:12px;animation:.2s scaleIn;display:grid;position:fixed;box-shadow:0 12px 32px #0006}.reactions-grid-btn{cursor:pointer;width:32px;height:32px;color:var(--white);background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;font-size:16px;transition:all .2s;display:flex}.reactions-grid-btn:hover{background:var(--ten);transform:scale(1.1)}@keyframes scaleIn{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}.context-menu-horizontal.expanded{display:none}.reactions-grid-menu.expanded{display:grid}.btn-reply,.btn-delete,.btn-hide{color:var(--white2);cursor:pointer;background:0 0;border:none;border-radius:8px;align-items:center;gap:4px;padding:4px 8px;font-size:11px;transition:all .2s;display:flex}.btn-reply:hover{background:var(--dslite);color:var(--white)}.btn-delete:hover{background:var(--redopas);color:var(--red)}.btn-hide:hover{background:var(--overlay-dark);color:var(--white)}.delete-btn{color:var(--white2);cursor:pointer;opacity:.5;background:0 0;border:none;margin-left:auto;padding:2px;font-size:14px}.delete-btn:hover{opacity:1;color:var(--red)}.chat-input{border-top:1px solid var(--outline-main);background:var(--overlay-dark);align-items:flex-end;gap:8px;padding:8px;display:flex}.chat-input .chat-input-x{border:1px solid var(--outline-main);background:var(--darklite);color:var(--white);font-family:var(--bulma-family-code);resize:none;border-radius:12px;flex-grow:1;height:20px;min-height:10px;max-height:200px;padding:10px 12px;transition:all .2s;overflow-y:auto}.chat-input .chat-input-x::placeholder{color:var(--white2)}.chat-input .chat-input-x:focus{border-color:var(--dslite);box-shadow:0 0 0 2px var(--dslite);outline:none}.emoji-container{align-items:flex-end;height:100%;display:flex;position:relative}.emoji-panel{z-index:10000;box-shadow:0 0 10px var(--ten);border-radius:8px;position:absolute;bottom:50px;right:0}.btn-emoji,.btn-send{background:linear-gradient(135deg,var(--dslite)0%,var(--ds)100%);color:var(--white);cursor:pointer;border:none;border-radius:10px;padding:10px 14px;font-weight:600;transition:all .2s}.btn-emoji:hover,.btn-send:hover{box-shadow:0 4px 12px var(--ten);transform:translateY(-1px)}.btn-toggle i{font-size:20px}.btn-send i,.btn-delete i,.btn-emoji i{color:var(--white);font-size:16px}.emoji-btn,.btn-delete{cursor:pointer;background:0 0;border:none}.emoji-btn{font-size:20px}.emoji-btn:hover,.btn-send:hover,.btn-delete:hover{opacity:.8}.scroll-to-bottom-btn{background:var(--dslite);width:38px;height:38px;color:var(--white);box-shadow:0 4px 12px var(--ten);cursor:pointer;z-index:20;opacity:0;border:none;border-radius:50%;justify-content:center;align-items:center;transition:transform .2s,opacity .2s;animation:.3s forwards slideInUp;display:flex;position:absolute;bottom:60px;right:16px;transform:translateY(20px)}.scroll-to-bottom-btn:hover{opacity:1;background:var(--dslite);transform:scale(1.1)}.scroll-to-bottom-btn i{font-size:16px}.reply-banner{background:linear-gradient(135deg,var(--darklite)0%,var(--bbb)100%);border-left:4px solid var(--dslite);color:var(--white);border-radius:8px;justify-content:space-between;align-items:center;margin:0 8px 8px;padding:8px 12px;font-size:13px;display:flex}.reply-info{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.btn-cancel-reply{color:var(--white2);cursor:pointer;background:0 0;border:none;font-size:16px}.btn-cancel-reply:hover{color:var(--white)}.rate-limit-warning{color:var(--red);text-align:center;background:#ff00001a;border-top:1px solid #f003;padding:6px 10px;font-size:13px}.date-divider{text-align:center;margin:2rem 0;position:relative}.date-divider span{background:linear-gradient(135deg,var(--darklite)0%,var(--bbb)100%);color:var(--white);outline:1px solid var(--outline-main);box-shadow:0 2px 8px var(--ten);border-radius:20px;padding:.5rem 1.2rem;font-size:.8rem;font-weight:600}.date-divider:before{content:"";background:linear-gradient(90deg,transparent 0%,var(--outline-main)50%,transparent 100%);z-index:-1;height:1px;position:absolute;top:50%;left:20px;right:20px}.typing-indicator{color:var(--white2);align-items:center;gap:4px;padding:8px 12px;font-size:12px;font-style:italic;display:flex}.sound-wave{background:var(--dslite);border-radius:1px;width:12px;height:2px;animation:1.5s infinite soundWave;position:absolute;bottom:2px;left:50%;transform:translate(-50%)}@keyframes highlightMsg{0%{background-color:var(--dslite)}to{background-color:#0000}}@keyframes slideInUp{to{opacity:1;transform:translateY(0)}}@keyframes pulse{0%{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(1.2)}to{opacity:1;transform:scale(1)}}@keyframes messageSlideIn{0%{opacity:0;transform:translateY(10px)scale(.95)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes btnPulse{0%{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(1.5)}to{opacity:1;transform:scale(1)}}@keyframes soundWave{0%,to{transform:translate(-50%)scaleX(1)}50%{transform:translate(-50%)scaleX(.5)}}@keyframes typingDots{0%,20%{opacity:0}50%{opacity:1}to{opacity:0}}
