:root{--font-sans:"Inter", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell, sans-serif;--font-display:"Outfit", var(--font-sans);--bg-app:#fff;--bg-sidebar:#f0f4f9;--bg-card:#ffffffb3;--bg-card-hover:#e9eef6;--bg-active-pill:#e8f0fe;--bg-active-text:#0b57d0;--bg-user-bubble:#f0f4f9;--bg-bot-bubble:transparent;--bg-input:#f0f4f9;--border-color:#e3e3e3;--border-color-focus:#0b57d066;--text-primary:#1f1f1f;--text-secondary:#474747;--text-muted:#5f6368;--text-on-primary:#fff;--accent-color:#15803d;--accent-blue:#0b57d0;--accent-orange:#b45309;--accent-danger:#b91c1c;--shadow-sm:0 1px 2px 0 #0000000d;--shadow-md:0 4px 6px -1px #0000000d, 0 2px 4px -1px #00000008;--shadow-lg:0 10px 15px -3px #00000014, 0 4px 6px -2px #0000000a;--shadow-xl:0 20px 25px -5px #0000001a, 0 10px 10px -5px #0000000a;--transition-fast:.15s cubic-bezier(.4, 0, .2, 1);--transition-normal:.25s cubic-bezier(.4, 0, .2, 1)}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-sans);background-color:var(--bg-app);color:var(--text-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;width:100vw;height:100vh;overflow:hidden}#root{width:100%;height:100%}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:#00000014;border-radius:9999px}::-webkit-scrollbar-thumb:hover{background:#00000026}@keyframes fadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.animate-fade-in{animation:fadeIn var(--transition-normal) forwards}.animate-spin{animation:1s linear infinite spin}.animate-pulse{animation:2s cubic-bezier(.4,0,.6,1) infinite pulse}.app-container{background-color:var(--bg-app);width:100vw;height:100vh;display:flex;overflow:hidden}.sidebar{background-color:var(--bg-sidebar);border-right:1px solid var(--border-color);width:280px;transition:width var(--transition-normal);z-index:10;flex-direction:column;flex-shrink:0;display:flex;overflow:hidden}.sidebar.collapsed{width:68px}.sidebar-header{border-bottom:none;flex-shrink:0;align-items:center;gap:.75rem;height:70px;padding:0 1rem;display:flex}.sidebar.collapsed .sidebar-header{justify-content:center;padding:0}.brand{white-space:nowrap;border-bottom:none;align-items:center;gap:.75rem;height:auto;padding:0;display:flex;overflow:hidden}.brand-logo{object-fit:contain;flex-shrink:0;width:32px;height:32px}.brand-meta{transition:opacity var(--transition-fast);flex-direction:column;display:flex}.sidebar.collapsed .brand-meta{display:none}.brand-meta h2{font-family:var(--font-display);color:var(--text-primary);font-size:1.05rem;font-weight:700;line-height:1.2}.badge{text-transform:uppercase;letter-spacing:.05em;border-radius:9999px;align-items:center;width:fit-content;padding:.125rem .5rem;font-size:.65rem;font-weight:600;display:inline-flex}.badge.version{color:var(--accent-blue);background:#0b57d014;margin-top:.15rem}.sidebar-scroll{flex-direction:column;flex:1;gap:1.25rem;padding:1rem;display:flex;overflow-y:auto}.sidebar.collapsed .sidebar-scroll{align-items:center;padding:1rem .35rem}.sidebar-scroll::-webkit-scrollbar{width:4px}.sidebar-section h3{font-family:var(--font-display);color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;white-space:nowrap;align-items:center;gap:.5rem;margin-bottom:.5rem;font-size:.75rem;font-weight:600;display:flex}.sidebar.collapsed .sidebar-section h3{display:none}.user-profile{width:100%;transition:background-color var(--transition-fast);background:0 0;border:none;border-radius:12px;justify-content:space-between;align-items:center;padding:.625rem;display:flex;overflow:hidden}.user-profile:hover{background-color:var(--bg-card-hover)}.sidebar.collapsed .user-profile{background:0 0;border:none;flex-direction:column;gap:.5rem;padding:.25rem}.user-info{align-items:center;gap:.5rem;min-width:0;display:flex}.user-avatar{width:32px;height:32px;color:var(--text-secondary);background:#0000000d;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex}.user-meta{flex-direction:column;min-width:0;display:flex}.sidebar.collapsed .user-meta{display:none}.user-name{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;font-size:.8rem;font-weight:600;overflow:hidden}.user-email{color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;font-size:.7rem;overflow:hidden}.btn-logout{flex-shrink:0}.status-indicators{flex-direction:column;gap:.5rem;display:flex}.sidebar.collapsed .status-indicators{align-items:center}.indicator{color:var(--text-secondary);white-space:nowrap;align-items:center;gap:.5rem;font-size:.8rem;display:flex}.sidebar.collapsed .indicator span:not(.dot){display:none}.dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.dot.online{background-color:var(--accent-color);box-shadow:0 0 6px var(--accent-color)}.dot.offline{background-color:var(--accent-danger);box-shadow:0 0 6px var(--accent-danger)}.conversations-section{flex-direction:column;flex:1;min-height:0;display:flex}.btn-new-chat{border:1px solid var(--border-color);background:var(--bg-app);width:100%;color:var(--accent-blue);cursor:pointer;transition:all var(--transition-fast);white-space:nowrap;box-shadow:var(--shadow-sm);border-radius:20px;justify-content:center;align-items:center;gap:.5rem;margin-bottom:.75rem;padding:.625rem;font-size:.825rem;font-weight:600;display:flex}.btn-new-chat:hover{background:var(--bg-card-hover);box-shadow:var(--shadow-md)}.sidebar.collapsed .btn-new-chat{border-radius:50%;width:40px;height:40px;margin-bottom:1rem;padding:0}.sidebar.collapsed .btn-new-chat span{display:none}.conversation-list{flex-direction:column;flex:1;gap:.25rem;list-style:none;display:flex;overflow-y:auto}.sidebar.collapsed .conversation-list{align-items:center;width:100%}.conversation-item{cursor:pointer;color:var(--text-secondary);transition:all var(--transition-fast);white-space:nowrap;border-radius:18px;align-items:center;gap:.5rem;min-width:0;padding:.5rem .75rem;font-size:.825rem;display:flex}.sidebar.collapsed .conversation-item{border-radius:50%;justify-content:center;width:40px;height:40px;padding:.5rem}.conversation-item:hover{background:var(--bg-card-hover);color:var(--text-primary)}.conversation-item.active{background:var(--bg-active-pill);color:var(--bg-active-text);font-weight:600}.conversation-title{white-space:nowrap;text-overflow:ellipsis;flex:1;overflow:hidden}.sidebar.collapsed .conversation-title{display:none}.layer-list{flex-direction:column;gap:.25rem;max-height:150px;margin-bottom:.5rem;list-style:none;display:flex;overflow-y:auto}.sidebar.collapsed .layer-list{align-items:center;width:100%}.layer-item{border:1px solid var(--border-color);color:var(--text-secondary);white-space:nowrap;background:#00000003;border-radius:8px;justify-content:space-between;align-items:center;padding:.375rem .625rem;font-size:.775rem;display:flex}.sidebar.collapsed .layer-item{background:#00000008;border-color:#0000;border-radius:50%;justify-content:center;width:36px;height:36px;padding:.375rem}.layer-item-info{align-items:center;gap:.375rem;min-width:0;display:flex}.layer-item-info span{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.sidebar.collapsed .layer-item-info span,.sidebar.collapsed .layer-item .badge{display:none}.layer-geom-icon{flex-shrink:0;font-size:.8rem}.layer-geom-icon.Polygon{color:#e11d48}.layer-geom-icon.Line{color:#2563eb}.layer-geom-icon.Point{color:#d97706}.layer-geom-icon.raster{color:#9333ea}.btn-refresh-layers-collapsed,.sidebar.collapsed .btn-refresh-layers-text{display:none}.suggestion-list{flex-direction:column;gap:.25rem;list-style:none;display:flex}.sidebar.collapsed .suggestion-list{display:none}.suggestion-item{color:var(--text-secondary);border:1px solid var(--border-color);cursor:pointer;transition:all var(--transition-fast);white-space:nowrap;text-overflow:ellipsis;background:#00000003;border-radius:8px;padding:.375rem .625rem;font-size:.725rem;overflow:hidden}.suggestion-item:hover{color:var(--accent-blue);background:#0b57d00a;border-color:#0b57d033}.btn{cursor:pointer;transition:all var(--transition-fast);border:none;border-radius:20px;justify-content:center;align-items:center;gap:.375rem;font-size:.8rem;font-weight:500;display:inline-flex}.btn-secondary{background-color:var(--bg-app);color:var(--text-primary);border:1px solid var(--border-color)}.btn-secondary:hover:not(:disabled){background-color:var(--bg-card-hover)}.btn-secondary:disabled{opacity:.5;cursor:not-allowed}.btn-icon{color:var(--text-muted);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;padding:.5rem;display:flex}.btn-icon:hover:not(:disabled){background:var(--bg-card-hover);color:var(--text-primary)}.btn-sm{padding:.375rem .75rem;font-size:.725rem}.btn-block{width:100%}.chat-main{background-color:var(--bg-app);flex-direction:column;flex:1;height:100%;display:flex;position:relative}.chat-header{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;height:70px;padding:0 1.5rem;display:flex}.header-left-group{align-items:center;gap:.75rem;display:flex}.header-info h1{font-family:var(--font-display);color:var(--text-primary);font-size:1rem;font-weight:600}.header-info p{color:var(--text-muted);font-size:.7rem}.chat-window{background-color:var(--bg-app);flex-direction:column;flex:1;gap:2rem;padding:2rem 1rem;display:flex;overflow-y:auto}.message{gap:1.25rem;width:100%;max-width:800px;margin:0 auto;display:flex}.message.user{flex-direction:row-reverse}.message.bot{align-self:flex-start}.message-avatar{border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;font-size:.95rem;display:flex}.message.user .message-avatar{background:var(--bg-user-bubble);color:var(--accent-blue);border:1px solid var(--border-color)}.message.bot .message-avatar{color:var(--accent-blue);background:#0b57d014;border:1px solid #0b57d026}.message-content{color:var(--text-primary);flex:1;min-width:0;font-size:.95rem;line-height:1.6}.message.user .message-content{background-color:var(--bg-user-bubble);border:1px solid var(--border-color);border-radius:18px;flex:none;width:fit-content;max-width:70%;padding:.75rem 1.125rem}.message.bot .message-content{background-color:#0000;border:none;border-radius:0;padding:0}.message.bot.welcome .message-content{border:1px solid var(--border-color);box-shadow:var(--shadow-sm);background:#f8fafd;border-radius:16px;padding:1.25rem}.message.bot.welcome ul{margin:.5rem 0;padding-left:1.25rem}.message.bot.welcome li{margin-bottom:.375rem}.message-image{border:1px solid var(--border-color);max-width:100%;max-height:250px;box-shadow:var(--shadow-sm);border-radius:12px;margin-top:.75rem;display:block}.message-actions{opacity:0;transition:opacity var(--transition-fast);align-items:center;gap:.25rem;margin-top:.5rem;display:flex}.message.bot:hover .message-actions{opacity:1}.action-btn{color:var(--text-muted);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;padding:.375rem;display:flex}.action-btn:hover{background-color:var(--bg-card-hover);color:var(--text-primary)}.thinking-block-container{border-left:2px solid var(--border-color);margin-bottom:1rem;padding-left:1rem}.thinking-toggle-btn{color:var(--text-muted);cursor:pointer;font-size:.775rem;font-family:var(--font-sans);transition:color var(--transition-fast);background:0 0;border:none;align-items:center;gap:.375rem;padding:.25rem 0;font-weight:500;display:flex}.thinking-toggle-btn:hover{color:var(--accent-blue)}.thinking-content-area{color:var(--text-secondary);border:1px dashed var(--border-color);background:#f8f9fa;border-radius:8px;margin-top:.5rem;padding:.75rem;font-size:.825rem;font-style:italic}.chat-input-area{background-color:var(--bg-app);flex-direction:column;align-items:center;width:100%;padding:1.5rem 1rem 1rem;display:flex}.activity-bar{background-color:var(--bg-sidebar);border:1px solid var(--border-color);color:var(--text-secondary);border-radius:16px;align-items:center;gap:.5rem;width:fit-content;max-width:800px;margin-bottom:.75rem;padding:.4rem .85rem;font-size:.775rem;font-weight:500;animation:.2s forwards fadeIn;display:flex;box-shadow:0 1px 2px #00000005}.activity-icon{flex-shrink:0;justify-content:center;align-items:center;display:flex}.image-preview-container{background:var(--bg-user-bubble);border:1px solid var(--border-color);border-radius:12px;width:fit-content;max-width:800px;margin-bottom:.75rem;padding:.5rem;display:flex}.image-preview-wrapper{position:relative}.image-preview-wrapper img{object-fit:cover;border-radius:8px;width:54px;height:54px}.btn-remove-image{background:var(--accent-danger);color:#fff;cursor:pointer;border:none;border-radius:50%;justify-content:center;align-items:center;width:18px;height:18px;font-size:.65rem;display:flex;position:absolute;top:-6px;right:-6px}.input-wrapper-container{flex-direction:column;gap:.5rem;width:100%;max-width:800px;display:flex}.input-wrapper{background-color:var(--bg-input);border:1px solid var(--border-color);transition:all var(--transition-fast);border-radius:28px;align-items:center;gap:.75rem;padding:.375rem .5rem .375rem 1rem;display:flex}.input-wrapper:focus-within{border-color:var(--border-color-focus);background-color:var(--bg-app);box-shadow:0 1px 6px #00000014}.input-wrapper textarea{resize:none;color:var(--text-primary);font-family:var(--font-sans);background:0 0;border:none;outline:none;flex:1;height:24px;max-height:150px;padding:.5rem 0;font-size:.95rem;line-height:1.4}.input-wrapper textarea::placeholder{color:var(--text-muted)}.input-wrapper .plus-btn{width:36px;height:36px;color:var(--text-muted);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex}.input-wrapper .plus-btn:hover{background-color:var(--bg-card-hover);color:var(--text-primary)}.input-wrapper-right{flex-shrink:0;align-items:center;gap:.5rem;display:flex}.model-selector-btn{color:var(--text-muted);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;border-radius:16px;align-items:center;gap:.25rem;padding:.375rem .625rem;font-size:.75rem;font-weight:600;display:flex}.model-selector-btn:hover{background-color:var(--bg-card-hover);color:var(--text-primary)}.input-wrapper .send-btn{cursor:pointer;width:32px;height:32px;transition:all var(--transition-fast);color:var(--text-muted);background-color:#0000;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex}.input-wrapper .send-btn.has-content{color:var(--accent-blue)}.input-wrapper .send-btn.has-content:hover{background-color:var(--bg-active-pill)}.input-wrapper .send-btn.is-generating{background-color:var(--accent-danger);color:#fff}.input-wrapper .send-btn.is-generating:hover{background-color:#dc2626}.disclaimer-text{color:var(--text-muted);text-align:center;margin-top:.5rem;font-size:.725rem}.lock-overlay{z-index:100;background-color:#f1f5f9;background-image:radial-gradient(circle,#f8fafc 0%,#e2e8f0 100%);justify-content:center;align-items:center;width:100vw;height:100vh;padding:1rem;display:flex;position:fixed;top:0;left:0;overflow:hidden}.geo-grid-background{pointer-events:none;z-index:1;background-image:linear-gradient(#0b57d008 1px,#0000 1px),linear-gradient(90deg,#0b57d008 1px,#0000 1px);background-position:50%;background-size:50px 50px;width:200%;height:200%;animation:80s linear infinite geoGridMove;position:absolute;top:-50%;left:-50%;transform:rotate(12deg)}.geo-grid-glow{filter:blur(60px);pointer-events:none;z-index:2;background:radial-gradient(circle,#3b82f61a 0%,#3b82f600 70%);border-radius:50%;width:600px;height:600px;animation:30s ease-in-out infinite alternate geoGlowMove;position:absolute;top:10%;left:20%}.geo-grid-glow-2{filter:blur(60px);pointer-events:none;z-index:2;background:radial-gradient(circle,#9333ea14 0%,#9333ea00 70%);border-radius:50%;width:500px;height:500px;animation:35s ease-in-out infinite alternate geoGlowMove2;position:absolute;bottom:15%;right:15%}@keyframes geoGridMove{0%{transform:rotate(12deg)translate(0)}to{transform:rotate(12deg)translateY(100px)}}@keyframes geoGlowMove{0%{transform:translate(0)scale(1)}to{transform:translate(60px,40px)scale(1.1)}}@keyframes geoGlowMove2{0%{transform:translate(0)scale(1.1)}to{transform:translate(-80px,-30px)scale(.9)}}.lock-card{text-align:center;z-index:10;border-radius:28px;flex-direction:column;width:100%;max-width:440px;max-height:95vh;padding:2.25rem 1.75rem;transition:all .4s cubic-bezier(.16,1,.3,1);display:flex;position:relative;overflow:hidden auto;-webkit-backdrop-filter:blur(24px)saturate(180%)!important;background:#ffffffbf!important;border:1px solid #ffffffa6!important;box-shadow:0 10px 30px #00000005,0 30px 60px #0b57d00d,inset 0 1px #fff9!important}.lock-card::-webkit-scrollbar{width:4px}.lock-card::-webkit-scrollbar-thumb{background:#00000014;border-radius:10px}.lock-logo-wrapper{background:#fffffff2;border:1px solid #0b57d01f;border-radius:18px;flex-shrink:0;justify-content:center;align-items:center;width:64px;height:64px;margin:0 auto 1.5rem;padding:10px;display:flex;box-shadow:0 8px 16px #0b57d00f,inset 0 1px #fffc}.lock-logo{object-fit:contain;width:100%;height:100%}.lock-card h2{font-family:var(--font-display);color:var(--text-primary);margin-bottom:.5rem;font-size:1.35rem;font-weight:700}.lock-card p{color:var(--text-secondary);margin-bottom:1.5rem;font-size:.85rem;line-height:1.5}.auth-slider-container{width:100%;position:relative;overflow:hidden}.auth-slider{width:200%;transition:transform .5s cubic-bezier(.16,1,.3,1);display:flex}.auth-slide{flex-shrink:0;width:50%;padding:.25rem .5rem;transition:opacity .4s}.auth-slider.slide-login{transform:translate(0%)}.auth-slider.slide-register{transform:translate(-50%)}.auth-slider.slide-login .slide-left{opacity:1;pointer-events:all}.auth-slider.slide-login .slide-right,.auth-slider.slide-register .slide-left{opacity:0;pointer-events:none}.auth-slider.slide-register .slide-right{opacity:1;pointer-events:all}.lock-icon-wrapper{width:56px;height:56px;color:var(--accent-blue);background:#0b57d014;border:1px solid #0b57d026;border-radius:16px;flex-shrink:0;justify-content:center;align-items:center;margin:0 auto 1.25rem;font-size:1.5rem;display:flex}.lock-status-check{color:var(--text-muted);border:1px solid var(--border-color);background:#00000005;border-radius:9999px;align-items:center;gap:.5rem;padding:.375rem .875rem;font-size:.775rem;display:inline-flex}.login-form{flex-direction:column;gap:.875rem;display:flex}.form-group{text-align:left;flex-direction:column;gap:.375rem;display:flex}.input-icon-wrapper{align-items:center;width:100%;display:flex;position:relative}.input-icon{color:var(--text-muted);pointer-events:none;z-index:2;justify-content:center;align-items:center;display:flex;position:absolute;top:50%;left:.875rem;transform:translateY(-50%)}.input-icon-wrapper input{color:var(--text-primary);font-family:var(--font-sans);outline:none;width:100%!important;transition:all var(--transition-fast)!important;background-color:#f1f5f999!important;border:1px solid #e2e8f0cc!important;border-radius:12px!important;padding:.75rem .65rem .75rem 2.75rem!important;font-size:.9rem!important}.input-icon-wrapper input:focus{border-color:var(--accent-blue)!important;background-color:#fff!important;box-shadow:0 0 0 3px #0b57d01f!important}.lock-card .btn-primary.btn-block{letter-spacing:.01em;margin-top:.5rem;position:relative;overflow:hidden;color:#fff!important;background:linear-gradient(135deg,#0b57d0 0%,#1d4ed8 100%)!important;border:none!important;border-radius:12px!important;height:auto!important;padding:.8rem 1.5rem!important;font-size:.95rem!important;font-weight:600!important;transition:all .25s cubic-bezier(.4,0,.2,1)!important;box-shadow:0 4px 12px #0b57d026!important}.lock-card .btn-primary.btn-block:hover:not(:disabled){transform:translateY(-1px);background:linear-gradient(135deg,#1d4ed8 0%,#1e40af 100%)!important;box-shadow:0 6px 16px #0b57d040!important}.lock-card .btn-primary.btn-block:active:not(:disabled){transform:translateY(1px);box-shadow:0 2px 6px #0b57d026!important}.lock-card .btn-primary.btn-block:disabled{cursor:not-allowed;color:#94a3b8!important;box-shadow:none!important;background:#cbd5e1!important}.password-toggle{color:var(--text-muted);cursor:pointer;z-index:3;transition:color var(--transition-fast);justify-content:center;align-items:center;display:flex;position:absolute;top:50%;right:.875rem;transform:translateY(-50%)}.password-toggle:hover{color:var(--text-primary)}.register-prompt{color:var(--text-secondary);text-align:center;margin-top:1rem;font-size:.85rem}.register-link{color:#3b82f6;cursor:pointer;transition:color var(--transition-fast);font-weight:500;text-decoration:underline}.register-link:hover{color:#2563eb}.login-error-msg{color:var(--accent-danger);text-align:left;background:#b91c1c0d;border:1px solid #b91c1c26;border-radius:6px;align-items:center;gap:.5rem;padding:.5rem .75rem;font-size:.775rem;display:flex}.message-content h1,.message-content h2,.message-content h3{font-family:var(--font-display);color:var(--text-primary);margin-top:1rem;margin-bottom:.5rem;font-weight:600}.message-content h1{font-size:1.2rem}.message-content h2{font-size:1.1rem}.message-content h3{font-size:1rem}.message-content p{margin-bottom:.75rem}.message-content p:last-child{margin-bottom:0}.message-content ul,.message-content ol{margin-bottom:.75rem;padding-left:1.25rem}.message-content li{margin-bottom:.375rem}.message-content strong{color:#000;font-weight:600}.message-content em{color:var(--text-secondary);font-style:italic}.message-content pre{border:1px solid var(--border-color);background:#f6f8fa;border-radius:8px;margin:.75rem 0;padding:.75rem;overflow-x:auto}.message-content code{background:#0000000a;border-radius:4px;padding:.125rem .25rem;font-family:Courier New,Courier,monospace;font-size:.85em}.message-content pre code{color:#1f1f1f;background:0 0;border-radius:0;padding:0;font-size:.825rem}.table-container{border:1px solid var(--border-color);border-radius:8px;margin:1rem 0;overflow-x:auto}.message-content table{border-collapse:collapse;text-align:left;width:100%;font-size:.85rem}.message-content th,.message-content td{border-bottom:1px solid var(--border-color);padding:.625rem .875rem}.message-content th{color:var(--text-primary);background:#f8f9fa;font-weight:600}.message-content tr:last-child td{border-bottom:none}.message-content tr:nth-child(2n){background:#00000003}.sidebar-footer{background-color:var(--bg-sidebar);border-top:none;flex-direction:column;gap:.75rem;padding:1rem;display:flex}.sidebar.collapsed .sidebar-footer{flex-direction:column;align-items:center;gap:.75rem;padding:1rem .35rem;display:flex}.connection-status-footer{width:100%}.sidebar.collapsed .connection-status-footer{justify-content:center;display:flex}.header-dropdown{background:var(--bg-app);border:1px solid var(--border-color);box-shadow:var(--shadow-lg);z-index:50;border-radius:8px;min-width:160px;margin-top:.5rem;padding:.375rem;position:absolute;top:100%;right:0}.dropdown-item{width:100%;color:var(--text-primary);cursor:pointer;text-align:left;transition:background var(--transition-fast);background:0 0;border:none;border-radius:6px;align-items:center;gap:.5rem;padding:.5rem .75rem;font-size:.825rem;display:flex}.dropdown-item:hover:not(:disabled){background-color:var(--bg-card-hover)}.dropdown-item:disabled{color:var(--text-muted);cursor:not-allowed;opacity:.5}.message-doc-card{border:1px solid var(--border-color);max-width:320px;box-shadow:var(--shadow-sm);background-color:#fff9;border-radius:12px;align-items:center;gap:.75rem;margin-top:.75rem;padding:.75rem 1rem;display:flex}.doc-icon{-webkit-user-select:none;user-select:none;font-size:1.5rem}.doc-info{flex-direction:column;gap:.15rem;min-width:0;display:flex}.doc-name{color:var(--text-primary);text-overflow:ellipsis;white-space:nowrap;font-size:.85rem;font-weight:600;overflow:hidden}.doc-type{color:var(--text-muted);text-transform:uppercase;font-size:.7rem;font-weight:500}.file-preview-container{background:var(--bg-user-bubble);border:1px solid var(--border-color);border-radius:12px;width:fit-content;max-width:800px;margin-bottom:.75rem;padding:.5rem;display:flex}.doc-preview-wrapper{align-items:center;gap:.75rem;min-width:180px;padding:.25rem 2rem .25rem .5rem;display:flex;position:relative}.doc-preview-icon{-webkit-user-select:none;user-select:none;font-size:1.5rem}.doc-preview-info{flex-direction:column;gap:.1rem;min-width:0;display:flex}.doc-preview-name{color:var(--text-primary);text-overflow:ellipsis;white-space:nowrap;max-width:180px;font-size:.825rem;font-weight:600;overflow:hidden}.doc-preview-size{color:var(--text-muted);font-size:.7rem}.btn-remove-file{background:var(--accent-danger);color:#fff;cursor:pointer;width:18px;height:18px;transition:background var(--transition-fast);border:none;border-radius:50%;justify-content:center;align-items:center;font-size:.65rem;display:flex;position:absolute;top:50%;right:0;transform:translateY(-50%)}.btn-remove-file:hover{background:#dc2626}.skills-config-section{margin-top:.5rem;margin-bottom:.5rem;padding:0 .75rem}.btn-skill-manager{border:1px solid var(--border-color);width:100%;color:var(--text-primary);font-family:var(--font-sans);cursor:pointer;transition:all var(--transition-fast);background:#fff6;border-radius:12px;align-items:center;gap:.75rem;padding:.65rem .85rem;font-size:.85rem;font-weight:600;display:flex}.btn-skill-manager:hover{background:var(--bg-card-hover);border-color:var(--accent-blue);color:var(--accent-blue);transform:translateY(-1px)}.sidebar.collapsed .skills-config-section{justify-content:center;margin-top:.75rem;padding:0;display:flex}.sidebar.collapsed .btn-skill-manager{border-radius:50%;justify-content:center;width:42px;height:42px;padding:0}.skill-manager-overlay{-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);z-index:1000;background-color:#f0f4f9a6;justify-content:center;align-items:center;width:100vw;height:100vh;padding:1.5rem;animation:.3s ease-out fadeIn;display:flex;position:fixed;top:0;left:0}.skill-manager-modal{background:var(--bg-app);border:1px solid var(--border-color);width:100%;max-width:760px;height:80vh;max-height:680px;box-shadow:var(--shadow-xl);border-radius:20px;flex-direction:column;animation:.4s cubic-bezier(.16,1,.3,1) fadeIn;display:flex;overflow:hidden}.skill-header{border-bottom:1px solid var(--border-color);background:#f8fafc;justify-content:space-between;align-items:center;padding:1.25rem 1.5rem;display:flex}.skill-header .title-area{align-items:center;gap:.75rem;display:flex}.skill-header .icon-main{color:var(--accent-blue)}.skill-header h2{font-family:var(--font-display);color:var(--text-primary);margin-bottom:.15rem;font-size:1.25rem;font-weight:700;line-height:1.2}.skill-header p{color:var(--text-muted);font-size:.8rem}.btn-close{width:36px;height:36px;color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;display:flex}.btn-close:hover{color:var(--text-primary);background:#0000000d}.skill-alert{animation:fadeIn var(--transition-fast) forwards;border-radius:8px;align-items:center;gap:.5rem;margin:1rem 1.5rem 0;padding:.75rem 1rem;font-size:.85rem;display:flex}.skill-alert.error{color:var(--accent-danger);background:#fef2f2;border:1px solid #fca5a5}.skill-alert.success{color:var(--accent-color);background:#f0fdf4;border:1px solid #86efac}.skill-tabs{background:#f1f5f9;border-radius:10px;gap:.25rem;margin:1rem 1.5rem .5rem;padding:.35rem;display:flex}.tab-item{color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;border-radius:8px;flex:1;justify-content:center;align-items:center;gap:.5rem;padding:.6rem 1rem;font-size:.85rem;font-weight:600;display:flex}.tab-item:hover{color:var(--text-primary);background:#ffffff4d}.tab-item.active{background:var(--bg-app);color:var(--accent-blue);box-shadow:var(--shadow-sm)}.skill-body{flex:1;padding:.5rem 1.5rem 1.5rem;overflow-y:auto}.skills-list{flex-direction:column;gap:.75rem;display:flex}.skills-actions-header{justify-content:flex-end;margin-bottom:.5rem;display:flex}.btn-add-skill{background:var(--accent-blue);color:var(--text-on-primary);cursor:pointer;transition:background var(--transition-fast);border:none;border-radius:8px;align-items:center;gap:.5rem;padding:.5rem 1rem;font-size:.85rem;font-weight:600;display:flex}.btn-add-skill:hover{background:#004bbf}.skill-info-banner{color:#1e3a8a;background:#eff6ff;border:1px solid #bfdbfe;border-radius:8px;align-items:center;gap:.5rem;margin-bottom:.75rem;padding:.75rem 1rem;font-size:.8rem;display:flex}.skill-card{border:1px solid var(--border-color);transition:all var(--transition-fast);background:#fff;border-radius:12px;justify-content:space-between;align-items:center;padding:1.15rem 1.25rem;display:flex}.skill-card:hover{box-shadow:var(--shadow-md);border-color:#cbd5e1;transform:translateY(-1px)}.skill-card.system-read-only{background:#fafafb}.skill-card-info h4{color:var(--text-primary);align-items:center;gap:.5rem;margin-bottom:.25rem;font-size:.95rem;font-weight:700;display:flex}.skill-card-info .id-sub{color:var(--text-muted);font-size:.75rem;font-weight:400}.skill-card-info p{color:var(--text-secondary);margin-bottom:.5rem;font-size:.825rem;line-height:1.4}.badge-skill-type{color:#475569;text-transform:uppercase;background:#f1f5f9;border-radius:4px;padding:.15rem .4rem;font-size:.65rem;font-weight:700;display:inline-block}.badge-skill-type.custom{color:#d97706;background:#fef3c7}.badge-skill-type.system{color:#10b981;background:#ecfdf5}.btn-toggle{border:1px solid var(--border-color);color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast);background:#fff;border-radius:8px;align-items:center;gap:.4rem;padding:.5rem .85rem;font-size:.8rem;font-weight:600;display:flex}.btn-toggle:hover{background:var(--bg-card-hover);color:var(--text-primary)}.btn-toggle.active{color:#2563eb;background:#eff6ff;border-color:#3b82f6}.btn-icon-action{border:1px solid var(--border-color);width:34px;height:34px;color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast);background:#fff;border-radius:8px;justify-content:center;align-items:center;margin-left:.4rem;display:inline-flex}.btn-icon-action.edit:hover{color:var(--accent-blue);border-color:var(--accent-blue);background:#f1f5f9}.btn-icon-action.delete:hover{color:var(--accent-danger);border-color:var(--accent-danger);background:#fef2f2}.always-on-text{color:#059669;font-size:.75rem;font-weight:600}.empty-state-card{text-align:center;border:1px dashed var(--border-color);color:var(--text-muted);background:#f8fafc;border-radius:12px;flex-direction:column;align-items:center;gap:.5rem;padding:2.5rem;font-size:.85rem;display:flex}.skill-loading{color:var(--text-muted);flex-direction:column;justify-content:center;align-items:center;gap:.75rem;padding:4rem 0;display:flex}.skill-form{flex-direction:column;flex:1;gap:1rem;padding:1rem 1.5rem 1.5rem;display:flex;overflow-y:auto}.skill-form h3{color:var(--text-primary);margin-bottom:.25rem;font-size:1.05rem;font-weight:700}.form-group{flex-direction:column;gap:.4rem;display:flex}.form-group label{color:var(--text-secondary);font-size:.8rem;font-weight:600}.form-group input{border:1px solid var(--border-color);font-size:.85rem;font-family:var(--font-sans);color:var(--text-primary);transition:border-color var(--transition-fast);background:#fff;border-radius:8px;padding:.65rem .85rem}.form-group input:focus{border-color:var(--accent-blue);outline:none;box-shadow:0 0 0 3px #0b57d01a}.textarea-header{justify-content:space-between;align-items:center;display:flex}.file-upload-btn-wrapper{display:inline-block;position:relative;overflow:hidden}.btn-upload-label{border:1px solid var(--accent-blue);color:var(--accent-blue);cursor:pointer;transition:all var(--transition-fast);background-color:#0000;border-radius:6px;padding:.3rem .6rem;font-size:.75rem;font-weight:600}.btn-upload-label:hover{background-color:#0b57d00d}.file-upload-btn-wrapper input[type=file]{opacity:0;cursor:pointer;font-size:100px;position:absolute;top:0;left:0}.form-group textarea{border:1px solid var(--border-color);color:var(--text-primary);resize:vertical;min-height:180px;transition:border-color var(--transition-fast);background:#fff;border-radius:8px;padding:.75rem .85rem;font-family:Courier New,Courier,monospace;font-size:.85rem}.form-group textarea:focus{border-color:var(--accent-blue);outline:none;box-shadow:0 0 0 3px #0b57d01a}.form-actions{justify-content:flex-end;gap:.75rem;margin-top:.5rem;display:flex}.btn{cursor:pointer;transition:all var(--transition-fast);border:none;border-radius:8px;align-items:center;gap:.5rem;padding:.6rem 1.25rem;font-size:.85rem;font-weight:600;display:inline-flex}.btn-secondary{color:var(--text-secondary);background:#f1f5f9}.btn-secondary:hover{color:var(--text-primary);background:#cbd5e1}.btn-primary{background:var(--accent-blue);color:var(--text-on-primary)}.btn-primary:hover{background:#004bbf}.switch-wrapper{align-items:center;gap:.5rem;display:flex}.loader-switch{color:var(--accent-blue)}.switch{width:44px;height:24px;display:inline-block;position:relative}.switch input{opacity:0;width:0;height:0}.slider{cursor:pointer;background-color:#cbd5e1;transition:all .3s;position:absolute;inset:0}.slider:before{content:"";background-color:#fff;width:18px;height:18px;transition:all .3s;position:absolute;bottom:3px;left:3px;box-shadow:0 1px 3px #00000026}input:checked+.slider{background-color:#22c55e}input:focus+.slider{box-shadow:0 0 1px #22c55e}input:checked+.slider:before{transform:translate(20px)}.slider.round{border-radius:34px}.slider.round:before{border-radius:50%}.switch.disabled{opacity:.7}.switch.disabled .slider{cursor:not-allowed}.switch.disabled input:checked+.slider{background-color:#10b981}.bot-message-activity-bar{box-shadow:none;color:var(--text-muted);background:0 0;border:none;align-items:center;gap:.35rem;width:fit-content;max-width:100%;margin-top:.35rem;margin-bottom:.35rem;padding:.25rem 0;font-size:.775rem;font-style:italic;font-weight:500;animation:.2s forwards fadeIn;display:flex}.sidebar{overflow:visible}.user-avatar{border:1px solid var(--border-color);position:relative!important;overflow:hidden!important}.user-avatar-img{object-fit:cover;border-radius:50%;width:100%;height:100%}.user-avatar-initials{text-transform:uppercase;border-radius:50%;justify-content:center;align-items:center;width:100%;height:100%;font-size:.8rem;font-weight:700;display:flex}.user-profile-container{width:100%;position:relative}.profile-tooltip-panel{background-color:var(--bg-app);border:1px solid var(--border-color);box-shadow:var(--shadow-lg);z-index:999;border-radius:12px;flex-direction:column;gap:12px;min-width:220px;padding:12px;display:flex;position:absolute;bottom:calc(100% + 10px);left:0;right:0}.profile-tooltip-panel:after{content:"";border-style:solid;border-width:6px;border-color:var(--bg-app) transparent transparent transparent;margin-left:-6px;position:absolute;top:100%;left:24px}.profile-tooltip-panel:before{content:"";border-style:solid;border-width:7px;border-color:var(--border-color) transparent transparent transparent;z-index:-1;margin-left:-7px;position:absolute;top:100%;left:24px}.sidebar.collapsed .profile-tooltip-panel{width:220px;left:0;right:auto}.sidebar.collapsed .profile-tooltip-panel:after,.sidebar.collapsed .profile-tooltip-panel:before{left:20px}.tooltip-header{border-bottom:1px solid var(--border-color);flex-direction:column;gap:4px;padding-bottom:8px;display:flex}.tooltip-username{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;font-size:.85rem;font-weight:600;overflow:hidden}.tooltip-email{color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;font-size:.75rem;overflow:hidden}.btn-tooltip-logout{border:1px solid var(--border-color);width:100%;color:var(--accent-danger);cursor:pointer;transition:all var(--transition-fast);background-color:#0000;border-radius:8px;justify-content:center;align-items:center;gap:8px;padding:8px 12px;font-size:.8rem;font-weight:500;display:flex}.btn-tooltip-logout:hover{border-color:var(--accent-danger);background-color:#b91c1c14}.message-avatar{position:relative!important;overflow:hidden!important}.btn-tooltip-action{border:1px solid var(--border-color);width:100%;color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast);background-color:#0000;border-radius:8px;justify-content:center;align-items:center;gap:8px;padding:8px 12px;font-size:.8rem;font-weight:500;display:flex}.btn-tooltip-action:hover{background-color:var(--bg-card-hover);border-color:var(--accent-blue);color:var(--accent-blue)}.tooltip-status-panel{background-color:var(--bg-card);border:1px dashed var(--border-color);border-radius:8px;flex-direction:column;gap:8px;padding:8px 10px;display:flex}.status-item{justify-content:space-between;align-items:center;font-size:.75rem;display:flex}.status-label{color:var(--text-secondary);align-items:center;gap:6px;display:flex}.status-label .status-icon{color:var(--text-muted)}.status-badge{border-radius:6px;align-items:center;gap:4px;padding:2px 8px;font-size:.7rem;font-weight:600;display:inline-flex}.status-badge.connected{color:#10b981;background-color:#10b9811a}.status-badge.disconnected{color:#ef4444;background-color:#ef44441a}.status-dot{background-color:currentColor;border-radius:50%;width:6px;height:6px}.qgis-connect-hint{color:#94a3b8;text-align:left;border-top:1px dashed #ffffff1a;margin-top:8px;padding-top:8px;font-size:.75rem;line-height:1.4}.qgis-download-link{color:#3b82f6;margin-top:2px;font-weight:500;text-decoration:underline;transition:color .2s;display:inline-block}.qgis-download-link:hover{color:#60a5fa}.qgis-install-steps{color:#64748b;margin-top:6px;font-size:.7rem;line-height:1.35}.input-wrapper.disabled-wrapper{opacity:.7;cursor:not-allowed;background-color:#00000008}.input-wrapper.disabled-wrapper textarea{cursor:not-allowed}.input-wrapper.disabled-wrapper .send-btn.is-generating{cursor:pointer;pointer-events:auto}.agent-loading-indicator{align-items:center;gap:6px;width:fit-content;padding:4px 6px;display:flex}.agent-loading-indicator .loading-dot{background-color:var(--accent-blue,#0b57d0);border-radius:50%;width:6px;height:6px;animation:1.4s ease-in-out infinite both typing-bounce;display:inline-block}.agent-loading-indicator .loading-dot:first-child{animation-delay:-.32s}.agent-loading-indicator .loading-dot:nth-child(2){animation-delay:-.16s}.agent-loading-indicator .loading-text{color:var(--text-secondary,#444746);margin-left:8px;font-size:.85rem;font-weight:500}@keyframes typing-bounce{0%,80%,to{opacity:.4;transform:scale(.4)}40%{opacity:1;transform:scale(1.1)}}.admin-dashboard-overlay{background-color:var(--bg-app);z-index:2000;width:100vw;height:100vh;animation:fadeIn var(--transition-normal) ease-out;justify-content:stretch;align-items:stretch;padding:0;display:flex;position:fixed;top:0;left:0}.admin-dashboard-modal{background:var(--bg-app);width:100%;height:100%;box-shadow:none;border:none;border-radius:0;flex-direction:column;max-width:none;max-height:none;display:flex;overflow:hidden}.admin-header{border-bottom:1px solid var(--border-color);background:#f8fafc;justify-content:space-between;align-items:center;padding:1.5rem 2rem;display:flex}.admin-header .title-area{align-items:center;gap:1rem;display:flex}.admin-header .icon-main{color:var(--accent-blue);background:#0b57d014;border-radius:12px;padding:10px}.admin-header h2{font-family:var(--font-display);color:var(--text-primary);font-size:1.4rem;font-weight:700;line-height:1.2}.admin-header p{color:var(--text-muted);font-size:.85rem}.admin-header .actions-area{align-items:center;gap:.75rem;display:flex}.btn-refresh{border:1px solid var(--border-color);background:var(--bg-app);color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast);border-radius:8px;align-items:center;gap:.5rem;padding:.5rem 1rem;font-size:.85rem;font-weight:500;display:flex}.btn-refresh:hover{background:var(--bg-card-hover);color:var(--text-primary)}.admin-stats-row{border-bottom:1px solid var(--border-color);background:#fff;grid-template-columns:repeat(3,1fr);gap:1.5rem;padding:1.5rem 2rem;display:grid}.stat-card{border:1px solid var(--border-color);transition:transform var(--transition-fast), box-shadow var(--transition-fast);background:#f8fafc;border-radius:16px;align-items:center;gap:1.25rem;padding:1.25rem;display:flex}.stat-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.stat-icon-wrapper{border-radius:12px;justify-content:center;align-items:center;padding:12px;display:flex}.stat-icon-wrapper.blue{color:var(--accent-blue);background:#0b57d014}.stat-icon-wrapper.green{color:var(--accent-color);background:#15803d14}.stat-icon-wrapper.orange{color:var(--accent-orange);background:#b4530914}.stat-info{flex-direction:column;display:flex}.stat-value{color:var(--text-primary);font-size:1.6rem;font-weight:700;line-height:1.1;font-family:var(--font-display)}.stat-label{color:var(--text-muted);font-size:.85rem;font-weight:500}.admin-error-notice{color:var(--accent-danger);background:#fef2f2;border:1px solid #fca5a5;border-radius:8px;align-items:center;gap:.5rem;margin:1rem 2rem 0;padding:.75rem 1rem;font-size:.85rem;display:flex}.admin-panes-container{background:#fff;flex:1;grid-template-columns:320px 360px 1fr;display:grid;overflow:hidden}.admin-pane{border-right:1px solid var(--border-color);flex-direction:column;display:flex;overflow:hidden}.admin-pane:last-child{border-right:none}.pane-header{border-bottom:1px solid var(--border-color);background:#f8fafc;flex-direction:column;gap:.75rem;padding:1.25rem 1.5rem;display:flex}.pane-header h3{font-family:var(--font-display);color:var(--text-primary);align-items:center;gap:.5rem;font-size:1rem;font-weight:700;display:flex}.search-box-container{width:100%;position:relative}.search-box-container input{border:1px solid var(--border-color);width:100%;color:var(--text-primary);transition:all var(--transition-fast);background:#fff;border-radius:8px;padding:.5rem 2rem .5rem 2.25rem;font-size:.85rem}.search-box-container input:focus{border-color:var(--accent-blue);outline:none;box-shadow:0 0 0 3px #0b57d01a}.search-box-container .search-icon{color:var(--text-muted);position:absolute;top:50%;left:.75rem;transform:translateY(-50%)}.search-clear-btn{color:var(--text-muted);cursor:pointer;background:0 0;border:none;display:flex;position:absolute;top:50%;right:.75rem;transform:translateY(-50%)}.pane-content.scrollable{flex:1;padding:.75rem 0;overflow-y:auto}.admin-user-list{padding:0 .5rem;list-style:none}.admin-user-item{cursor:pointer;transition:all var(--transition-fast);border-radius:12px;align-items:center;gap:.75rem;margin-bottom:.25rem;padding:.75rem;display:flex;position:relative}.admin-user-item:hover{background:var(--bg-sidebar)}.admin-user-item.active{background:var(--bg-active-pill);color:var(--bg-active-text)}.user-avatar-placeholder{border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;font-size:.85rem;font-weight:700;display:flex}.user-info-text{flex-direction:column;flex:1;display:flex;overflow:hidden}.user-info-text .fullname{color:inherit;white-space:nowrap;text-overflow:ellipsis;font-size:.88rem;font-weight:600;overflow:hidden}.user-info-text .email{color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;font-size:.75rem;overflow:hidden}.admin-user-item.active .user-info-text .email{color:#0b57d0b3}.user-stats-badges{align-items:center;gap:.35rem;margin-right:.25rem;display:flex}.badge-threads,.badge-chats{border-radius:999px;padding:2px 6px;font-size:.7rem;font-weight:700}.badge-threads{color:var(--accent-blue);background:#0b57d01a}.badge-chats{color:var(--accent-color);background:#15803d1a}.admin-user-item.active .badge-threads,.admin-user-item.active .badge-chats{color:var(--bg-active-text);background:#fff9}.chevron-icon{color:var(--text-muted);opacity:.5;transition:transform var(--transition-fast)}.admin-user-item:hover .chevron-icon{opacity:1;transform:translate(2px)}.admin-user-item.active .chevron-icon{color:var(--bg-active-text);opacity:1}.selected-user-header{border-left:3px solid var(--accent-blue);background:#0b57d00a;border-radius:4px;flex-direction:column;padding:.25rem .5rem;font-size:.8rem;display:flex}.selected-user-header strong{color:var(--text-primary)}.selected-user-header span{color:var(--text-muted)}.admin-thread-list{padding:0 .75rem;list-style:none}.admin-thread-item{border:1px solid var(--border-color);cursor:pointer;transition:all var(--transition-fast);background:#fff;border-radius:12px;margin-bottom:.5rem;padding:1rem}.admin-thread-item:hover{background:#fafafa;border-color:#d1d5db}.admin-thread-item.active{border-color:var(--accent-blue);box-shadow:0 0 0 1px var(--accent-blue);background:#0b57d005}.thread-title-row{justify-content:space-between;align-items:flex-start;gap:.5rem;margin-bottom:.35rem;display:flex}.thread-title{color:var(--text-primary);text-overflow:ellipsis;-webkit-line-clamp:1;-webkit-box-orient:vertical;flex:1;font-size:.88rem;font-weight:600;display:-webkit-box;overflow:hidden}.thread-msg-count{color:var(--text-muted);white-space:nowrap;font-size:.75rem;font-weight:600}.thread-preview-text{color:var(--text-muted);text-overflow:ellipsis;-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-bottom:.5rem;font-size:.8rem;display:-webkit-box;overflow:hidden}.thread-id-sub{color:var(--text-muted);font-size:.7rem}.thread-id-sub code{font-family:monospace}.pane-header.flex-header{flex-direction:row;justify-content:space-between;align-items:center}.pane-header-title{align-items:center;gap:.5rem;display:flex}.thread-badge{color:#475569;background:#f1f5f9;border-radius:4px;padding:2px 6px;font-size:.75rem;font-weight:500}.dev-logs-toggle{color:var(--text-secondary);cursor:pointer;background:var(--bg-app);border:1px solid var(--border-color);transition:background var(--transition-fast);-webkit-user-select:none;user-select:none;border-radius:6px;align-items:center;gap:.35rem;padding:4px 8px;font-size:.8rem;display:flex}.dev-logs-toggle:hover{background:var(--bg-sidebar)}.dev-logs-toggle input{cursor:pointer}.chat-area-review{background:#f8fafc;flex:1;padding:1.5rem;overflow-y:auto}.admin-messages-list{flex-direction:column;gap:1.25rem;display:flex}.review-message{width:100%;max-width:85%}.user-chat-wrapper{justify-content:flex-end;align-self:flex-end;display:flex}.bot-chat-wrapper{justify-content:flex-start;align-self:flex-start;display:flex}.user-bubble{color:#1f1f1f;box-shadow:var(--shadow-sm);background:#e8f0fe;border:1px solid #0b57d026;border-radius:18px 18px 4px;flex-direction:column;gap:.5rem;padding:.85rem 1.1rem;display:flex}.bot-bubble{color:#1f1f1f;border:1px solid var(--border-color);box-shadow:var(--shadow-sm);background:#fff;border-radius:18px 18px 18px 4px;flex-direction:column;gap:.75rem;padding:1rem 1.25rem;display:flex}.bubble-sender{text-transform:uppercase;letter-spacing:.05em;margin-bottom:.25rem;font-size:.75rem;font-weight:700}.user-bubble .bubble-sender{color:var(--accent-blue)}.bot-bubble .bubble-sender{color:var(--accent-color)}.bubble-content{font-size:.92rem;line-height:1.5}.bubble-content p{margin-bottom:.5rem}.bubble-content p:last-child{margin-bottom:0}.bubble-content pre{background:#f1f5f9;border-radius:4px;margin:.5rem 0;padding:.5rem;overflow-x:auto}.user-attached-img{border:1px solid var(--border-color);border-radius:8px;max-width:100%;max-height:250px;margin-top:.25rem}.thinking-details{background:#f8fafc;border-left:3px solid #cbd5e1;border-radius:4px;margin:.25rem 0 .5rem;overflow:hidden}.thinking-summary{color:#64748b;cursor:pointer;-webkit-user-select:none;user-select:none;background:#f1f5f9;padding:.5rem .75rem;font-size:.8rem;font-weight:600}.thinking-content{color:#475569;white-space:pre-wrap;font-size:.8rem;line-height:1.45;font-family:var(--font-sans);padding:.75rem}.review-message.system-log{background:#fef3c7;border:1px solid #fde68a;border-radius:8px;max-width:100%;padding:.75rem 1rem}.system-log .log-header{color:#b45309;align-items:center;gap:.35rem;margin-bottom:.35rem;font-size:.75rem;font-weight:700;display:flex}.system-log .log-body{color:#78350f;white-space:pre-wrap;word-break:break-all;font-family:monospace;font-size:.75rem}.review-message.tool-log{background:#1e293b;border:1px solid #334155;border-radius:8px;max-width:100%}.tool-details{overflow:hidden}.tool-summary{color:#38bdf8;cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:.5rem;padding:.6rem 1rem;font-family:monospace;font-size:.75rem;font-weight:700;display:flex}.tool-summary:hover{background:#0f172a}.tool-pre{color:#e2e8f0;white-space:pre-wrap;word-break:break-all;background:#0f172a;max-height:300px;padding:.75rem 1rem;font-family:Courier New,Courier,monospace;font-size:.75rem;line-height:1.4;overflow-x:auto}.pane-empty-state{height:100%;color:var(--text-muted);text-align:center;flex-direction:column;justify-content:center;align-items:center;padding:2rem;display:flex}.pane-empty-state .empty-icon{color:#cbd5e1;margin-bottom:1rem}.pane-empty-state p{font-size:.88rem}.pane-loader{height:100%;color:var(--text-muted);flex-direction:column;justify-content:center;align-items:center;padding:2rem;display:flex}.pane-loader p{margin-top:.75rem;font-size:.85rem}.scrollable{overflow-y:auto}
