:root{--bg:#0b0f14;--panel:#121821;--panel-2:#0e141b;--border:#1f2a37;--text:#e6edf3;--muted:#8b98a5;--accent:#36d0c4;--accent-dim:#16463f;--success:#3fb950;--danger:#f85149;--warn:#d29922;--sans:ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,"PingFang SC","Hiragino Sans GB","Microsoft YaHei",sans-serif;--mono:ui-monospace,"SF Mono","JetBrains Mono","Menlo","Consolas",monospace}*{box-sizing:border-box}body,html{margin:0;padding:0;background:var(--bg);color:var(--text);font-family:var(--sans);-webkit-font-smoothing:antialiased}.wrap{max-width:880px;margin:0 auto;padding:32px 20px 80px}.masthead{display:flex;align-items:baseline;gap:14px;border-bottom:1px solid var(--border);padding-bottom:16px}.brand{font-family:var(--mono);font-size:13px;letter-spacing:.18em;color:var(--accent);text-transform:uppercase}.masthead h1{font-size:20px;font-weight:600;margin:0;letter-spacing:-.01em}.masthead .sub{margin-left:auto;font-family:var(--mono);font-size:12px;color:var(--muted)}.panel{background:var(--panel);border:1px solid var(--border);border-radius:10px;padding:18px;margin-top:22px}label.field{display:block;font-family:var(--mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin-bottom:8px}select,textarea{width:100%;background:var(--panel-2);color:var(--text);border:1px solid var(--border);border-radius:8px;padding:12px 14px;font-family:var(--sans);font-size:15px;line-height:1.5;resize:vertical}select:focus,textarea:focus{outline:2px solid var(--accent-dim);border-color:var(--accent)}.controls{display:flex;gap:14px;align-items:end;margin-top:14px}.controls .grow{flex:0 0 240px}button{font-family:var(--mono);font-size:13px;letter-spacing:.06em;cursor:pointer;background:var(--accent);color:#04211e;border:none;border-radius:8px;padding:12px 20px;font-weight:600}button:hover{filter:brightness(1.08)}button:disabled{opacity:.45;cursor:not-allowed;filter:none}button.ghost{background:transparent;color:var(--text);border:1px solid var(--border)}button.ghost:hover{border-color:var(--accent);color:var(--accent)}.statusline{display:flex;align-items:center;gap:10px;margin-top:22px;font-family:var(--mono);font-size:12px;color:var(--muted)}.dot{width:8px;height:8px;border-radius:50%;background:var(--muted)}.dot.run{background:var(--accent);animation:pulse 1.1s ease-in-out infinite}.dot.ok{background:var(--success)}.dot.err{background:var(--danger)}@keyframes pulse{0%,to{opacity:1}50%{opacity:.25}}.relay{margin-top:14px;position:relative;padding-left:28px}.relay:before{content:"";position:absolute;left:9px;top:6px;bottom:6px;width:2px;background:var(--border)}.node{position:relative;margin:0 0 14px}.node:before{content:"";position:absolute;left:-23px;top:18px;width:12px;height:12px;border-radius:50%;background:var(--panel);border:2px solid var(--muted)}.node.running:before{border-color:var(--accent);box-shadow:0 0 0 4px var(--accent-dim);animation:pulse 1.1s ease-in-out infinite}.node.succeeded:before{border-color:var(--success);background:var(--success)}.node.failed:before{border-color:var(--danger);background:var(--danger)}.card{background:var(--panel);border:1px solid var(--border);border-radius:10px;overflow:hidden}.card .head{display:flex;align-items:center;gap:10px;padding:12px 16px;border-bottom:1px solid transparent}.card.open .head{border-bottom-color:var(--border)}.card .key{font-weight:600;font-size:15px}.card .badge,.card .provider{font-family:var(--mono);font-size:11px;color:var(--muted)}.card .badge{margin-left:auto;letter-spacing:.08em;text-transform:uppercase;padding:3px 9px;border-radius:99px;border:1px solid var(--border)}.card.running .badge{color:var(--accent);border-color:var(--accent)}.card.succeeded .badge{color:var(--success);border-color:var(--success)}.card.failed .badge{color:var(--danger);border-color:var(--danger)}.card .body{padding:4px 18px 16px}.errbox{font-family:var(--mono);font-size:13px;color:var(--danger);padding:12px 16px}.md{font-size:14.5px;line-height:1.62;color:var(--text)}.md h1,.md h2,.md h3,.md h4{line-height:1.3;margin:16px 0 8px}.md h1{font-size:18px}.md h2{font-size:16px}.md h3{font-size:15px}.md p,.md ul{margin:8px 0}.md ul{padding-left:22px}.md li{margin:3px 0}.md code{font-family:var(--mono);font-size:.88em;border:1px solid var(--border);border-radius:4px;padding:1px 5px}.md code,.md pre{background:var(--panel-2)}.md pre{border:1px solid var(--border);border-radius:8px;padding:12px 14px;overflow-x:auto}.md pre code{border:none;background:none;padding:0}.md a{color:var(--accent)}.result{margin-top:26px}.result h2{font-size:15px;font-family:var(--mono);letter-spacing:.06em;color:var(--muted);text-transform:uppercase;margin:0 0 14px}.exports{display:flex;flex-wrap:wrap;gap:10px}.note{font-size:12px;color:var(--muted);margin-top:12px;line-height:1.5}.banner{border:1px solid var(--danger);background:rgba(248,81,73,.08);color:var(--danger);border-radius:8px;padding:12px 16px;font-size:14px;margin-top:16px}@media (max-width:560px){.controls{flex-direction:column;align-items:stretch}.controls .grow{flex:1 1 auto}.masthead{flex-wrap:wrap}.masthead .sub{margin-left:0;width:100%}}