*{box-sizing:border-box}html,body{margin:0;padding:0}body{font:15px/1.5 -apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,Hiragino Sans GB,Microsoft YaHei,sans-serif;background:#0f1115;color:#e6e6e6}header{display:flex;align-items:baseline;gap:12px;padding:14px 16px;background:#171a21;border-bottom:1px solid #262a33}header h1{margin:0;font-size:18px}main{max-width:720px;margin:0 auto;padding:12px 16px 80px}.muted{color:#8b93a3;font-size:13px}.card{background:#171a21;border:1px solid #262a33;border-radius:10px;padding:12px;margin-bottom:12px}.row{display:flex;gap:8px;align-items:center;margin-bottom:8px;flex-wrap:wrap}.row:last-child{margin-bottom:0}input,select{flex:1;min-width:120px;padding:8px 10px;border-radius:8px;border:1px solid #2b3040;background:#0f1115;color:#e6e6e6;font-size:14px}button{padding:8px 14px;border-radius:8px;border:1px solid #2b3040;background:#232734;color:#e6e6e6;cursor:pointer;font-size:14px}button:hover{background:#2c3140}button:disabled{opacity:.45;cursor:default}button.primary{background:#3b5bdb;border-color:#3b5bdb}button.primary:hover{background:#4a6ae0}button.danger{background:#a3302e;border-color:#a3302e}button.danger:hover{background:#b93a37}button.ghost{background:transparent}.err{color:#ff7b72;font-size:13px;margin-top:6px}#session-list{list-style:none;padding:0;margin:0}#session-list li{display:flex;justify-content:space-between;align-items:center;padding:12px;margin-bottom:8px;background:#171a21;border:1px solid #262a33;border-radius:10px;cursor:pointer}#session-list li:hover{border-color:#3b5bdb}.status{font-size:12px;padding:2px 8px;border-radius:999px;background:#232734;color:#8b93a3}.status.running{background:#1f3b2c;color:#5ddb8a}.status.waiting_input{background:#3b341f;color:#e0c060}.status.done{background:#2a3040;color:#7fa6ff}.status.error{background:#3b1f1f;color:#ff7b72}.events{max-height:58vh;overflow-y:auto;border:1px solid #262a33;border-radius:10px;padding:8px;margin-bottom:10px;background:#0f1115}.ev{padding:8px;border-bottom:1px solid #1d2129}.ev:last-child{border-bottom:none}.ev-head{font-size:12px;color:#8b93a3;margin-bottom:2px}.ev-body{white-space:pre-wrap;word-break:break-word;font-size:14px}pre.ev-body{background:#0b0d11;border:1px solid #262a33;border-radius:8px;padding:8px;overflow-x:auto;font-size:12px;margin:6px 0 0}.ev.approval_request{border-left:3px solid #e0c060;background:#1c1a14}code{background:#232734;padding:1px 5px;border-radius:5px}
