:root{color:#e8edf6;background:#0b1020;font-family:Arial,sans-serif}*{box-sizing:border-box}body{margin:0}main{display:grid;grid-template-columns:260px 1fr;min-height:100vh}aside{background:#10182c;border-right:1px solid #26324c;padding:24px 14px}.brand{font-weight:800;letter-spacing:2px;margin:0 10px 30px}.brand span{color:#70e1c2}small{display:block;color:#8591aa;letter-spacing:1px;font-size:9px;margin-top:5px}button,input,select,textarea{border:1px solid #344260;border-radius:8px;background:#17223b;color:inherit;font:inherit}button{cursor:pointer;padding:10px 12px}aside>button{width:100%;background:#267c69}nav{margin-top:18px}nav button{width:100%;text-align:left;border:0;background:transparent;color:#aab5c8;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}nav button.active,nav button:hover{background:#1b2947;color:white}section{max-width:920px;width:100%;margin:auto;padding:48px 36px 28px;display:flex;flex-direction:column;min-height:100vh}header{display:flex;justify-content:space-between;gap:20px;align-items:flex-start}h1{margin:4px 0 28px;font-size:29px}.eyebrow{font-size:11px;color:#70e1c2;letter-spacing:1.5px;margin:0}label{font-size:12px;color:#aab5c8}select{display:block;margin-top:5px;padding:8px}.messages{flex:1 1}.empty{margin:80px 0;text-align:center;color:#9dabc1}.empty b{color:#e8edf6;font-size:18px}article{max-width:80%;padding:14px 17px;border-radius:12px;margin:14px 0;white-space:pre-wrap}article p{margin:7px 0 0;line-height:1.5}article.user{margin-left:auto;background:#286b61}article.assistant{background:#17223b}article strong{font-size:12px;color:#aab5c8}form{display:grid;grid-template-columns:1fr auto;grid-gap:10px;gap:10px;border-top:1px solid #26324c;padding-top:16px}textarea{resize:none;padding:12px}form button{background:#70e1c2;color:#092019;font-weight:700}.error{color:#ff9c9c;display:flex;justify-content:space-between;gap:12px;align-items:center;background:#3b1c2b;border-radius:8px;padding:10px 12px}.error button,.message-actions button{padding:5px 8px;font-size:12px}.message-actions{display:flex;gap:8px;align-items:center;margin-top:12px;color:#9dabc1;font-size:12px;flex-wrap:wrap}.message-actions button{background:#223352}form button.stop{background:#ffb3b3;color:#3c1111}.controls{display:flex;flex-direction:column;gap:10px;align-items:flex-end}.mode-toggle{display:flex;gap:6px}.mode-toggle button.active{background:#70e1c2;color:#092019;font-weight:700;border-color:#70e1c2}.compare-picker{display:flex;flex-direction:column;gap:4px;font-size:12px;color:#aab5c8;border:1px solid #344260;border-radius:8px;padding:10px 12px;background:#10182c}.compare-picker>span{color:#70e1c2;letter-spacing:1px;font-size:11px;margin-bottom:4px}.compare-picker label{display:flex;gap:8px;align-items:center;cursor:pointer}.compare-picker label.unavailable{opacity:.55}.compare-picker input{accent-color:#70e1c2}.compare-block{margin:14px 0}.compare-head{display:flex;justify-content:space-between;align-items:center;gap:10px;color:#9dabc1;font-size:12px;margin-bottom:8px}.compare-head button{padding:5px 8px;font-size:12px}.compare-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));grid-gap:12px;gap:12px}.compare-card{background:#17223b;border:1px solid #2b3a5c;border-radius:12px;padding:12px 14px;white-space:pre-wrap}.compare-card p{margin:8px 0 0;line-height:1.5}.card-head{display:flex;justify-content:space-between;align-items:center;gap:8px;font-size:12px;color:#aab5c8}.badges{display:flex;gap:6px}.badge{font-style:normal;font-size:11px;padding:2px 8px;border-radius:20px}.badge.fast{background:#70e1c2;color:#092019}.badge.cheap{background:#e3b341;color:#2c2004}.badge.fallback{background:#b795f5;color:#1d1033}.route-note{line-height:1.5;color:#9fd8c7;background:#12332c;border:1px solid #2a5a50;border-radius:8px;padding:8px 10px}.fallback-note,.route-note{margin-top:8px;font-size:12px}.fallback-note{color:#d3bdf5}.sources{margin-top:10px;font-size:12px;color:#9dabc1;border-top:1px solid #26324c;padding-top:8px}.sources>span{color:#70e1c2;letter-spacing:1px;font-size:11px}.source{margin-top:4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.docs{margin-top:22px;border-top:1px solid #26324c;padding-top:12px}.docs-title{font-size:11px;color:#70e1c2;letter-spacing:1.5px;margin:0 10px 8px}.doc-row{display:flex;gap:6px;align-items:center;font-size:12px;color:#aab5c8;padding:4px 10px}.doc-row span{flex:1 1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.doc-row em{font-style:normal;background:#1b2947;border-radius:10px;padding:1px 7px}.doc-row button{padding:2px 7px;font-size:12px;background:transparent;border:0;color:#ff9c9c}.upload{padding:8px;text-align:center;border:1px dashed #344260;border-radius:8px;color:#9fd8c7;cursor:pointer}.upload,.uploading{display:block;margin:8px 10px 0;font-size:12px}.uploading{color:#9dabc1}.rag-bar{gap:10px;font-size:12px;color:#aab5c8;padding:0 2px 10px}.rag-bar,.rag-bar label{display:flex;align-items:center}.rag-bar label{gap:6px;cursor:pointer}.rag-bar input{accent-color:#70e1c2}.empty .hint{font-size:11px;margin-top:12px}.examples{display:flex;gap:8px;flex-wrap:wrap;justify-content:center;margin-top:12px}.examples button{font-size:12px;background:#17223b}.nav-hint{padding:0 10px}.tool-cards{display:flex;flex-direction:column;gap:6px;margin-top:8px}.tool-card{display:flex;justify-content:space-between;gap:8px;align-items:center;background:#10182c;border:1px solid #2b3a5c;border-left:3px solid #70e1c2;border-radius:8px;padding:6px 10px;font-size:12px}.tool-card.failed{border-left-color:#ff9c9c}.tool-card strong{color:#e8edf6}.tool-card span{color:#9dabc1}.eval{display:grid;grid-template-columns:1fr 1.4fr;grid-gap:16px;gap:16px;flex:1 1}.eval>.error{grid-column:1/-1}.eval-col h2{font-size:15px;margin:6px 0 10px}.eval-col h3{font-size:13px;color:#9dabc1;margin:14px 0 8px}.eval-col h4{font-size:12px;color:#9dabc1;margin:12px 0 6px}.eval-row{display:flex;justify-content:space-between;gap:8px;align-items:center;background:#17223b;border:1px solid #2b3a5c;border-radius:10px;padding:8px 12px;margin-bottom:8px;font-size:13px}.eval-row.active{border-color:#70e1c2}.eval-row strong{display:block}.eval-row span{color:#9dabc1;font-size:12px}.row-actions{display:flex;gap:6px}.row-actions button{padding:4px 8px;font-size:12px}.eval-col input,.eval-col select,.eval-col textarea{width:100%;margin-bottom:8px;padding:8px}.eval-col>button{width:100%}.muted{color:#9dabc1}.muted,table{font-size:12px}table{width:100%;border-collapse:collapse}td,th{text-align:left;padding:6px 8px;border-bottom:1px solid #26324c}th{color:#70e1c2;font-weight:600}.scorecard{margin-top:12px}.score-row{background:#10182c;border-radius:8px;padding:8px 10px;margin-bottom:6px;font-size:12px;color:#c6d0e2}.score-row span{color:#9dabc1}.stat-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:8px;gap:8px;margin-bottom:8px}.stat{background:#17223b;border:1px solid #2b3a5c;border-radius:10px;padding:10px;text-align:center}.stat b{display:block;font-size:17px;color:#70e1c2}.stat span{font-size:11px;color:#9dabc1}.hdr-panel{background:#10182c;border:1px solid #2b3a5c;border-top:0;border-radius:0 0 10px 10px;padding:8px 12px;margin:-8px 0 8px}.hdr-row{display:flex;gap:8px;align-items:center;font-size:12px;padding:4px 0}.hdr-row span{flex:1 1;color:#e8edf6}.hdr-row em{font-style:normal;color:#9dabc1;letter-spacing:2px}.hdr-row button{padding:2px 7px;font-size:12px;background:transparent;border:0;color:#ff9c9c}.hdr-form{display:grid;grid-template-columns:1fr 1fr auto;grid-gap:6px;gap:6px;margin-top:6px}.hdr-form input{padding:6px 8px;font-size:12px}@media (max-width:700px){main{grid-template-columns:1fr}aside{display:none}section{padding:28px 18px}header{display:block}h1{font-size:22px}label{display:block;margin-bottom:15px}.controls{align-items:stretch;width:100%}.mode-toggle{flex-wrap:wrap}.compare-picker{width:100%}article{max-width:100%}.eval{grid-template-columns:1fr}.eval-col{min-width:0;overflow-x:auto}.stat-grid{grid-template-columns:repeat(2,1fr)}.rag-bar{flex-wrap:wrap}}:root{--deck-bg:#05070e;--panel:rgba(13,20,38,0.78);--line:rgba(130,180,255,0.14);--ink:#eef2fb;--dim:#93a0b8;--mint:#5eead4;--violet:#a78bfa;--amber:#fbbf24;--rose:#fb7185;--mono:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}body{background:var(--deck-bg);color:var(--ink);font-family:Segoe UI,system-ui,-apple-system,Roboto,Helvetica Neue,Arial,sans-serif}body:before{content:"";position:fixed;inset:0;z-index:0;pointer-events:none;background:radial-gradient(620px 320px at 12% -6%,rgba(94,234,212,.09),transparent 60%),radial-gradient(720px 400px at 92% 8%,rgba(167,139,250,.11),transparent 60%),radial-gradient(960px 620px at 50% 112%,rgba(59,130,246,.09),transparent 62%)}main{position:relative;z-index:1}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#26324c;border-radius:8px;border:2px solid #05070e}button{transition:transform .12s ease,background .12s ease,border-color .12s ease,box-shadow .12s ease}button:hover:not(:disabled){transform:translateY(-1px)}button:disabled{opacity:.45;cursor:default}:focus-visible{outline:2px solid var(--mint);outline-offset:2px}main aside{background:rgba(8,13,26,.88);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-right:1px solid var(--line)}.brand{font-size:19px}.brand span{text-shadow:0 0 18px rgba(94,234,212,.55)}.side-label{font-size:10px;letter-spacing:2px;color:var(--dim);margin:18px 10px 6px}nav{margin-top:6px}nav button{border-radius:9px;border:1px solid transparent}nav button.active{background:rgba(94,234,212,.1);border-color:rgba(94,234,212,.35);color:#fff;box-shadow:inset 2px 0 0 var(--mint)}nav button:hover{border-color:var(--line)}aside>button{background:linear-gradient(135deg,#5eead4,#34d399);border:0;color:#052e28;font-weight:700;box-shadow:0 8px 24px -10px rgba(94,234,212,.7)}section{max-width:980px}main>section{margin:0 auto;align-self:start}main>aside{position:-webkit-sticky;position:sticky;top:0;height:100vh;overflow:hidden;display:flex;flex-direction:column}main>aside nav{flex:1 1 auto;overflow-y:auto;min-height:0}main>aside .docs{flex-shrink:0;overflow-y:auto;max-height:32vh}@media (max-width:700px){main>aside{display:none}}section header h1{font-size:26px;letter-spacing:-.5px;background:linear-gradient(92deg,#ffffff 30%,var(--mint));-webkit-background-clip:text;background-clip:text;color:transparent}.eyebrow{display:flex;align-items:center;gap:8px}.livedot{width:8px;height:8px;border-radius:50%;background:#33405c;display:inline-block}.livedot.on{background:var(--mint);box-shadow:0 0 10px var(--mint);animation:blink 1.2s ease-in-out infinite}@keyframes blink{0%,to{opacity:1}50%{opacity:.35}}.controls{background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:12px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.mode-toggle{background:rgba(5,8,16,.6);border:1px solid var(--line);border-radius:11px;padding:3px;gap:3px}.mode-toggle button{border:0;background:transparent;color:var(--dim);border-radius:8px;padding:7px 12px;font-size:12.5px}.mode-toggle button.active{background:linear-gradient(135deg,#5eead4,#34d399);color:#052e28;box-shadow:0 4px 14px -6px rgba(94,234,212,.8)}input,select,textarea{background:rgba(5,8,16,.65)!important;border-color:var(--line)!important;color:var(--ink)!important;font:inherit}input::placeholder,textarea::placeholder{color:var(--dim);opacity:1}input:focus,select:focus,textarea:focus{border-color:var(--mint)!important}.compare-picker{background:rgba(5,8,16,.5);border-color:var(--line);border-radius:10px}article.user{background:linear-gradient(135deg,#0f766e,#115e59);border:1px solid rgba(94,234,212,.35);border-radius:14px;box-shadow:0 12px 30px -18px rgba(94,234,212,.5);color:#f0fdfa}article.user strong{color:#99f6e4}article.assistant{background:var(--panel);border:1px solid var(--line);border-left:3px solid hsl(160 90% 65%);border-radius:14px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);max-width:86%}article strong{letter-spacing:1px;text-transform:uppercase;font-size:11px}p.thinking{animation:shimmer 1.6s ease-in-out infinite}@keyframes shimmer{0%,to{opacity:.45}50%{opacity:1}}.compare-card .message-actions span,.message-actions span{font-family:var(--mono);font-size:11px}.message-actions button{background:rgba(94,234,212,.08);border-color:rgba(94,234,212,.25)}.message-actions button:hover:not(:disabled){background:rgba(94,234,212,.16)}.badges .badge{font-family:var(--mono);text-transform:uppercase;letter-spacing:.5px;border:1px solid rgba(255,255,255,.25)}.compare-card{background:var(--panel);border:1px solid var(--line);border-left:3px solid hsl(160 90% 65%);border-radius:14px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.compare-head{color:var(--dim)}.compare-head span{font-family:var(--mono);font-size:11px;letter-spacing:1px;text-transform:uppercase}.route-note{background:rgba(94,234,212,.07)}.sources{border-top:1px dashed rgba(130,180,255,.25)}.source,.tool-card{font-family:var(--mono);font-size:11px}.tool-card{background:rgba(5,8,16,.6)}.tool-card strong{color:var(--mint)}.doc-row,.eval-row,.hdr-panel,.score-row,.stat{background:var(--panel);border-color:var(--line);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.eval-row.active{border-color:var(--mint);box-shadow:0 0 20px -10px var(--mint)}.stat b{font-family:var(--mono)}th{font-size:11px;text-transform:uppercase;letter-spacing:1px}td{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}form{background:var(--panel);border-top:1px solid var(--line);border-radius:16px;padding:12px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid var(--line)}form textarea{border:0!important;background:transparent!important}form button{border-radius:12px}.error{background:rgba(251,113,133,.1);border:1px solid rgba(251,113,133,.4);border-radius:12px}.empty{border:1px dashed rgba(130,180,255,.3);border-radius:18px;padding:48px 24px;background:rgba(13,20,38,.5)}.empty b{font-size:21px;letter-spacing:-.3px}.examples button{border-radius:999px;border:1px solid rgba(94,234,212,.35);background:rgba(94,234,212,.06);color:#c9f5ec}.examples button:hover{background:rgba(94,234,212,.16)}.upload{border-color:rgba(94,234,212,.4)}.upload:hover{background:rgba(94,234,212,.08)}.doc-row em{font-family:var(--mono)}.running{display:flex;align-items:center;gap:8px}.spinner{width:14px;height:14px;flex-shrink:0;border:2px solid rgba(94,234,212,.25);border-top:2px solid var(--mint);border-radius:50%;display:inline-block;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(1turn)}}