:root,:root[data-theme=dark]{--accent:#00d4a4;--accent-pressed:#20b486;--accent-soft:#4ee0c2;--bg:#080f14;--surface:#11161d;--surface-raised:#161c24;--border:#1d2430;--border-strong:#2a313c;--muted-fg:#6b7787;--fg:#e6ebf1;--success:#21a852;--warning:#e6891d;--danger:#e34437;--info:#2879ef;--special:#7e55f0;--radius-sm:4px;--radius:8px;--radius-md:12px;--radius-lg:16px;--radius-xl:20px;--s1:8px;--s2:16px;--s3:24px;--s4:32px;--s5:40px;--s6:48px;--s8:64px;--font:"Inter", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;--mono:ui-monospace, "SF Mono", "Cascadia Code", Menlo, monospace}:root[data-theme=light]{--bg:#f7f9fb;--surface:#fff;--surface-raised:#fff;--border:#e2e8f0;--border-strong:#cbd5e1;--muted-fg:#64748b;--fg:#0f172a}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background:var(--bg);color:var(--fg);font-family:var(--font);-webkit-font-smoothing:antialiased;font-size:14px;line-height:20px}h1{margin:0;font-size:32px;font-weight:700;line-height:40px}h2{margin:0;font-size:24px;font-weight:600;line-height:32px}h3{margin:0;font-size:20px;font-weight:600;line-height:28px}h4{margin:0;font-size:18px;font-weight:500;line-height:24px}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}code,pre{font-family:var(--mono);font-size:12px;line-height:16px}.app{flex-direction:column;min-height:100%;display:flex}.nav{align-items:center;gap:var(--s2);padding:0 var(--s3);background:var(--surface);border-bottom:1px solid var(--border);z-index:10;height:56px;display:flex;position:sticky;top:0}.nav a{color:var(--muted-fg);padding:var(--s1) 0;font-weight:500}.nav a:hover{color:var(--fg);text-decoration:none}.nav a.active{color:var(--accent)}.nav .spacer{flex:1}.brand{cursor:pointer;margin-right:var(--s2);font-size:16px;font-weight:700}.brand span{color:var(--accent)}.token{background:var(--bg);border:1px solid var(--border-strong);border-radius:var(--radius);color:var(--fg);padding:6px var(--s1);width:180px;font-family:var(--mono);font-size:12px}main{padding:var(--s4) var(--s3) var(--s8);width:100%;max-width:1080px;margin:0 auto}.screen{gap:var(--s4);flex-direction:column;display:flex}.screen-head{align-items:flex-start;gap:var(--s1);flex-direction:column;display:flex}section{gap:var(--s2);flex-direction:column;display:flex}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--s3);gap:var(--s2);flex-direction:column;display:flex}.card-clickable{cursor:pointer}.card-clickable:hover{border-color:var(--border-strong);background:var(--surface-raised)}.grid{gap:var(--s2);grid-template-columns:repeat(auto-fill,minmax(260px,1fr));display:grid}.stats{gap:var(--s2);flex-wrap:wrap;display:flex}.stat{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:var(--s2) var(--s3);min-width:120px}.stat-value{font-size:24px;font-weight:600;line-height:32px}.stat-label{color:var(--muted-fg);font-size:12px;line-height:16px}.btn{border-radius:var(--radius);padding:var(--s1) var(--s2);cursor:pointer;border:1px solid #0000;align-self:flex-start;font-family:inherit;font-size:14px;font-weight:500}.btn-primary{background:var(--accent);color:var(--bg)}.btn-primary:hover{background:var(--accent-pressed)}.btn-secondary{border-color:var(--border-strong);color:var(--fg);background:0 0}.btn-ghost{color:var(--muted-fg);background:0 0}.btn:disabled{opacity:.5;cursor:not-allowed}.tag{border-radius:var(--radius-sm);padding:2px var(--s1);background:var(--surface-raised);color:var(--muted-fg);border:1px solid var(--border-strong);margin-right:var(--s1);align-self:flex-start;font-size:11px;font-weight:500;line-height:16px;display:inline-block}.tag-success{color:var(--success);border-color:var(--success)}.tag-warning{color:var(--warning);border-color:var(--warning)}.tag-danger{color:var(--danger);border-color:var(--danger)}.tag-info{color:var(--info);border-color:var(--info)}.rows{flex-direction:column;gap:1px;margin:0;padding:0;list-style:none;display:flex}.rows li{align-items:center;gap:var(--s2);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:var(--s1) var(--s2);display:flex}.row-between{justify-content:space-between;align-items:center;gap:var(--s2);display:flex}.row{align-items:center;gap:var(--s2);display:flex}.form-row{gap:var(--s2);flex-wrap:wrap;display:flex}.field{flex-direction:column;gap:4px;display:flex}.field-label{color:var(--muted-fg);font-size:12px}.field input,.field select{background:var(--bg);border:1px solid var(--border-strong);border-radius:var(--radius);color:var(--fg);padding:6px var(--s1);min-width:180px;font-family:inherit;font-size:14px}.field input:focus,.field select:focus{border-color:var(--accent);outline:none}.muted{color:var(--muted-fg);margin:0}.small{font-size:12px;line-height:16px}.empty{padding:var(--s3);border:1px dashed var(--border-strong);border-radius:var(--radius)}.token-hint{margin-top:var(--s3)}.failed{border:1px solid var(--danger);border-radius:var(--radius);padding:var(--s2);gap:var(--s1);flex-direction:column;display:flex}.json{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:var(--s2);max-height:380px;color:var(--fg);margin:0;overflow:auto}.timeline{flex-direction:column;gap:1px;margin:0;padding:0;list-style:none;display:flex}.timeline li{align-items:center;gap:var(--s2);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:6px var(--s2);display:flex}.timeline li.gate{border-color:var(--accent)}.timeline .seq{color:var(--muted-fg);font-family:var(--mono);min-width:24px;font-size:11px}.timeline .kind{min-width:120px;color:var(--muted-fg)}.yaml{resize:vertical;background:var(--bg);width:100%;min-height:420px;color:var(--fg);border:1px solid var(--border-strong);border-radius:var(--radius);font-family:var(--mono);padding:var(--s2);font-size:12px;line-height:18px}.errors{color:var(--danger);padding-left:var(--s3);margin:0;font-size:12px}.outcome{gap:var(--s1);margin-top:var(--s2);flex-direction:column;display:flex}.progress{flex-direction:column;gap:4px;width:100%;max-width:420px;display:flex}.progress-bar{background:var(--accent);border-radius:var(--radius-sm);min-width:2px;height:4px;transition:width .2s}.progress{border-top:1px solid var(--border);padding-top:var(--s1)}.builder-fields{gap:var(--s2);flex-direction:column;display:flex}.builder-fields .field input,.builder-fields .field select{min-width:260px;max-width:520px}.small-area,.json-area{background:var(--bg);color:var(--fg);border:1px solid var(--border-strong);border-radius:var(--radius);font-family:var(--mono);padding:var(--s1);resize:vertical;width:100%;font-size:12px;line-height:18px}.small-area{min-height:56px;font-family:var(--font);font-size:14px}.json-area{min-height:140px}.json-area.invalid{border-color:var(--danger)}.chips{align-items:center;gap:var(--s1);flex-wrap:wrap;display:flex}.chip{background:var(--bg);color:var(--muted-fg);border:1px solid var(--border-strong);padding:4px var(--s2);cursor:pointer;border-radius:999px;font-family:inherit;font-size:13px}.chip:hover{border-color:var(--accent)}.chip-on{color:var(--accent);border-color:var(--accent);background:var(--surface)}.chip-input{background:var(--bg);border:1px dashed var(--border-strong);color:var(--fg);padding:4px var(--s2);border-radius:999px;width:110px;font-family:inherit;font-size:13px}.chip-input:focus{border-color:var(--accent);outline:none}.item-list{gap:var(--s2);flex-direction:column;display:flex}.item-card{background:var(--bg);border:1px solid var(--border);border-radius:var(--radius);padding:var(--s2);gap:var(--s1);flex-direction:column;display:flex}.item-fields{gap:var(--s2);flex-wrap:wrap;display:flex}.item-fields .field input,.item-fields .field select{min-width:160px;max-width:260px}.item-fields .field .small-area{min-width:320px}.item-details summary{cursor:pointer}.item-remove,.item-add{border:1px solid var(--border-strong);border-radius:var(--radius);color:var(--muted-fg);cursor:pointer;padding:3px var(--s2);background:0 0;align-self:flex-start;font-family:inherit;font-size:12px}.item-remove:hover{color:var(--danger);border-color:var(--danger)}.item-add:hover{color:var(--accent);border-color:var(--accent)}.field-inline{align-items:center;gap:var(--s1);cursor:pointer;flex-flow:wrap}.field-inline .small{flex-basis:100%}.toggle{flex:none;width:34px;height:18px;display:inline-flex;position:relative}.toggle input{opacity:0;cursor:pointer;margin:0;position:absolute;inset:0}.toggle-track{background:var(--border-strong);pointer-events:none;border-radius:999px;width:100%;transition:background .12s}.toggle-track:after{content:"";background:var(--bg);border-radius:50%;width:14px;height:14px;transition:transform .12s;position:absolute;top:2px;left:2px}.toggle input:checked+.toggle-track{background:var(--accent)}.toggle input:checked+.toggle-track:after{transform:translate(16px)}.toggle input:focus-visible+.toggle-track{outline:2px solid var(--accent);outline-offset:2px}.table-scroll{overflow-x:auto}.agg-table{border-collapse:collapse;width:100%;font-size:13px}.agg-table th,.agg-table td{text-align:left;padding:6px var(--s2);border-bottom:1px solid var(--border);white-space:nowrap}.agg-table th{color:var(--muted-fg);font-size:12px;font-weight:600}.login{max-width:420px;margin:8vh auto 0}.login form{gap:var(--s3);flex-direction:column;display:flex}.login .btn{width:100%}.error-text{color:var(--danger);margin:0;font-size:13px}.field-hint{margin-top:4px;display:block}button.linklike{cursor:pointer;color:var(--muted-fg);font:inherit;background:0 0;border:none;padding:0;font-size:13px}button.linklike:hover{color:var(--fg)}
