:root{--bg-page:#f5f0ff;--bg-surface:#fff;--bg-elevated:#fff;--bg-subtle:#5418d80f;--bg-table-hover:#5418d817;--bg-table-header:#f8f8f8;--bg-input:#fff;--text-primary:#1a0660;--text-secondary:#666;--text-muted:#888;--text-placeholder:#bbb;--border-default:#00000012;--border-accent:#5418d826;--border-input:#e8e4f0;--accent-purple:#5418d8;--accent-pink:#e8175c;--sidebar-bg:#1a0660;--sidebar-darker:#120848;--scrollbar-thumb:#5418d833;--brand-primary:#5418d8;--brand-secondary:#9333ea;--brand-accent:#e91e8c;--brand-glow:#5418d873}@keyframes badgeGlow{0%,to{box-shadow:0 0 12px 1px var(--brand-glow)}50%{box-shadow:0 0 24px 6px var(--brand-glow)}}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg-page:#131118;--bg-surface:#1b1721;--bg-elevated:#1e1340;--bg-subtle:#7b52e81a;--bg-table-hover:#7b52e833;--bg-table-header:#7b52e82e;--bg-input:#1e1340;--text-primary:#ede8ff;--text-secondary:#a99dc8;--text-muted:#7a6fa0;--text-placeholder:#5a4f80;--border-default:#ffffff14;--border-accent:#7b52e84d;--border-input:#ffffff1f;--accent-purple:#7b52e8;--accent-pink:#e8175c;--sidebar-bg:#080514;--sidebar-darker:#04020c;--scrollbar-thumb:#7b52e84d}}[data-theme=dark]{--bg-page:#131118;--bg-surface:#1b1721;--bg-elevated:#1e1340;--bg-subtle:#7b52e81a;--bg-table-hover:#7b52e833;--bg-table-header:#7b52e82e;--bg-input:#1e1340;--text-primary:#ede8ff;--text-secondary:#a99dc8;--text-muted:#7a6fa0;--text-placeholder:#5a4f80;--border-default:#ffffff14;--border-accent:#7b52e84d;--border-input:#ffffff1f;--accent-purple:#7b52e8;--accent-pink:#e8175c;--sidebar-bg:#080514;--sidebar-darker:#04020c;--scrollbar-thumb:#7b52e84d}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body{background:var(--bg-page);height:100%;color:var(--text-primary);-webkit-font-smoothing:antialiased;font-family:Inter,system-ui,sans-serif}::-webkit-scrollbar{width:4px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);border-radius:2px}@keyframes fadeUp{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes toastLife{0%{opacity:0;transform:translate(-50%)translateY(-10px)}12%{opacity:1;transform:translate(-50%)translateY(0)}75%{opacity:1;transform:translate(-50%)translateY(0)}to{opacity:0;transform:translate(-50%)translateY(-10px)}}@keyframes pulse{0%,80%,to{opacity:.3;transform:scale(.85)}40%{opacity:1;transform:scale(1)}}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@keyframes spin{to{transform:rotate(360deg)}}.msg-in{animation:.25s fadeUp}.msg-in p{margin:0 0 .4em}.msg-in p:last-child{margin-bottom:0}.msg-in ul,.msg-in ol{margin:.4em 0 .6em 1.4em}.msg-in li{margin-bottom:.2em}.msg-in code{background:var(--bg-subtle);border-radius:4px;padding:1px 5px;font-family:monospace;font-size:.9em}.msg-in pre{background:var(--bg-subtle);border-radius:8px;margin:.4em 0;padding:10px 14px;overflow-x:auto}.msg-in pre code{background:0 0;padding:0}.knova-callout p{margin:0}.knova-callout p+p{margin-top:6px}.knova-callout p:first-child strong:first-child{color:var(--callout-color)}.sk{background:linear-gradient(90deg,#ddd8ed 25%,#f0ecff 50%,#ddd8ed 75%) 0 0/400% 100%;border-radius:6px;animation:2.8s linear infinite shimmer}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .sk{background:linear-gradient(90deg,#ffffff0f 25%,#ffffff24 50%,#ffffff0f 75%) 0 0/400% 100%}}[data-theme=dark] .sk{background:linear-gradient(90deg,#ffffff0f 25%,#ffffff24 50%,#ffffff0f 75%) 0 0/400% 100%}.sk-d{background:linear-gradient(90deg,#ffffff12 25%,#ffffff29 50%,#ffffff12 75%) 0 0/400% 100%;border-radius:6px;animation:2.8s linear infinite shimmer}.chip{cursor:pointer;transition:all .15s}.chip:hover{transform:translateY(-1px);background:var(--bg-surface)!important;box-shadow:0 4px 20px #6c63ff26!important}.send-btn{transition:all .15s}.send-btn:hover:not(:disabled){transform:scale(1.05)}.send-btn:disabled{opacity:.4;cursor:default}.upload-zone{transition:all .15s}.upload-zone:hover{border-color:var(--accent-purple)!important;background:var(--bg-subtle)!important}.msg-action-btn:hover{color:var(--accent-purple)!important}.login-input{transition:border-color .15s,box-shadow .15s}.login-input:focus{outline:none;border-color:var(--accent-purple)!important;box-shadow:0 0 0 3px #7b52e833!important}.login-btn{transition:transform .15s,box-shadow .15s}.login-btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 8px 28px #e91e8c66!important}.login-btn:disabled{opacity:.65;cursor:default}.nav-hover:hover{background:#ffffff14!important}.conv-row:hover{background:#ffffff12!important}@media (hover:hover){.conv-row:hover .del-conv-btn{opacity:1!important}}@media (hover:none){.del-conv-btn{opacity:1!important}}@media (pointer:coarse){.touch-target{min-width:44px;min-height:44px}}.doc-row:hover{background:var(--bg-table-hover)!important}.del-btn{opacity:0;transition:opacity .15s}.doc-row:hover .del-btn{opacity:1}.admin-row{transition:background .1s}.admin-row:hover{background:var(--bg-table-hover)!important}.cursor:after{content:"▋";font-size:.85em;animation:.9s step-end infinite blink}@keyframes blink{50%{opacity:0}}@keyframes streamGlow{0%,to{box-shadow:0 2px 12px #0000000f}50%{box-shadow:0 2px 20px #0000000f,0 0 0 3px #6c63ff1f}}.streaming-bubble{animation:1.8s ease-in-out infinite streamGlow}@keyframes avatarPulse{0%,to{opacity:.75;transform:scale(1)}50%{opacity:1;transform:scale(1.08)}}.streaming-avatar{animation:1.5s ease-in-out infinite avatarPulse}.stream-cursor{color:var(--accent-purple);vertical-align:baseline;font-size:.8em;line-height:1;animation:.9s step-end infinite blink;display:inline-block}.stream-cursor:after{content:"▋"}.drawer{animation:.25s slideIn}@keyframes slideIn{0%{transform:translate(-100%)}to{transform:translate(0)}}@keyframes slideInRight{0%{transform:translate(100%)}to{transform:translate(0)}}@keyframes slideOutRight{0%{transform:translate(0)}to{transform:translate(100%)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeOut{0%{opacity:1}to{opacity:0}}@keyframes orbDrift{0%,to{transform:translate(0)scale(1)}25%{transform:translate(40px,-50px)scale(1.06)}50%{transform:translate(-25px,35px)scale(.94)}75%{transform:translate(50px,25px)scale(1.09)}}@keyframes slideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes modal-in{0%{opacity:0;transform:scale(.94)translateY(8px)translateZ(0)}to{opacity:1;transform:scale(1)translateY(0)translateZ(0)}}@keyframes stream-progress{0%{background-position:200% 0}to{background-position:-200% 0}}@keyframes thinking-bounce{0%,80%,to{opacity:.5;transform:translateY(0)}40%{opacity:1;transform:translateY(-5px)}}@keyframes stepIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes chip-idle{0%,to{transform:translateY(0);box-shadow:0 2px 8px #0000000f}50%{transform:translateY(-6px);box-shadow:0 18px 48px #5418d847,0 4px 16px #5418d824}}@keyframes tutorial-pulse{0%,to{box-shadow:0 0 0 4px #7b52e833,0 0 24px #7b52e873}50%{box-shadow:0 0 0 8px #7b52e81a,0 0 36px #7b52e899}}@keyframes onboard-float{0%{opacity:0;transform:translateY(0)translate(0)}10%{opacity:1}90%{opacity:.6}to{transform:translateY(-100vh) translateX(var(--drift,0px));opacity:0}}.sb-grid{pointer-events:none;z-index:0;background-image:linear-gradient(#6c63ff0e 1px,#0000 1px),linear-gradient(90deg,#6c63ff0e 1px,#0000 1px);background-size:64px 64px;position:absolute;inset:0}.sb-orb{filter:blur(80px);pointer-events:none;border-radius:50%;position:absolute}.sb-orb-1{background:radial-gradient(circle,#6c63ff61 0%,#0000 68%);width:500px;height:500px;animation:14s ease-in-out infinite orbDrift;top:-160px;left:-160px}.sb-orb-2{background:radial-gradient(circle,#e91e8c47 0%,#0000 68%);width:400px;height:400px;animation:18s ease-in-out infinite reverse orbDrift;bottom:-100px;right:-120px}.sb-orb-3{background:radial-gradient(circle,#4facfe24 0%,#0000 68%);width:280px;height:280px;animation:22s ease-in-out -7s infinite orbDrift;top:40%;left:30%}.sb-content{z-index:1;flex-direction:column;flex:1;min-height:0;display:flex;position:relative}textarea{resize:none;font-family:inherit}textarea:focus{outline:none}.app-select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23888' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;padding-right:34px!important}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .app-select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23a99dc8' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E")}}[data-theme=dark] .app-select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23a99dc8' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E")}.icon-btn>svg,.sb-icon-btn>svg{pointer-events:none}.icon-btn:focus-visible,.sb-icon-btn:focus-visible{outline:2px solid var(--accent-purple);outline-offset:2px}.icon-btn-hit{position:relative}.icon-btn-hit:before{content:"";border-radius:8px;position:absolute;inset:-6px}.icon-btn:hover{background:var(--bg-subtle)!important}.sb-icon-btn:hover{color:#ffffffe6!important;background:#ffffff12!important}.page-header-rule{background:linear-gradient(90deg, var(--brand-primary), var(--brand-accent))}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .page-header-rule{opacity:.55}}:root[data-theme=dark] .page-header-rule{opacity:.55}