.login-page{background:url(/login.avif) 50%/cover no-repeat fixed;justify-content:center;align-items:center;min-height:100dvh;padding:1rem;display:flex;position:relative}.login-page:before{content:"";-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:0;background:#0000008c;position:absolute;inset:0}.login-card{z-index:1;background:var(--card);border:1px solid var(--border);border-radius:var(--radius);flex-direction:column;gap:1.25rem;width:100%;max-width:380px;padding:2.5rem 2rem 2rem;display:flex;position:relative;box-shadow:0 8px 32px #0000004d}.login-brand{text-align:center;margin-bottom:.5rem}.login-brand-logo{object-fit:contain;border-radius:6px;width:auto;height:80px}[data-theme=dark] .login-brand-logo{background:#ffffffeb;border-radius:6px;padding:4px 6px}.login-title{color:var(--text);margin:0;font-size:1.4rem;font-weight:700}.login-subtitle{color:var(--text-3);margin:.25rem 0 0;font-size:.85rem}.login-label{color:var(--text);flex-direction:column;gap:.4rem;font-size:.85rem;font-weight:500;display:flex}.login-input{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--input-bg);color:var(--text);outline:none;padding:.65rem .85rem;font-size:16px;transition:border-color .15s,box-shadow .15s}.login-input:focus{border-color:var(--accent);box-shadow:0 0 0 3px #2563eb14}[data-theme=dark] .login-input:focus{box-shadow:0 0 0 3px #6b8afd1a}.login-password-wrap{display:flex;position:relative}.login-password-wrap .login-input{flex:1;padding-right:2.5rem}.login-password-toggle{cursor:pointer;color:var(--text-3);background:0 0;border:none;justify-content:center;align-items:center;padding:4px;transition:color .12s;display:flex;position:absolute;top:50%;right:.6rem;transform:translateY(-50%)}.login-password-toggle:hover{color:var(--text-2)}.login-input:disabled{opacity:.6}.login-btn{border-radius:var(--radius-sm);background:var(--accent);color:#fff;cursor:pointer;border:none;margin-top:.25rem;padding:.7rem;font-size:.95rem;font-weight:600;transition:opacity .15s}.login-btn:hover:not(:disabled){opacity:.88}.login-btn:disabled{opacity:.45;cursor:not-allowed}.login-error{color:#dc2626;border-radius:var(--radius-sm);text-align:center;background:#dc262614;border:1px solid #dc262633;padding:.6rem .85rem;font-size:.85rem}[data-theme=dark] .login-error{color:#fca5a5;background:#f8717114;border-color:#f8717133}.login-partners-logos{justify-content:center;align-items:center;gap:1.25rem;margin-bottom:.75rem;display:flex}.login-logo-divider{background:var(--border);border-radius:1px;flex-shrink:0;width:1.5px;height:48px}@media (width<=480px){.login-card{padding:2rem 1.25rem 1.5rem}.login-brand-logo{height:42px}.login-title{font-size:1.2rem}}.sidebar{width:var(--sidebar-w);background:var(--sidebar-bg);border-right:1px solid var(--border);flex-direction:column;flex-shrink:0;display:flex;overflow:hidden}.sidebar-brand{border-bottom:1px solid var(--border);align-items:center;gap:16px;padding:16px 14px;display:flex}.brand-icon{background:0 0;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;width:auto;height:36px;display:flex;overflow:hidden}.brand-name{color:var(--text);letter-spacing:-.01em;font-size:16px;font-weight:700;line-height:1.25}.brand-sub{color:var(--text-2);margin-top:2px;font-size:12.5px;font-weight:500;display:block}.brand-logo{object-fit:contain;border-radius:6px;width:auto;max-width:100px;height:36px;display:block}[data-theme=dark] .brand-icon{background:#ffffffeb;border-radius:6px;padding:6px 8px}.btn-new-analysis{background:var(--card);color:var(--text);border:1.5px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;align-items:center;gap:8px;margin:12px;padding:10px 14px;font-size:13.5px;font-weight:600;transition:border-color .15s,color .15s,background .15s;display:flex}.btn-new-analysis:hover{border-color:var(--accent);color:var(--accent);background:var(--accent-soft)}.sidebar-search-wrap{background:var(--bg);border:1.5px solid var(--border);border-radius:var(--radius-sm);align-items:center;gap:7px;margin:0 12px 8px;padding:7px 10px;transition:border-color .15s;display:flex}.sidebar-search-wrap:focus-within{border-color:var(--accent)}.sidebar-search-icon{color:var(--text-3);flex-shrink:0}.sidebar-search-input{color:var(--text);background:0 0;border:none;outline:none;flex:1;min-width:0;font-size:13px}.sidebar-search-input::placeholder{color:var(--text-3)}.sidebar-search-clear{cursor:pointer;color:var(--text-3);background:0 0;border:none;border-radius:3px;flex-shrink:0;align-items:center;padding:0;transition:color .1s;display:flex}.sidebar-search-clear:hover{color:var(--text)}.sidebar-nav{flex:1;padding:6px 0;overflow-y:auto}.sidebar-nav::-webkit-scrollbar{width:3px}.sidebar-nav::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}.nav-section-label{color:var(--text-3);text-transform:uppercase;letter-spacing:.08em;align-items:center;gap:8px;padding:16px 16px 6px;font-size:11px;font-weight:700;display:flex}.sidebar-tride-logo{object-fit:contain;width:auto;height:16px}.nav-item{border-radius:var(--radius-sm);color:var(--text-2);cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:10px;margin:2px 8px;padding:10px 14px;font-size:13.5px;font-weight:500;transition:background .12s,color .12s;display:flex}.nav-item:hover{background:var(--border-xs);color:var(--text)}.nav-item.active{background:var(--nav-active-bg);color:var(--nav-active-tx);font-weight:600}.nav-item svg{opacity:.8;flex-shrink:0}.nav-item-disabled{cursor:default;pointer-events:none;opacity:.6}.nav-badge{background:var(--accent);color:#fff;border-radius:10px;margin-left:auto;padding:2px 7px;font-size:10px;font-weight:700;line-height:1.4}.nav-subitem{border-radius:var(--radius-xs);color:var(--text-2);cursor:pointer;align-items:center;gap:8px;margin:2px 8px;padding:10px 14px 10px 20px;font-size:13.5px;line-height:1.4;transition:background .1s,color .1s;display:flex;position:relative}.nav-subitem:before{content:"";background:var(--accent);border-radius:2px;width:3px;height:0;transition:height .15s;position:absolute;top:50%;left:10px;transform:translateY(-50%)}.nav-subitem:hover{background:var(--border-xs);color:var(--text)}.nav-subitem.active{background:var(--nav-active-bg);color:var(--accent);font-weight:600}.nav-subitem.active:before{width:3px;height:20px}.nav-subitem-title{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.sub-del-btn{cursor:pointer;color:var(--text-3);opacity:0;background:0 0;border:none;border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;min-width:22px;padding:2px 4px;font-size:12px;transition:opacity .1s,color .1s;display:flex}.sub-del-btn:hover{color:#dc2626;background:#dc262614}.nav-subitem:hover .sub-del-btn{opacity:1}.nav-empty{color:var(--text-3);padding:8px 14px 8px 22px;font-size:12.5px;font-style:italic}.sidebar-partners{justify-content:center;align-items:center;gap:16px;padding:12px 14px;display:flex}.sidebar-partner-logo{object-fit:contain;opacity:.85;border-radius:4px;width:auto;height:32px}.sidebar-bottom{border-top:1px solid var(--border);padding:8px 0 10px}.sidebar-bottom .nav-item{margin:2px 8px}.sidebar-logout{cursor:pointer;color:var(--text-2);text-align:left;border-radius:var(--radius-sm);background:0 0;border:none;align-items:center;gap:10px;width:calc(100% - 16px);padding:10px 14px;font-size:13.5px;font-weight:500;transition:background .12s,color .12s;display:flex}.sidebar-logout:hover{color:#dc2626;background:#dc26260f}[data-theme=dark] .sidebar-logout:hover{color:#fca5a5;background:#f8717114}.sidebar-powered{color:var(--text-3);opacity:.5;justify-content:center;align-items:center;gap:6px;padding:8px 14px 4px;font-size:10px;display:flex}.sidebar-powered-logo{object-fit:contain;width:auto;height:14px}.theme-btn{border:1px solid var(--border);cursor:pointer;width:30px;height:30px;color:var(--text-3);background:0 0;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;margin-left:auto;font-size:13px;transition:background .12s,color .12s,border-color .12s;display:flex}.theme-btn:hover{background:var(--accent-soft);color:var(--accent);border-color:var(--accent-border)}.sidebar-overlay{display:none}@media (width<=1024px){.sidebar{z-index:100;width:300px;transition:transform .25s;position:fixed;top:0;bottom:0;left:0;transform:translate(-100%);box-shadow:4px 0 24px #00000026}.sidebar.open{transform:translate(0)}.sidebar-overlay{z-index:99;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#00000073;display:block;position:fixed;inset:0}}.topbar{background:var(--card);border-bottom:1px solid var(--border);flex-shrink:0;align-items:center;gap:10px;height:52px;padding:0 20px;display:flex}.topbar-train{color:var(--text);cursor:default;-webkit-user-select:none;user-select:none;align-items:center;gap:10px;min-width:0;padding:5px 8px;font-size:14px;font-weight:600;display:flex;overflow:hidden}.topbar-train-text{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.topbar-title-logo{object-fit:contain;border-radius:3px;flex-shrink:0;width:auto;height:30px}[data-theme=dark] .topbar-title-logo{background:#ffffffe6;padding:1.5px 3px}.topbar-spacer{flex:1}.topbar-partners{align-items:center;gap:8px;margin-right:6px;display:flex}.topbar-partner-logo{object-fit:contain;border-radius:3px;width:auto}.topbar-logo-icf{height:26px}[data-theme=dark] .topbar-partner-logo{background:#ffffffe6;border-radius:4px;padding:2px 4px}.topbar-icon-btn{border-radius:var(--radius-sm);border:1px solid var(--border);cursor:pointer;width:34px;min-width:34px;height:34px;color:var(--text-2);background:0 0;flex-shrink:0;justify-content:center;align-items:center;transition:background .12s,color .12s,border-color .12s;display:flex}.topbar-icon-btn:hover{background:var(--accent-soft);color:var(--accent);border-color:var(--accent-border)}.topbar-hamburger{border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;width:36px;min-width:36px;height:36px;color:var(--text-2);background:0 0;flex-shrink:0;justify-content:center;align-items:center;transition:background .12s;display:none}.topbar-hamburger:hover{background:var(--border-xs)}.topbar-company-logo{object-fit:contain;opacity:.4;flex-shrink:0;width:auto;height:20px;margin-left:2px}@media (width<=1024px){.topbar-hamburger{display:flex}.topbar{padding:0 12px}}@media (width<=480px){.topbar-share-btn{display:none}}.welcome-view{flex-direction:column;flex:1;min-height:0;display:flex;overflow-y:auto}.welcome-view::-webkit-scrollbar{width:4px}.welcome-view::-webkit-scrollbar-thumb{background:var(--border);border-radius:4px}.hero-section{text-align:center;background:var(--bg);flex-direction:column;flex:1;align-items:center;padding:40px 24px 32px;display:flex;position:relative}.hero-status{color:var(--accent);align-items:center;gap:6px;margin-bottom:16px;font-size:12.5px;font-weight:500;display:flex}.hero-status-dot{background:#22c55e;border-radius:50%;width:7px;height:7px;animation:2s ease-in-out infinite statusPulse}@keyframes statusPulse{0%,to{opacity:1}50%{opacity:.5}}.hero-logo-wrap{justify-content:center;align-items:center;gap:1.25rem;margin-top:auto;margin-bottom:20px;display:flex}.hero-logo{object-fit:contain;border-radius:6px;width:auto}.hero-logo-icf,.hero-logo-railtel{height:80px}[data-theme=dark] .hero-logo{background:#ffffffeb;border-radius:6px;padding:4px 6px}.hero-logo-divider{background:var(--border);border-radius:1px;flex-shrink:0;width:1.5px;height:48px}.hero-title{color:var(--text);letter-spacing:-.03em;max-width:560px;margin-bottom:28px;font-size:28px;font-weight:700;line-height:1.25}.role-selector{flex-wrap:wrap;justify-content:center;gap:8px;margin-bottom:20px;display:flex}.role-chip{border:1.5px solid var(--border);background:var(--card);color:var(--text-2);cursor:pointer;border-radius:20px;padding:6px 16px;font-size:13px;font-weight:500;transition:border-color .15s,background .15s,color .15s}@media (hover:hover){.role-chip:hover{border-color:var(--accent-border);color:var(--accent);background:var(--accent-soft)}}.role-chip.active{border-color:var(--accent);color:#fff;background:var(--accent)}.input-panel{background:var(--card);border:1px solid var(--border);width:100%;max-width:680px;box-shadow:var(--card-shadow-md);border-radius:24px;transition:border-color .15s,box-shadow .15s;overflow:hidden}.input-panel:focus-within{border-color:var(--accent-border);box-shadow:0 4px 12px #00000014,0 0 0 3px #2563eb0f}[data-theme=dark] .input-panel:focus-within{box-shadow:0 4px 12px #0000004d,0 0 0 3px #6b8afd14}.input-panel-textarea{width:100%;color:var(--text);resize:none;background:0 0;border:none;outline:none;min-height:52px;max-height:160px;padding:16px 20px 12px;font-family:inherit;font-size:16px;line-height:1.5}.input-panel-textarea::placeholder{color:var(--text-3)}.input-panel-toolbar{flex-shrink:0;align-items:center;gap:6px;padding:4px 12px 12px;display:flex}.input-chip{cursor:pointer;border:1.5px solid var(--border);background:var(--chip-bg);color:var(--text-2);border-radius:20px;flex-shrink:0;align-items:center;gap:5px;padding:5px 12px;font-size:12px;font-weight:500;transition:all .12s;display:flex}@media (hover:hover){.input-chip:hover{border-color:var(--accent);color:var(--accent);background:var(--accent-soft)}}.input-chip.primary{border-color:var(--accent-border);color:var(--accent);background:var(--accent-soft)}.input-spacer{flex:1}.input-mic-btn{cursor:pointer;width:34px;height:34px;color:var(--text-3);background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;transition:color .12s;display:flex}@media (hover:hover){.input-mic-btn:hover{color:var(--text-2)}}.input-send-btn{background:var(--accent);cursor:pointer;color:#fff;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:38px;min-width:38px;height:38px;min-height:38px;transition:opacity .15s,transform .1s;display:flex}@media (hover:hover){.input-send-btn:hover:not(:disabled){opacity:.85;transform:scale(1.04)}}.input-send-btn:disabled{opacity:.3;cursor:not-allowed;transform:none}.input-panel-upload{border-top:1px solid var(--border-xs);color:var(--text-3);cursor:pointer;align-items:center;gap:7px;padding:9px 16px;font-size:12px;transition:color .12s;display:flex}@media (hover:hover){.input-panel-upload:hover{color:var(--text-2)}}.upload-dots{gap:3px;margin-left:auto;display:flex}.upload-dots span{background:var(--text-3);border-radius:50%;width:4px;height:4px}.feature-cards{grid-template-columns:repeat(2,1fr);gap:12px;width:100%;max-width:680px;margin-top:12px;margin-bottom:auto;display:grid}.feature-card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);cursor:pointer;text-align:left;padding:18px 16px;transition:box-shadow .15s,border-color .15s,transform .1s}@media (hover:hover){.feature-card:hover{box-shadow:var(--card-shadow-md);border-color:var(--accent-border);transform:translateY(-2px)}}.feature-card-icon{color:var(--accent);align-items:center;margin-bottom:10px;display:flex}.feature-card-title{color:var(--text);margin-bottom:5px;font-size:14px;font-weight:650}.feature-card-desc{color:var(--text-3);font-size:12.5px;line-height:1.5}.welcome-note{color:var(--text);border-left:3px solid var(--accent);background:var(--accent-soft,#2563eb0f);border-radius:0 var(--radius-sm,8px) var(--radius-sm,8px) 0;text-align:left;width:100%;max-width:680px;margin-top:16px;margin-bottom:0;padding:10px 14px;font-size:12px;font-style:italic;font-weight:500;line-height:1.5}.hero-footer{color:var(--text-3);text-align:center;margin-top:24px;font-size:12px}.hero-footer a{color:var(--text-3);cursor:pointer;text-decoration:underline}@media (hover:hover){.hero-footer a:hover{color:var(--text-2)}}@media (height<=700px){.hero-section{padding:16px 24px 20px}.hero-logo-icf,.hero-logo-railtel{height:48px}.hero-logo-divider{height:32px}.hero-title{margin-bottom:16px;font-size:22px}.hero-logo-wrap{margin-bottom:12px}}@media (width<=768px){.hero-section{padding:20px 14px}.hero-logo-wrap{margin-bottom:14px}.hero-logo-icf,.hero-logo-railtel{height:52px}.hero-logo-divider{height:36px}.hero-title{max-width:100%;margin-bottom:18px;padding:0 4px;font-size:20px}.hero-status{margin-bottom:10px;font-size:11.5px}.role-selector{gap:6px;margin-bottom:16px}.role-chip{padding:5px 12px;font-size:12px}.input-panel{border-radius:18px;max-width:100%}.input-panel-textarea{min-height:44px;padding:14px 14px 6px;font-size:16px}.input-send-btn{width:34px;height:34px}.feature-cards{grid-template-columns:1fr;gap:8px;margin-top:16px}.feature-card{flex-direction:row;align-items:flex-start;gap:12px;padding:14px;display:flex}.feature-card-icon{flex-shrink:0;margin-bottom:0;padding-top:2px}.feature-card-title{font-size:13px}.feature-card-desc{font-size:11.5px}.hero-footer{font-size:10.5px}}@media (width<=480px){.hero-section{padding:18px 10px 16px}.hero-title{margin-bottom:14px;font-size:18px}.input-panel-toolbar{flex-wrap:wrap;gap:4px;padding:6px 10px 8px}.input-chip{padding:4px 9px;font-size:11px}.feature-card{padding:12px}}.sources-panel{background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-sm);overflow:hidden}.sources-toggle{color:var(--text-2);cursor:pointer;text-align:left;border-radius:var(--radius-sm);background:0 0;border:none;align-items:center;gap:8px;width:100%;padding:10px 14px;font-family:inherit;font-size:13px;font-weight:600;transition:color .1s,background .1s;display:flex}.sources-toggle:hover{color:var(--text);background:var(--border-xs)}.sources-count{background:var(--accent-soft);color:var(--accent);border-radius:10px;margin-left:auto;padding:2px 8px;font-size:11px;font-weight:700}.sources-body{flex-direction:column;gap:6px;padding:0 10px 10px;display:flex}.source-item{background:var(--card);border:1px solid var(--border);border-left:3px solid var(--accent);border-radius:var(--radius-xs);flex-direction:column;gap:4px;padding:10px 14px;font-size:13px;transition:background .12s,box-shadow .12s;display:flex}.source-item-clickable{cursor:pointer}.source-item-clickable:hover{background:var(--accent-soft);box-shadow:0 1px 4px #0000000f}.source-doc-row{justify-content:space-between;align-items:flex-start;gap:8px;display:flex}.source-open-icon{color:var(--accent);opacity:0;flex-shrink:0;margin-top:1px;font-size:12px;transition:opacity .12s}.source-item-clickable:hover .source-open-icon{opacity:1}.source-doc{color:var(--accent);font-size:12.5px;font-weight:600;line-height:1.4}.source-section{color:var(--text-2);font-size:12.5px;line-height:1.4}.source-bottom-row{align-items:center;gap:10px;margin-top:2px;display:flex}.source-pages{color:var(--text-3);font-size:11.5px}.source-score{color:var(--text-3);margin-left:auto;font-size:11px;font-style:italic}@media (width<=768px){.source-item{padding:8px 10px;font-size:12px}.sources-toggle{padding:8px 12px;font-size:12px}}.images-panel{margin-top:8px}.images-body{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:10px;padding:10px 0 4px;display:grid}.image-thumb-wrap{flex-direction:column;gap:4px;display:flex;position:relative}.image-thumb{aspect-ratio:3/4;object-fit:contain;border-radius:var(--radius-sm);border:1px solid var(--border);cursor:zoom-in;background:var(--bg);width:100%;transition:opacity .15s,box-shadow .15s}.image-thumb:hover{opacity:.88;box-shadow:var(--card-shadow-md)}.image-desc{color:var(--text-2);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:11.5px;line-height:1.4;display:-webkit-box;overflow:hidden}.image-meta{align-items:center;gap:6px;margin-top:2px;display:flex}.image-page-badge{color:var(--text-3);background:var(--bg-2,#0000000d);white-space:nowrap;border-radius:4px;padding:1px 6px;font-size:10px;line-height:1.6}.image-source-link{color:var(--accent);border:1px solid var(--accent);cursor:pointer;white-space:nowrap;background:0 0;border-radius:4px;align-items:center;gap:3px;padding:1px 6px;font-family:inherit;font-size:10px;line-height:1.6;text-decoration:none;transition:background .15s,color .15s;display:inline-flex}.image-source-link:hover{background:var(--accent);color:#fff}.image-expanded-overlay{z-index:9999;cursor:zoom-out;background:#000000d9;justify-content:center;align-items:center;animation:.15s fadeIn;display:flex;position:fixed;inset:0}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.image-expanded{object-fit:contain;border-radius:var(--radius);cursor:default;max-width:92vw;max-height:90vh;animation:.15s zoomIn;box-shadow:0 8px 40px #0009}@keyframes zoomIn{0%{opacity:0;transform:scale(.92)}to{opacity:1;transform:scale(1)}}.lightbox-close{color:#fff;cursor:pointer;z-index:10000;background:#ffffff1f;border:none;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;font-size:20px;transition:background .15s;display:flex;position:fixed;top:16px;right:20px}.lightbox-close:hover{background:#ffffff40}.lightbox-source{z-index:10000;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0009;border-radius:20px;padding:8px 18px;position:fixed;bottom:20px;left:50%;transform:translate(-50%)}.lightbox-source-btn{color:#ffffffe6;cursor:pointer;white-space:nowrap;background:0 0;border:1px solid #ffffff4d;border-radius:8px;align-items:center;gap:6px;padding:6px 16px;font-family:inherit;font-size:13px;transition:background .15s,border-color .15s;display:inline-flex}.lightbox-source-btn:hover{color:#fff;background:#ffffff26;border-color:#ffffff80}@media (width<=768px){.images-body{grid-template-columns:repeat(auto-fill,minmax(110px,1fr))}}.msg-row{gap:14px;width:100%;max-width:900px;margin:0 auto;animation:.2s ease-out msgIn;display:flex}@keyframes msgIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.msg-row.user{flex-direction:row-reverse}.msg-row.user .msg-bubble-wrap{flex:0 auto;max-width:80%}.msg-avatar{letter-spacing:-.3px;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:30px;height:30px;margin-top:2px;font-size:10px;font-weight:700;display:flex}.msg-row.user .msg-avatar{background:var(--accent);color:#fff;font-size:9px}.msg-row.assistant .msg-avatar{background:var(--card);border:1px solid var(--border);font-size:14px}.msg-bubble-wrap{flex-direction:column;flex:1;gap:6px;min-width:0;display:flex}.msg-bubble{border-radius:var(--radius);word-break:break-word;padding:12px 16px;font-size:14px;line-height:1.7}.msg-row.user .msg-bubble{background:var(--msg-user-bg);color:#fff;white-space:pre-wrap;border-bottom-right-radius:4px}.msg-row.assistant .msg-bubble{color:var(--text);background:0 0;border:none;padding:4px 0}.msg-failed-row{color:var(--error,#dc2626);justify-content:flex-end;align-items:center;gap:6px;padding:4px 2px 2px;font-size:12px;display:flex}.msg-retry-btn{border:1px solid var(--error,#dc2626);color:var(--error,#dc2626);cursor:pointer;background:0 0;border-radius:6px;padding:2px 10px;font-size:12px;font-weight:500;transition:background .15s,color .15s}.msg-retry-btn:hover{background:var(--error,#dc2626);color:#fff}.msg-meta{color:var(--text-3);align-items:center;gap:8px;padding:0 2px;font-size:11px;display:flex}.msg-row.user .msg-meta{justify-content:flex-end}.meta-badge{text-transform:uppercase;letter-spacing:.04em;border-radius:4px;padding:2px 8px;font-size:10px;font-weight:600}.inline-image-block{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg);margin-top:12px;overflow:hidden}.inline-image{object-fit:contain;background:var(--bg);cursor:zoom-in;width:100%;max-height:320px;display:block}.inline-image-caption{color:var(--text-2);border-top:1px solid var(--border);padding:6px 10px;font-size:11px;line-height:1.4}.inline-image-source{align-items:center;gap:6px;padding:6px 10px;display:flex}.inline-image-source .image-pdf-btn{color:var(--accent);border:1px solid var(--accent);cursor:pointer;white-space:nowrap;background:0 0;border-radius:4px;align-items:center;gap:4px;padding:2px 7px;font-family:inherit;font-size:10.5px;transition:background .15s,color .15s;display:inline-flex}@media (hover:hover){.inline-image-source .image-pdf-btn:hover{background:var(--accent);color:#fff}}.ferrule-locations-panel{background:var(--bg);border:1px solid var(--border);border-radius:var(--radius);margin-top:16px;overflow:hidden;box-shadow:0 1px 2px #00000005}.ferrule-panel-header{background:var(--card);border-bottom:1px solid var(--border);color:var(--text-2);letter-spacing:.02em;text-transform:uppercase;align-items:center;gap:6px;padding:10px 14px;font-size:11.5px;font-weight:600;display:flex}.ferrule-loc-list{flex-direction:column;display:flex}.ferrule-loc-row{border-bottom:1px solid var(--border-xs);justify-content:space-between;align-items:center;gap:12px;padding:10px 14px;transition:background .15s;display:flex}.ferrule-loc-row:last-child{border-bottom:none}@media (hover:hover){.ferrule-loc-row:hover{background:var(--card)}}.ferrule-loc-info{flex-direction:column;flex:1;gap:3px;min-width:0;display:flex}.ferrule-loc-section{color:var(--text-1);white-space:nowrap;text-overflow:ellipsis;font-size:12.5px;font-weight:600;overflow:hidden}.ferrule-loc-page{color:var(--text-2);font-size:11px}.doc-name{color:var(--text-1);font-weight:500}.ferrule-loc-link{color:var(--accent);background:var(--card);border:1px solid var(--border);border-radius:var(--radius-sm);white-space:nowrap;flex-shrink:0;align-items:center;gap:5px;padding:6px 12px;font-size:11px;font-weight:600;text-decoration:none;transition:all .15s;display:inline-flex}@media (hover:hover){.ferrule-loc-link:hover{border-color:var(--accent);color:var(--accent);box-shadow:0 1px 2px rgba(var(--accent-rgb), .1)}}.badge-fault_code{color:#dc2626;background:#dc262614}.badge-procedure{color:var(--accent);background:#2563eb14}.badge-troubleshooting{color:#059669;background:#05966914}.badge-general{color:#b45309;background:#b4530914}.badge-system_info{color:#7c3aed;background:#6d28d914}[data-theme=dark] .badge-fault_code{color:#fca5a5;background:#f871711a}[data-theme=dark] .badge-procedure{color:#93b4fd;background:#6b8afd1a}[data-theme=dark] .badge-troubleshooting{color:#6ee7b7;background:#34d3991a}[data-theme=dark] .badge-general{color:#fcd34d;background:#fbbf241a}[data-theme=dark] .badge-system_info{color:#c4b5fd;background:#a78bfa1a}.typing-indicator-wrap{gap:14px;width:100%;max-width:900px;margin:0 auto;display:flex}.typing-avatar{background:var(--card);border:1px solid var(--border);width:30px;height:30px;color:var(--text-3);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;margin-top:2px;display:flex}.typing-bubble{background:var(--msg-ast-bg);border:1px solid var(--msg-ast-border);border-radius:var(--radius);border-bottom-left-radius:4px;padding:14px 16px}.typing-dots{align-items:center;gap:5px;padding:2px 0;display:flex}.typing-dots span{background:var(--text-3);border-radius:50%;width:7px;height:7px;animation:1.2s ease-in-out infinite dot-bounce;display:inline-block}.typing-dots span:nth-child(2){animation-delay:.2s}.typing-dots span:nth-child(3){animation-delay:.4s}@keyframes dot-bounce{0%,60%,to{opacity:.4;transform:translateY(0)}30%{opacity:1;transform:translateY(-6px)}}.streaming-text{white-space:pre-wrap;word-break:break-word;line-height:1.65;font-size:inherit;color:var(--text)}.streaming-cursor{background:var(--text);vertical-align:text-bottom;border-radius:1px;width:2px;height:1em;margin-left:2px;animation:.9s step-end infinite cursor-blink;display:inline-block}@keyframes cursor-blink{0%,to{opacity:1}50%{opacity:0}}.streaming-dots{align-items:center;gap:5px;padding:6px 2px;display:inline-flex}.streaming-dots span{background:var(--text-3);border-radius:50%;width:6px;height:6px;animation:1.2s ease-in-out infinite dot-bounce}.streaming-dots span:nth-child(2){animation-delay:.2s}.streaming-dots span:nth-child(3){animation-delay:.4s}.show-more-btn{background:var(--accent-soft);border:1px solid var(--accent-border);border-radius:var(--radius-xs);color:var(--accent);cursor:pointer;margin-top:10px;padding:6px 14px;font-size:12px;font-weight:600;transition:background .15s;display:inline-block}@media (hover:hover){.show-more-btn:hover{background:var(--accent-border)}}.msg-loading-more{color:var(--text-3);align-items:center;gap:8px;padding:8px 0;font-size:12px;display:flex}.msg-loading-spinner{border:2px solid var(--border);border-top-color:var(--accent);border-radius:50%;width:14px;height:14px;animation:.6s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.msg-bubble-error{color:var(--text-2);background:#dc26260d;border:1px solid #dc262626;padding:12px 16px;font-size:13px}.msg-bubble-error button{border:1px solid var(--border);background:var(--card);color:var(--text);cursor:pointer;border-radius:4px;margin-left:6px;padding:3px 10px;font-size:12px}.msg-bubble-md{white-space:normal}.msg-bubble-md p{margin:0 0 10px;line-height:1.75}.msg-bubble-md p:last-child{margin-bottom:0}.msg-bubble-md strong{color:var(--text);font-weight:650}.msg-bubble-md em{font-style:italic}.msg-bubble-md h1,.msg-bubble-md h2,.msg-bubble-md h3{color:var(--text);margin:16px 0 8px;font-weight:700;line-height:1.3}.msg-bubble-md h1{font-size:17px}.msg-bubble-md h2{font-size:15px}.msg-bubble-md h3{font-size:14px}.msg-bubble-md ul,.msg-bubble-md ol{flex-direction:column;gap:4px;margin:6px 0 10px 20px;display:flex}.msg-bubble-md li{line-height:1.7}.msg-bubble-md ul li{list-style-type:disc}.msg-bubble-md ol li{list-style-type:decimal}.msg-bubble-md li>ul,.msg-bubble-md li>ol{margin-top:4px;margin-bottom:2px}.msg-bubble-md code{background:var(--border-xs);border:1px solid var(--border);color:var(--accent);border-radius:4px;padding:1.5px 5px;font-family:Consolas,Fira Code,SF Mono,monospace;font-size:12.5px}.msg-bubble-md pre{background:var(--border-xs);border:1px solid var(--border);border-radius:var(--radius-sm);margin:8px 0 12px;padding:12px 14px;overflow-x:auto}.msg-bubble-md pre code{color:var(--text);background:0 0;border:none;padding:0;font-size:12.5px}.msg-bubble-md blockquote{border-left:3px solid var(--accent-border);color:var(--text-2);margin:8px 0;padding:4px 12px;font-style:italic}.msg-bubble-md hr{border:none;border-top:1px solid var(--border);margin:12px 0}.msg-bubble-md a{color:var(--accent);white-space:nowrap;border-bottom:1px solid #0000;font-size:.9em;font-weight:500;text-decoration:none;transition:border-color .15s,opacity .15s}@media (hover:hover){.msg-bubble-md a:hover{border-bottom-color:var(--accent);opacity:.85}}.msg-bubble-md .table-wrapper{-webkit-overflow-scrolling:touch;margin:10px 0 14px;overflow-x:auto}.msg-bubble-md table{border-collapse:collapse;border-radius:var(--radius-sm);border:1px solid var(--border);width:max-content;min-width:100%;margin:0;font-size:13px;overflow:hidden}.msg-bubble-md thead{background:var(--accent-soft)}.msg-bubble-md th{text-align:left;color:var(--accent);border-bottom:1.5px solid var(--accent-border);white-space:nowrap;padding:8px 12px;font-size:12px;font-weight:700}.msg-bubble-md td{border-bottom:1px solid var(--border);color:var(--text-2);overflow-wrap:break-word;word-break:break-word;max-width:400px;padding:8px 12px;line-height:1.5}.msg-bubble-md tr:last-child td{border-bottom:none}@media (hover:hover){.msg-bubble-md tbody tr:hover{background:var(--border-xs)}}.inline-citations-group{flex-wrap:wrap;gap:6px;margin-top:12px;display:flex}.inline-citation{background:var(--bg);border:1px solid var(--border);font-family:var(--font-sources);color:var(--text-2);border-radius:20px;align-items:center;gap:6px;padding:6px 12px;font-size:12px;line-height:1.4;transition:background .12s,border-color .12s;display:inline-flex}@media (hover:hover){.inline-citation:hover{border-color:var(--accent-border);background:var(--accent-soft)}}.inline-citation svg{color:var(--text-3);flex-shrink:0}.feedback-btns{align-items:center;gap:2px;margin-left:auto;display:inline-flex;position:relative}.feedback-btn{width:28px;height:28px;color:var(--text-3);cursor:pointer;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;transition:color .15s,background .15s;display:inline-flex}@media (hover:hover){.feedback-btn:hover{background:var(--border-xs);color:var(--text-2)}}.feedback-btn.active{color:var(--accent);background:var(--accent-soft)}.feedback-panel{background:var(--card);border:1px solid var(--border);border-radius:12px;flex-direction:column;gap:10px;max-width:420px;margin-top:8px;margin-left:auto;padding:12px 14px;animation:.15s ease-out msgIn;display:flex;box-shadow:0 4px 12px #00000014}.feedback-panel-categories{flex-wrap:wrap;gap:6px;display:flex}.feedback-cat-btn{border:1px solid var(--border);background:var(--card);color:var(--text-2);cursor:pointer;white-space:nowrap;border-radius:16px;padding:4px 12px;font-size:12px;transition:border-color .12s,background .12s,color .12s}@media (hover:hover){.feedback-cat-btn:hover{border-color:var(--accent-border);background:var(--accent-soft);color:var(--accent)}}.feedback-cat-btn.active{border-color:var(--accent);background:var(--accent-soft);color:var(--accent);font-weight:500}.feedback-reason-field{border:1px solid var(--border);background:var(--bg);width:100%;min-width:0;color:var(--text);box-sizing:border-box;border-radius:8px;outline:none;padding:8px 12px;font-family:inherit;font-size:13px;transition:border-color .15s}.feedback-reason-field:focus{border-color:var(--accent)}.feedback-reason-field::placeholder{color:var(--text-3)}.feedback-panel-actions{justify-content:flex-end;gap:8px;display:flex}.feedback-panel-cancel{border:1px solid var(--border);background:var(--card);color:var(--text-2);cursor:pointer;border-radius:8px;padding:6px 14px;font-family:inherit;font-size:12.5px;font-weight:500;transition:background .15s}@media (hover:hover){.feedback-panel-cancel:hover{background:var(--border-xs)}}.feedback-panel-submit{background:var(--accent);color:#fff;cursor:pointer;white-space:nowrap;border:none;border-radius:8px;padding:6px 16px;font-family:inherit;font-size:12.5px;font-weight:500;transition:opacity .15s,transform .1s}.feedback-panel-submit:disabled{opacity:.3;cursor:not-allowed}@media (hover:hover){.feedback-panel-submit:not(:disabled):hover{opacity:.88}}.feedback-panel-submit:not(:disabled):active{transform:scale(.97)}.suggestion-chips{flex-wrap:wrap;gap:6px;margin-top:8px;padding:0 2px;display:flex}.suggestion-chip{border:1px solid var(--border);background:var(--card);color:var(--text-2);cursor:pointer;white-space:normal;word-break:break-word;text-align:left;border-radius:16px;padding:6px 14px;font-size:12.5px;line-height:1.4;transition:border-color .15s,background .15s,color .15s}@media (hover:hover){.suggestion-chip:hover{border-color:var(--accent-border);background:var(--accent-soft);color:var(--accent)}}@media (width<=768px){.msg-row{gap:10px;max-width:100%}.msg-row.user .msg-bubble-wrap{max-width:85%}.msg-bubble{padding:10px 14px;font-size:13.5px}.msg-avatar{width:26px;height:26px;font-size:8px}.msg-row.user .msg-avatar{font-size:8px}.msg-row.assistant .msg-avatar{font-size:12px}.msg-meta{font-size:10px}.msg-bubble-md h1{font-size:15px}.msg-bubble-md h2{font-size:14px}.msg-bubble-md h3{font-size:13px}.msg-bubble-md table{font-size:11.5px}.msg-bubble-md th,.msg-bubble-md td{padding:6px 8px}.feedback-panel{max-width:100%}}.chat-view{flex-direction:column;flex:1;min-height:0;display:flex;overflow:hidden}.messages-area{min-height:0;overflow-y:overlay;--scrollbar-track:#0f172a14;--scrollbar-thumb:#64748b94;--scrollbar-thumb-hover:#475569b8;scrollbar-width:thin;scrollbar-color:var(--scrollbar-thumb) var(--scrollbar-track);flex-direction:column;flex:1;gap:20px;padding:24px;display:flex}.messages-area::-webkit-scrollbar{background:0 0;width:12px}.messages-area::-webkit-scrollbar-track{background:var(--scrollbar-track);border-radius:999px}.messages-area::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);border:2px solid var(--scrollbar-track);border-radius:999px}.messages-area:hover::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb-hover)}[data-theme=dark] .messages-area{--scrollbar-track:#ffffff14;--scrollbar-thumb:#94a3b880;--scrollbar-thumb-hover:#94a3b8ad}.chat-input-bar{background:var(--bg);flex-shrink:0;padding:12px 24px 20px}.chat-role-selector{gap:6px;max-width:900px;margin:0 auto 8px;display:flex}.chat-role-chip{border:1.5px solid var(--border);background:var(--card);color:var(--text-2);cursor:pointer;border-radius:16px;padding:4px 12px;font-size:12px;font-weight:500;transition:border-color .15s,background .15s,color .15s}.chat-role-chip:hover{border-color:var(--accent-border);color:var(--accent);background:var(--accent-soft)}.chat-input-inner{background:var(--card);border:1px solid var(--border);max-width:900px;box-shadow:var(--card-shadow);border-radius:24px;align-items:flex-end;gap:10px;margin:0 auto;padding:6px 8px 6px 20px;transition:border-color .15s,box-shadow .15s;display:flex}.chat-input-inner:focus-within{border-color:var(--accent-border);box-shadow:0 0 0 3px #2563eb14}[data-theme=dark] .chat-input-inner:focus-within{box-shadow:0 0 0 3px #6b8afd1a}.chat-letterhead{-webkit-user-select:none;user-select:none;flex-direction:column;justify-content:center;align-items:center;gap:16px;margin-bottom:20px;padding:40px 20px 20px;display:flex}.letterhead-logos{justify-content:center;align-items:center;gap:24px;display:flex}.letterhead-logos img{object-fit:contain;border-radius:6px;width:auto;max-width:180px;height:64px}[data-theme=dark] .letterhead-logos img{background:#ffffffeb;border-radius:8px;padding:6px 10px}.letterhead-divider{background:var(--border);width:1px;height:36px}.letterhead-text{color:var(--text-3);text-transform:uppercase;letter-spacing:.12em;font-size:13.5px;font-weight:600}.chat-input{color:var(--text);resize:none;background:0 0;border:none;outline:none;flex:1;max-height:120px;padding:8px 0;font-family:inherit;font-size:16px;line-height:1.5}.chat-input::placeholder{color:var(--text-3)}.chat-send-btn{background:var(--accent);cursor:pointer;color:#fff;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;transition:background .15s,opacity .15s,transform .1s;display:flex}.chat-send-btn:hover:not(:disabled){opacity:.85;transform:scale(1.04)}.chat-send-btn:disabled{background:var(--border);color:var(--text-3);cursor:not-allowed;transform:none}@media (width<=768px){.messages-area{gap:16px;padding:14px 12px}.chat-letterhead{padding:20px 10px 10px}.letterhead-logos img{height:48px}.chat-input-bar{padding:8px 10px 14px}.chat-input-inner{border-radius:20px;padding:4px 6px 4px 14px}.chat-input{font-size:16px}.chat-send-btn{width:32px;height:32px}}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.history-skeleton{flex-direction:column;gap:20px;width:100%;max-width:900px;margin:0 auto;padding:8px 0;display:flex}.skeleton-row{gap:14px;animation:.2s ease-out msgIn;display:flex}.skeleton-row.skeleton-user{flex-direction:row-reverse}.skeleton-avatar{background:var(--border-xs);background:linear-gradient(90deg, var(--border-xs) 25%, var(--border) 50%, var(--border-xs) 75%);background-size:200% 100%;border-radius:50%;flex-shrink:0;width:30px;height:30px;animation:1.5s ease-in-out infinite shimmer}.skeleton-bubble{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);flex-direction:column;flex:1;gap:10px;max-width:360px;padding:16px 18px;display:flex}.skeleton-row.skeleton-user .skeleton-bubble{max-width:200px;margin-left:auto}.shimmer-line{background:linear-gradient(90deg, var(--border-xs) 25%, var(--border) 50%, var(--border-xs) 75%);background-size:200% 100%;border-radius:5px;height:10px;animation:1.5s ease-in-out infinite shimmer}.shimmer-line-1{width:85%}.shimmer-line-2{width:60%;animation-delay:.15s}.shimmer-line-3{width:40%;animation-delay:.3s}.chat-footer{max-width:900px;color:var(--text-3);justify-content:center;align-items:center;gap:16px;margin:12px auto 0;font-size:11.5px;display:flex}.chat-footer-logos{align-items:center;gap:8px;display:flex}.chat-footer-logos img{object-fit:contain;border-radius:4px;width:auto;max-width:140px;height:48px}[data-theme=dark] .chat-footer-logos img{background:#ffffffe6;border-radius:6px;padding:4px 6px}.chat-footer-divider{background:var(--border);width:1px;height:24px}@media (width<=768px){.chat-footer{flex-direction:column;gap:8px;margin-top:10px}}.info-modal-overlay{z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#00000080;justify-content:center;align-items:center;padding:24px;animation:.2s infoFadeIn;display:flex;position:fixed;inset:0}@keyframes infoFadeIn{0%{opacity:0}to{opacity:1}}.info-modal{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);flex-direction:column;width:100%;max-width:640px;max-height:85vh;animation:.25s infoSlideUp;display:flex;position:relative;box-shadow:0 16px 48px #00000040}@keyframes infoSlideUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.info-modal-close{z-index:1;border:1px solid var(--border);background:var(--card);cursor:pointer;width:32px;height:32px;color:var(--text-2);border-radius:50%;justify-content:center;align-items:center;transition:background .12s,color .12s;display:flex;position:absolute;top:12px;right:12px}.info-modal-close:hover{background:var(--accent-soft);color:var(--accent)}.info-modal-body{padding:32px 28px;overflow-y:auto}.info-modal-body::-webkit-scrollbar{width:4px}.info-modal-body::-webkit-scrollbar-thumb{background:var(--border);border-radius:4px}.info-modal-header{text-align:center;margin-bottom:24px}.info-modal-logos{justify-content:center;align-items:center;gap:1.5rem;margin-bottom:16px;display:flex}.info-modal-logo{object-fit:contain;border-radius:6px;width:auto;height:72px}[data-theme=dark] .info-modal-logo{background:#ffffffeb;border-radius:6px;padding:4px 6px}.info-modal-title{color:var(--text);margin:0 0 12px;font-size:20px;font-weight:700}.info-modal-desc{color:var(--text-2);margin:0;max-width:520px;margin-inline:auto;font-size:13.5px;line-height:1.65}.info-modal-subtitle{color:var(--text);margin:24px 0 10px;font-size:15px;font-weight:650}.info-modal-grid{grid-template-columns:repeat(2,1fr);gap:10px;display:grid}.info-cap-card{background:var(--bg);border:1px solid var(--border-xs,var(--border));border-radius:var(--radius-sm,8px);padding:14px}.info-cap-card h4{color:var(--accent);margin:0 0 4px;font-size:13px;font-weight:650}.info-cap-card p{color:var(--text-3);margin:0;font-size:12.5px;line-height:1.5}.info-modal-steps{margin:0;padding-left:20px;list-style:decimal}.info-modal-steps li{color:var(--text-2);margin-bottom:8px;font-size:13px;line-height:1.6}.info-modal-steps li strong{color:var(--text)}.info-modal-list{margin:0;padding-left:20px}.info-modal-list li{color:var(--text-2);margin-bottom:4px;font-size:13px;line-height:1.6}.info-modal-note{color:var(--text);border-left:3px solid var(--accent);background:var(--accent-soft,#2563eb0f);border-radius:0 var(--radius-sm,8px) var(--radius-sm,8px) 0;margin:20px 0 0;padding:10px 14px;font-size:12.5px;font-style:italic}@media (width<=640px){.info-modal-overlay{padding:16px}.info-modal{max-height:90vh;margin:0 auto}.info-modal-body{padding:24px 18px}.info-modal-title{font-size:17px}.info-modal-grid{grid-template-columns:1fr}.info-modal-logo{height:40px}}@media (width<=400px){.info-modal-overlay{padding:10px}.info-modal-body{padding:20px 14px}.info-modal-title{font-size:15px}.info-modal-desc{font-size:12.5px}.info-modal-logo{height:32px}.info-modal-logos{gap:1rem}}*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--sidebar-w:280px;--bg:#f7f7f8;--sidebar-bg:#fff;--border:#e5e5e5;--border-xs:#f0f0f0;--accent:#2563eb;--accent-soft:#eff6ff;--accent-border:#bfdbfe;--text:#1a1a1a;--text-2:#4a4a4a;--text-3:#8e8e8e;--card:#fff;--card-shadow:0 1px 3px #0000000d;--card-shadow-md:0 4px 12px #00000014;--input-bg:#fff;--nav-active-bg:#eff6ff;--nav-active-tx:#1d4ed8;--chip-bg:#fff;--chip-border:#e5e5e5;--radius:12px;--radius-sm:8px;--radius-xs:6px;--font-sources:"Georgia", "Cambria", "Times New Roman", serif;--msg-user-bg:#2563eb;--msg-ast-bg:#fff;--msg-ast-border:#e5e5e5;font-size:14px}[data-theme=dark]{--bg:#0f1117;--sidebar-bg:#141620;--border:#262a3a;--border-xs:#1c1f2e;--accent:#6b8afd;--accent-soft:#6b8afd1a;--accent-border:#6b8afd40;--text:#e8eaf0;--text-2:#a0a6b8;--text-3:#6c7290;--card:#181b28;--card-shadow:0 1px 3px #0006;--card-shadow-md:0 4px 12px #00000080;--input-bg:#181b28;--nav-active-bg:#6b8afd1f;--nav-active-tx:#8aa8ff;--chip-bg:#181b28;--chip-border:#262a3a;--msg-user-bg:#4a6cf7;--msg-ast-bg:#181b28;--msg-ast-border:#262a3a}html,body,#root{background:var(--bg);height:100%;color:var(--text);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Inter,-apple-system,Segoe UI,system-ui,sans-serif}.app{height:100dvh;display:flex;overflow:hidden}.main{flex-direction:column;flex:1;min-width:0;display:flex;overflow:hidden}.error-toast{border-radius:var(--radius-sm);color:#b91c1c;background:#fef2f2;border:1px solid #fecaca;align-self:center;align-items:center;gap:8px;width:100%;max-width:600px;padding:12px 16px;font-size:13px;font-weight:500;line-height:1.4;display:flex}[data-theme=dark] .error-toast{color:#fca5a5;background:#b91c1c1a;border-color:#b91c1c33}.feedback-global-toast{z-index:9999;background:var(--accent);color:#fff;pointer-events:none;white-space:nowrap;border:none;border-radius:12px;align-items:center;gap:8px;padding:10px 20px;font-size:13px;font-weight:600;line-height:1;animation:.25s ease-out toastSlideIn,.4s ease-in 2.1s forwards toastFadeOut;display:inline-flex;position:fixed;top:20px;left:50%;transform:translate(-50%);box-shadow:0 4px 20px #0003}.feedback-global-toast svg{flex-shrink:0;display:block}@keyframes toastSlideIn{0%{opacity:0;transform:translate(-50%)translateY(-12px)}to{opacity:1;transform:translate(-50%)translateY(0)}}@keyframes toastFadeOut{0%{opacity:1}to{opacity:0}}*{scrollbar-width:thin;scrollbar-color:var(--border) transparent}@media (width<=1024px){.main{width:100%}}
