:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;color:#e9eef6;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;--bg:#0a0d12;--panel:#101720;--panel-2:#141c27;--panel-3:#1a2532;--border:#263241;--border-soft:#94a3b829;--muted:#8d9bad;--text:#e9eef6;--accent:#8fb4ff;--accent-strong:#456dba;--danger:#f87171;--success:#4ade80;--warning:#facc15;--shadow:0 18px 48px #00000047;background:#0a0d12;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html,body,#root{height:100%;min-height:0;overflow:hidden}body{background:radial-gradient(circle at top left, #456dba2e, transparent 30rem), linear-gradient(135deg, #0f172aeb, #0a0d12 45%), var(--bg);min-width:320px;height:100dvh;margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled,textarea:disabled,select:disabled{cursor:not-allowed;opacity:.58}button:focus-visible,select:focus-visible,input:focus-visible,textarea:focus-visible,.workspace-resizer:focus-visible{outline:2px solid var(--accent);outline-offset:2px}body.layout-resizing,body.layout-resizing *{-webkit-user-select:none;user-select:none}.app-shell{flex-direction:column;height:100dvh;min-height:0;display:flex;overflow:hidden}.app-topbar{border-bottom:1px solid var(--border);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);z-index:20;background:#0a0d12eb;flex:0 0 64px;justify-content:space-between;align-items:center;gap:1rem;padding:0 1.25rem;display:flex;position:sticky;top:0}.app-brand{align-items:center;gap:.85rem;min-width:0;display:flex}.app-brand-mark,.empty-state-mark,.message-avatar,.user-menu-trigger{color:#f8fafc;background:linear-gradient(135deg,#334155,#456dba);border-radius:14px;flex:none;place-items:center;font-weight:900;display:grid}.app-brand-mark{letter-spacing:.08em;width:38px;height:38px}.app-brand-title{letter-spacing:.22em;text-transform:uppercase;white-space:nowrap;font-size:1.15rem;font-weight:950}.user-menu{position:relative}.user-menu-trigger{border:1px solid var(--border-soft);width:40px;height:40px}.user-menu-panel{border:1px solid var(--border);width:min(340px,100vw - 2rem);box-shadow:var(--shadow);z-index:30;background:#101720fa;border-radius:18px;padding:.75rem;position:absolute;top:calc(100% + .65rem);right:0}.user-menu-section{border-bottom:1px solid var(--border-soft);padding:.65rem}.user-menu-section:last-child{border-bottom:0}.workspace{grid-template-columns:minmax(180px, var(--left-column-width,300px)) 8px minmax(0, 1fr);flex:auto;grid-template-rows:minmax(0,1fr);grid-template-areas:"left-column column-resizer right-column";min-width:0;min-height:0;display:grid;overflow:hidden}.workspace-column{min-width:0;min-height:0;display:grid;overflow:hidden}.workspace-column-left{grid-area:left-column;grid-template-rows:minmax(0, 1fr) 8px minmax(52px, var(--health-pane-height,190px));grid-template-areas:"history""left-row-resizer""health"}.workspace-column-right{grid-area:right-column;grid-template-rows:minmax(0, 1fr) 8px minmax(150px, var(--composer-pane-height,220px));grid-template-areas:"main""right-row-resizer""composer"}.workspace-resizer{z-index:6;touch-action:none;background:0 0;border:0;position:relative}.workspace-resizer:before{content:"";background:var(--border-soft);transition:background .16s,box-shadow .16s;position:absolute}.workspace-resizer:hover:before,.workspace-resizer:focus-visible:before{background:#8fb4ff8c;box-shadow:0 0 0 3px #8fb4ff14}.workspace-resizer-vertical{cursor:col-resize;grid-area:column-resizer}.workspace-resizer-vertical:before{width:1px;top:0;bottom:0;left:calc(50% - 1px)}.workspace-resizer-horizontal{cursor:row-resize;z-index:7}.workspace-resizer-horizontal-left{grid-area:left-row-resizer}.workspace-resizer-horizontal-right{grid-area:right-row-resizer}.workspace-resizer-horizontal:before{height:1px;top:calc(50% - 1px);left:0;right:0}.sidebar{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#090d13c7;flex-direction:column;grid-area:history;min-width:0;min-height:0;display:flex;overflow:hidden}.sidebar-actions{border-bottom:1px solid var(--border-soft);flex:none;padding:1rem}.sidebar-label,.field-label,.eyebrow{color:var(--muted);text-transform:uppercase;letter-spacing:.1em;margin-bottom:.55rem;font-size:.72rem;font-weight:800;display:block}select,input,textarea{border:1px solid var(--border);width:100%;color:var(--text);background:#0f172ad1;border-radius:14px;outline:none;padding:.75rem .85rem}.primary-button,.secondary-button,.inline-form button,.error-banner button{color:#f8fafc;border:1px solid #0000;border-radius:14px;padding:.72rem .9rem;font-weight:800}.primary-button{background:var(--accent-strong);justify-content:center;align-items:center;gap:.5rem;display:inline-flex}.secondary-button{background:var(--panel-3);border-color:var(--border)}.full-width{width:100%}.inline-form{grid-template-columns:1fr auto;gap:.5rem;margin-top:.75rem;display:grid}.inline-form button{background:var(--accent-strong)}.conversation-list{flex:auto;min-height:0;padding:.85rem;overflow-y:auto}.conversation-item{width:100%;color:var(--text);background:0 0;border:1px solid #0000;border-radius:14px;grid-template-columns:minmax(0,1fr) auto;align-items:flex-start;gap:.4rem;padding:.78rem;display:grid;position:relative}.conversation-item:hover,.conversation-item:focus-within,.conversation-item.selected{border-color:var(--border-soft);background:#141c27e6}.conversation-item.selected{box-shadow:inset 3px 0 0 var(--accent)}.conversation-select{min-width:0;color:inherit;text-align:left;background:0 0;border:0;gap:.25rem;padding:0;display:grid}.conversation-delete{width:30px;height:30px;color:var(--muted);opacity:0;background:0 0;border:1px solid #0000;border-radius:10px;place-items:center;transition:opacity .16s,color .16s,background .16s,border-color .16s;display:grid}.conversation-item:hover .conversation-delete,.conversation-item:focus-within .conversation-delete,.conversation-delete:focus-visible{opacity:1}.conversation-delete:hover,.conversation-delete:focus-visible{color:#fecaca;background:#f871711f;border-color:#f871714d}.conversation-delete svg{fill:currentColor;width:16px;height:16px}.conversation-title{white-space:nowrap;text-overflow:ellipsis;font-weight:800;overflow:hidden}.conversation-meta,.conversation-preview,.muted{color:var(--muted)}.conversation-meta,.conversation-preview{white-space:nowrap;text-overflow:ellipsis;font-size:.76rem;overflow:hidden}.padded{padding:1rem .25rem}.main-pane{background:#0a0d125c;grid-area:main;grid-template-rows:auto minmax(0,1fr);min-width:0;min-height:0;display:grid;overflow:hidden}.error-banner{color:#fecaca;background:#f871711f;border:1px solid #f8717161;border-radius:14px;justify-content:space-between;align-items:center;gap:1rem;margin:1rem 1.5rem 0;padding:.85rem 1rem;display:flex}.error-banner button{background:#f8717138;border-color:#f8717166}.thread{min-width:0;min-height:0;padding:1.25rem 2rem 2rem;overflow:hidden auto}.thread.empty-state{text-align:center;color:var(--muted);place-items:center;display:grid}.empty-state-card{max-width:420px;padding:2rem}.empty-state-mark{letter-spacing:.08em;width:54px;height:54px;margin:0 auto 1rem}.thread.empty-state h2,.empty-conversation h3,.thread-title h2{color:var(--text)}.thread-title{max-width:980px;margin:.25rem auto 1.25rem}.thread-title h2,.thread-title p{margin:0}.thread-title p{color:var(--muted);margin-top:.25rem}.empty-conversation{text-align:center;max-width:620px;color:var(--muted);border:1px dashed var(--border);background:#10172075;border-radius:22px;margin:3rem auto;padding:2rem}.message-row{grid-template-columns:42px minmax(0,920px);align-items:flex-start;gap:.85rem;width:min(100%,1000px);margin:1rem auto;display:grid}.message-row.user{grid-template-columns:minmax(0,760px) 42px;justify-content:end}.message-row.user .message-avatar{grid-area:1/2}.message-row.user .message-bubble{background:#456dba2e;border-color:#8fb4ff47;grid-column:1}.message-row.assistant .message-bubble,.message-row.system .message-bubble{background:#101720d6}.message-row.pending .message-bubble,.message-row.thinking .message-bubble{border-color:#8fb4ff57}.message-row.error .message-bubble{background:#f871711a;border-color:#f871716b}.message-avatar{width:42px;height:42px;font-size:.72rem}.message-bubble{border:1px solid var(--border-soft);border-radius:22px;min-width:0;max-width:100%;padding:1rem 1.1rem;overflow:hidden;box-shadow:0 12px 34px #0000002e}.message-meta{color:var(--muted);justify-content:space-between;gap:1rem;margin-bottom:.55rem;font-size:.78rem;display:flex}.message-content{overflow-wrap:anywhere;min-width:0;line-height:1.62}.plain-message-content{white-space:pre-wrap}.message-actions{opacity:.5;align-items:center;gap:.35rem;min-height:1.85rem;margin-top:.65rem;transition:opacity .16s;display:flex}.message-row.user .message-actions{justify-content:flex-end}.message-row:hover .message-actions,.message-row:focus-within .message-actions{opacity:1}.message-action-button{width:30px;height:30px;color:var(--muted);background:0 0;border:1px solid #0000;border-radius:10px;place-items:center;transition:color .16s,background .16s,border-color .16s,opacity .16s;display:grid}.message-action-button:hover,.message-action-button:focus-visible{color:var(--text);background:#8fb4ff1a;border-color:#8fb4ff3d}.message-action-button.copied{color:var(--success);background:#4ade801a;border-color:#4ade803d}.message-action-button.failed{color:#fecaca;background:#f871711f;border-color:#f8717147}.message-action-button.loading,.message-action-button.playing{color:var(--accent);background:#8fb4ff1a;border-color:#8fb4ff3d}.message-action-button.loading svg{animation:.9s linear infinite message-action-spin}@keyframes message-action-spin{to{transform:rotate(360deg)}}.message-action-button svg{fill:currentColor;width:16px;height:16px}.message-action-feedback{color:var(--muted);font-size:.75rem;font-weight:750;line-height:1}.message-row.user .message-action-feedback{order:-1}.message-action-feedback.error{color:#fecaca}.pending-message-content p{color:var(--muted);margin:0}.error-message-content{color:#fecaca}.markdown-content>:first-child{margin-top:0}.markdown-content>:last-child{margin-bottom:0}.markdown-content h1,.markdown-content h2,.markdown-content h3,.markdown-content h4{color:#f8fafc;margin:1.15rem 0 .55rem;line-height:1.25}.markdown-content h1{font-size:1.45rem}.markdown-content h2{font-size:1.28rem}.markdown-content h3{font-size:1.12rem}.markdown-content h4{font-size:1rem}.markdown-content p{margin:.55rem 0}.markdown-content ul,.markdown-content ol{margin:.55rem 0 .75rem;padding-left:1.45rem}.markdown-content li{margin:.28rem 0;padding-left:.15rem}.markdown-content li>ul,.markdown-content li>ol{margin:.25rem 0 .35rem}.markdown-content strong{color:#f8fafc;font-weight:850}.markdown-content em{color:#dbeafe}.markdown-content hr{background:var(--border-soft);border:0;height:1px;margin:1.15rem 0}.markdown-content blockquote{color:#cbd5e1;border-left:3px solid #8fb4ff73;margin:.75rem 0;padding:.15rem 0 .15rem .9rem}.markdown-content a{color:var(--accent);text-underline-offset:.18em;text-decoration:underline}.markdown-content code{border:1px solid var(--border-soft);color:#e2e8f0;background:#0f172ad1;border-radius:.38rem;padding:.12rem .32rem;font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace;font-size:.9em}.markdown-content pre{border:1px solid var(--border-soft);background:#070a0fe0;border-radius:14px;max-width:100%;margin:.8rem 0;padding:.85rem;overflow-x:auto}.markdown-content pre code{white-space:pre;background:0 0;border:0;border-radius:0;min-width:max-content;padding:0;display:block}.markdown-content table{border-collapse:collapse;width:max-content;max-width:100%;margin:.85rem 0;font-size:.92rem;display:block;overflow-x:auto}.markdown-content th,.markdown-content td{border:1px solid var(--border-soft);text-align:left;vertical-align:top;padding:.5rem .65rem}.markdown-content th{color:#f8fafc;background:#456dba24;font-weight:800}.markdown-content tr:nth-child(2n) td{background:#0f172a57}.typing-indicator{gap:.35rem;margin-bottom:.4rem;display:flex}.typing-indicator span{background:var(--accent);border-radius:999px;width:8px;height:8px;animation:1s ease-in-out infinite pulse}.typing-indicator span:nth-child(2){animation-delay:.15s}.typing-indicator span:nth-child(3){animation-delay:.3s}@keyframes pulse{0%,to{opacity:.35;transform:translateY(0)}50%{opacity:1;transform:translateY(-4px)}}.health-pane,.composer-pane{background:#090d13c7;min-width:0;min-height:0;overflow:hidden}.health-pane{grid-area:health}.composer-pane{background:#0a0d127a;grid-area:composer}.composer{background:#0a0d12f0;flex-direction:column;height:100%;min-height:0;padding:.85rem 1.5rem .9rem;display:flex;overflow:hidden}.composer-box{border:1px solid var(--border-soft);width:min(100%,1000px);min-height:0;box-shadow:var(--shadow);background:#101720d6;border-radius:24px;flex:auto;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:.8rem;margin:0 auto;padding:.5rem;display:grid}.composer textarea{resize:none;background:0 0;border:0;height:100%;min-height:86px;max-height:100%;padding:.85rem;line-height:1.5;overflow-y:auto}.composer textarea:focus-visible{outline:0}.composer-actions{gap:.55rem;padding:0 .25rem .25rem 0;display:flex}.icon-button{border:1px solid var(--border);width:44px;height:44px;color:var(--text);background:var(--panel-3);border-radius:14px;place-items:center;display:grid}.icon-button svg{fill:currentColor;width:22px;height:22px}.icon-button.recording{color:#fecaca;background:#f8717129;border-color:#f8717173}.send-button{background:var(--accent-strong);border-color:#8fb4ff4d}.composer-status{width:min(100%,1000px);min-height:1.25rem;color:var(--muted);flex:none;margin:.45rem auto 0;font-size:.8rem}.recording-dot:before{content:"";background:var(--danger);border-radius:999px;width:9px;height:9px;margin-right:.45rem;display:inline-block;box-shadow:0 0 0 4px #f871712e}.status-panel{flex-direction:column;gap:.65rem;height:100%;min-height:0;padding:.85rem;display:flex;overflow:hidden}.status-panel.collapsed{justify-content:center;padding-top:.45rem;padding-bottom:.45rem}.status-panel.collapsed .status-panel-header{align-items:center}.status-panel.collapsed .status-panel-title .sidebar-label{margin-bottom:.25rem}.status-panel.collapsed .status-pill{padding:.14rem .38rem;font-size:.6rem}.status-panel.collapsed .status-toggle{padding:.25rem .5rem}.status-panel-header{flex:none;justify-content:space-between;align-items:flex-start;gap:.65rem;min-width:0;display:flex}.status-panel-title{min-width:0}.status-panel-title .sidebar-label{margin-bottom:.4rem}.status-summary{flex-wrap:wrap;gap:.35rem;min-width:0;display:flex}.status-pill{border:1px solid var(--border-soft);color:#fecaca;text-transform:uppercase;letter-spacing:.04em;white-space:nowrap;background:#f871711a;border-radius:999px;align-items:center;gap:.32rem;min-width:0;max-width:100%;padding:.22rem .48rem;font-size:.66rem;font-weight:800;display:inline-flex}.status-pill span{background:currentColor;border-radius:999px;width:7px;height:7px}.status-pill.ok{color:#bbf7d0;background:#4ade801a}.status-pill.stale{color:#fde68a;background:#facc151a}.status-toggle{border:1px solid var(--border-soft);color:var(--text);background:#1a2532c7;border-radius:999px;flex:none;padding:.32rem .6rem;font-size:.72rem;font-weight:800}.status-row{flex:auto;align-content:start;gap:.65rem;min-height:0;display:grid;overflow-y:auto}.status-card{border:1px solid var(--border-soft);background:#1017209e;border-radius:16px;min-width:0;padding:.75rem}.status-card.skeleton{color:var(--muted)}.status-card-header{justify-content:space-between;align-items:flex-start;gap:.65rem;margin-bottom:.52rem;display:flex}.status-card h3,.status-card p{margin:0}.status-card h3{font-size:.84rem}.status-card p,.status-footnote{color:var(--muted)}.status-card p{white-space:nowrap;text-overflow:ellipsis;max-width:170px;margin-top:.18rem;font-size:.75rem;overflow:hidden}.status-card .status-gpu-line{color:#cbd5e1;font-weight:750}.badge{text-transform:uppercase;letter-spacing:.06em;border-radius:999px;padding:.22rem .48rem;font-size:.62rem;font-weight:900}.badge.ok{color:#bbf7d0;background:#4ade8021}.badge.stale{color:#fde68a;background:#facc1521}.badge.warn{color:#fecaca;background:#f8717121}.gpu-metric{gap:.25rem;margin-top:.45rem;display:grid}.gpu-metric-label{color:var(--muted);justify-content:space-between;gap:.5rem;font-size:.7rem;display:flex}.gpu-metric-label strong{color:#cbd5e1;white-space:nowrap;text-overflow:ellipsis;font-weight:700;overflow:hidden}.gpu-bar{background:#94a3b829;border-radius:999px;height:6px;overflow:hidden}.gpu-bar span{border-radius:inherit;background:linear-gradient(90deg,#8fb4ffa6,#8fb4fff2);height:100%;display:block}.gpu-bar.unknown span{width:0}.status-footnote{gap:.25rem;margin-top:.55rem;font-size:.68rem;display:grid}@media (width<=1120px){.thread,.composer{padding-left:1rem;padding-right:1rem}}@media (width<=840px){.workspace{grid-template:"history"minmax(112px,22%)"main"minmax(0,1fr)"health"minmax(44px,22%)"composer"minmax(170px,30%)/minmax(0,1fr)}.workspace-column{display:contents}.workspace-resizer{display:none}.sidebar{border-right:0;border-bottom:1px solid var(--border)}.conversation-list,.status-panel,.composer{padding:.65rem}.composer-box{grid-template-columns:1fr}.composer-actions{justify-content:flex-end}}@media (width<=560px){.app-brand-title{letter-spacing:.14em;font-size:.95rem}.app-brand-mark{width:34px;height:34px}.status-summary{display:none}.message-row,.message-row.user{grid-template-columns:1fr}.message-avatar,.message-row.user .message-avatar{display:none}.message-row.user .message-bubble{grid-column:1}}.auth-screen{background:radial-gradient(circle at 20% 15%,#8fb4ff38,#0000 28rem),radial-gradient(circle at 80% 85%,#4ade8014,#0000 26rem),#0a0d12d1;place-items:center;min-height:100dvh;padding:2rem;display:grid;overflow-y:auto}.auth-card{border:1px solid var(--border-soft);width:min(100%,760px);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(22px);backdrop-filter:blur(22px);background:#101720d1;border-radius:32px;padding:2rem}.login-card{gap:1.15rem;width:min(100%,500px);display:grid}.password-card{gap:1.1rem;width:min(100%,520px);display:grid}.password-card.embedded{width:100%;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;border:0;border-radius:0;padding:0}.auth-brand{align-items:center;gap:1rem;display:flex}.login-brand{gap:.85rem}.auth-brand h1,.login-copy h2,.modal-header h2,.admin-user-row h3{color:var(--text);margin:0}.auth-brand h1{letter-spacing:.08em;text-transform:uppercase;font-size:clamp(1.45rem,3vw,2.1rem)}.login-brand h1{white-space:nowrap;font-size:clamp(1.3rem,5.2vw,1.75rem);line-height:1.05}.login-copy p,.auth-help,.user-menu-note,.admin-user-row p{color:var(--muted)}.login-copy h2{color:var(--muted);letter-spacing:.04em;white-space:nowrap;font-size:.8rem;font-weight:750}.login-copy p,.auth-help,.admin-user-row p,.user-menu-note{margin:.25rem 0 0}.login-user-grid{grid-template-columns:repeat(auto-fit,minmax(145px,1fr));gap:.8rem;min-height:80px;display:grid}.login-user-tile{border:1px solid var(--border-soft);min-height:132px;color:var(--text);background:#0f172a94;border-radius:22px;justify-items:center;gap:.5rem;padding:1rem;transition:transform .16s,border-color .16s,background .16s,box-shadow .16s;display:grid}.login-user-tile:hover,.login-user-tile:focus-visible,.login-user-tile.selected{background:#456dba2e;border-color:#8fb4ff9e;transform:translateY(-1px);box-shadow:0 14px 34px #00000038}.login-user-tile small,.admin-chip{color:#dbeafe;text-transform:uppercase;letter-spacing:.05em;background:#8fb4ff1a;border:1px solid #8fb4ff47;border-radius:999px;align-items:center;width:fit-content;padding:.18rem .5rem;font-size:.68rem;font-weight:850;display:inline-flex}.login-avatar{color:#f8fafc;letter-spacing:.08em;background:linear-gradient(135deg,#334155,#456dba);border-radius:18px;place-items:center;width:54px;height:54px;font-weight:950;display:grid}.auth-form{gap:.75rem;display:grid}.auth-error,.auth-success{border-radius:14px;padding:.78rem .9rem;line-height:1.45}.auth-error{color:#fecaca;background:#f871711f;border:1px solid #f8717157}.auth-success{color:#bbf7d0;background:#4ade801a;border:1px solid #4ade8042}.button-row{flex-wrap:wrap;justify-content:flex-end;gap:.65rem;display:flex}.menu-actions{gap:.5rem;display:grid}.modal-backdrop{z-index:80;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#020617b8;place-items:center;padding:1.5rem;display:grid;position:fixed;inset:0}.modal-body,.admin-panel{border:1px solid var(--border);width:min(100%,720px);max-height:min(860px,100vh - 3rem);box-shadow:var(--shadow);background:#101720fa;border-radius:24px;padding:1.35rem;overflow-y:auto}.admin-panel{gap:1rem;width:min(100%,980px);display:grid}.modal-header{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.admin-create-form{border:1px solid var(--border-soft);background:#0f172a6b;border-radius:18px;gap:.4rem;padding:1rem;display:grid}.admin-user-list{gap:.75rem;display:grid}.admin-user-row{border:1px solid var(--border-soft);background:#0f172a6b;border-radius:18px;justify-content:space-between;align-items:center;gap:1rem;padding:.9rem;display:flex}.admin-user-row.inactive{opacity:.7}.admin-user-main{align-items:center;gap:.85rem;min-width:0;display:flex}.admin-user-row h3{font-size:1rem}.admin-user-row p{font-size:.82rem}.admin-user-actions{flex-wrap:wrap;justify-content:flex-end;gap:.5rem;display:flex}.danger-button:hover:not(:disabled),.danger-button:focus-visible:not(:disabled){color:#fecaca;background:#f871711f;border-color:#f871716b}@media (width<=700px){.auth-screen{padding:1rem}.auth-card,.modal-body,.admin-panel{border-radius:22px;padding:1rem}.admin-user-row,.modal-header{flex-direction:column;align-items:stretch}.admin-user-actions{justify-content:stretch}.admin-user-actions .secondary-button{flex:auto}}
