:root{--telegram-bg:#0e1621;--sidebar-bg:#17212b;--chat-bg:#0e1621;--message-in:#182533;--message-out:#2b5278;--accent:#5288c1;--accent-hover:#6b9dd6;--text-primary:#fff;--text-secondary:#8b9398;--border-color:#2b3940;--hover-bg:#202b36;--input-bg:#17212b;--shadow:rgba(0,0,0,.3);--success:#4caf50;--danger:#f44336}*{margin:0;padding:0;box-sizing:border-box}.tu-van-pl-container{display:flex;height:100vh;background:var(--telegram-bg);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;overflow:hidden}.sidebar{background:var(--sidebar-bg);border-right:1px solid var(--border-color);display:flex;flex-direction:column;transition:width .3s cubic-bezier(.4,0,.2,1);z-index:10}.sidebar-open{width:380px;min-width:320px;max-width:420px}.sidebar-closed{width:60px}.sidebar-header{padding:16px;border-bottom:1px solid var(--border-color);gap:12px;min-height:64px}.sidebar-header,.toggle-btn{display:flex;align-items:center}.toggle-btn{background:transparent;border:none;color:var(--text-primary);cursor:pointer;padding:8px;border-radius:8px;transition:all .2s ease;justify-content:center}.toggle-btn:hover{background:var(--hover-bg)}.sidebar-title{display:flex;align-items:center;gap:8px;color:var(--text-primary);font-size:16px;font-weight:600;white-space:nowrap}.search-container{padding:12px 16px;position:relative}.search-input{width:100%;padding:10px 36px;background:var(--input-bg);border:1px solid var(--border-color);border-radius:24px;color:var(--text-primary);font-size:14px;outline:none;transition:all .2s ease}.search-input:focus{border-color:var(--accent);box-shadow:0 0 0 3px rgba(82,136,193,.1)}.search-icon{left:28px}.clear-search,.search-icon{position:absolute;top:50%;transform:translateY(-50%);color:var(--text-secondary)}.clear-search{right:28px;background:transparent;border:none;cursor:pointer;padding:4px;border-radius:50%;transition:all .2s ease}.clear-search:hover{background:var(--hover-bg);color:var(--text-primary)}.categories-container{flex:1;overflow-y:auto;padding:8px}.categories-container::-webkit-scrollbar{width:6px}.categories-container::-webkit-scrollbar-track{background:transparent}.categories-container::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:3px}.category-group{margin-bottom:4px}.category-header{width:100%;padding:12px;background:transparent;border:none;border-radius:8px;color:var(--text-primary);cursor:pointer;display:flex;align-items:center;justify-content:space-between;transition:all .2s ease}.category-header:hover{background:var(--hover-bg)}.category-info{display:flex;align-items:center;gap:10px;flex:1}.category-icon{font-size:18px}.category-name{flex:1;text-align:left;font-weight:500;font-size:14px}.category-count{background:var(--border-color);color:var(--text-secondary);padding:2px 8px;border-radius:12px;font-size:12px;font-weight:500}.chevron{display:flex;align-items:center;justify-content:center;transition:transform .2s ease}.chevron.rotated{transform:rotate(90deg)}.category-items{max-height:0;overflow:hidden;transition:max-height .3s ease}.category-items.expanded{max-height:500px}.item-button{width:calc(100% - 24px);margin-left:24px;padding:10px 12px;background:transparent;border:none;border-radius:6px;color:var(--text-secondary);cursor:pointer;display:block;transition:all .2s ease;text-align:left;font-size:13px}.item-button.hovered,.item-button:hover{background:var(--hover-bg);color:var(--text-primary)}.item-content{display:flex;flex-direction:column;gap:4px;width:100%}.item-title{display:block;width:100%;white-space:normal;word-wrap:break-word;overflow-wrap:break-word;line-height:1.4;color:inherit;font-weight:500}.item-meta{display:flex;align-items:center;gap:4px;opacity:.8;color:var(--text-secondary)}.item-articles,.item-meta,.item-year{font-size:11px}.chat-area{flex:1;display:flex;flex-direction:column;background:var(--chat-bg);transition:margin-left .3s ease}.chat-area.full-width,.chat-area.with-sidebar{margin-left:0}.chat-header{border-bottom:1px solid var(--border-color);padding:12px 20px;justify-content:space-between;min-height:64px}.chat-header,.chat-header-info{display:flex;align-items:center}.chat-header-info{gap:12px}.chat-avatar{width:40px;height:40px;background:var(--accent);border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff}.chat-title h3{color:var(--text-primary);font-size:16px;font-weight:600;margin-bottom:2px}.chat-status{color:var(--success);font-size:12px}.messages-container{flex:1;overflow-y:auto;padding:20px;display:flex;flex-direction:column;gap:16px}.messages-container::-webkit-scrollbar{width:6px}.messages-container::-webkit-scrollbar-track{background:transparent}.messages-container::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:3px}.message-wrapper{display:flex;gap:8px;max-width:70%;animation:messageSlide .3s ease}@keyframes messageSlide{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.bot-message{align-self:flex-start}.user-message{align-self:flex-end;flex-direction:row-reverse}.message-avatar{width:32px;height:32px;background:var(--accent);border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;flex-shrink:0}.user-message .message-avatar{background:var(--message-out)}.message-content{display:flex;flex-direction:column;gap:4px}.message-bubble{background:var(--message-in);padding:10px 14px;border-radius:12px;box-shadow:0 1px 2px var(--shadow)}.user-message .message-bubble{background:var(--message-out)}.message-text{color:var(--text-primary);font-size:14px;line-height:1.5;white-space:pre-wrap;word-break:break-word}.message-time{color:var(--text-secondary);font-size:11px;padding:0 4px}.user-message .message-time{text-align:right}.typing-indicator{display:flex;align-items:center;gap:8px;align-self:flex-start;padding:0 0 0 40px}.typing-bubble{background:var(--message-in);padding:12px 16px;border-radius:12px;display:flex;gap:4px}.typing-dot{width:8px;height:8px;background:var(--text-secondary);border-radius:50%;animation:typing 1.4s infinite}.typing-dot:nth-child(2){animation-delay:.2s}.typing-dot:nth-child(3){animation-delay:.4s}@keyframes typing{0%,60%,to{transform:translateY(0);opacity:.5}30%{transform:translateY(-10px);opacity:1}}.input-container{border-top:1px solid var(--border-color);padding:12px 20px;display:flex;align-items:center;gap:8px}.attach-btn,.emoji-btn{background:transparent;border:none;color:var(--text-secondary);cursor:pointer;padding:8px;border-radius:8px;transition:all .2s ease;display:flex;align-items:center;justify-content:center}.attach-btn:hover,.emoji-btn:hover{background:var(--hover-bg);color:var(--text-primary)}.message-input{flex:1;background:var(--input-bg);border:1px solid var(--border-color);border-radius:24px;padding:10px 16px;color:var(--text-primary);font-size:14px;outline:none;transition:all .2s ease}.message-input:focus{border-color:var(--accent);box-shadow:0 0 0 3px rgba(82,136,193,.1)}.send-btn{background:var(--accent);border:none;color:#fff;cursor:pointer;padding:8px 12px;border-radius:50%;transition:all .2s ease;display:flex;align-items:center;justify-content:center}.send-btn:hover{background:var(--accent-hover);transform:scale(1.05)}.send-btn:disabled{opacity:.5;cursor:not-allowed}.right-menu{width:60px;background:var(--sidebar-bg);border-left:1px solid var(--border-color);padding:8px 0}.menu-items,.right-menu{display:flex;flex-direction:column}.menu-items{gap:4px;padding:0 8px}.menu-item,.menu-item-wrapper{position:relative}.menu-item{width:44px;height:44px;background:transparent;border:none;border-radius:8px;color:var(--text-secondary);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.menu-item.hovered,.menu-item:hover{background:var(--hover-bg);color:var(--text-primary)}.menu-item.active{background:var(--accent);color:#fff}.menu-icon{position:relative}.menu-badge{position:absolute;top:-6px;right:-6px;background:var(--danger);color:#fff;font-size:10px;font-weight:700;padding:2px 5px;border-radius:10px;min-width:16px;text-align:center}.menu-divider{height:1px;background:var(--border-color);margin:8px 0}.menu-tooltip{position:absolute;left:-84px;top:50%;transform:translateY(-50%);background:rgba(0,0,0,.8);color:#fff;padding:6px 10px;border-radius:6px;font-size:12px;white-space:nowrap;pointer-events:none;z-index:100;animation:tooltipFade .2s ease}@keyframes tooltipFade{0%{opacity:0;transform:translateY(-50%) translateX(-10px)}to{opacity:1;transform:translateY(-50%) translateX(0)}}.menu-tooltip:after{content:"";position:absolute;right:-4px;top:50%;transform:translateY(-50%);width:0;height:0;border-left:4px solid rgba(0,0,0,.8);border-top:4px solid transparent;border-bottom:4px solid transparent}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px;color:var(--text-secondary);gap:12px}.loading-spinner{animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.no-results{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px;color:var(--text-secondary);text-align:center;gap:12px}.item-button.active{background:var(--accent);color:#fff;border-left:4px solid var(--text-primary);padding-left:8px}.item-button.active:hover{background:var(--accent-hover)}.item-button.active .item-meta{color:hsla(0,0%,100%,.9);opacity:1}.select-law-prompt{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;color:var(--text-secondary);text-align:center;gap:16px;padding:20px}.select-law-prompt h3{color:var(--text-primary);font-size:18px;margin:0}.select-law-prompt p{font-size:14px;max-width:300px}.chat-header-actions{display:flex;gap:8px}.clear-chat-btn{background:transparent;border:none;color:var(--text-secondary);cursor:pointer;padding:8px;border-radius:8px;transition:all .2s ease}.clear-chat-btn:hover{background:var(--hover-bg);color:var(--danger)}@media (max-width:768px){.tu-van-pl-container{position:relative}.sidebar-open{width:90vw;max-width:380px;position:fixed;left:0;top:0;bottom:0;z-index:1000;box-shadow:2px 0 20px var(--shadow)}.item-title{font-size:14px;line-height:1.5}.item-meta{font-size:12px}.sidebar-closed{width:0;overflow:hidden;position:fixed;left:-100%}.toggle-btn{position:fixed;top:16px;left:16px;z-index:1001;background:var(--sidebar-bg);box-shadow:0 2px 8px var(--shadow)}.chat-area{width:100%;margin:0}.chat-header{padding-left:60px}.right-menu{display:none}.message-wrapper{max-width:85%}.input-container{padding:12px 12px calc(12px + env(safe-area-inset-bottom))}.message-input{font-size:16px}}@media (min-width:769px) and (max-width:1024px){.sidebar-open{width:350px}.item-title{font-size:14px}.message-wrapper{max-width:75%}}@media (min-width:1025px){.tu-van-pl-container{max-width:100%}.message-wrapper{max-width:60%}}@media (pointer:coarse){.item-button{min-height:44px}.attach-btn,.emoji-btn,.send-btn,.toggle-btn{min-width:44px;min-height:44px}}@media (max-width:768px){.sidebar-open:after{content:"";position:fixed;top:0;left:100%;right:-100vw;bottom:0;background:rgba(0,0,0,.5);z-index:-1}}.logo-watermark{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);z-index:0;pointer-events:none;width:100%;height:100%;display:flex;align-items:center;justify-content:center}.watermark-image{width:280px;height:auto;opacity:.15;filter:grayscale(70%);mix-blend-mode:multiply}.avatar-image{width:40px;height:40px;border-radius:50%;border:2px solid var(--accent)}.avatar-image,.message-avatar-img{-o-object-fit:cover;object-fit:cover}.message-avatar-img{width:100%;height:100%;border-radius:50%}.toast-container{position:fixed;top:20px;left:50%;transform:translateX(-50%);animation:slideDown .3s ease}.toast-content{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:14px 24px;border-radius:12px;display:flex;align-items:center;gap:10px;box-shadow:0 10px 30px rgba(0,0,0,.3);font-weight:500;font-size:14px;backdrop-filter:blur(10px)}.toast-icon{color:gold}.toast-message{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}@keyframes slideDown{0%{transform:translateX(-50%) translateY(-100%);opacity:0}to{transform:translateX(-50%) translateY(0);opacity:1}}@media (max-width:768px){.watermark-image{width:180px;opacity:.1}.avatar-image{width:36px;height:36px}.toast-container{top:auto;bottom:20px;width:90%;left:5%;transform:none;animation:slideUp .3s ease}@keyframes slideUp{0%{transform:translateY(100%);opacity:0}to{transform:translateY(0);opacity:1}}}@media (min-width:769px) and (max-width:1024px){.watermark-image{width:240px}}.logo-watermark{z-index:0!important}.chat-area{position:relative;z-index:1}.chat-header{position:relative;z-index:10;background:var(--sidebar-bg)}.messages-container{position:relative;z-index:5;background:transparent}.input-container{position:relative;z-index:10;background:var(--sidebar-bg)}.right-menu,.sidebar{position:relative;z-index:100}.item-button,.message-bubble,.send-btn,.toggle-btn{position:relative;z-index:20}.menu-tooltip{z-index:500}.toast-container{z-index:10000}