:root{--bg:#eef2f7;--surface:#ffffff;--surface-2:#f5f8fc;--elevated:#ffffff;--sunken:#e4ebf3;--border:rgba(30,70,120,0.14);--border-strong:rgba(30,70,120,0.26);--text:#15222f;--text-dim:#4a5b6e;--text-faint:#8494a4;--accent:#1878d4;--accent-bright:#2b7dff;--accent-dim:rgba(24,120,212,0.10);--accent-glow:rgba(43,125,255,0.30);--secondary:#2b7dff;--online:#4ec98a;--online-glow:rgba(78,201,138,0.4);--offline:#8494a4;--warn:#c9820a;--danger:#e0454a;--r-sm:2px;--r-md:2px;--r-lg:2px;--r-xl:2px;--r-full:999px;--shadow-sm:0 1px 2px rgba(30,70,120,0.06);--shadow-md:0 12px 32px -12px rgba(30,70,120,0.2);--shadow-glow:0 0 0 1px rgba(43,125,255,0.1),0 0 30px rgba(43,125,255,0.08);--mono:var(--font-mono-jb,"JetBrains Mono"),ui-monospace,"SF Mono",Menlo,monospace;--display:var(--font-display,"Barlow Condensed"),var(--font-sans,system-ui),sans-serif;--chat:var(--font-chat,"Nunito"),var(--font-sans,system-ui),sans-serif;--content-max:1080px;--ease:cubic-bezier(0.4,0,0.2,1)}:root[data-theme=night]{color-scheme:dark;--bg:#0c1322;--surface:#141d30;--surface-2:#18223a;--elevated:#1a2540;--sunken:#0a101c;--border:rgba(140,180,235,0.14);--border-strong:rgba(140,180,235,0.26);--text:#e7eef9;--text-dim:#9fb0c6;--text-faint:#64748c;--accent:#3b8ded;--accent-bright:#5a9bff;--accent-dim:rgba(59,141,237,0.14);--accent-glow:rgba(90,155,255,0.35);--secondary:#5a9bff;--online:#55d695;--online-glow:rgba(85,214,149,0.4);--offline:#64748c;--warn:#e09a1f;--danger:#ef5a5f;--shadow-sm:0 1px 2px rgba(0,0,0,0.4);--shadow-md:0 12px 32px -12px rgba(0,0,0,0.6);--shadow-glow:0 0 0 1px rgba(90,155,255,0.12),0 0 30px rgba(90,155,255,0.1)}:root[data-theme=night] .tech-grid:before{background-image:radial-gradient(circle at 1px 1px,rgba(120,170,240,.1) 1px,transparent 0)}.nightsky{display:none;position:fixed;inset:0;z-index:0;pointer-events:none}:root[data-theme=night] .nightsky{display:block}.nightsky i{position:absolute;inset:-60px;background-repeat:repeat}.nightsky i:first-child{background-image:radial-gradient(6px 6px at 22px 34px,rgba(170,205,255,.5) 0,transparent 70%),radial-gradient(1.6px 1.6px at 22px 34px,#fff 60%,transparent 100%),radial-gradient(6px 6px at 143px 92px,rgba(170,205,255,.45) 0,transparent 70%),radial-gradient(1.4px 1.4px at 143px 92px,#fff 60%,transparent 100%),radial-gradient(7px 7px at 261px 178px,rgba(200,220,255,.5) 0,transparent 70%),radial-gradient(1.7px 1.7px at 261px 178px,#fff 60%,transparent 100%);background-size:320px 240px;animation:twinkle 4.2s ease-in-out infinite}.nightsky i:nth-child(2){background-image:radial-gradient(4px 4px at 68px 21px,rgba(150,190,250,.35) 0,transparent 70%),radial-gradient(1.2px 1.2px at 68px 21px,rgba(255,255,255,.95) 60%,transparent 100%),radial-gradient(4px 4px at 189px 141px,rgba(150,190,250,.35) 0,transparent 70%),radial-gradient(1.2px 1.2px at 189px 141px,rgba(255,255,255,.9) 60%,transparent 100%),radial-gradient(1.1px 1.1px at 312px 66px,rgba(255,255,255,.85) 60%,transparent 100%);background-size:380px 300px;animation:twinkle 5.6s ease-in-out infinite;animation-delay:-2.1s}.nightsky i:nth-child(3){background-image:radial-gradient(1px 1px at 44px 108px,rgba(220,232,255,.8) 55%,transparent 100%),radial-gradient(.9px .9px at 231px 47px,rgba(220,232,255,.7) 55%,transparent 100%),radial-gradient(1px 1px at 152px 219px,rgba(220,232,255,.75) 55%,transparent 100%),radial-gradient(.9px .9px at 335px 158px,rgba(220,232,255,.65) 55%,transparent 100%);background-size:420px 340px;animation:twinkle 7.4s ease-in-out infinite;animation-delay:-3.7s}@keyframes twinkle{0%,to{opacity:1}50%{opacity:.45}}@media (prefers-reduced-motion:reduce){.nightsky i{animation:none}}body>div{position:relative;z-index:1}:root[data-theme=night] .composer{background:var(--elevated);box-shadow:0 8px 24px rgba(0,0,0,.5)}:root[data-theme=night] .chat-header{background:rgba(18,26,44,.74)}:root[data-theme=night] .bottomnav{background:rgba(10,16,28,.96)}:root[data-theme=night] .toast{background:rgba(22,32,54,.95)}:root[data-theme=night] .app-frame{background:transparent}*{box-sizing:border-box}body,html{margin:0;padding:0}body{background:var(--bg);color:var(--text);font-family:var(--font-sans,system-ui,-apple-system,"Segoe UI",sans-serif);font-size:15.5px;line-height:1.55;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;min-height:100dvh}h1,h2,h3,h4{margin:0;font-family:var(--display);font-weight:600;letter-spacing:-.005em;line-height:1.12}a{color:inherit;text-decoration:none}button{font-family:inherit}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:var(--r-sm)}::selection{background:rgba(43,125,255,.22)}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:5px;border:2px solid var(--bg)}::-webkit-scrollbar-thumb:hover{background:rgba(30,70,120,.4)}::-webkit-scrollbar-track{background:var(--bg)}.container{width:100%;max-width:var(--content-max);margin:0 auto;padding:0 20px}.stack{flex-direction:column}.row,.stack{display:flex}.row{align-items:center}.between{justify-content:space-between}.wrap{flex-wrap:wrap}.grow{flex:1 1}.mono{font-family:var(--mono);font-feature-settings:"tnum" 1}.dim{color:var(--text-dim)}.faint{color:var(--text-faint)}.center{text-align:center}.card{position:relative;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--shadow-sm)}.card-pad{padding:20px}.card-hover{transition:transform .16s var(--ease),border-color .16s var(--ease),box-shadow .16s var(--ease)}.card-hover:hover{transform:translateY(-2px);border-color:var(--border-strong);box-shadow:var(--shadow-md)}.btn{--btn-bg:var(--surface-2);display:inline-flex;align-items:center;justify-content:center;gap:8px;height:42px;padding:0 18px;border:1px solid var(--border-strong);border-radius:var(--r-md);background:var(--btn-bg);color:var(--text);font-size:14.5px;font-weight:560;letter-spacing:-.01em;cursor:pointer;white-space:nowrap;transition:transform .12s var(--ease),background .16s var(--ease),border-color .16s var(--ease),box-shadow .16s var(--ease),opacity .16s var(--ease)}.btn:hover{border-color:var(--accent);background:var(--surface)}.btn:active{transform:scale(.98)}.btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.btn-primary{border:none;color:#ffffff;box-shadow:0 0 24px rgba(43,125,255,.28);font-family:var(--display);font-weight:600;letter-spacing:.05em;text-transform:uppercase}.btn-primary,.btn-primary:hover{background:linear-gradient(180deg,var(--accent),var(--accent-bright))}.btn-primary:hover{filter:brightness(1.08)}.btn-ghost{background:transparent;border-color:transparent;color:var(--text-dim)}.btn-ghost:hover{background:var(--surface-2);border-color:transparent;color:var(--text)}.btn-danger{color:var(--danger);border-color:rgba(224,69,74,.3);background:rgba(224,69,74,.06)}.btn-danger:hover{background:rgba(224,69,74,.12);border-color:rgba(224,69,74,.45)}.btn-sm{height:34px;padding:0 12px;font-size:13.5px;border-radius:var(--r-sm)}.btn-block{width:100%}.field{display:flex;flex-direction:column;gap:7px}.input{height:44px;padding:0 14px;background:var(--surface-2);border:1px solid var(--border-strong);border-radius:var(--r-md);color:var(--text);font-size:15px;width:100%;transition:border-color .16s var(--ease),box-shadow .16s var(--ease),background .16s var(--ease)}.input::placeholder{color:var(--text-faint)}.input:focus{outline:none;border-color:var(--accent);background:var(--surface);box-shadow:0 0 0 3px var(--accent-dim)}.code-input{width:100%;height:62px;text-align:center;font-family:var(--mono);font-size:26px;font-weight:620;letter-spacing:.32em;text-indent:.32em;text-transform:uppercase;background:var(--surface-2);border:1px solid var(--border-strong);border-radius:var(--r-md);color:var(--text);transition:border-color .16s var(--ease),box-shadow .16s var(--ease)}.code-input::placeholder{color:var(--text-faint);letter-spacing:.2em}.code-input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-dim)}.pill{display:inline-flex;align-items:center;gap:7px;height:26px;padding:0 11px 0 9px;border-radius:var(--r-full);font-size:12.5px;font-weight:580;border:1px solid var(--border);background:var(--surface-2);color:var(--text-dim)}.dot{width:8px;height:8px;border-radius:var(--r-full);background:var(--offline);flex:none}.dot-online{background:var(--online);box-shadow:0 0 0 0 var(--online-glow);animation:pulse 2s infinite}.pill-online{color:var(--online);border-color:rgba(78,201,138,.3);background:rgba(78,201,138,.08)}@keyframes pulse{0%{box-shadow:0 0 0 0 var(--online-glow)}70%{box-shadow:0 0 0 6px rgba(78,201,138,0)}to{box-shadow:0 0 0 0 rgba(78,201,138,0)}}.meter-track{height:8px;background:var(--sunken);overflow:hidden}.meter-fill,.meter-track{border-radius:var(--r-full)}.meter-fill{height:100%;background:linear-gradient(90deg,var(--accent),var(--accent-bright));transition:width .5s var(--ease)}.meter-fill.warn{background:var(--warn)}.meter-fill.danger{background:var(--danger)}.stat-value{font-family:var(--mono);font-size:22px;font-weight:620;letter-spacing:-.01em}.stat-label{font-size:12.5px;font-weight:540}.stat-label,.tag{color:var(--text-dim)}.tag{display:inline-flex;align-items:center;gap:6px;padding:3px 9px;border-radius:var(--r-sm);font-size:12px;font-weight:560;background:var(--surface-2);border:1px solid var(--border)}.divider{height:1px;background:var(--border);border:none;margin:0}.spinner{width:18px;height:18px;border-radius:50%;border:2px solid var(--border-strong);border-top-color:var(--accent);animation:spin .7s linear infinite}.skeleton{background:linear-gradient(90deg,var(--surface-2) 25%,var(--elevated) 50%,var(--surface-2) 75%);background-size:200% 100%;animation:shimmer 1.4s infinite;border-radius:var(--r-sm)}@keyframes shimmer{to{background-position:-200% 0}}.fade-in{animation:fadeIn .4s var(--ease) both}@keyframes fadeIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}.grid-devices{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));grid-gap:16px;gap:16px}.workspace{display:grid;grid-template-columns:300px minmax(0,1fr);grid-gap:16px;gap:16px;height:calc(100dvh - 240px);min-height:460px}.side{display:flex;flex-direction:column;min-height:0;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--shadow-sm);overflow:hidden}.side-new-chat{margin:12px 12px 10px;height:40px;display:flex;align-items:center;justify-content:center;gap:8px;border:none;border-radius:var(--r-md);background:linear-gradient(180deg,var(--accent),var(--accent-bright));color:#ffffff;font-size:14px;font-weight:640;cursor:pointer;box-shadow:0 6px 20px -8px var(--accent-glow);transition:filter .15s var(--ease),transform .12s var(--ease)}.side-new-chat:hover{filter:brightness(1.06)}.side-new-chat:active{transform:scale(.99)}.side-tabs{display:flex;gap:4px;padding:0 12px 10px;border-bottom:1px solid var(--border)}.side-tab{flex:1 1;height:30px;display:inline-flex;align-items:center;justify-content:center;gap:6px;border:none;border-radius:var(--r-sm);background:transparent;color:var(--text-dim);font-size:12.5px;font-weight:560;cursor:pointer;transition:background .15s var(--ease),color .15s var(--ease)}.side-tab.on,.side-tab:hover{color:var(--text)}.side-tab.on{background:var(--surface-2);font-weight:640}.side-tab-dot{width:6px;height:6px;border-radius:50%}.side-tab-dot-live{background:var(--online);box-shadow:0 0 5px var(--online-glow)}.side-tab-dot-busy{background:var(--accent);animation:blink 1.4s ease-in-out infinite}.side-body{flex:1 1;min-height:0;overflow-y:auto;scrollbar-width:thin;padding:10px 12px}.side-empty{color:var(--text-faint);font-size:12.5px;line-height:1.5;padding:10px 4px;margin:0}.side-row{display:flex;gap:10px;align-items:flex-start;padding:10px;border-radius:var(--r-md);border:1px solid var(--border);background:var(--surface-2)}.side-row-del{border:none;background:none;color:var(--text-faint);font-size:12px;cursor:pointer;padding:2px 5px;border-radius:6px}.side-row-del:hover{color:var(--danger);background:rgba(224,69,74,.08)}.side-add{width:100%;height:36px;margin-top:2px;border:1px dashed var(--border-strong);border-radius:var(--r-md);background:transparent;color:var(--text-dim);font-size:13px;font-weight:560;cursor:pointer;transition:color .15s var(--ease),border-color .15s var(--ease)}.side-add:hover{color:var(--accent);border-color:rgba(43,125,255,.5)}.tech-grid{position:relative;overflow:hidden}.tech-grid:before{content:"";position:absolute;inset:0;background-image:radial-gradient(circle at 1px 1px,rgba(24,120,212,.07) 1px,transparent 0);background-size:18px 18px;pointer-events:none;opacity:.7}.tech-grid>*{position:relative}.vitals{background:linear-gradient(180deg,rgba(43,125,255,.05),transparent 55%),var(--surface);border:1px solid var(--border-strong);border-radius:var(--r-lg);box-shadow:var(--shadow-sm)}.gauge-value{position:absolute;text-align:center}.readout{display:flex;flex-direction:column;gap:2px}.readout-value{font-family:var(--mono);font-size:15px;font-weight:620;font-feature-settings:"tnum" 1}.readout-label{font-size:10.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--text-faint);font-weight:600}.chip{flex:none;height:34px;padding:0 13px;display:inline-flex;align-items:center;gap:7px;border-radius:var(--r-full);font-size:13px;font-weight:540;white-space:nowrap;max-width:220px;overflow:hidden;text-overflow:ellipsis;background:var(--surface-2);border:1px solid var(--border);color:var(--text-dim);cursor:pointer;transition:background .15s var(--ease),border-color .15s var(--ease),color .15s var(--ease)}.chip:hover{border-color:var(--border-strong);color:var(--text)}.device-view{width:100%}.device-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;flex-wrap:wrap}.telemetry-strip{display:flex;align-items:center;gap:22px;flex-wrap:wrap;padding:12px 20px;background:linear-gradient(180deg,rgba(43,125,255,.04),transparent 70%),var(--surface);border:1px solid var(--border);border-radius:var(--r-lg)}.mini-gauge{position:relative;display:grid;place-items:center;width:48px;height:62px}.mini-gauge svg{grid-area:1/1}.mini-gauge-center{grid-area:1/1;width:48px;height:48px;display:grid;place-items:center;pointer-events:none}.mini-gauge-value{font-family:var(--mono);font-size:13px;font-weight:640;color:var(--text);font-feature-settings:"tnum" 1}.mini-gauge-label{grid-area:2/1;margin-top:2px;font-size:9.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--text-faint);font-weight:600}.telemetry-facts{display:flex;align-items:center;gap:20px;padding-left:20px;border-left:1px solid var(--border);align-self:stretch}.tstat{display:flex;flex-direction:column;gap:2px}.tstat-label{font-size:9.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--text-faint);font-weight:600}.tstat-value{font-family:var(--mono);font-size:14px;font-weight:620;color:var(--text);font-feature-settings:"tnum" 1}.tstat-warn{color:var(--danger)}.persona-pips{display:inline-flex;align-items:center;gap:4px}.persona-pip-label{font-size:10px;letter-spacing:.04em;text-transform:uppercase;color:var(--text-faint);font-weight:600;margin-right:3px}.persona-pip{width:6px;height:6px;border-radius:50%;background:var(--border-strong)}.persona-pip.on{background:var(--accent);box-shadow:0 0 6px -1px var(--accent-glow)}.chat-main{display:flex;flex-direction:column;min-width:0;min-height:0;gap:8px}.chat-back{align-self:flex-start;display:inline-flex;align-items:center;gap:6px;height:32px;padding:0 12px;font-size:13px;border-radius:var(--r-md);border:1px solid var(--border);background:var(--surface-2);color:var(--text-dim);cursor:pointer}.chat-back:hover{color:var(--text);border-color:var(--border-strong)}.chat-item{position:relative;display:flex;align-items:stretch;border-radius:var(--r-md);border:1px solid transparent;transition:background .14s var(--ease),border-color .14s var(--ease)}.chat-item:hover{background:var(--surface-2)}.chat-item-active{background:var(--accent-dim);border-color:rgba(43,125,255,.35)}.chat-item-main{flex:1 1;min-width:0;display:flex;flex-direction:column;gap:2px;padding:8px 10px;text-align:left;background:none;border:none;cursor:pointer;color:var(--text-dim)}.chat-item-active .chat-item-main{color:var(--accent)}.chat-item-title{font-size:13px;font-weight:540;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chat-item-time{font-size:10.5px;color:var(--text-faint)}.chat-item-del{flex:none;width:28px;border:none;background:none;color:var(--text-faint);cursor:pointer;opacity:0;font-size:12px;border-radius:var(--r-sm);transition:opacity .14s var(--ease),color .14s var(--ease)}.chat-item:focus-within .chat-item-del,.chat-item:hover .chat-item-del{opacity:1}.chat-item-del:hover{color:var(--danger)}@media (hover:none){.chat-item-del{opacity:1}}.chat-item-confirm{flex:1 1;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:7px 10px}.chat-confirm-yes{font-weight:600;border-radius:var(--r-sm);border:1px solid rgba(224,69,74,.45);background:rgba(224,69,74,.1);color:var(--danger)}.chat-confirm-no,.chat-confirm-yes{height:24px;padding:0 9px;font-size:11.5px;cursor:pointer}.chat-confirm-no{border-radius:var(--r-sm);border:1px solid var(--border);background:none;color:var(--text-dim)}.thinking{display:inline-flex;align-items:baseline;color:var(--text-dim);font-size:14px}.thinking-dots span{animation:blink 1.4s infinite both}.thinking-dots span:nth-child(2){animation-delay:.2s}.thinking-dots span:nth-child(3){animation-delay:.4s}@keyframes blink{0%,80%,to{opacity:.2}40%{opacity:1}}.activity-live-dot{flex:none;width:6px;height:6px;border-radius:50%;background:var(--accent);box-shadow:0 0 5px var(--accent-glow)}.chat-panel{display:flex;flex-direction:column;min-height:0;flex:1 1;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--shadow-sm)}.bubble{max-width:82%;padding:12px 15px;border-radius:20px 20px 20px 6px;font-family:var(--chat);font-size:15px;line-height:1.6;word-break:break-word;color:var(--text);min-width:0}.bubble-user{white-space:pre-wrap;background:var(--accent);border:1px solid var(--accent);color:#ffffff;border-radius:20px 20px 6px 20px}.bubble-assistant{background:var(--surface-2);border:1px solid var(--border)}.md>:first-child{margin-top:0}.md>:last-child{margin-bottom:0}.md p{margin:.55em 0}.md h1,.md h2,.md h3,.md h4{margin:.9em 0 .4em;font-weight:640;line-height:1.3}.md h1{font-size:16.5px}.md h2{font-size:15.5px}.md h3,.md h4{font-size:14.5px}.md ol,.md ul{margin:.5em 0;padding-left:22px}.md li{margin:.22em 0}.md li>p{margin:.2em 0}.md a{color:var(--accent);text-decoration:underline;text-underline-offset:2px}.md code{font-family:var(--font-mono,ui-monospace,SFMono-Regular,Menlo,monospace);font-size:12.8px;background:var(--sunken);padding:1.5px 5px}.md code,.md pre{border:1px solid var(--border);border-radius:4px}.md pre{margin:.6em 0;padding:11px 13px;background:var(--surface-2);overflow-x:auto;max-width:100%}.md pre code{background:none;border:none;padding:0;font-size:12.5px;line-height:1.55;white-space:pre}.md blockquote{margin:.6em 0;padding:2px 0 2px 12px;border-left:3px solid rgba(43,125,255,.45);color:var(--text-dim)}.md hr{border:none;border-top:1px solid var(--border);margin:.9em 0}.md table{display:block;width:max-content;max-width:100%;overflow-x:auto;border-collapse:collapse;margin:.6em 0;font-size:13.5px}.md td,.md th{border:1px solid var(--border);padding:5px 10px;text-align:left}.md code{word-break:normal}.md td code,.md th code{white-space:nowrap}.md th{background:rgba(30,70,120,.05);font-weight:620}.chat-composer{padding:12px 14px 14px;border-top:1px solid var(--border)}.tool-trace{display:flex;flex-direction:column;gap:4px;margin-bottom:8px;padding-bottom:8px;border-bottom:1px dashed var(--border)}.tool-row{display:flex;align-items:baseline;gap:7px;font-size:12.5px;color:var(--text-dim)}.tool-row-icon{font-size:12px;line-height:1}.tool-start .tool-row-icon{color:var(--secondary);display:inline-block;animation:spin 1.1s linear infinite}.tool-done .tool-row-icon{color:var(--accent)}.tool-error .tool-row-icon{color:var(--danger)}.tool-row-detail{color:var(--text-faint)}.tool-row.tool-active .tool-row-text{color:var(--text)}.tool-row.tool-active .tool-row-icon{animation:spin 1.4s linear infinite}.thinking-elapsed{margin-left:8px;font-family:var(--mono);font-size:10.5px;color:var(--text-faint)}.msg-meta{display:flex;align-items:center;gap:10px;margin-top:4px;min-height:18px;opacity:0;transition:opacity .12s ease}.msg-meta:focus-within,.msg-row:hover .msg-meta{opacity:1}@media (hover:none){.msg-meta{opacity:1}}.msg-action{border:1px solid var(--line);background:var(--surface);color:var(--text-dim);font-family:var(--mono);font-size:10px;letter-spacing:.04em;text-transform:uppercase;padding:2px 7px;cursor:pointer;line-height:1.6}.msg-action:hover{color:var(--text);border-color:var(--accent)}.msg-action:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.msg-time{font-family:var(--mono);font-size:10px;color:var(--text-faint)}@keyframes spin{to{transform:rotate(1turn)}}.app-root{position:relative;z-index:1}.live{display:inline-flex;align-items:center;gap:7px;height:26px;padding:0 11px 0 9px;border-radius:var(--r-full);font-family:var(--mono);font-size:10.5px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;border:1px solid rgba(78,201,138,.35);background:rgba(78,201,138,.07);color:#2f9963}.live-dot{width:7px;height:7px;border-radius:var(--r-full);background:var(--online);box-shadow:0 0 0 0 var(--online-glow);animation:pulse 1.8s infinite}.live-stale{border-color:rgba(201,130,10,.35);background:rgba(201,130,10,.07);color:var(--warn)}.live-stale .live-dot{background:var(--warn);animation:none}.edge-lit:after{content:"";position:absolute;left:14px;right:14px;top:0;height:1px;background:linear-gradient(90deg,transparent,var(--accent-glow),transparent);opacity:.7}.toast-wrap{position:fixed;z-index:60;left:50%;bottom:24px;transform:translateX(-50%);display:flex;flex-direction:column;gap:10px;width:min(420px,calc(100vw - 32px));pointer-events:none}.toast{pointer-events:auto;display:flex;align-items:flex-start;gap:11px;padding:12px 14px;border-radius:var(--r-md);background:rgba(255,255,255,.95);border:1px solid var(--border-strong);box-shadow:var(--shadow-md);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);font-size:13.5px;font-weight:540;animation:toastIn .26s var(--ease) both}.toast-exit{animation:toastOut .2s var(--ease) both}.toast-icon{flex:none;width:18px;height:18px;display:grid;place-items:center;margin-top:1px}.toast-success{border-color:rgba(78,201,138,.4)}.toast-success .toast-icon{color:var(--online)}.toast-error{border-color:rgba(224,69,74,.4)}.toast-error .toast-icon{color:var(--danger)}.toast-info .toast-icon{color:var(--accent)}@keyframes toastIn{0%{opacity:0;transform:translateY(10px) scale(.98)}to{opacity:1;transform:none}}@keyframes toastOut{to{opacity:0;transform:translateY(8px) scale(.98)}}.reveal>*{animation:fadeIn .44s var(--ease) both}.reveal>:first-child{animation-delay:.02s}.reveal>:nth-child(2){animation-delay:.07s}.reveal>:nth-child(3){animation-delay:.12s}.reveal>:nth-child(4){animation-delay:.17s}.reveal>:nth-child(5){animation-delay:.22s}.reveal>:nth-child(n+6){animation-delay:.26s}@media (max-width:940px){.workspace{grid-template-columns:260px minmax(0,1fr)}}@media (max-width:860px){.device-header{flex-direction:column;gap:12px}.telemetry-strip{width:100%;justify-content:space-between;gap:12px}.workspace{grid-template-columns:1fr;height:auto;min-height:0}.chat-mode-list .chat-main{display:none}.chat-mode-list .side{height:calc(100dvh - 330px);min-height:420px}.chat-mode-list .chat-item-del{opacity:1}.chat-mode-panel .side{display:none}.chat-mode-panel .chat-panel{flex:none;height:calc(100dvh - 250px);min-height:360px}}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}}@media (max-width:560px){.container{padding:0 14px}.card-pad{padding:16px}.grid-devices{grid-template-columns:1fr}.chat-panel{height:calc(100dvh - 210px);min-height:340px}.input{font-size:16px}.bubble{max-width:92%;font-size:14px}.workspace{gap:12px}h1{font-size:22px}.telemetry-strip{width:100%;justify-content:space-around;gap:14px;padding:12px}.telemetry-facts{padding-left:14px;gap:14px}}.corner{position:absolute;width:9px;height:9px;pointer-events:none;color:var(--border-strong);z-index:3}.corner:after,.corner:before{content:"";position:absolute;background:currentColor}.corner:before{left:0;top:50%;width:100%;height:1px;transform:translateY(-50%)}.corner:after{top:0;left:50%;height:100%;width:1px;transform:translateX(-50%)}.corner.tl{top:-1px;left:-1px}.corner.tr{top:-1px;right:-1px}.corner.bl{bottom:-1px;left:-1px}.corner.br{bottom:-1px;right:-1px}.mono-label{font-family:var(--mono);font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--text-faint);font-weight:500}.mono-label.accent{color:var(--accent)}.seg{font-family:var(--display);font-size:13.5px;letter-spacing:.03em;padding:7px 13px;border:1px solid var(--border-strong);background:transparent;color:var(--text-dim);cursor:pointer;transition:border-color .15s var(--ease),background .15s var(--ease),color .15s var(--ease)}.seg.on,.seg:hover{border-color:var(--accent)}.seg.on{background:rgba(43,125,255,.12);color:var(--accent)}.seg-group{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}.toggle{width:46px;height:26px;border-radius:13px;border:1px solid var(--border-strong);background:var(--sunken);position:relative;cursor:pointer;padding:0;transition:border-color .2s var(--ease),background .2s var(--ease);flex:none}.toggle .knob{position:absolute;top:2px;left:2px;width:20px;height:20px;border-radius:50%;background:var(--text-faint);transition:left .2s var(--ease),background .2s var(--ease),box-shadow .2s var(--ease)}.toggle.on{border-color:var(--accent);background:rgba(43,125,255,.2)}.toggle.on .knob{left:22px;background:var(--accent);box-shadow:0 0 10px rgba(43,125,255,.5)}.app-frame{height:100dvh;background:radial-gradient(120% 80% at 16% -6%,rgba(43,125,255,.06),transparent 58%),var(--bg)}.app-frame,.rail{display:flex;overflow:hidden;position:relative}.rail{flex:0 0 236px;width:236px;flex-direction:column;padding:18px 12px;border-right:1px solid var(--border);background:linear-gradient(180deg,var(--surface),var(--bg));transition:width .2s var(--ease),flex-basis .2s var(--ease);z-index:20}.rail.collapsed{flex-basis:74px;width:74px}.rail.collapsed .rlabel{display:none}.rlabel{white-space:nowrap}.rail-ico{flex:none;width:50px;display:flex;align-items:center;justify-content:center}.brandwrap{padding:2px 0 20px}.brandwrap,.navitem{display:flex;align-items:center;gap:0;overflow:hidden}.navitem{width:100%;padding:10px 0;border:1px solid transparent;background:transparent;color:var(--text-dim);border-radius:6px;font-family:var(--display);font-size:16px;letter-spacing:.02em;margin-bottom:4px;cursor:pointer;white-space:nowrap;transition:background .15s var(--ease),color .15s var(--ease),border-color .15s var(--ease)}.brandwrap .rlabel,.navitem .rlabel{padding-right:10px}.navitem:hover{background:rgba(43,125,255,.06);color:var(--text)}.navitem.on{border-color:var(--border-strong);background:linear-gradient(90deg,rgba(43,125,255,.14),rgba(43,125,255,.02));color:var(--accent)}.rail-content{flex:1 1;min-width:0;display:flex;flex-direction:column;overflow:hidden;position:relative}.bottomnav{display:none;position:fixed;left:0;right:0;bottom:0;height:calc(62px + env(safe-area-inset-bottom));padding-bottom:env(safe-area-inset-bottom);background:rgba(255,255,255,.96);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-top:1px solid var(--border-strong);z-index:30;align-items:stretch}.bottomnav button{flex:1 1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;border:none;background:transparent;color:var(--text-faint);cursor:pointer;font-family:var(--display);font-size:10.5px;letter-spacing:.04em}.bottomnav button.on{color:var(--accent);background:rgba(43,125,255,.06)}@media (max-width:1200px){.rail{flex-basis:74px;width:74px}.rail .rlabel{display:none}}@media (max-width:760px){.rail{display:none}.bottomnav{display:flex}.rail-content{padding-bottom:calc(62px + env(safe-area-inset-bottom))}}.grid-backdrop{position:absolute;inset:0;pointer-events:none;background-image:linear-gradient(var(--border) 1px,transparent 1px),linear-gradient(90deg,var(--border) 1px,transparent 1px);background-size:44px 44px;opacity:.5;mask:radial-gradient(70% 60% at 50% 40%,#000,transparent 80%);-webkit-mask:radial-gradient(70% 60% at 50% 40%,#000,transparent 80%);animation:gridpan 24s linear infinite}@keyframes gridpan{to{background-position:44px 44px}}@keyframes spin-slow{to{transform:rotate(1turn)}}@keyframes pulse-op{0%,to{opacity:1}50%{opacity:.3}}@keyframes caret-blink{0%,to{opacity:1}50%{opacity:0}}@keyframes rise{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.rise{animation:rise .4s var(--ease) both}.spin-slow{animation:spin-slow 44s linear infinite}.pulse-op{animation:pulse-op 1.6s ease-in-out infinite}.page-scroll{flex:1 1;min-height:0;overflow-y:auto;padding:28px 32px 40px}@media (max-width:760px){.page-scroll{padding:18px 16px 28px}}.label{font-family:var(--mono);font-size:10px;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:var(--text-faint)}.fleetgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(360px,1fr));grid-gap:18px;gap:18px}@media (max-width:1200px){.fleetgrid{grid-template-columns:repeat(2,1fr)}}@media (max-width:760px){.fleetgrid{grid-template-columns:1fr}}.chatgrid{flex:1 1;min-height:0;display:grid;grid-template-columns:266px minmax(0,1fr) 330px}.convside{border-right:1px solid var(--border);min-height:0;display:flex;flex-direction:column;background:var(--surface)}.telepanel{border-left:1px solid var(--border);min-height:0;overflow:auto;background:linear-gradient(180deg,var(--surface),var(--bg))}.chat-header{gap:10px;padding:12px 20px;border-bottom:1px solid var(--border);flex-wrap:wrap;background:rgba(255,255,255,.74);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);position:relative;z-index:10;min-height:63px}.chat-chip,.chat-header{display:flex;align-items:center}.chat-chip{gap:9px;height:38px;padding:0 12px;background:var(--surface-2);border:1px solid var(--border-strong)}.chip-cap{font-family:var(--mono);font-size:8.5px;letter-spacing:.14em;color:var(--text-faint);display:block}.chip-val{font-family:var(--display);font-size:14.5px;display:block}.chat-scroll{flex:1 1;overflow:auto;padding:26px 20px 12px}.chat-scroll h2{font-family:var(--chat);letter-spacing:-.005em}.prompt-chip{text-align:left;padding:12px 14px;background:var(--surface-2);border:1px solid var(--border);color:var(--text-dim);font-family:var(--chat);font-size:13.5px;max-width:250px;cursor:pointer;transition:border-color .15s var(--ease),color .15s var(--ease)}.prompt-chip:hover{border-color:var(--accent);color:var(--text)}.chat-composer-wrap{padding:14px 20px 20px}.composer{max-width:760px;margin:0 auto;position:relative;background:#fff;border:1px solid var(--border-strong);border-radius:24px;box-shadow:0 8px 24px rgba(30,70,120,.08)}.composer-input{width:100%;min-height:56px;max-height:150px;resize:none;background:transparent;border:none;outline:none;padding:17px 60px 17px 16px;font-size:15px;line-height:1.5;font-family:var(--chat);color:var(--text)}.composer-input::placeholder{color:var(--text-faint)}.composer-send{position:absolute;right:11px;bottom:11px;width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;border:none;background:linear-gradient(180deg,var(--accent),var(--accent-bright));color:#fff;box-shadow:0 0 16px rgba(43,125,255,.35);cursor:pointer;transition:filter .15s var(--ease)}.composer-send:hover{filter:brightness(1.1)}.composer-send:disabled{opacity:.5;cursor:not-allowed}.chatgrid .bubble{max-width:82%;padding:13px 16px;font-size:15px;line-height:1.6}.chatgrid .bubble-assistant{background:var(--surface-2);border:1px solid var(--border)}@media (max-width:1200px){.chatgrid{grid-template-columns:230px minmax(0,1fr)}.telepanel{display:none}}@media (max-width:760px){.chatgrid{grid-template-columns:1fr}.convside{border-right:none}}.tool-row-progress{display:inline-flex;align-items:center;gap:6px;margin-left:8px;vertical-align:middle}.tool-row-progress-track{display:inline-block;width:90px;height:4px;background:var(--line);border-radius:2px;overflow:hidden}.tool-row-progress-fill{display:block;height:100%;background:var(--accent);transition:width .4s ease}.tool-row-progress-pct{font-family:var(--mono);font-size:10px;color:var(--text-faint)}.artifact-placeholder{border:1px dashed var(--line);border-radius:4px;padding:14px 12px;font-size:12.5px;color:var(--text-faint)}