:root{--bg: #0a0d13;--card: #141a23;--line: #2a3340;--ink: #f3f6fa;--muted: #9fb0c3;--accent: #4c9ffe;--accent-ink: #06121f;--danger: #ff7b72}*{box-sizing:border-box}body{margin:0;font:16px/1.55 -apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;color:var(--ink);background:var(--bg)}.center{display:grid;place-items:center;min-height:100vh}.app{max-width:980px;margin:0 auto;padding:0 20px 60px}header{display:flex;align-items:center;gap:16px;padding:18px 0;border-bottom:1px solid var(--line);margin-bottom:24px}header h1{font-size:21px;margin:0;letter-spacing:.2px}header nav{display:flex;gap:6px;margin-left:auto}header nav button{background:none;border:1px solid transparent;padding:6px 12px;border-radius:8px;cursor:pointer;color:var(--muted)}header nav button:hover{color:var(--ink)}header nav button.active{background:var(--card);border-color:var(--line);color:var(--ink)}table{width:100%;border-collapse:collapse;background:var(--card);border:1px solid var(--line);border-radius:10px;overflow:hidden}th,td{text-align:left;padding:10px 12px;border-bottom:1px solid var(--line)}th{font-size:13px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);background:#10151d}tr:last-child td{border-bottom:none}tbody tr:hover{background:#171e28}.muted{color:var(--muted);text-align:center;padding:28px}.badge{font-size:12px;padding:2px 8px;border-radius:999px;text-transform:capitalize;font-weight:600}.badge.active{background:#3fb95029;color:#56d364}.badge.cancelled{background:#f8514929;color:var(--danger)}.badge.done{background:#8b949e2e;color:var(--muted)}button{font:inherit;padding:6px 12px;border:1px solid var(--line);background:#1b232f;color:var(--ink);border-radius:8px;cursor:pointer}button:hover{border-color:#3c4859;background:#222c3a}button.primary{background:var(--accent);border-color:var(--accent);color:var(--accent-ink);font-weight:600;margin-bottom:16px}button.primary:hover{background:#6cb0ff}button:disabled{opacity:.35;cursor:default}.err{background:#f8514924;color:var(--danger);padding:10px 12px;border-radius:8px;border:1px solid rgba(248,81,73,.3)}.editor{background:var(--card);border:1px solid var(--line);border-radius:10px;padding:20px}.editor h2{margin:0 0 16px;font-size:16px}.editor label{display:block;margin-bottom:16px;font-size:14px;color:var(--muted)}input,select,textarea{display:block;width:100%;margin-top:5px;padding:10px 12px;line-height:1.4;background:#0d131c;border:1px solid var(--line);border-radius:8px;font:inherit;color:var(--ink)}input,select{min-height:44px}select{-moz-appearance:none;appearance:none;-webkit-appearance:none;padding-right:34px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12' fill='none' stroke='%239fb0c3' stroke-width='1.5'%3E%3Cpath d='M2.5 4.5 6 8l3.5-3.5'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center}select option{background:#0d131c;color:var(--ink)}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 2px #4c9ffe40}textarea{resize:vertical;min-height:60px}.editor .actions{display:flex;gap:8px;margin-top:8px}.flow{border-top:1px solid var(--line);margin-top:8px;padding-top:16px}.flow .hint{font-size:14px;color:var(--muted);margin:0 0 10px}.flow .hint b{color:var(--ink)}.flow .tokens{display:flex;flex-wrap:wrap;align-items:center;gap:6px}.token{background:#4c9ffe24;border:1px solid rgba(76,159,254,.4);color:#8cc2ff;padding:2px 8px;border-radius:6px;cursor:pointer;width:auto;margin:0;display:inline-block;font-family:ui-monospace,SFMono-Regular,monospace;font-size:12px}.token:hover{background:#4c9ffe42;border-color:var(--accent)}.step{border:1px solid var(--line);border-radius:8px;padding:10px;margin-bottom:10px;background:#121821}.step.wait{background:#0f141c}.step-head{display:flex;justify-content:space-between;font-size:13px;font-weight:600;margin-bottom:6px}.step-ctrls button{padding:2px 8px;margin-left:4px;width:auto}.step .wait{display:flex;align-items:center;gap:8px;color:var(--ink);margin:0}.step .wait input{width:80px;margin:0}.preview{margin:6px 0 0;padding-left:2px;font-size:13px;color:var(--muted);font-style:italic;white-space:pre-wrap}.add{display:flex;gap:8px}.add button{width:auto}
