@font-face{font-family:Geist;src:url(/fonts/geist.woff2) format("woff2");font-weight:100 900;font-display:swap}@font-face{font-family:Geist Mono;src:url(/fonts/geist-mono.woff2) format("woff2");font-weight:100 900;font-display:swap}:root{font-family:Geist,system-ui,sans-serif;color:#fafafa;background:#0a0a0a;color-scheme:dark;font-synthesis:none;--bg:#0a0a0a;--panel:#111;--line:#27272a;--muted:#a1a1aa;--mono:"Geist Mono",Consolas,monospace;--purple:#c4b5fd;--green:#a7cba0;--cyan:#99c9d3;--orange:#d6b78c;--blue:#a5b9d5}*{box-sizing:border-box}body{margin:0;min-width:320px}button,input{font:inherit}button{cursor:pointer;color:inherit}button:disabled{opacity:.4;cursor:not-allowed}button,a,input{outline-offset:4px}button:focus-visible,a:focus-visible,input:focus-visible{outline:2px solid #a1a1aa}button{transition:background .15s,border-color .15s}::selection{background:#3f3f46;color:#fff}a{color:inherit;text-decoration:none}svg{flex-shrink:0}button svg{vertical-align:middle}.studio{max-width:1440px;margin:auto;padding:0 48px 36px;position:relative;isolation:isolate}.topbar{height:80px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);gap:16px}.brand,.brand>div,.headerRight,.topStatus{display:flex;align-items:center}.brand{gap:12px}.brand img{width:32px;height:32px;object-fit:contain}.brand>div{gap:12px}.brand strong{font-size:17px;letter-spacing:.13em}.brand span{font-size:13px;color:var(--muted);border-left:1px solid #333;padding-left:12px}.versionPill{font:11px var(--mono);border:1px solid #333;border-radius:5px;padding:3px 7px;color:#d4d4d8}.headerRight{gap:24px}.headerRight>a{font-size:13px;color:#d4d4d8}.settingsButton{width:34px;height:34px;background:transparent;border:1px solid var(--line);border-radius:6px}.settingsButton:hover{background:#222}.topStatus{font-size:12px;color:var(--muted);gap:8px}.topStatus i,.statusDot{display:inline-block;width:6px;height:6px;border-radius:50%;background:#91aa99}.topStatus i.offline{background:#e2aa90}.topStatus i.pulse{background:#d6b78c}.hero{position:relative;isolation:isolate;overflow:hidden;display:flex;align-items:center;justify-content:space-between;min-height:245px;padding:42px 0;gap:30px}.hero:before{content:"";position:absolute;z-index:-1;pointer-events:none;inset:-120px -10% -30px;background:radial-gradient(ellipse at 70% 35%,rgba(77,101,131,.09),transparent 57%)}.flowLines{position:absolute;inset:0;width:100%;height:100%;z-index:-1;pointer-events:none;mask-image:linear-gradient(90deg,transparent 25%,#000 70%,transparent)}.flowLines path{fill:none;stroke:#ffffff0e;stroke-width:1}.eyebrow{font:10px var(--mono);letter-spacing:.14em;color:var(--muted);display:flex;align-items:center;gap:8px}.eyebrow span{width:5px;height:5px;background:#a1a1aa;border-radius:50%}.hero h1{font-size:clamp(30px,3.5vw,48px);font-weight:550;letter-spacing:-.055em;line-height:1.12;margin:18px 0 13px}.hero em{font-style:normal;color:#a1a1aa}.hero p{font-size:14px;color:var(--muted);margin:0;line-height:1.7}.heroBadge{display:flex;align-items:center;gap:15px;color:#a1a1aa;padding:16px 0 16px 24px;border-left:1px solid var(--line)}.heroBadge strong,.heroBadge span{display:block}.heroBadge strong{font-size:13px;color:#e4e4e7;font-weight:500}.heroBadge span{font-size:11px;margin-top:6px}.workspaceHeading{display:flex;justify-content:space-between;align-items:center;padding:0 0 15px;font-size:13px}.workspaceHeading small{font:9px var(--mono);letter-spacing:.13em;color:#71717a}.workspaceHeading span{display:flex;gap:8px;align-items:center}.workspaceHeading i{width:8px;height:8px;border:1px solid #a1a1aa;border-radius:2px}.studioBody{display:grid;grid-template-columns:306px minmax(0,1fr);border:1px solid var(--line);border-radius:10px;overflow:hidden;background:var(--panel);min-height:580px}.controlPanel{padding:0 22px 24px;border-right:1px solid var(--line)}.panelHeading{height:52px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);margin:0 -22px;padding:0 22px}.panelHeading span{font:10px var(--mono);color:#d4d4d8;letter-spacing:.06em}.panelHeading small{font-size:10px;color:#71717a}.controlSection{padding-top:24px}.sectionLabel{display:block;font-size:12px;font-weight:500;margin-bottom:10px;color:#d4d4d8}.dropArea{border:1px dashed #3f3f46;border-radius:7px;min-height:174px;background:#0d0d0d;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:18px;text-align:center}.dropArea.dragging,.dropArea:hover{border-color:#a1a1aa;background:#181818}.dropIcon{width:36px;height:36px;display:grid;place-items:center;border:1px solid var(--line);border-radius:7px;margin-bottom:12px;color:#d4d4d8}.dropArea>strong{font-size:13px;font-weight:500}.dropArea>span{font-size:11px;color:#a1a1aa;margin-top:6px}.dropArea>button{background:#202020;border:1px solid #383838;border-radius:5px;margin-top:13px;height:30px;padding:0 12px;font-size:11px}.dropArea>button:hover{background:#2b2b2b}.dropArea.withFile{min-height:100px;padding:12px}.selectedFile{display:grid;grid-template-columns:28px minmax(0,1fr) 25px;gap:8px;width:100%;text-align:left;align-items:center}.selectedFile>div{min-width:0}.selectedFile strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px}.selectedFile span{display:block;margin-top:6px;font:10px var(--mono);color:#a1a1aa}.selectedFile button{background:transparent;border:0;padding:4px}.fileGlyph{color:#a1a1aa}.modeCards{display:grid;gap:8px}.modeCards button{display:flex;gap:10px;align-items:center;background:#111;border:1px solid var(--line);border-radius:6px;padding:13px 10px;text-align:left;min-height:62px}.modeCards button.selected{background:#202020;border-color:#71717a}.modeCards button:hover:not(:disabled){background:#222}.radio{width:13px;height:13px;border:1px solid #71717a;border-radius:50%;flex-shrink:0}.selected .radio:after{content:"";display:block;background:#e4e4e7;width:5px;height:5px;border-radius:50%;margin:3px}.modeCards strong{display:block;font-size:12px;font-weight:500}.modeCards small{display:block;font-size:10px;color:#a1a1aa;margin-top:5px}.runButton{display:flex;align-items:center;justify-content:center;gap:9px;width:100%;height:40px;margin-top:22px;border:1px solid #fafafa;border-radius:6px;background:#fafafa;color:#18181b;font-size:12px;font-weight:600}.runButton:hover:not(:disabled){background:#d4d4d8}.runButton:disabled{opacity:.4}.demoButton{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;border:0;background:transparent;margin-top:10px;padding:10px 0;color:#a1a1aa;font-size:11px}.demoButton:hover{color:#fff}.workflowNote{display:flex;align-items:flex-start;gap:9px;border-top:1px solid var(--line);padding-top:18px;margin-top:14px;color:#71717a}.workflowNote p{font-size:11px;line-height:1.7;margin:0;color:#a1a1aa}.engineInfo{margin-top:20px}.engineInfo>div{display:flex;justify-content:space-between;margin-top:11px;font-size:10px;color:#71717a}.engineInfo b{color:#a1a1aa;font-weight:400;font-family:var(--mono)}.errorBox{margin-top:16px;display:flex;gap:8px;background:#251a1a;border:1px solid #523131;border-radius:6px;padding:12px;color:#f1b6b6;font-size:12px;line-height:1.6;overflow-wrap:anywhere}.editorShell{min-width:0;display:flex;flex-direction:column;background:#0d0d0d}.editorTabs{display:flex;align-items:center;height:52px;padding:0 16px;border-bottom:1px solid var(--line);gap:6px;flex-shrink:0}.editorTabs button{display:flex;align-items:center;gap:7px;padding:8px 12px;background:transparent;border:1px solid transparent;border-radius:5px;color:#a1a1aa;font-size:11px}.editorTabs button.active{background:#232323;border-color:#333;color:#fafafa}.editorTabs em{font-style:normal;font-size:9px;border-radius:4px;background:#3c3021;padding:2px 5px}.dirtyDot{width:5px;height:5px;background:#a1a1aa;border-radius:50%}.editorToolbar{min-height:52px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 16px;border-bottom:1px solid #202020}.fileTrail{display:flex;align-items:center;gap:8px;min-width:0;font:10px var(--mono);color:#71717a}.fileTrail b{font-weight:400;color:#a1a1aa;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.editorActions{display:flex;align-items:center;gap:5px}.editorActions>button,.fontControl button{height:28px;min-width:28px;padding:4px;border:1px solid transparent;border-radius:4px;background:transparent;color:#a1a1aa}.editorActions>button:hover,.editorActions>button.active,.fontControl button:hover{background:#272727;color:#fff}.searchBox{height:28px;width:145px;border:1px solid #2a2a2a;display:flex;align-items:center;gap:6px;border-radius:5px;padding:0 8px;color:#71717a}.searchBox input{min-width:0;width:100%;border:0;background:transparent;color:#ddd;font-size:10px}.searchBox span{font:9px var(--mono)}.fontControl{display:flex;align-items:center;font:10px var(--mono);color:#a1a1aa}.editorViewport{flex:1;min-height:430px;position:relative;min-width:0}.emptyEditor{min-height:430px;height:100%;display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center;padding:35px}.emptyLogo{border:1px solid #303030;border-radius:12px;width:62px;height:62px;display:grid;place-items:center;margin-bottom:23px;background:#151515}.emptyLogo img{width:36px;height:36px;object-fit:contain;opacity:.8}.emptyEyebrow{font:9px var(--mono);color:#71717a;letter-spacing:.12em}.emptyEditor h2{font-size:29px;font-weight:500;line-height:1.2;letter-spacing:-.04em;margin:14px 0}.emptyEditor p{font-size:12px;line-height:1.8;color:#a1a1aa;max-width:310px;margin:0}.shortcuts{display:flex;gap:20px;margin-top:28px;font-size:10px;color:#a1a1aa}.shortcuts span{display:flex;align-items:center;gap:6px}.shortcuts kbd{font:9px var(--mono);border:1px solid #333;border-radius:4px;padding:3px 5px;background:#171717}.sourcePanel{display:flex;flex-direction:column;max-height:600px;min-width:0}.pageBar{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:36px;padding:5px 14px;font:10px var(--mono);color:#a1a1aa;border-bottom:1px solid #202020}.pageBar>span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pageBar>div{display:flex;align-items:center;gap:10px;flex-shrink:0}.pageBar button{border:1px solid #333;background:#171717;border-radius:4px;padding:2px 7px}.codeEditor{overflow:auto;padding:14px 0 30px;font:var(--code-size)/1.7 var(--mono);min-width:0}.sourceRow{display:flex;min-width:max-content;align-items:stretch}.lineNumber{position:sticky;left:0;flex:0 0 55px;padding:0 12px;text-align:right;color:#71717a;background:#0d0d0d;border-right:1px solid #242424;user-select:none;font-size:11px}.codeLine{font:inherit;white-space:pre;margin:0;padding:0 18px;min-width:0}.wrapCode .sourceRow{min-width:0}.wrapCode .codeLine{white-space:pre-wrap;overflow-wrap:anywhere;flex:1}.tok-keyword{color:var(--purple)}.tok-string{color:var(--green)}.tok-number{color:var(--orange)}.tok-comment{color:#85858b}.tok-builtin{color:var(--cyan)}.tok-function{color:var(--blue)}.tok-constant{color:#d3acd1}.tok-operator{color:#b5b5bc}.tok-identifier,.tok-plain{color:#d4d4d8}.codeEditor mark{background:#50452a;color:inherit;border-radius:2px}.processingView{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:430px;text-align:center;padding:36px}.processingView strong{font-size:16px;font-weight:500}.processingView p{max-width:320px;font-size:12px;color:#a1a1aa;line-height:1.8}.processingOrb{width:32px;height:32px;border:2px solid #333;border-top-color:#eee;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:24px}.progressTrack{height:3px;width:150px;background:#333;overflow:hidden;margin-top:14px}.progressTrack i{display:block;width:35%;height:100%;background:#a1a1aa;animation:progress 2s ease-in-out infinite}.loader{height:14px;width:14px;border:2px solid #888;border-top-color:#111;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@keyframes progress{50%{transform:translate(180%)}}.infoPane{padding:26px;flex:1;min-width:0}.infoHeader{display:flex;justify-content:space-between;align-items:center;padding-bottom:22px;border-bottom:1px solid var(--line);gap:10px}.infoHeader span{font:10px var(--mono);color:#a1a1aa}.infoHeader h2{font-size:24px;font-weight:500;letter-spacing:-.04em;margin:8px 0 0}.quality{font:10px var(--mono);border:1px solid #444;border-radius:5px;padding:6px;color:#d4d4d8}.quality.partial{color:#d6b78c;border-color:#51442d}.metricGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-bottom:1px solid var(--line)}.metricGrid article{padding:20px 12px 20px 0;min-width:0}.metricGrid span{display:block;font-size:11px;color:#a1a1aa;margin-bottom:10px}.metricGrid strong{font:12px var(--mono);overflow-wrap:anywhere}.diagnosticList,.candidateList{padding-top:24px}.diagnosticList h3,.candidateList h3{font-size:12px;font-weight:500}.diagnosticRow{display:flex;gap:15px;border-top:1px solid var(--line);padding:12px 0;font-size:12px;line-height:1.8;color:#a1a1aa}.diagnosticRow>span{font-family:var(--mono);color:#71717a}.diagnosticRow p{margin:0;overflow-wrap:anywhere}.cleanDiagnostic{display:flex;align-items:center;gap:8px;font-size:12px;color:#b5cbb8;padding:12px;border:1px solid #2d3e31;border-radius:6px}.candidate{display:grid;grid-template-columns:minmax(0,1fr) minmax(40px,1fr) 30px;gap:12px;align-items:center;padding:12px 0;font:10px var(--mono);border-top:1px solid var(--line)}.candidate>span{overflow-wrap:anywhere}.candidate>div{height:3px;background:#292929}.candidate i{display:block;height:3px;background:#a1a1aa}.metadataTable>div{display:grid;grid-template-columns:110px minmax(0,1fr);padding:16px 0;gap:20px;border-bottom:1px solid var(--line);font-size:12px}.metadataTable dt{color:#a1a1aa}.metadataTable dd{margin:0;overflow-wrap:anywhere;font:11px/1.7 var(--mono)}.statusbar{margin-top:auto;display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:33px;padding:8px 14px;border-top:1px solid var(--line);font:9px var(--mono);color:#a1a1aa}.statusbar>div{display:flex;align-items:center;gap:12px}.statusbar b,.statusbar strong{font-weight:400}.statusDot.busy{background:#d6b78c}.connectionPanel{display:flex;align-items:center;gap:15px;flex-wrap:wrap;padding:18px;border:1px solid var(--line);border-radius:8px;margin-top:15px;font-size:12px;background:#111}.connectionPanel label{display:flex;align-items:center;gap:12px}.connectionPanel input{width:290px;max-width:100%;border:1px solid #444;border-radius:5px;padding:8px;background:#0a0a0a;color:#fff}.connectionPanel span{color:#a1a1aa}.connectionPanel button{margin-left:auto;border:1px solid #444;border-radius:5px;background:#222;padding:7px 15px}@media(min-width:1500px){.studio{padding-top:12px}.hero{min-height:275px}.studioBody{min-height:650px}.emptyEditor,.processingView{min-height:490px}}@media(max-width:1100px){.studio{padding:0 24px 24px}.studioBody{grid-template-columns:280px minmax(0,1fr)}.heroBadge{display:none}.editorToolbar,.editorActions{flex-wrap:wrap}.fileTrail{max-width:100%}.hero{min-height:220px}.statusbar>div:first-child span:nth-of-type(n+2){display:none}}@media(max-width:760px){.studio{padding:0 16px 20px}.topbar{height:68px}.brand span,.headerRight>a{display:none}.headerRight{gap:12px}.topStatus{font-size:10px}.hero{min-height:210px;padding:35px 0}.hero p{font-size:12px}.workspaceHeading small{display:none}.studioBody{grid-template-columns:1fr}.controlPanel{border-right:0;border-bottom:1px solid var(--line)}.modeCards{grid-template-columns:1fr 1fr}.modeCards button{min-width:0;align-items:flex-start}.workflowNote,.engineInfo{display:none}.editorToolbar{gap:12px}.editorActions{width:100%;flex-wrap:nowrap}.searchBox{flex:1;width:auto}.editorTabs{padding:0 8px;gap:0}.editorTabs button{padding:8px 10px}.emptyEditor{padding:30px 18px}.statusbar{font-size:8px;gap:6px}.statusbar>div{gap:7px}.connectionPanel label{align-items:flex-start;flex-direction:column;width:100%}.connectionPanel input{width:100%}.shortcuts{gap:12px}.infoPane{padding:20px}.pageBar{font-size:9px}.brand{gap:7px}.brand strong{font-size:14px}.versionPill{font-size:9px}.settingsButton{width:30px;height:30px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}
