.roshi-demo{--demo-bg:#fbfbfa;--demo-panel:#fff;--demo-muted:#f3f3f1;--demo-line:#e4e4e1;--demo-text:#171716;--demo-soft:#72726d;border:1px solid var(--demo-line);background:var(--demo-bg);width:100%;min-width:0;color:var(--demo-text);text-align:left;border-radius:12px;font-size:clamp(9px,1.15vw,13px);line-height:1.35;overflow:hidden;box-shadow:0 24px 70px #0000001a}.roshi-demo *,.roshi-demo :before,.roshi-demo :after{box-sizing:border-box}.roshi-demo-composer{height:474px}.roshi-demo button,.roshi-demo input,.roshi-demo textarea,.roshi-demo select{font:inherit}.roshi-demo button,.roshi-demo select{cursor:pointer}.demo-titlebar{border-bottom:1px solid var(--demo-line);height:34px;color:var(--demo-soft);background:#f6f6f4;align-items:center;padding:0 12px;font-size:10px;display:flex;position:relative}.demo-lights{gap:5px;display:flex}.demo-lights i{background:#e2e2df;border-radius:50%;width:8px;height:8px}.demo-lights i:first-child{background:#ff625a}.demo-lights i:nth-child(2){background:#ffc04a}.demo-lights i:last-child{background:#30c953}.demo-titlebar-title{position:absolute;left:50%;transform:translate(-50%)}.demo-workspace{grid-template-columns:minmax(145px,22%) minmax(0,1fr);height:calc(100% - 34px);display:grid}.demo-sidebar{border-right:1px solid var(--demo-line);background:#f7f7f5;min-width:0}.demo-sidebar-brand{border-bottom:1px solid var(--demo-line);align-items:center;height:48px;padding:0 12px;font-size:10px;display:flex}.demo-sidebar-tabs{border-bottom:1px solid var(--demo-line);align-items:end;height:33px;padding:0 10px;display:flex}.demo-sidebar-tabs button{height:29px;color:var(--demo-soft);background:0 0;border:0;border-bottom:2px solid #0000;padding:0 8px;font-size:9px}.demo-sidebar-tabs button.is-active{border-color:var(--demo-text);color:var(--demo-text)}.demo-search{border:1px solid var(--demo-line);background:#fff;border-radius:6px;align-items:center;gap:4px;margin:9px 10px 6px;padding:6px 8px;display:flex}.demo-search input{width:100%;min-width:0;color:var(--demo-text);background:0 0;border:0;outline:0}.demo-history-item{text-align:left;background:0 0;border:1px solid #0000;border-radius:6px;gap:4px;width:calc(100% - 12px);margin:1px 6px;padding:9px;display:grid}.demo-history-item.is-active{border-color:var(--demo-line);background:#fff}.demo-history-item small,.demo-history-item span{color:var(--demo-soft);white-space:nowrap;text-overflow:ellipsis;font-size:8px;overflow:hidden}.demo-history-item strong{white-space:nowrap;text-overflow:ellipsis;font-size:10px;overflow:hidden}.demo-main{background:#fff;flex-direction:column;min-width:0;min-height:0;display:flex;overflow:hidden}.demo-toolbar{border-bottom:1px solid var(--demo-line);flex:none;align-items:center;gap:7px;height:48px;padding:7px 10px;display:flex}.demo-toolbar select,.demo-environment{border:1px solid var(--demo-line);min-width:0;max-width:180px;height:30px;color:var(--demo-text);white-space:nowrap;background:#fff;border-radius:6px;padding:0 8px}.demo-environment{max-width:110px;color:var(--demo-soft);text-overflow:ellipsis;overflow:hidden}.demo-view-toggle{border:1px solid var(--demo-line);background:var(--demo-muted);border-radius:7px;flex:none;height:30px;padding:2px;display:flex}.demo-view-toggle button{color:var(--demo-soft);background:0 0;border:0;border-radius:5px;padding:0 7px;font-size:9px}.demo-view-toggle button.is-active{color:var(--demo-text);background:#fff;box-shadow:0 1px 2px #00000014}.demo-token-count{color:var(--demo-soft);margin-left:auto;font-family:ui-monospace,monospace;font-size:9px}.demo-run{color:#fff;white-space:nowrap;background:#171716;border:0;border-radius:6px;justify-content:center;align-items:center;gap:6px;min-height:30px;padding:6px 10px;font-weight:650;display:inline-flex}.demo-run kbd{font:inherit;background:#ffffff24;border-radius:3px;padding:1px 3px;font-size:8px}.demo-pane{flex-direction:column;min-height:0;display:flex}.demo-request-pane{flex:0 0 45%}.demo-response-pane{flex:1}.demo-tabs{border-bottom:1px solid var(--demo-line);gap:2px;padding:0 12px;display:flex}.demo-request-pane>.demo-tabs{flex:none;align-items:flex-end;height:33px}.demo-tabs button{color:var(--demo-soft);background:0 0;border:0;border-bottom:2px solid #0000;padding:9px 8px 7px}.demo-tabs button.is-active{color:var(--demo-text);border-color:#171716}.demo-composer-panel{background:#fbfbfa;flex:1;min-height:0;padding:14px;overflow:auto}.demo-composer-panel[hidden]{display:none}.demo-message{grid-template-columns:54px 1fr;gap:8px;margin-bottom:10px;display:grid}.demo-message>span{color:var(--demo-soft);padding-top:8px;font-size:9px}.demo-message textarea,.demo-response,.demo-field textarea{resize:none;border:1px solid var(--demo-line);width:100%;min-height:72px;color:var(--demo-text);background:#fff;border-radius:7px;outline:0;padding:10px}.demo-message textarea:focus,.demo-field textarea:focus{border-color:#aaa}.demo-response.is-running{color:var(--demo-soft)}.demo-field{color:var(--demo-soft);gap:7px;display:grid}.demo-parameters{grid-template-columns:1fr 1fr;align-content:start;gap:16px;display:grid}.demo-parameters label{grid-template-columns:1fr auto;align-items:center;gap:8px;display:grid}.demo-parameters input{grid-column:1/-1;min-width:0}.demo-parameters input[type=number]{border:1px solid var(--demo-line);border-radius:6px;padding:7px}.demo-add-message{border:1px solid var(--demo-line);color:var(--demo-soft);background:#fff;border-radius:5px;padding:4px 7px;font-size:9px}.demo-header-row{grid-template-columns:1fr 1.5fr 24px;gap:6px;margin-bottom:8px;display:grid}.demo-header-row input{border:1px solid var(--demo-line);background:#fff;border-radius:6px;min-width:0;padding:7px}.demo-header-row button{color:var(--demo-soft);background:0 0;border:0}.demo-resize-handle{border-top:1px solid var(--demo-line);border-bottom:1px solid var(--demo-line);background:#f7f7f5;flex:none;place-items:center;height:7px;display:grid}.demo-resize-handle i{background:#cececa;border-radius:2px;width:20px;height:2px}.demo-response-header{border-bottom:1px solid var(--demo-line);justify-content:space-between;align-items:center;gap:8px;min-height:40px;display:flex}.demo-response-header .demo-tabs{border-bottom:0;align-self:stretch}.demo-response-meta{color:var(--demo-soft);white-space:nowrap;align-items:center;gap:8px;padding-right:10px;font-family:ui-monospace,monospace;font-size:7px;display:flex}.demo-response-meta strong{color:#168044;background:#edf6ef;border-radius:999px;padding:3px 6px;font-weight:500}.demo-chat{background:#fbfbfa;flex:1;grid-template-columns:72px 1fr;gap:8px;min-height:0;padding:13px 14px;display:grid;overflow:auto}.demo-chat-role{color:var(--demo-soft);align-content:start;gap:2px;padding-top:5px;font-size:9px;display:grid}.demo-chat-role small{font-size:7px}.demo-chat .demo-response{min-height:70px;font-family:ui-monospace,SF Mono,monospace}.demo-code-panel{background:#17181a;flex-direction:column;flex:1;min-height:0;display:flex}.demo-code-tabs{gap:2px;padding:8px 12px 0;display:flex}.demo-code-tabs button{color:#ffffff73;background:0 0;border:0;border-radius:5px 5px 0 0;padding:6px 9px;font-size:9px}.demo-code-tabs button.is-active{color:#fff;background:#0d0e0f}.demo-code-block{color:#d4d4d4;white-space:pre;background:#0d0e0f;flex:1;margin:0;padding:14px 16px;font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:9.5px;line-height:1.75;overflow:auto}.tok-kw{color:#c586c0}.tok-str{color:#ce9178}.tok-fn{color:#dcdcaa}.demo-headers-panel{background:#fbfbfa;flex:1;align-content:start;gap:14px;min-height:0;padding:14px;display:grid;overflow:auto}.demo-header-list{border:1px solid var(--demo-line);background:#fff;border-radius:8px;overflow:hidden}.demo-header-line{border-bottom:1px solid var(--demo-line);justify-content:space-between;gap:12px;padding:7px 10px;font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:9px;display:flex}.demo-header-line:last-child{border-bottom:0}.demo-header-line span{color:var(--demo-soft)}.demo-header-line b{color:var(--demo-text);text-align:right;white-space:nowrap;font-weight:500}.demo-timing{gap:8px;display:grid}.demo-timing-row{color:var(--demo-soft);grid-template-columns:62px 1fr 50px;align-items:center;gap:8px;font-size:9px;display:grid}.demo-timing-row i{background:#171716;border-radius:999px;height:6px;display:block}.demo-timing-row b{color:var(--demo-text);text-align:right}.demo-eval-shell{background:#f8f8f6;min-height:410px;padding:16px}.demo-eval-toolbar{justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;display:flex}.demo-eval-toolbar>div{gap:2px;display:grid}.demo-eval-toolbar span{color:var(--demo-soft);font-size:9px}.demo-eval-prompt{border:1px solid var(--demo-line);background:#fff;border-radius:7px;grid-template-columns:45px 1fr;gap:8px;padding:10px;display:grid}.demo-eval-prompt span{color:var(--demo-soft);font-size:9px}.demo-eval-prompt p{margin:0}.demo-result-grid{grid-template-columns:repeat(3,1fr);gap:8px;margin:12px 0;display:grid}.demo-result{border:1px solid var(--demo-line);background:#fff;border-radius:8px;flex-direction:column;min-width:0;min-height:200px;padding:10px;transition:transform .18s,opacity .18s;display:flex}.demo-result.is-winner{border-color:#b8aa76;box-shadow:inset 0 0 0 1px #eee5c4}.demo-result.is-running{opacity:.48;transform:translateY(3px)}.demo-result header{border-bottom:1px solid var(--demo-line);grid-template-columns:1fr auto;gap:2px;padding-bottom:8px;display:grid}.demo-result header span{color:var(--demo-soft);text-transform:uppercase;font-size:8px}.demo-result header strong{grid-column:1;font-size:9px}.demo-result header i{color:#187a3c;background:#edf6ef;border-radius:4px;grid-area:1/2/3;align-self:center;padding:3px 5px;font-size:7px;font-style:normal}.demo-result.is-winner header i{color:#78620d;background:#f5efd6}.demo-result p{color:#3f3f3c;font-family:ui-monospace,monospace;font-size:9px;line-height:1.55}.demo-result footer{color:var(--demo-soft);align-items:end;gap:8px;margin-top:auto;font-size:8px;display:flex}.demo-result footer b{color:var(--demo-text);margin-left:auto;font-size:18px;font-weight:500}.demo-judge{border:1px solid var(--demo-line);color:var(--demo-soft);background:#fff;border-radius:7px;align-items:center;gap:8px;padding:9px 10px;font-size:8px;display:flex}.demo-judge strong{background:var(--demo-muted);color:var(--demo-text);border-radius:999px;padding:3px 6px;font-weight:500}.demo-judge span:last-child{color:#78620d;margin-left:auto}.demo-provider-shell{grid-template-columns:minmax(190px,32%) 1fr;min-height:420px;display:grid}.demo-provider-list{border-right:1px solid var(--demo-line);background:#f7f7f5;padding:16px 10px}.demo-provider-list>div{gap:3px;padding:0 7px 12px;display:grid}.demo-provider-list>div span,.demo-form-heading span{color:var(--demo-soft);font-size:9px}.demo-provider-list button{text-align:left;background:0 0;border:1px solid #0000;border-radius:7px;grid-template-columns:28px 1fr auto;align-items:center;gap:8px;width:100%;padding:8px;display:grid}.demo-provider-list button.is-active{border-color:var(--demo-line);background:#fff}.demo-provider-list button i{background:#e9e9e6;border-radius:6px;place-items:center;width:26px;height:26px;font-style:normal;font-weight:700;display:grid}.demo-provider-list button span{min-width:0;display:grid}.demo-provider-list button strong{font-size:9px}.demo-provider-list button small{color:var(--demo-soft);font-size:8px}.demo-provider-list button b{color:var(--demo-soft);font-size:15px}.demo-provider-form{background:#fff;padding:18px}.demo-form-heading{border-bottom:1px solid var(--demo-line);justify-content:space-between;gap:12px;padding-bottom:14px;display:flex}.demo-form-heading>div{gap:3px;display:grid}.demo-saved{color:#168044!important}.demo-form-grid{grid-template-columns:1fr 1fr;gap:12px;padding:14px 0;display:grid}.demo-form-grid label{color:var(--demo-soft);gap:5px;font-size:9px;display:grid}.demo-form-grid .is-wide{grid-column:1/-1}.demo-form-grid input,.demo-form-grid select{border:1px solid var(--demo-line);width:100%;min-width:0;color:var(--demo-text);background:#fff;border-radius:6px;outline:0;padding:7px 8px}.demo-form-grid input:focus,.demo-form-grid select:focus{border-color:#999}.demo-model-row{grid-template-columns:1fr 1fr;gap:7px;display:grid}.demo-form-actions{justify-content:space-between;align-items:center;gap:8px;display:flex}.demo-form-actions button{border:1px solid var(--demo-line);color:var(--demo-text);background:#fff;border-radius:6px;padding:7px 9px}.demo-form-actions .demo-save{color:#fff;background:#171716;border-color:#171716}@media (width<=620px){.roshi-demo{font-size:9px}.roshi-demo-composer{height:424px}.demo-workspace{grid-template-columns:1fr}.demo-sidebar{display:none}.demo-toolbar{gap:6px}.demo-token-count,.demo-environment{display:none}.demo-toolbar select{flex:1;min-width:0}.demo-response-meta span{display:none}.demo-result-grid{grid-template-columns:1fr}.demo-result{min-height:120px}.demo-result-grid .demo-result:nth-child(3),.demo-judge strong{display:none}.demo-provider-shell{grid-template-columns:1fr}.demo-provider-list{border-right:0;border-bottom:1px solid var(--demo-line);grid-template-columns:1fr 1fr;display:grid}.demo-provider-list>div{grid-column:1/-1}.demo-provider-list button:nth-of-type(n+3){display:none}.demo-form-grid{gap:8px}}@media (prefers-reduced-motion:reduce){.demo-result{transition:none}}
