@import "https://fonts.googleapis.com/css2?family=Inter:ital,opsz,wght@0,14..32,300;0,14..32,400;0,14..32,500;0,14..32,600;1,14..32,400&family=Newsreader:opsz,wght@6..72,400;6..72,500;6..72,600&display=swap";*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%}html,body{max-width:100%;overflow-x:hidden}*{-webkit-tap-highlight-color:transparent}button{appearance:none;font-family:inherit}svg{flex-shrink:0;display:block}input,textarea,select{font-size:16px}img{max-width:100%;height:auto}:root{--bg:#0c0e12;--bg2:#13161c;--bg3:#1b202a;--bg4:#262d39;--bg5:#323b49;--border:#e8f0fa17;--border2:#e8f0fa26;--border3:#e8f0fa3d;--text:#eef2f8;--text-dim:#aab6c6;--text-muted:#6e7b8c;--accent:#93aad2;--accent-h:#bccdea;--accent-vv:#5a6e92;--accent-glow:#93aad23d;--accent-soft:#93aad21a;--accent-mid:#93aad233;--glass-bg:#13171e8c;--glass-border:#ffffff24;--glass-shine:#ffffff29;--glass-blur:22px;--error:#ff6b6b;--ok:#48cc8e;--radius:16px;--radius-sm:11px;--radius-lg:24px;--font:"Inter", system-ui, -apple-system, sans-serif;--font-serif:"Newsreader", Georgia, "Times New Roman", serif;--font-mono:"JetBrains Mono", "Fira Code", "Cascadia Code", ui-monospace, monospace;--max-content:760px;--max-panel:360px;--max-sidebar:300px;--max-modal:440px;--spring:cubic-bezier(.32, 1.48, .64, 1);--smooth:cubic-bezier(.4, 0, .2, 1);--ease:cubic-bezier(.25, 0, 0, 1);--t:.16s var(--smooth);--t2:.26s var(--smooth)}html,body,#root{width:100%;height:100%}@keyframes floatA{0%,to{transform:translateY(0)scale(1)}50%{transform:translateY(-18px)scale(1.04)}}@keyframes floatB{0%,to{transform:translateY(0)scale(1)}50%{transform:translateY(14px)scale(.97)}}@keyframes floatC{0%,to{transform:translate(0)scale(1)}33%{transform:translate(10px,-12px)scale(1.03)}66%{transform:translate(-8px,6px)scale(.98)}}@keyframes breatheGlow{0%,to{opacity:.55;transform:scale(1)}50%{opacity:1;transform:scale(1.08)}}@keyframes shimmerMove{0%{background-position:200%}to{background-position:-200%}}@keyframes dotPulse{0%,to{opacity:.18;transform:scale(1)}50%{opacity:.55;transform:scale(1.6)}}@keyframes lineGrow{0%{opacity:0;transform:scaleX(0)}to{opacity:1;transform:scaleX(1)}}@keyframes ripple{0%{opacity:.6;transform:scale(0)}to{opacity:0;transform:scale(3)}}body{background:var(--bg);color:var(--text);font-family:var(--font);font-optical-sizing:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:15px;line-height:1.65;overflow:hidden}body:before,body:after{content:"";pointer-events:none;z-index:0;opacity:0;background-repeat:no-repeat;background-size:contain;animation:2.5s ease-out .3s forwards branchIn,45s ease-in-out 2s infinite branchDrift;position:fixed}body:before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 400 400' fill='none' stroke='%23ebdccd' stroke-opacity='0.055' stroke-width='2.5' stroke-linecap='round'%3E%3Cpath d='M400 20 C320 60 280 90 240 150 C210 195 190 250 185 320'/%3E%3Cpath d='M300 78 C270 60 240 52 195 55'/%3E%3Cpath d='M262 122 C230 118 200 125 170 145'/%3E%3Cpath d='M228 170 C205 178 185 195 172 220'/%3E%3Cpath d='M330 55 C318 38 300 25 275 18'/%3E%3Cpath d='M245 145 C255 120 258 95 252 70'/%3E%3Cpath d='M195 260 C170 258 148 268 130 288'/%3E%3Cpath d='M188 300 C205 292 228 292 250 300'/%3E%3C/svg%3E");width:min(640px,70vw);height:min(640px,70vw);top:-60px;right:-90px}body:after{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 400 400' fill='none' stroke='%23ebdccd' stroke-opacity='0.05' stroke-width='2.5' stroke-linecap='round'%3E%3Cpath d='M10 390 C80 350 130 310 165 250 C195 200 210 145 212 80'/%3E%3Cpath d='M110 330 C130 345 155 352 190 350'/%3E%3Cpath d='M158 262 C185 268 212 262 238 245'/%3E%3Cpath d='M192 195 C215 200 240 194 262 178'/%3E%3Cpath d='M205 120 C225 118 244 108 258 90'/%3E%3Cpath d='M172 240 C160 218 155 195 158 170'/%3E%3Cpath d='M75 355 C60 338 52 318 52 295'/%3E%3C/svg%3E");width:min(520px,62vw);height:min(520px,62vw);animation-duration:2.5s,55s;animation-delay:.6s,2s;bottom:-50px;left:-70px}@keyframes branchIn{to{opacity:1}}@keyframes branchDrift{0%,to{transform:translate(0)rotate(0)}50%{transform:translate(-6px,4px)rotate(.5deg)}}@media (prefers-reduced-motion:reduce){body:before,body:after{animation:.5s ease-out forwards branchIn}}.glass-panel{background:var(--glass-bg);-webkit-backdrop-filter:blur(28px)saturate(160%);border:1px solid var(--glass-border);box-shadow:0 8px 32px #00000047, 0 1px 0 var(--glass-shine) inset}.glass-panel-input{-webkit-backdrop-filter:blur(24px)saturate(150%);border:1px solid var(--glass-border);background:#13171ed9;box-shadow:0 4px 20px #0000000f}.shell{background-image:radial-gradient(70% 55% at 15% 0,#93aad212 0%,#0000 60%),radial-gradient(60% 50% at 100% 25%,#968cbe0d 0%,#0000 55%),radial-gradient(80% 60% at 60% 100%,#78a0be09 0%,#0000 60%);background-color:var(--bg);width:100vw;height:100vh;display:flex;position:relative}.nav{-webkit-backdrop-filter:blur(26px)saturate(180%);border-right:1px solid var(--glass-border);z-index:100;width:58px;box-shadow:inset -1px 0 0 var(--glass-shine), 4px 0 24px #00000047;background:#0f131a8c;flex-direction:column;flex-shrink:0;align-items:center;gap:2px;padding:16px 0;display:flex}.nav:before{content:"";pointer-events:none;background:linear-gradient(90deg,#0000,#93aad240,#0000);width:58px;height:2px;position:absolute;top:0;left:0}.nav-logo{justify-content:center;align-items:center;width:36px;height:36px;margin-bottom:20px;display:flex}.nav-btn{width:38px;height:38px;color:var(--text-muted);cursor:pointer;transition:background var(--t), color var(--t), transform .18s var(--spring);background:0 0;border:none;border-radius:12px;justify-content:center;align-items:center;display:flex;position:relative}.nav-btn svg{width:17px;height:17px}.nav-btn:hover{background:var(--bg3);color:var(--text-dim);transform:scale(1.08)}.nav-btn.active:before{content:"";background:linear-gradient(180deg, var(--accent-h), var(--accent));width:3px;height:18px;box-shadow:0 0 10px var(--accent-glow);border-radius:0 3px 3px 0;position:absolute;top:50%;left:0;transform:translateY(-50%)}.nav-spacer{flex:1}.nav-bottom{display:none}.main{flex-direction:column;flex:1;min-width:0;display:flex;position:relative;overflow:hidden}.tree-logo{flex-shrink:0;justify-content:center;align-items:center;display:flex;position:relative}.tree-logo svg{z-index:1;width:100%;height:100%;display:block;position:absolute;inset:0;overflow:visible}.tree-logo.hero{height:clamp(64px, 15vh, var(--logo-h,132px));aspect-ratio:268/320;filter:drop-shadow(0 0 10px var(--accent-glow));animation:6s ease-in-out infinite treeBreath}@keyframes treeBreath{0%,to{transform:translateY(0)scale(1)}50%{transform:translateY(-1px)scale(1.015)}}.tree-logo.hero .tree-fill{fill-opacity:0;animation:1.1s 1.9s forwards treeFill}@keyframes treeFill{to{fill-opacity:1}}@media (prefers-reduced-motion:reduce){.tree-logo.hero{animation:none}.tree-logo.hero .tree-fill{fill-opacity:1;animation:none}}.chat-shell{isolation:isolate;background:radial-gradient(at 72% 18%,#4c608b21,#0000 42%),radial-gradient(at 34% 92%,#5f417017,#0000 38%),linear-gradient(155deg,#0d1119 0%,#111722 48%,#0b0f17 100%);flex:1;display:flex;position:relative;overflow:hidden}.chat-shell:before,.chat-shell:after{content:"";pointer-events:none;z-index:0;position:absolute;inset:-12%}.chat-shell:before{opacity:.78;filter:drop-shadow(0 0 2.5px #bccff46b);background-image:radial-gradient(circle,#f7fafff5 0 1.35px,#0000 1.8px),radial-gradient(circle,#b7ccf4d1 0 1px,#0000 1.45px),radial-gradient(circle,#ffffff94 0 .8px,#0000 1.2px),radial-gradient(circle,#97b4e885 0 1.5px,#0000 2px);background-position:19px 31px,101px 73px,41px 17px,211px 139px;background-size:179px 179px,263px 263px,113px 113px,397px 397px;animation:110s linear infinite starfieldDrift;display:none}.chat-shell:after{opacity:.82;background:radial-gradient(at 73% 26%,#5d77ae24,#0000 28%),radial-gradient(at 45% 72%,#6a4b7e17,#0000 30%),radial-gradient(circle at 88% 77%,#9eb6e114,#0000 18%);animation:14s ease-in-out infinite stellarBreathe}@keyframes starfieldDrift{0%{transform:translate(0,0)}to{transform:translate(-72px,44px)}}@keyframes stellarBreathe{0%,to{opacity:.68;transform:scale(1)}50%{opacity:.95;transform:scale(1.035)}}@media (prefers-reduced-motion:reduce){.chat-shell:before,.chat-shell:after{animation:none}}.sidebar{-webkit-backdrop-filter:blur(34px)saturate(180%);border-right:1px solid var(--glass-border);width:228px;box-shadow:inset -1px 0 0 var(--glass-shine), 4px 0 24px #00000047;transition:transform .22s var(--smooth), opacity .22s var(--smooth);z-index:50;background:#11151d80;flex-direction:column;flex-shrink:0;display:flex;overflow:hidden}.sidebar-header{flex-shrink:0;padding:14px 12px 8px}.sidebar-new-row{border:1px solid var(--border2);width:100%;color:var(--text-dim);cursor:pointer;transition:background var(--t), color var(--t), border-color var(--t);background:0 0;border-radius:10px;align-items:center;gap:10px;padding:9px 12px;font-size:.82rem;font-weight:500;display:flex}.sidebar-new-row svg{width:14px;height:14px}.sidebar-new-row:hover{background:var(--accent-soft);color:var(--accent);border-color:var(--accent-mid)}.sidebar-search{border:1px solid var(--border);background:#0000002e;border-radius:9px;flex-shrink:0;align-items:center;gap:8px;margin:0 12px 10px;padding:7px 10px;display:flex}.sidebar-search svg{width:13px;height:13px;color:var(--text-muted)}.sidebar-search input{min-width:0;color:var(--text);background:0 0;border:none;outline:none;flex:1;font-size:.78rem}.sidebar-search input::placeholder{color:var(--text-muted)}.sidebar-toggle{background:#00000029;border-radius:9px;flex-shrink:0;gap:4px;margin:0 12px 8px;padding:3px;display:flex}.sidebar-toggle button{color:var(--text-muted);cursor:pointer;transition:background var(--t), color var(--t);background:0 0;border:none;border-radius:7px;flex:1;padding:6px 8px;font-size:.72rem;font-weight:500}.sidebar-toggle button.active{background:var(--accent-soft);color:var(--accent)}.sidebar-list{scrollbar-width:thin;scrollbar-color:var(--bg4) transparent;flex:1;padding:10px 6px;overflow-y:auto}.sidebar-list::-webkit-scrollbar{width:2px}.sidebar-list::-webkit-scrollbar-thumb{background:var(--bg5);border-radius:2px}.sidebar-empty{color:var(--text-muted);text-align:center;padding:28px 16px;font-size:.76rem;line-height:1.6}.sidebar-item{cursor:pointer;transition:background var(--t);border-radius:10px;margin-bottom:1px;padding:10px 30px 10px 11px;position:relative}.sidebar-item:hover{background:#93aad20d}.sidebar-item.active{background:#93aad214}.sidebar-item.active .sidebar-item-title{color:var(--text)}.sidebar-item-title{color:var(--text-dim);white-space:nowrap;text-overflow:ellipsis;align-items:center;gap:6px;margin-bottom:3px;font-size:.8rem;font-weight:500;line-height:1.35;display:flex;overflow:hidden}.sidebar-item-title svg{color:var(--accent);flex-shrink:0}.sidebar-item-thumb{-o-object-fit:cover;object-fit:cover;border:1px solid var(--border2);border-radius:8px;width:100%;max-height:90px;margin-bottom:6px;display:block}.sidebar-item-meta{color:var(--text-muted);letter-spacing:.01em;font-size:.64rem}.sidebar-item-del{width:20px;height:20px;color:var(--text-muted);cursor:pointer;opacity:0;transition:opacity var(--t), background var(--t), color var(--t);background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;display:flex;position:absolute;top:50%;right:5px;transform:translateY(-50%)}.sidebar-item-del svg{width:10px;height:10px}.sidebar-item:hover .sidebar-item-del{opacity:1}.sidebar-item-del:hover{color:var(--error);background:#93aad21a}.sidebar-overlay,.chat-topbar{display:none}.hero{flex-direction:column;flex:1;justify-content:center;align-items:center;gap:6px;min-height:0;padding:24px 20px 40px;display:flex;position:relative;overflow:hidden}.hero-glow{pointer-events:none;background:radial-gradient(circle,#93aad20d 0%,#93aad203 50%,#0000 70%);border-radius:50%;width:500px;height:500px;animation:6s ease-in-out infinite heroPulse;position:absolute;top:50%;left:50%;transform:translate(-50%,-58%)}@keyframes heroPulse{0%,to{opacity:.75;transform:translate(-50%,-58%)scale(1)}50%{opacity:1;transform:translate(-50%,-58%)scale(1.1)}}.hero-greeting{font-family:var(--font-serif);color:var(--text);letter-spacing:-.01em;z-index:1;text-align:center;animation:heroGreetIn .7s var(--smooth) .55s both;margin-top:14px;padding:0 24px;font-size:1.9rem;font-weight:500}@keyframes heroGreetIn{0%{opacity:0;filter:blur(3px);transform:translateY(8px)}to{opacity:1;filter:blur();transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.hero-greeting{animation:none}}.chat-view{z-index:1;background:linear-gradient(#0a0e1614,#0a0e163d);flex-direction:column;flex:1;display:flex;position:relative;overflow:hidden}.hero,.messages{background-image:url(/stars.svg);background-position:50%;background-size:1920px 1080px}.messages{scrollbar-width:thin;scrollbar-color:var(--bg4) transparent;flex-direction:column;flex:1;gap:28px;padding:36px 0 12px;display:flex;position:relative;overflow-y:auto}.messages::-webkit-scrollbar{width:2px}.messages::-webkit-scrollbar-track{background:0 0}.messages::-webkit-scrollbar-thumb{background:var(--bg5);border-radius:2px}.msg{max-width:var(--max-content);width:100%;animation:msgIn .42s var(--spring) both;margin:0 auto;padding:0 28px}@keyframes msgIn{0%{opacity:0;transform:translateY(14px)scale(.985)}to{opacity:1;transform:translateY(0)scale(1)}}.msg-user .bubble{background:linear-gradient(135deg, #4c5f80 0%, var(--accent-vv) 100%);border-radius:var(--radius) var(--radius) 6px var(--radius);border:1px solid #ffffff14;width:fit-content;max-width:76%;margin-left:auto;padding:11px 16px;box-shadow:0 4px 18px #141a2859,inset 0 1px #ffffff1f}.msg-user .bubble .bubble-text{color:#fffffff5}.msg-user .msg-meta{color:var(--text-muted)}.msg-assistant .bubble{padding:2px 0}.bubble{position:relative}.msg-attachment-chip{background:var(--bg3);border:1px solid var(--border2);border-radius:var(--radius-sm);color:var(--text-dim);align-items:center;gap:7px;max-width:260px;margin-top:8px;padding:7px 12px;font-size:.78rem;display:inline-flex}.msg-attachment-chip span{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.msg-attachment-chip svg{color:var(--accent);flex-shrink:0}.msg-attachment-chars{color:var(--text-muted);flex-shrink:0;font-size:.68rem}.bubble-text{color:var(--text);white-space:pre-wrap;word-break:break-word;font-size:.9375rem;font-weight:400;line-height:1.75}.msg-meta{color:var(--text-muted);letter-spacing:.02em;align-items:center;gap:6px;margin-top:7px;font-size:.65rem;display:flex}.msg-user .msg-meta{text-align:right;justify-content:flex-end}.meta-offline{color:#8ebbffd9;text-transform:uppercase;letter-spacing:.06em;border:1px solid #8ebbff59;border-radius:4px;padding:1px 6px;font-size:.6rem}.coherence-badge{letter-spacing:.04em;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:coherenceIn .4s var(--spring) both;border:1px solid #0000;border-radius:999px;align-items:center;gap:3px;padding:1px 8px;font-size:.6rem;transition:background .2s,border-color .2s,box-shadow .2s;display:inline-flex}@keyframes coherenceIn{0%{opacity:0;transform:translateY(2px)scale(.9)}to{opacity:1;transform:translateY(0)scale(1)}}.coherence-badge.ok{color:#78dca0f2;animation:coherenceIn .4s var(--spring) both, coherencePulse 2.4s ease-out .4s 1;background:#78dca014;border-color:#78dca059;box-shadow:0 0 #78dca047}@keyframes coherencePulse{0%{box-shadow:0 0 #78dca047}to{box-shadow:0 0 0 6px #78dca000}}.coherence-badge.warn{color:#ffc878f2;background:#ffc8781a;border-color:#ffc87866}@media (prefers-reduced-motion:reduce){.coherence-badge,.coherence-badge.ok{animation:none}}.confirm-card{border-radius:var(--radius);background:#8ebbff0d;border:1px solid #8ebbff40;justify-content:space-between;align-items:center;gap:14px;max-width:620px;margin-top:10px;padding:12px 14px;display:flex}.confirm-card.view-error{margin:24px}.confirm-desc{color:var(--text-dim);word-break:break-word;font-size:.85rem;line-height:1.5}.confirm-icon{color:#8ebbffe6;margin-right:8px}.confirm-actions{flex-shrink:0;gap:8px;display:flex}.confirm-btn{cursor:pointer;border:1px solid var(--border2);color:var(--text-dim);background:0 0;border-radius:8px;padding:6px 14px;font-size:.8rem;transition:all .15s}.confirm-btn.allow{border-color:var(--accent);background:var(--accent-soft);color:var(--text)}.confirm-btn.allow:hover{background:var(--accent-mid)}.confirm-btn.deny:hover{border-color:var(--border3);color:var(--text)}.artifact-chips{flex-wrap:wrap;gap:8px;margin-top:10px;display:flex}.artifact-chip{border:1px solid var(--border2);background:var(--bg2);color:var(--text-dim);cursor:pointer;text-overflow:ellipsis;white-space:nowrap;max-width:320px;transition:all .15s;transition:transform var(--t), border-color var(--t), background var(--t), box-shadow var(--t);border-radius:8px;align-items:center;gap:7px;padding:6px 12px;font-size:.78rem;display:inline-flex;overflow:hidden}.artifact-chip:hover{border-color:var(--accent);color:var(--text);background:var(--accent-soft);box-shadow:0 4px 14px -6px var(--accent-glow);transform:translateY(-1px)}.artifact-chip:active{transform:translateY(0)}.task-chip{border:1px dashed var(--border2);color:var(--text-muted);border-radius:8px;align-items:center;gap:8px;padding:6px 12px;font-size:.78rem;display:inline-flex}.task-chip.error{color:#dc8282cc;border-color:#c85a5a66}.task-chip.running{border-style:solid;border-color:var(--accent-mid);background:linear-gradient(100deg, var(--accent-soft) 0%, transparent 40%, var(--accent-soft) 80%);background-size:200% 100%;animation:1.8s linear infinite taskShimmer}@keyframes taskShimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@media (prefers-reduced-motion:reduce){.task-chip.running{animation:none}}.task-spinner{border:1.5px solid var(--border3);border-top-color:var(--accent-h);border-radius:50%;width:10px;height:10px;animation:.9s linear infinite spin}.artifact-overlay{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);z-index:90;background:#0f0c0abf;justify-content:center;align-items:center;padding:28px;animation:.15s artifactFadeIn;display:flex;position:fixed;inset:0}@keyframes artifactFadeIn{0%{opacity:0}to{opacity:1}}.artifact-panel{border-radius:var(--radius);flex-direction:column;width:min(920px,100%);height:min(80vh,100%);display:flex;overflow:hidden}.artifact-head{border-bottom:1px solid var(--border);flex-shrink:0;justify-content:space-between;align-items:center;padding:14px 18px;display:flex}.artifact-title{color:var(--text);font-size:.9rem;font-weight:500}.artifact-close{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:6px;padding:6px}.artifact-close:hover{color:var(--text);background:var(--bg3)}.artifact-body{flex:1;padding:18px;overflow-y:auto}.artifact-results{flex-direction:column;gap:14px;display:flex}.artifact-result{border:1px solid var(--border);border-radius:10px;flex-direction:column;gap:3px;padding:12px 14px;text-decoration:none;transition:border-color .15s;display:flex}.artifact-result:hover{border-color:var(--accent)}.artifact-result-title{color:var(--text);font-size:.9rem;font-weight:500}.artifact-result-url{color:var(--accent-h);text-overflow:ellipsis;white-space:nowrap;font-size:.72rem;overflow:hidden}.artifact-result-snippet{color:var(--text-dim);font-size:.82rem;line-height:1.55}.artifact-code{color:var(--text-dim);white-space:pre-wrap;word-break:break-word;margin:0;font-family:ui-monospace,Cascadia Code,Consolas,monospace;font-size:.8rem}.artifact-image{border:1px solid var(--border);border-radius:10px;width:100%;height:auto;display:block}.thinking-dots{gap:5px;padding:12px 2px;display:flex}.thinking-dots span{background:var(--text-muted);border-radius:50%;width:4px;height:4px;animation:1.5s ease-in-out infinite blink}.thinking-dots span:nth-child(2){animation-delay:.24s}.thinking-dots span:nth-child(3){animation-delay:.48s}@keyframes blink{0%,80%,to{opacity:.18;transform:scale(.7)}40%{opacity:1;transform:scale(1)}}.working{width:min(430px,82vw);animation:msgIn .4s var(--spring) both;flex-direction:column;gap:7px;padding:7px 2px 12px;display:flex}.branch-loader.compact{opacity:.82;width:min(330px,72vw);padding-top:10px}.branch-stage{width:100%;height:66px;filter:drop-shadow(0 4px 12px var(--accent-soft))}.branch-loader.compact .branch-stage{height:34px}.branch-stage svg{width:100%;height:100%;display:block;overflow:visible}.branch-ghost,.branch-flow,.branch-twig,.branch-leaf{fill:none;stroke-linecap:round;stroke-linejoin:round}.branch-ghost{stroke:var(--border2);stroke-width:1.1px;opacity:.55}.branch-flow{stroke:url(#branch-flow);stroke-width:1.8px;stroke-dasharray:340;stroke-dashoffset:340px;animation:3.6s cubic-bezier(.24,.72,.2,1) infinite branchLoaderGrow}.branch-twig{stroke:var(--accent-mid);stroke-width:1.15px;opacity:0;stroke-dasharray:34;stroke-dashoffset:34px;animation:3.6s cubic-bezier(.24,.72,.2,1) infinite twigGrow}.twig-a{animation-delay:.35s}.twig-b{animation-delay:.75s}.twig-c{animation-delay:1.15s}.twig-d{animation-delay:1.5s}.branch-leaf{fill:var(--accent-soft);stroke:var(--accent-mid);stroke-width:.8px;opacity:0;transform-box:fill-box;transform-origin:50% 100%;animation:leafUnfold 3.6s var(--spring) infinite}.leaf-a{animation-delay:.65s}.leaf-b{animation-delay:1.1s}.leaf-c{animation-delay:1.7s}.branch-node{fill:var(--bg);stroke:var(--border3);stroke-width:1.2px;transition:fill .35s,stroke .35s,r .35s}.branch-node.completed{fill:var(--accent);stroke:var(--accent-h)}.branch-node.running{fill:var(--accent-h);stroke:var(--accent-h);animation:1.45s ease-in-out infinite branchNodePulse}.branch-node.warning{fill:#c99052;stroke:#e4b77f}.working-status{color:var(--text-dim);letter-spacing:.01em;align-items:center;gap:9px;font-size:.8rem;display:flex}.working-label{background:linear-gradient(90deg, var(--text-muted) 20%, var(--text) 50%, var(--text-muted) 80%);-webkit-text-fill-color:transparent;background-size:200%;-webkit-background-clip:text;background-clip:text;animation:2.6s linear infinite shimmerMove}.working-orb{background:var(--accent-h);width:6px;height:6px;box-shadow:0 0 10px 2px var(--accent-glow);border-radius:50%;flex-shrink:0;animation:1.5s ease-in-out infinite breatheGlow}.working-progress{border:1px solid var(--border2);min-width:34px;color:var(--accent-h);font-variant-numeric:tabular-nums;text-align:center;background:#93aad20f;border-radius:999px;flex-shrink:0;padding:2px 7px;font-size:.64rem}.working-cancel{border:1px solid var(--border2);color:var(--text-muted);font:inherit;cursor:pointer;transition:color var(--t), border-color var(--t), background var(--t), transform var(--t);background:#ffffff06;border-radius:999px;margin-left:auto;padding:4px 10px;font-size:.68rem}.working-cancel:hover{color:var(--text);border-color:var(--border3);background:var(--accent-soft);transform:translateY(-1px)}.branch-timeline{flex-wrap:wrap;gap:7px;padding-left:15px;display:flex}.branch-timeline span{color:var(--text-muted);opacity:.5;transition:opacity .35s ease,color .35s ease,transform .35s var(--spring);font-size:.66rem}.branch-timeline span.completed{opacity:.72}.branch-timeline span.running{color:var(--text);opacity:1;transform:translateY(-1px)}.branch-timeline span.warning{color:#d6a267;opacity:1}@keyframes branchLoaderGrow{0%{stroke-dashoffset:340px;opacity:.18}68%{stroke-dashoffset:0;opacity:1}86%{stroke-dashoffset:0;opacity:1}to{stroke-dashoffset:-340px;opacity:.12}}@keyframes twigGrow{0%,18%{stroke-dashoffset:34px;opacity:0}48%,82%{stroke-dashoffset:0;opacity:.82}to{stroke-dashoffset:-34px;opacity:0}}@keyframes leafUnfold{0%,20%{opacity:0;transform:scale(.15)rotate(-18deg)}48%,82%{opacity:.9;transform:scale(1)rotate(0)}to{opacity:0;transform:scale(.72)rotate(6deg)}}@keyframes branchNodePulse{0%,to{filter:drop-shadow(0 0 1px var(--accent));transform:scale(1)}50%{filter:drop-shadow(0 0 5px var(--accent-h));transform:scale(1.65)}}@media (prefers-reduced-motion:reduce){.working,.working-label,.working-orb,.branch-flow,.branch-twig,.branch-leaf,.branch-node{animation:none}.working-label{-webkit-text-fill-color:currentColor;color:var(--text-dim)}.branch-flow,.branch-twig{stroke-dasharray:none;stroke-dashoffset:0;opacity:.72}}.output-quality-badge{border:1px solid var(--border2);border-radius:999px;align-items:center;gap:4px;padding:1px 7px;font-size:.62rem;line-height:1.5;display:inline-flex}.output-quality-badge.ok{color:var(--ok);background:#48cc8e0f;border-color:#48cc8e47}.output-quality-badge.warn{color:#e4b77f;background:#c9905212;border-color:#e4b77f4d}.input-bar{background:linear-gradient(#0000,#090d146b);flex-direction:column;flex-shrink:0;align-items:center;gap:8px;padding:8px 24px 22px;display:flex}.input-wrap{width:100%;max-width:var(--max-content);align-items:center;gap:10px;display:flex}.input-row{transition:border-color var(--t2), box-shadow var(--t2);border-radius:30px;flex:1;align-items:center;gap:0;padding:9px 8px 9px 4px;display:flex;box-shadow:0 12px 36px #0000003d,inset 0 1px #ffffff0b}.input-row:focus-within{border-color:#93aad259!important;box-shadow:0 4px 20px #0000000f,0 0 0 3px #93aad21a!important}.input-main{flex-direction:column;flex:1;gap:0;min-width:0;display:flex}.input-bottom-row{align-items:flex-end;gap:4px;display:flex}.attach-btn{width:30px;height:30px;color:var(--text-muted);cursor:pointer;transition:background var(--t), color var(--t);background:0 0;border:none;border-radius:8px;flex-shrink:0;justify-content:center;align-self:flex-end;align-items:center;margin-bottom:2px;padding:0;display:flex}.attach-btn:hover{background:var(--bg3);color:var(--text-dim)}.attach-btn:active{transform:scale(.88)}.input-field{color:var(--text);font-family:var(--font);resize:none;background:0 0;border:none;outline:none;flex:1;min-height:24px;max-height:140px;padding:4px 2px;font-size:.9375rem;line-height:1.6;overflow-y:hidden}.input-field::placeholder{color:var(--text-muted)}.attachment-preview{align-items:center;gap:0;max-width:100%;margin-bottom:8px;display:inline-flex;position:relative}.attachment-img{border:1px solid var(--border2);-o-object-fit:cover;object-fit:cover;border-radius:10px;max-width:190px;max-height:110px;display:block}.attachment-file{background:var(--bg3);border:1px solid var(--border2);border-radius:var(--radius-sm);color:var(--text-dim);align-items:center;gap:7px;max-width:240px;padding:7px 12px;font-size:.78rem;display:flex}.attachment-file span{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.attachment-file svg{color:var(--accent);flex-shrink:0}.attachment-remove{border:1px solid var(--border2);background:var(--bg2);width:18px;height:18px;color:var(--text-muted);cursor:pointer;transition:background var(--t), color var(--t);border-radius:50%;justify-content:center;align-items:center;display:flex;position:absolute;top:-6px;right:-6px}.attachment-remove:hover{color:var(--error);background:#93aad21a}.msg-img-wrap{margin-bottom:8px}.msg-img-wrap.user{justify-content:flex-end;display:flex}.msg-img{border-radius:var(--radius-sm);border:1px solid var(--border2);-o-object-fit:contain;object-fit:contain;background:var(--bg2);max-width:320px;max-height:260px}.bubble-text.collapsed{max-height:8.4em;overflow:hidden;-webkit-mask-image:linear-gradient(#000 70%,#0000 100%);mask-image:linear-gradient(#000 70%,#0000 100%)}.message-expand{color:#ffffffb3;font:inherit;cursor:pointer;background:0 0;border:0;margin:5px 0 0 auto;padding:3px 0;font-size:.7rem;display:block}.message-expand:hover{color:#fff}.message-error-actions{color:var(--text-muted);align-items:center;gap:10px;margin-top:10px;font-size:.72rem;display:flex}.message-error-actions button{color:#ef9aaa;font:inherit;cursor:pointer;background:#dc506914;border:1px solid #dc697d52;border-radius:999px;padding:5px 12px}.message-error-actions button:hover{background:#dc506926}.drop-overlay{z-index:500;-webkit-backdrop-filter:blur(10px);border-radius:var(--radius);animation:fadeUp .14s var(--smooth);background:#0c0f14e6;border:2px dashed #93aad24d;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.drop-overlay-inner{color:var(--accent);flex-direction:column;align-items:center;gap:14px;display:flex}.drop-overlay-inner span{letter-spacing:.1em;text-transform:uppercase;color:var(--text-dim);font-size:.9rem;font-weight:500}.input-hint{color:var(--text-muted);text-align:center;letter-spacing:.01em;opacity:.65;font-size:.66rem}.diamond-btn{width:34px;height:34px;color:var(--text-muted);cursor:pointer;transition:color var(--t), transform .2s var(--spring), background var(--t);background:0 0;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;padding:0;display:flex}.diamond-btn:not(:disabled):hover{color:var(--accent);background:var(--accent-soft);transform:scale(1.22)rotate(12deg);box-shadow:0 0 18px #93aad238}.diamond-btn:not(:disabled):active{transform:scale(.9)rotate(6deg)}.diamond-btn:disabled{opacity:.18;cursor:default}.login-screen{background:var(--bg);background-image:radial-gradient(700px 500px at 50% 30%,#00000047,#0000),radial-gradient(400px 300px at 80% 80%,#a8384c0d,#0000);justify-content:center;align-items:center;height:100vh;display:flex;overflow:hidden}.login-card{-webkit-backdrop-filter:blur(36px)saturate(160%);border-radius:var(--radius-lg);width:min(380px,92vw);animation:cardIn .45s var(--spring) both;background:#11151deb;border:1px solid #ffffff1a;flex-direction:column;gap:22px;padding:52px 44px;display:flex;box-shadow:0 24px 64px #00000073,0 2px 8px #0000000d,inset 0 1px #ffffff0f}@keyframes cardIn{0%{opacity:0;transform:translateY(24px)scale(.96)}to{opacity:1;transform:translateY(0)scale(1)}}.login-logo{justify-content:center;margin-bottom:4px;display:flex}.login-logo canvas,.login-logo svg{filter:drop-shadow(0 8px 28px #93aad22e)}.login-title{text-align:center;font-family:var(--font-serif);color:var(--text);letter-spacing:-.01em;margin-top:-6px;font-size:1.65rem;font-weight:500}.login-mk{text-align:center;color:var(--accent);letter-spacing:.26em;text-transform:uppercase;margin-top:-14px;font-size:.66rem;font-weight:600}.login-subtitle{text-align:center;color:var(--text-muted);margin-top:-8px;font-size:.76rem}.form-group{flex-direction:column;gap:7px;display:flex}.form-label{color:var(--text-dim);letter-spacing:.07em;text-transform:uppercase;font-size:.7rem;font-weight:500}.form-input{background:var(--bg);border:1px solid var(--border2);border-radius:var(--radius-sm);color:var(--text);font-family:var(--font);transition:border-color var(--t2), box-shadow var(--t2), background var(--t2);outline:none;width:100%;padding:11px 14px;font-size:.9rem}.form-input:focus{background:var(--bg2);border-color:#93aad24d;box-shadow:0 0 0 3px #93aad21a}.login-btn{background:linear-gradient(135deg, var(--accent-h) 0%, var(--accent) 100%);border-radius:var(--radius-sm);color:#fff;font-family:var(--font);cursor:pointer;transition:opacity var(--t), transform .16s var(--spring), box-shadow var(--t2);letter-spacing:.05em;border:none;padding:13px;font-size:.88rem;font-weight:600;box-shadow:0 2px 16px #93aad247}.login-btn:hover:not(:disabled){opacity:.92;transform:translateY(-1px);box-shadow:0 6px 24px #93aad24d}.login-btn:active:not(:disabled){transform:translateY(0)}.login-btn:disabled{opacity:.28;cursor:default}.login-error{color:var(--error);text-align:center;border-radius:var(--radius-sm);background:#93aad212;border:1px solid #93aad229;padding:9px 14px;font-size:.77rem;animation:.32s both shake}@keyframes shake{0%,to{transform:translate(0)}22%{transform:translate(-5px)}66%{transform:translate(5px)}}.view{scrollbar-width:thin;scrollbar-color:var(--bg4) transparent;flex:1;padding:26px 28px 24px;overflow-y:auto}.view-title{color:var(--text-muted);letter-spacing:.12em;text-transform:uppercase;margin-bottom:16px;font-size:.72rem;font-weight:600}.stat-grid{grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:8px;margin-bottom:14px;display:grid}.stat-card{background:var(--bg2);border:1px solid var(--border);border-radius:var(--radius-sm);transition:border-color var(--t);padding:12px 14px}.stat-card:hover{border-color:var(--border2)}.stat-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.1em;margin-bottom:6px;font-size:.6rem;font-weight:500}.stat-value{color:var(--text);font-variant-numeric:tabular-nums;font-size:1.05rem;font-weight:600}.card{background:var(--bg2);border:1px solid var(--border);border-radius:var(--radius-sm);transition:border-color var(--t);margin-bottom:6px;padding:11px 14px}.card:hover{border-color:var(--accent-mid)}.card-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.1em;margin-bottom:4px;font-size:.6rem;font-weight:500}.card-value{color:var(--text-dim);font-size:.82rem;line-height:1.5}.tag{background:var(--accent-soft);color:var(--accent);border:1px solid var(--accent-mid);letter-spacing:.02em;border-radius:20px;align-items:center;padding:2px 8px;font-size:.67rem;font-weight:500;display:inline-flex}.tag.ok{color:var(--ok);background:#3ea8681a;border-color:#3ea86838}.tag.err{color:var(--error);background:#93aad217;border-color:#93aad233}.tool-item{background:var(--bg2);border:1px solid var(--border);border-radius:var(--radius-sm);transition:border-color var(--t);margin-bottom:6px;padding:10px 13px}.tool-item:hover{border-color:var(--accent-mid)}.tool-name{color:var(--accent);margin-bottom:2px;font-size:.82rem;font-weight:600}.tool-desc{color:var(--text-dim);font-size:.78rem;line-height:1.45}.tool-code{color:var(--text-muted);background:var(--bg3);vertical-align:middle;border-radius:4px;margin-left:8px;padding:1px 5px;font-family:monospace;font-size:.66rem;font-weight:400}.tools-toolbar{align-items:center;gap:12px;margin-bottom:16px;display:flex}.tools-search{flex:1;min-width:0}.tools-count{color:var(--text-muted);flex-shrink:0;font-size:.78rem}.tools-cat-count{color:var(--text-muted);background:var(--bg3);border-radius:8px;margin-left:6px;padding:0 7px;font-size:.68rem}.system-health{background:var(--bg2);border:1px solid var(--border);border-radius:var(--radius);align-items:center;gap:14px;margin-bottom:20px;padding:16px 18px;display:flex}.system-health-dot{border-radius:50%;flex-shrink:0;width:12px;height:12px}.system-health-dot.ok{background:var(--ok);box-shadow:0 0 10px var(--ok)}.system-health-dot.err{background:var(--error);box-shadow:0 0 10px var(--error)}.system-health-text{flex:1;min-width:0}.system-health-title{color:var(--text);font-size:.95rem;font-weight:600}.system-health-sub{color:var(--text-dim);margin-top:2px;font-size:.8rem}.system-meter-block{margin-top:12px}.system-meter-label{color:var(--text-dim);justify-content:space-between;gap:12px;margin-bottom:6px;font-size:.78rem;display:flex}.system-footnote{color:var(--text-muted);margin-top:18px;font-size:.74rem}.btn-sm{border:1px solid var(--border2);border-radius:var(--radius-sm);color:var(--text-dim);font-family:var(--font);cursor:pointer;transition:border-color var(--t), color var(--t), background var(--t), transform .12s var(--spring);white-space:nowrap;background:0 0;padding:6px 14px;font-size:.78rem;font-weight:500}.btn-sm:hover{border-color:var(--accent);color:var(--accent);background:var(--accent-soft);transform:translateY(-1px)}.btn-sm.danger:hover{border-color:var(--error);color:var(--error);background:#93aad20f}.screen-share-head{justify-content:space-between;align-items:center;gap:14px;margin-bottom:20px;display:flex}.screen-share-status{letter-spacing:.06em;color:var(--text-muted);font-size:.78rem;font-weight:600}.screen-share-status-sharing{color:var(--ok)}.screen-share-status-error,.screen-share-status-conflict{color:var(--error)}.screen-share-status-connecting{color:var(--accent-h)}.screen-share-toggle{border-radius:var(--radius);border:1px solid var(--border2);background:var(--bg2);color:var(--text);cursor:pointer;transition:border-color var(--t), color var(--t), background var(--t);padding:8px 18px;font-size:.85rem;font-weight:500}.screen-share-toggle:hover{border-color:var(--accent);color:var(--accent);background:var(--accent-soft)}.screen-share-toggle:disabled{opacity:.6;cursor:default}.screen-share-unstick{border-color:var(--error);color:var(--error);margin-top:10px}.screen-share-unstick:hover{background:#93aad214}.screen-share-actions{align-items:center;gap:10px;display:flex}.screen-share-control-toggle.active{border-color:var(--ok);color:var(--ok);background:#3cb4781a}.screen-share-control-hint{color:var(--ok);margin:-10px 0 12px;font-size:.78rem}.screen-share-keyboard-toggle{padding:8px 14px;font-size:1rem;line-height:1}.screen-share-keyboard-input{opacity:0;pointer-events:none;border:0;width:1px;height:1px;padding:0;position:absolute}.screen-share-frame{aspect-ratio:16/9;background:var(--bg2);border:1px solid var(--border2);border-radius:var(--radius);justify-content:center;align-items:center;width:100%;display:flex;position:relative;overflow:hidden}.screen-share-video{-o-object-fit:contain;object-fit:contain;background:#000;outline:none;width:100%;height:100%}.screen-share-video.controlling{cursor:crosshair;box-shadow:inset 0 0 0 2px var(--ok);touch-action:none}.screen-share-placeholder{color:var(--text-muted);font-size:.85rem}.screen-profile-row{justify-content:space-between;align-items:center;gap:14px;margin:12px 0;display:flex}.quality-switch{background:#00000029;border-radius:9px;gap:4px;padding:3px;display:flex}.quality-switch button{color:var(--text-muted);cursor:pointer;white-space:nowrap;transition:background var(--t), color var(--t);background:0 0;border:none;border-radius:7px;padding:7px 12px;font-size:.76rem;font-weight:500}.quality-switch button:hover:not(:disabled){color:var(--text-dim)}.quality-switch button.active{background:var(--accent-soft);color:var(--accent)}.screen-profile-row .quality-switch button:disabled{opacity:.55;cursor:default}.screen-metrics{color:var(--text-muted);font-family:var(--font-mono);gap:12px;font-size:11px;display:flex}@media (width<=700px){.screen-profile-row{flex-direction:column;align-items:stretch}.screen-profile-row .quality-switch{grid-template-columns:1fr;display:grid}.screen-metrics{justify-content:space-between}}.settings-view{max-width:640px}.settings-view .view{padding:0;overflow:visible}.settings-tabs{background:var(--bg2);border:1px solid var(--border);border-radius:var(--radius-sm);gap:4px;width:fit-content;margin-bottom:18px;padding:4px;display:flex;box-shadow:0 1px 4px #0000000a}.settings-tab{font-family:var(--font);color:var(--text-muted);cursor:pointer;transition:background var(--t), color var(--t);letter-spacing:.02em;background:0 0;border:none;border-radius:8px;padding:7px 18px;font-size:.8rem;font-weight:500}.settings-tab.active{background:var(--bg2);color:var(--text);box-shadow:0 1px 6px #0000001a}.settings-section{margin-bottom:20px}.settings-section-title{text-transform:uppercase;letter-spacing:.1em;color:var(--text-muted);margin-bottom:8px;font-size:.66rem;font-weight:600}.settings-list{flex-direction:column;gap:5px;margin-bottom:10px;display:flex}.settings-row{background:var(--bg2);border:1px solid var(--border);border-radius:var(--radius-sm);transition:border-color var(--t);flex-wrap:wrap;align-items:center;gap:12px;padding:9px 12px;display:flex}.settings-row:hover{border-color:var(--accent-mid)}.settings-row-info{flex:1;align-items:center;gap:8px;min-width:0;display:flex}.settings-row-name{color:var(--text);font-size:.84rem;font-weight:500}.settings-row-actions{flex-wrap:wrap;flex-shrink:0;align-items:center;gap:8px;display:flex}.settings-row-hint{color:var(--text-muted);font-size:.7rem}.settings-provider-dot{border-radius:50%;flex-shrink:0;width:7px;height:7px}.settings-add-box{background:var(--bg2);border:1px solid var(--border);border-radius:var(--radius-sm);padding:12px 14px}.settings-add-title{letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);margin-bottom:8px;font-size:.68rem;font-weight:600}.settings-form-row{flex-wrap:wrap;gap:8px;display:flex}.settings-form-row .form-input{flex:1;min-width:120px}.settings-add-btn{flex-shrink:0}.settings-role-select{max-width:120px}.settings-pwd-input{max-width:160px}.settings-loading{color:var(--text-muted);padding:16px 0;font-size:.85rem}.view-loader{min-height:100%;color:var(--text-muted);letter-spacing:.08em;place-content:center;justify-items:center;gap:12px;font-size:.78rem;display:grid}.view-loader-branch{width:92px;height:12px;position:relative;overflow:hidden}.view-loader-branch:before,.view-loader-branch span:before,.view-loader-branch span:after{content:"";background:linear-gradient(90deg, transparent, var(--accent), var(--accent-soft,var(--accent)));transform-origin:0;border-radius:999px;height:1px;animation:.9s cubic-bezier(.22,.8,.32,1) infinite alternate view-branch-grow;position:absolute}.view-loader-branch:before{width:92px;top:6px;left:0}.view-loader-branch span:before{width:28px;animation-delay:.12s;top:5px;left:49px;transform:rotate(-18deg)}.view-loader-branch span:after{width:23px;animation-delay:.22s;top:7px;left:63px;transform:rotate(20deg)}.md-loading{white-space:pre-wrap;color:inherit;opacity:.78}@keyframes view-branch-grow{0%{clip-path:inset(0 100% 0 0);opacity:.45}to{clip-path:inset(0);opacity:1}}@media (prefers-reduced-motion:reduce){.view-loader-branch:before,.view-loader-branch span:before,.view-loader-branch span:after{animation:none}}.settings-note{color:var(--text-muted);border-left:2px solid var(--accent-mid);margin-top:10px;padding-left:10px;font-size:.7rem;line-height:1.6}.md-content{width:100%}.md-body{color:var(--text);font-size:.9375rem;line-height:1.75}.md-p{margin:0 0 .8em}.md-p:last-child{margin-bottom:0}.md-h1{color:var(--text);letter-spacing:-.015em;margin:1.3em 0 .5em;font-size:1.22rem;font-weight:600}.md-h2{color:var(--text);margin:1.1em 0 .45em;font-size:1.04rem;font-weight:600}.md-h3{color:var(--text-dim);margin:1em 0 .4em;font-size:.95rem;font-weight:600}.md-ul,.md-ol{flex-direction:column;gap:.22em;margin:.4em 0 .8em 1.4em;display:flex}.md-li{line-height:1.7}.md-ul .md-li{list-style-type:disc}.md-ol .md-li{list-style-type:decimal}.md-strong{color:var(--text);font-weight:600}.md-em{color:var(--text-dim);font-style:italic}.md-a{color:var(--accent);text-underline-offset:3px;transition:color var(--t), text-decoration-color var(--t);-webkit-text-decoration:underline #93aad259;text-decoration:underline #93aad259}.md-a:hover{color:var(--accent-h);text-decoration-color:#6b79f0b3}.md-blockquote{border-left:2px solid var(--accent);color:var(--text-dim);background:var(--accent-soft);border-radius:0 var(--radius-sm) var(--radius-sm) 0;margin:.8em 0;padding:6px 0 6px 16px;font-style:italic}.md-hr{border:none;border-top:1px solid var(--border2);margin:1.4em 0}.md-inline-code{background:var(--bg3);border:1px solid var(--border2);font-family:var(--font-mono);color:var(--accent);border-radius:5px;padding:1px 6px;font-size:.82em}.md-code-block{border-radius:var(--radius-sm);border:1px solid var(--border2);background:var(--bg3);margin:.9em 0;overflow:hidden}.md-code-header{background:var(--bg3);border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:8px 14px;display:flex}.md-code-lang{letter-spacing:.09em;text-transform:uppercase;color:var(--text-muted);font-size:.65rem;font-weight:600}.md-code-copy{border:1px solid var(--border2);font-size:.65rem;font-family:var(--font);color:var(--text-muted);cursor:pointer;transition:border-color var(--t), color var(--t);background:0 0;border-radius:6px;padding:2px 10px}.md-code-copy:hover{border-color:var(--accent);color:var(--accent)}.md-table-wrap{border-radius:var(--radius-sm);border:1px solid var(--border2);margin:.8em 0;overflow-x:auto}.md-table{border-collapse:collapse;width:100%;font-size:.875rem}.md-th{text-align:left;letter-spacing:.05em;text-transform:uppercase;color:var(--text-muted);background:var(--bg3);border-bottom:1px solid var(--border2);padding:9px 14px;font-size:.72rem;font-weight:600}.md-td{color:var(--text-dim);border-bottom:1px solid var(--border);padding:9px 14px}.md-table tr:last-child .md-td{border-bottom:none}.stream-cursor{background:var(--accent);vertical-align:text-bottom;opacity:.7;border-radius:1px;width:2px;height:1em;margin-left:2px;animation:.9s ease-in-out infinite cursorBlink;display:inline-block}@keyframes cursorBlink{0%,to{opacity:.7}50%{opacity:0}}@keyframes fadeUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.fade-in{animation:fadeUp .26s var(--smooth) forwards}.voice-overlay{z-index:50;-webkit-backdrop-filter:blur(14px);background:#0c0f14f5;justify-content:center;align-items:center;animation:.3s voice-fade-in;display:flex;position:absolute;inset:0}.voice-overlay-inner{flex-direction:column;align-items:center;gap:26px;width:100%;max-width:480px;padding:32px 24px;display:flex}.voice-sphere-wrap{flex-shrink:0;justify-content:center;align-items:center;width:min(60vw,60vh,300px);height:min(60vw,60vh,300px);display:flex}.dictation-btn,.live-btn{width:32px;height:32px;color:var(--text-dim);cursor:pointer;transition:color var(--t), background var(--t), transform .18s var(--spring);background:0 0;border:none;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.dictation-btn:hover,.live-btn:hover{color:var(--text);background:var(--bg3);transform:scale(1.1)}.dictation-btn:not(:disabled):active,.live-btn:not(:disabled):active{transform:scale(.88)}.dictation-btn:disabled,.live-btn:disabled{opacity:.32;cursor:default}.dictation-btn.recording{color:var(--error);animation:1.4s ease-in-out infinite dictationPulse}@keyframes dictationPulse{0%,to{opacity:1}50%{opacity:.55}}.voice-texts{text-align:center;flex-direction:column;align-items:center;gap:12px;width:100%;max-width:560px;min-height:80px;padding:0 16px;display:flex}.voice-status-label{color:var(--text-dim);letter-spacing:.06em;font-size:13px;animation:.4s voice-fade-in}.voice-transcript{color:var(--text);opacity:.9;font-size:15px;animation:.3s voice-fade-in}.voice-response{color:var(--text-dim);scrollbar-width:none;max-height:160px;font-size:14px;line-height:1.65;animation:.3s voice-fade-in;overflow-y:auto}.voice-reasoning{scrollbar-width:thin;background:var(--bg3);border:1px solid var(--border2);border-radius:12px;flex-direction:column;gap:6px;width:100%;max-height:26vh;padding:10px 14px;animation:.3s voice-fade-in;display:flex;overflow-y:auto}.voice-reasoning-label{text-transform:uppercase;letter-spacing:.12em;color:var(--text-muted);font-size:10px}.voice-reasoning p{color:var(--text-dim);text-align:left;white-space:pre-wrap;word-break:break-word;margin:0;font-size:14px;line-height:1.58}.voice-final{scrollbar-width:thin;background:linear-gradient(170deg,#93aad214,#93aad208);border:1px solid #93aad233;border-radius:14px;flex-direction:column;gap:6px;width:100%;max-height:34vh;padding:14px 16px;animation:.35s voice-fade-in;display:flex;overflow-y:auto;box-shadow:0 0 24px #93aad21a}.voice-final-label{text-transform:uppercase;letter-spacing:.14em;color:var(--accent);font-size:10px;font-weight:600}.voice-final p{color:var(--text);text-align:left;white-space:pre-wrap;word-break:break-word;margin:0;font-size:16px;font-weight:500;line-height:1.58}.voice-error{color:var(--error);font-size:13px;animation:.3s voice-fade-in}@keyframes voice-fade-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.voice-controls{align-items:center;gap:20px;display:flex}.voice-btn{cursor:pointer;width:52px;height:52px;transition:transform .15s var(--smooth), opacity .15s var(--smooth), background .2s;border:none;border-radius:50%;justify-content:center;align-items:center;display:flex}.voice-btn:disabled{opacity:.32;cursor:default}.voice-btn:not(:disabled):hover{transform:scale(1.08)}.voice-btn:not(:disabled):active{transform:scale(.94)}.voice-btn-close{background:var(--bg3);color:var(--text-dim)}.voice-btn-close:not(:disabled):hover{background:var(--bg4);color:var(--text)}.voice-btn-mute{background:var(--bg3);color:var(--text)}.voice-btn-mute:not(:disabled):hover{background:var(--bg4);color:var(--text)}.voice-btn-mute.is-muted{color:var(--error);background:#93aad21f;box-shadow:0 0 16px #93aad226}.voice-btn-screen.is-active,.voice-btn-camera.is-active{background:var(--accent-soft);color:var(--accent);box-shadow:0 0 18px var(--accent-glow);animation:2.4s ease-in-out infinite screenPulse}.voice-camera-preview{top:calc(14px + env(safe-area-inset-top,0px));aspect-ratio:3/4;-o-object-fit:cover;object-fit:cover;border:1.5px solid var(--accent-mid);width:min(110px,28vw);box-shadow:0 8px 28px #00000040, 0 0 16px var(--accent-glow);z-index:5;animation:fadeUp .3s var(--spring) both;border-radius:14px;display:none;position:absolute;right:14px}.voice-camera-preview.visible{display:block}@keyframes screenPulse{0%,to{box-shadow:0 0 14px var(--accent-glow)}50%{box-shadow:0 0 22px var(--accent-mid)}}.voice-btn-mic{background:var(--bg3);color:var(--text)}.voice-btn-mic:not(:disabled):hover{background:var(--bg4)}.voice-btn-mic.active{color:var(--accent);background:#93aad21f;animation:1.9s ease-in-out infinite mic-pulse;box-shadow:0 0 22px #93aad240}@keyframes mic-pulse{0%,to{box-shadow:0 0 14px #93aad22e}50%{box-shadow:0 0 32px #93aad266}}.voice-status-label{letter-spacing:.14em;text-transform:uppercase;color:var(--text-muted);font-size:12px;font-weight:500;position:relative}.voice-status-label:after{content:"";background:var(--accent);width:32px;height:1.5px;transition:transform .3s var(--smooth);border-radius:2px;position:absolute;bottom:-4px;left:50%;transform:translate(-50%)scaleX(0)}[data-voice-state=listening] .voice-status-label:after,[data-voice-state=speaking] .voice-status-label:after{transform:translate(-50%)scaleX(1)}.nav-logo{animation:14s ease-in-out infinite floatC;position:relative}.nav-btn.active{background:var(--accent-soft);color:var(--accent)}.nav-btn.active:after{content:"";pointer-events:none;background:radial-gradient(circle,#93aad21a 0%,#0000 70%);border-radius:9px;animation:2.5s ease-in-out infinite breatheGlow;position:absolute;inset:4px}.msg-user .bubble{position:relative;overflow:hidden}.msg-user .bubble:after{content:"";pointer-events:none;background:linear-gradient(105deg,#0000 40%,#ffffff26 50%,#0000 60%) 0 0/200% 100%;animation:3.5s ease-in-out infinite shimmerMove;position:absolute;inset:0}.hero-glow{background:radial-gradient(circle,#93aad20f 0%,#93aad203 50%,#0000 70%)!important}.input-row:focus-within{box-shadow:0 4px 20px #00000047,0 0 0 2.5px #93aad224!important}.conv-item:hover{transition:transform .15s var(--smooth);transform:translate(2px)}@media (width<=640px){body{overflow:auto}.chat-shell:before{opacity:.58}.chat-shell:after{opacity:.62}.shell{flex-direction:column;height:100dvh;overflow:hidden}.nav{display:none}.sidebar{z-index:300;width:80vw;max-width:300px;position:fixed;top:0;bottom:0;left:0;transform:translate(-100%);box-shadow:4px 0 36px #93aad21a}.sidebar .sidebar-header{padding-top:calc(18px + env(safe-area-inset-top,0px))}.sidebar.open{transform:translate(0)}.sidebar-overlay{z-index:299;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#00000040;display:block;position:fixed;inset:0}.chat-topbar{padding:10px 14px;padding-top:calc(10px + env(safe-area-inset-top,0px));border-bottom:1px solid var(--border);-webkit-backdrop-filter:blur(14px);background:#13171ed9;flex-shrink:0;align-items:center;gap:10px;display:flex}.chat-topbar-title{color:var(--text-dim);white-space:nowrap;text-overflow:ellipsis;text-align:center;flex:1;font-size:.8rem;font-weight:500;overflow:hidden}.chat-topbar-btn{width:32px;height:32px;color:var(--text-muted);cursor:pointer;transition:background var(--t), color var(--t);background:0 0;border:none;border-radius:9px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.chat-topbar-btn svg{width:17px;height:17px}.chat-topbar-btn:hover{background:var(--bg3);color:var(--text-dim)}.main{flex:1;min-height:0;padding-bottom:0;overflow:hidden}.nav-bottom{-webkit-backdrop-filter:blur(22px);border-top:1px solid var(--border);z-index:100;padding-bottom:env(safe-area-inset-bottom,0px);background:#0f131af0;flex-shrink:0;align-items:stretch;display:flex}.nav-bottom-btn{color:var(--text-muted);cursor:pointer;font-family:var(--font);letter-spacing:.04em;transition:color var(--t), background var(--t);background:0 0;border:none;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:3px;padding:10px 4px;font-size:.58rem;font-weight:500;display:flex;position:relative}.nav-bottom-btn svg{width:20px;height:20px}.nav-bottom-btn.active{color:var(--accent)}.nav-bottom-btn.active:before{content:"";background:linear-gradient(90deg, transparent, var(--accent), transparent);border-radius:0 0 2px 2px;width:26px;height:2px;position:absolute;top:0;left:50%;transform:translate(-50%)}.messages{gap:18px;padding:16px 0 4px}.msg{padding:0 14px}.msg-user .bubble{max-width:90%}.msg-img{max-width:min(86vw,340px);max-height:300px}.message-error-actions{flex-direction:column;align-items:flex-start;gap:6px}.input-bar{padding:8px 12px calc(12px + env(safe-area-inset-bottom,0px))}.input-wrap{max-width:100%}.input-row{border-radius:24px}.input-bottom-row{align-items:center;gap:6px}.attach-btn,.dictation-btn,.live-btn{border-radius:12px;width:42px;height:42px}.attach-btn svg,.dictation-btn svg,.live-btn svg{width:20px;height:20px}.diamond-btn{width:44px;height:44px}.diamond-btn svg{width:20px;height:20px}.chat-topbar-btn{width:40px;height:40px}.hero{padding-bottom:64px}.view{padding:22px 18px 18px}.settings-view{max-width:100%}.settings-form-row{flex-direction:column}.settings-form-row .form-input{min-width:unset}.settings-row{flex-direction:column;align-items:flex-start}.settings-row-actions{width:100%}}.system-title-row{justify-content:flex-end;align-items:center;margin-bottom:4px;display:flex}.icon-btn{border:1px solid var(--border);background:var(--bg2);width:28px;height:28px;color:var(--text-muted);cursor:pointer;place-items:center;display:grid}.icon-btn:hover{color:var(--text);border-color:var(--border-bright)}.icon-btn:disabled{opacity:.45;cursor:default}.spin{animation:.8s linear infinite system-spin}@keyframes system-spin{to{transform:rotate(360deg)}}.resource-line{color:var(--text);flex-wrap:wrap;gap:8px 20px;margin-top:8px;font-size:13px;display:flex}.resource-meter{background:var(--bg3);height:5px;margin-top:12px;overflow:hidden}.resource-meter span{background:var(--accent);height:100%;transition:width .25s;display:block}.capability-section{margin-top:18px}.capability-grid{grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:8px;margin-top:9px;display:grid}.capability-card{border:1px solid var(--border);background:var(--bg2);min-width:0;padding:12px}.capability-name{color:var(--text);font-size:13px;font-weight:600}.capability-model{color:var(--text-muted);overflow-wrap:anywhere;margin-top:4px;font-size:11px}.capability-meta{color:var(--text-muted);justify-content:space-between;align-items:center;gap:8px;margin-top:10px;font-size:11px;display:flex}.artifact-file{border:1px solid var(--border2);background:var(--bg2);border-radius:6px;padding:22px}.artifact-file p{color:var(--text-dim);white-space:pre-wrap;margin-top:10px}.hero-subtitle{z-index:1;color:var(--text-muted);letter-spacing:.015em;text-align:center;animation:heroGreetIn .7s var(--smooth) .68s both;margin-top:5px;font-size:.78rem;position:relative}.starter-grid{z-index:1;width:min(680px,100% - 32px);animation:heroGreetIn .7s var(--smooth) .78s both;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-top:28px;display:grid;position:relative}.starter-card{border:1px solid var(--border);min-width:0;color:var(--text-dim);text-align:left;font-family:var(--font);cursor:pointer;transition:transform var(--t2), border-color var(--t2), background var(--t2);background:linear-gradient(145deg,#232935c7,#1418208c);border-radius:14px;flex-direction:column;align-items:flex-start;gap:5px;padding:13px 14px;display:flex}.starter-card:hover{border-color:var(--accent-mid);background:var(--bg3);transform:translateY(-2px)}.starter-card span{color:var(--text);font-size:.76rem;font-weight:600}.starter-card small{color:var(--text-muted);font-size:.64rem;line-height:1.35}.artifact-heading{flex-direction:column;gap:2px;min-width:0;display:flex}.artifact-kicker{color:var(--accent);letter-spacing:.12em;text-transform:uppercase;font-size:.56rem;font-weight:700}.artifact-actions{justify-content:flex-end;align-items:center;gap:7px;margin-left:14px;display:flex}.artifact-action{border:1px solid var(--border2);background:var(--bg2);color:var(--text-dim);font-family:var(--font);cursor:pointer;border-radius:9px;padding:7px 10px;font-size:.68rem;text-decoration:none}.artifact-action:hover{border-color:var(--accent-mid);color:var(--text)}.artifact-action.primary{background:var(--accent-vv);border-color:var(--accent-mid);color:#fff}.artifact-chip-version{color:var(--accent-h);margin-left:4px;font-size:.58rem;font-weight:700}.artifact-image-stage{background:#05080c75;border-radius:12px;place-items:center;min-height:100%;display:grid}.artifact-image{-o-object-fit:contain;object-fit:contain;width:auto;max-width:100%;height:auto;max-height:calc(80vh - 110px)}.artifact-file{flex-direction:column;justify-content:center;align-items:flex-start;min-height:100%;display:flex}.artifact-file-type{border:1px solid var(--accent-mid);min-width:54px;height:54px;color:var(--accent-h);letter-spacing:.08em;border-radius:12px;place-items:center;margin-bottom:18px;padding:0 10px;font-size:.68rem;font-weight:700;display:inline-grid}.artifact-quality{border:1px solid var(--border2);width:min(420px,100%);color:var(--text-dim);border-radius:9px;justify-content:space-between;gap:12px;margin-top:18px;padding:10px 12px;font-size:.72rem;display:flex}.artifact-quality.ok{border-color:#5cb89147}.artifact-quality.warn{border-color:#e0a8544d}.attachment-preview.ready{cursor:zoom-in}.attachment-stack{scrollbar-width:thin;scroll-snap-type:x proximity;gap:10px;max-width:100%;padding:8px 8px 3px 2px;display:flex;overflow:auto visible}.attachment-stack .attachment-preview{scroll-snap-align:start;flex:none;margin-bottom:5px}.msg-img-grid{grid-template-columns:repeat(2,minmax(0,220px));justify-content:end;gap:6px;display:grid}.msg-img-grid .msg-img{-o-object-fit:cover;object-fit:cover;width:100%;height:min(190px,34vw)}.msg-attachment-list{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}.msg-attachment-list .msg-attachment-chip{cursor:pointer;font-family:var(--font)}.attachment-progress-label{color:var(--accent-h);font-variant-numeric:tabular-nums;font-size:.68rem}.attachment-progress-track{background:var(--bg4);border-radius:999px;height:2px;position:absolute;bottom:-2px;left:8px;right:8px;overflow:hidden}.attachment-progress-track span{border-radius:inherit;background:linear-gradient(90deg, var(--accent-vv), var(--accent-h));height:100%;transition:width .18s;display:block}.composer-notice{width:min(var(--max-content), 100%);border:1px solid var(--border2);color:var(--text-dim);border-radius:10px;justify-content:space-between;align-items:center;gap:12px;padding:8px 11px;font-size:.72rem;display:flex}.composer-notice.error{color:#eaa0ae;background:#78192d17;border-color:#dc506947}.composer-notice button{color:inherit;cursor:pointer;background:0 0;border:0;font-size:1rem;line-height:1}.document-preview{min-height:100%}.document-preview-meta{z-index:2;border-bottom:1px solid var(--border);background:color-mix(in srgb, var(--bg2) 92%, transparent);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);color:var(--text-muted);white-space:nowrap;align-items:center;gap:12px;margin:-18px -18px 18px;padding:11px 18px;font-size:.68rem;display:flex;position:sticky;top:-18px;overflow-x:auto}.document-preview-meta strong{color:var(--text-dim)}.document-preview-warning{color:#e5b36b}.document-preview-pages{flex-direction:column;align-items:center;gap:22px;display:flex}.document-preview-page{width:min(100%,820px);margin:0}.document-preview-page figcaption{color:var(--text-muted);text-align:center;margin:0 0 7px;font-size:.64rem}.document-preview-page img{border:1px solid var(--border2);background:#fff;border-radius:5px;width:100%;height:auto;display:block;box-shadow:0 18px 48px #00000042}.document-preview-skeleton,.document-preview-error{aspect-ratio:1/1.414;border:1px solid var(--border);background:linear-gradient(105deg, var(--bg3) 30%, var(--bg4) 45%, var(--bg3) 60%);background-size:220% 100%;border-radius:5px;width:100%;animation:1.5s ease-in-out infinite previewShimmer}.document-preview-error{color:var(--text-muted);place-items:center;font-size:.72rem;animation:none;display:grid}.document-preview-loading,.document-preview-empty{min-height:45vh;color:var(--text-muted);place-items:center;font-size:.76rem;display:grid}.document-preview-loading{grid-template-columns:auto auto;justify-content:center;gap:10px}.document-preview-loading span{border:2px solid var(--border2);border-top-color:var(--accent-h);border-radius:50%;width:14px;height:14px;animation:.8s linear infinite spin}@keyframes previewShimmer{to{background-position-x:-220%}}@media (width<=640px){.hero{justify-content:flex-start;padding:10vh 12px 20px;overflow-y:auto}.hero canvas,.hero>svg{max-width:104px;max-height:104px}.hero-greeting{margin-top:8px;font-size:clamp(1.5rem,7vw,1.9rem)}.hero-subtitle{width:min(310px,90%);font-size:.7rem;line-height:1.45}.starter-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;width:100%;margin-top:20px}.starter-card{min-height:64px;padding:10px 11px}.starter-card span{font-size:.69rem}.starter-card small{font-size:.58rem}.input-hint{text-align:center;padding:0 8px;font-size:.57rem;line-height:1.35}.artifact-overlay{align-items:stretch;padding:0}.artifact-panel{border-radius:0;width:100%;height:100dvh}.artifact-head{padding:calc(12px + env(safe-area-inset-top,0px)) 12px 12px}.artifact-actions{gap:5px}.artifact-action{padding:7px 8px;font-size:.61rem}.artifact-title{white-space:nowrap;text-overflow:ellipsis;max-width:34vw;overflow:hidden}.artifact-body{padding:12px}.document-preview-meta{margin:-12px -12px 14px;padding:10px 12px;top:-12px}.document-preview-pages{gap:14px}.msg-img-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.msg-img-grid .msg-img{height:31vw}}@media (prefers-reduced-motion:reduce){.hero-subtitle,.starter-grid{animation:none}.starter-card{transition:none}}
