:root{--cat-control:#5856d6;--cat-data:#af52de;--cat-ui:#ff9500;--cat-browser:#007aff;--cat-system:#8e8e93;--cat-file:#f5b400;--cat-web:#30b0c7;--cat-orchestrator:#34c759;--cat-dialog:#ff2d55;--cat-unknown:#a1a1a6;--st-grid:#00000013;--st-canvas:#eeeef1;--st-panel:#f6f6f8d1;--st-toolbar:#fafafcd9}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--cat-control:#5e5ce6;--cat-data:#bf5af2;--cat-ui:#ff9f0a;--cat-browser:#0a84ff;--cat-system:#98989d;--cat-file:#ffd60a;--cat-web:#40c8e0;--cat-orchestrator:#30d158;--cat-dialog:#ff375f;--cat-unknown:#7c7c82;--st-grid:#ffffff0f;--st-canvas:#19191a;--st-panel:#262628d6;--st-toolbar:#2c2c2edb}}:root[data-theme=dark]{--cat-control:#5e5ce6;--cat-data:#bf5af2;--cat-ui:#ff9f0a;--cat-browser:#0a84ff;--cat-system:#98989d;--cat-file:#ffd60a;--cat-web:#40c8e0;--cat-orchestrator:#30d158;--cat-dialog:#ff375f;--cat-unknown:#7c7c82;--st-grid:#ffffff0f;--st-canvas:#19191a;--st-panel:#262628d6;--st-toolbar:#2c2c2edb}.studio{background:var(--st-canvas);flex-direction:column;height:100%;display:flex;overflow:hidden}.studio.st-center{justify-content:center;align-items:center}.spin{animation:.8s linear infinite spin}.ellipsis{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.input.invalid{border-color:var(--err)}.input.invalid:focus{box-shadow:0 0 0 3.5px color-mix(in srgb, var(--err) 30%, transparent)}.warn-text{color:var(--warn)}body.st-resizing{cursor:ns-resize;-webkit-user-select:none;user-select:none}.st-top{z-index:3;background:var(--st-toolbar);-webkit-backdrop-filter:saturate(180%)blur(24px);backdrop-filter:saturate(180%)blur(24px);border-bottom:1px solid var(--border);flex:none;align-items:center;gap:6px;height:52px;padding:0 12px;display:flex;position:relative;overflow:auto hidden}.st-top>*{flex-shrink:0}.st-top .spacer{flex-shrink:1;min-width:4px}.st-title{flex-direction:column;flex-shrink:1;min-width:0;margin:0 6px 0 2px;line-height:1.2;display:flex}.st-kicker{color:var(--text-2);font-size:11px;font-weight:400}.st-pname{letter-spacing:-.01em;white-space:nowrap;text-overflow:ellipsis;max-width:280px;font-size:13.5px;font-weight:600;overflow:hidden}.st-save{color:var(--text-3);border-radius:999px;align-items:center;gap:5px;height:20px;padding:0 8px;font-size:11.5px;display:inline-flex}.st-save.dirty{color:var(--signal);background:var(--signal-soft)}.st-save.err{color:var(--err);background:var(--err-soft)}.st-save.ok svg{color:var(--ok)}.st-dot{background:currentColor;border-radius:50%;width:7px;height:7px}.st-sep{background:var(--border-strong);opacity:.7;width:1px;height:20px;margin:0 4px}.st-issues{color:var(--warn)}.st-job{align-items:center;gap:6px;font-size:12px;display:inline-flex}.st-job a{align-items:center;gap:3px;display:inline-flex}.st-robot{height:24px;color:var(--text-2);background:linear-gradient(180deg, var(--control-top), var(--control));box-shadow:var(--control-shadow);border-radius:6px;align-items:center;gap:6px;padding:0 4px 0 8px;display:inline-flex}.st-robot:focus-within{box-shadow:var(--control-shadow), var(--focus)}.st-robot select{color:var(--text);font:500 12px var(--font);cursor:default;background:0 0;border:0;outline:none;max-width:170px}.st-rdot{background:var(--neutral);border-radius:50%;flex:none;width:8px;height:8px}.st-rdot.idle{background:var(--ok);box-shadow:0 0 0 3px var(--ok-soft)}.st-rdot.busy{background:var(--info);animation:1.4s infinite pulse}.st-run{color:var(--ok)}.st-run:hover:not(:disabled){background:var(--ok-soft)}.st-body{flex:1;grid-template-columns:260px minmax(0,1fr) 340px;min-height:0;display:grid}.st-left,.st-right{background:var(--st-panel);-webkit-backdrop-filter:saturate(180%)blur(24px);backdrop-filter:saturate(180%)blur(24px);flex-direction:column;min-width:0;min-height:0;display:flex}.st-left{border-right:1px solid var(--border)}.st-right{border-left:1px solid var(--border)}.st-center-col{flex-direction:column;min-width:0;min-height:0;display:flex}.st-ptabs{background:var(--fill);border-radius:8px;flex:none;gap:2px;margin:10px 10px 2px;padding:2px;display:flex}.st-ptabs button{height:22px;font:500 12px var(--font);color:var(--text);cursor:default;background:0 0;border:0;border-radius:6px;flex:1}.st-ptabs button:hover:not(.active){background:var(--surface-hover)}.st-ptabs button.active{background:var(--seg-active);box-shadow:var(--seg-shadow)}.pal{flex-direction:column;flex:1;min-height:0;display:flex}.pal-search{background:var(--fill);height:28px;color:var(--text-3);border-radius:7px;align-items:center;gap:6px;margin:8px 10px;padding:0 4px 0 8px;transition:box-shadow .15s;display:flex}.pal-search:focus-within{box-shadow:var(--focus);background:var(--input-bg)}.pal-search input{min-width:0;font:13px var(--font);color:var(--text);background:0 0;border:0;outline:0;flex:1}.pal-search input::placeholder{color:var(--text-3)}.pal-list{flex:1;padding:0 8px 10px;overflow-y:auto}.pal-group{margin-bottom:2px}.pal-cat{width:100%;height:28px;font:600 12px var(--font);color:var(--text);cursor:default;text-align:left;background:0 0;border:0;border-radius:6px;align-items:center;gap:7px;padding:0 6px;display:flex}.pal-cat:hover{background:var(--surface-hover)}.pal-cat>svg{color:var(--text-3)}.pal-cat-dot{color:#fff;background:var(--c);border-radius:6px;place-items:center;width:20px;height:20px;display:grid;box-shadow:inset 0 .5px #ffffff40}.pal-count{color:var(--text-3);font-variant-numeric:tabular-nums;margin-left:auto;font-size:11px;font-weight:400}.pal-item{cursor:grab;height:26px;color:var(--text);-webkit-user-select:none;user-select:none;border-radius:6px;align-items:center;gap:8px;padding:0 8px 0 33px;font-size:13px;display:flex}.pal-item:hover{background:var(--surface-hover)}.pal-item:focus{background:var(--brand);color:#fff;outline:none}.pal-item:focus .pal-icon{color:#fff}.pal-item:active{cursor:grabbing}.pal-icon{color:var(--c);display:inline-flex}.pal-label{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.pal-sub-label{letter-spacing:.04em;text-transform:uppercase;color:var(--text-3);padding:6px 8px 2px 33px;font-size:10.5px;font-weight:600}.pal-sep{background:var(--border);height:1px;margin:6px 6px 8px}.pal-item.hit{padding-left:10px}.pal-item.active{background:var(--surface-hover)}.pal-item.active:focus{background:var(--brand)}.pal-where{color:var(--text-3);white-space:nowrap;text-overflow:ellipsis;flex:0 100 auto;min-width:0;max-width:34%;margin-left:auto;padding-left:8px;font-size:11px;overflow:hidden}.pal-item:focus .pal-where{color:#fffc}.pal-label{flex:0 auto;min-width:0}.pal-item.hit .pal-label{flex-shrink:1}.pal-hint{color:var(--text-3);border-top:1px solid var(--border);flex:none;padding:8px 12px;font-size:11px;line-height:1.4}.pf{flex-direction:column;flex:1;min-height:0;display:flex}.pf-head{color:var(--text-2);justify-content:space-between;align-items:center;padding:10px 12px 6px 14px;font-size:11px;font-weight:600;display:flex}.pf-list{flex:1;padding:0 8px;overflow-y:auto}.pf-item{cursor:default;border-radius:6px;align-items:center;gap:8px;height:28px;padding:0 6px 0 8px;font-size:13px;display:flex}.pf-item:hover{background:var(--surface-hover)}.pf-item.active{background:var(--brand);color:#fff}.pf-item.active .pf-ic,.pf-item.active .btn{color:#fff}.pf-item.active .btn.ghost:hover{background:#fff3}.pf-ic{color:var(--brand);flex:none}.pf-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.pf-actions{gap:0;display:none}.pf-item:hover .pf-actions,.pf-item.active .pf-actions{display:inline-flex}.pf-actions .btn.sm.icon{width:22px;height:22px}.pf-actions .btn svg{width:13px;height:13px}.pf-actions .starred svg{color:var(--yellow);fill:var(--yellow)}.pf-edit{padding:6px 10px 10px}.st-tabs{background:var(--st-toolbar);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-bottom:1px solid var(--border);flex:none;align-items:center;gap:4px;height:34px;padding:0 8px;display:flex;overflow:auto hidden}.st-tabs>.btn{flex:none;align-self:center}.st-tab{height:24px;color:var(--text-2);cursor:default;border-radius:6px;flex:none;align-items:center;gap:6px;max-width:220px;padding:0 6px 0 10px;font-size:12px;font-weight:500;transition:background .12s;display:inline-flex}.st-tab span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.st-tab:hover{color:var(--text);background:var(--surface-hover)}.st-tab.active{background:var(--seg-active);color:var(--text);box-shadow:var(--seg-shadow)}.st-tab-star{color:var(--yellow);fill:var(--yellow);flex:none}.st-tab-x{color:var(--text-3);cursor:default;background:0 0;border:0;border-radius:4px;padding:2px;display:inline-flex}.st-tab-x:hover{background:var(--fill-2);color:var(--text)}.st-canvas-wrap{background-color:var(--st-canvas);background-image:radial-gradient(var(--st-grid) 1px, transparent 1.3px);background-size:20px 20px;flex:1;min-height:0;overflow:auto}.cv{justify-content:center;min-height:100%;padding:26px 28px 90px;display:flex}.cv-flow{flex-direction:column;width:100%;max-width:700px;display:flex}.cv-empty{text-align:center;color:var(--text-3);padding:40px}.cv-terminal{background:var(--surface);height:24px;color:var(--text-2);box-shadow:var(--shadow-sm), 0 0 0 .5px var(--border);border-radius:999px;align-self:center;align-items:center;gap:6px;padding:0 12px;font-size:11.5px;font-weight:600;display:inline-flex}.cv-terminal.start{color:#fff;background:var(--brand);box-shadow:0 1px 3px color-mix(in srgb, var(--brand) 35%, transparent)}.cv-terminal.end{color:var(--text-3)}.blist{flex-direction:column;display:flex}.dz{flex:none;height:16px;transition:height .1s;position:relative}.dz i{pointer-events:none;background:var(--border-strong);border-radius:1px;width:2px;margin-left:-1px;position:absolute;top:0;bottom:0;left:50%}.blk .dz i,.blk .dz.last i{background:var(--border)}.dz.over{height:26px}.dz.over:after{content:"";background:var(--brand);height:4px;box-shadow:0 0 0 3px var(--brand-soft);border-radius:2px;margin-top:-2px;position:absolute;top:50%;left:0;right:0}.dz.empty{border:1.5px dashed var(--border-strong);height:auto;min-height:42px;color:var(--text-3);background:color-mix(in srgb, var(--surface) 45%, transparent);border-radius:10px;justify-content:center;align-items:center;margin:6px 0;font-size:12px;display:flex}.dz.empty span{pointer-events:none;align-items:center;gap:5px;display:inline-flex}.dz.empty.over{border-color:var(--brand);color:var(--brand);background:var(--brand-soft)}.dz.empty.over:after{display:none}.cv-flow>.dz.empty{min-height:90px;margin:10px 0}.cv-flow>.blist>.dz:first-child i,.cv-flow>.blist>.blist-item>.dz.last i{background:var(--border-strong)}.act{--c:var(--cat-unknown);background:var(--surface);border:1px solid var(--card-border);border-radius:12px;transition:box-shadow .15s,border-color .15s;position:relative;box-shadow:0 .5px 1px #0000000f,0 2px 6px #0000000f}.act:hover{box-shadow:0 .5px 1px #00000014,0 4px 12px #00000017}.act.sel{border-color:var(--brand);box-shadow:0 0 0 1px var(--brand), 0 4px 14px color-mix(in srgb, var(--brand) 22%, transparent)}.act-head{cursor:grab;border-radius:11px 11px 0 0;align-items:center;gap:7px;min-height:40px;padding:6px 10px 6px 4px;display:flex}.act-head:active{cursor:grabbing}.act-head.drop-before{box-shadow:inset 0 3px 0 var(--brand)}.act-head.drop-after{box-shadow:inset 0 -3px 0 var(--brand)}.act-toggle{width:20px;height:20px;color:var(--text-3);cursor:default;background:0 0;border:0;border-radius:5px;flex:none;place-items:center;padding:0;display:grid}.act-toggle:hover{background:var(--surface-hover);color:var(--text)}.act-toggle-sp{flex:none;width:20px}.act-icon{color:#fff;background:linear-gradient(180deg, color-mix(in srgb, var(--c) 82%, #fff), var(--c));border-radius:7px;flex:none;place-items:center;width:26px;height:26px;display:grid;box-shadow:inset 0 .5px #ffffff40,0 .5px 1.5px #00000026}.act-title{letter-spacing:-.005em;white-space:nowrap;text-overflow:ellipsis;cursor:text;min-width:0;font-size:13px;font-weight:600;overflow:hidden}.act-type{color:var(--text-3);white-space:nowrap;flex:none;font-size:11px}.act-rename{border:1px solid var(--brand);min-width:60px;height:24px;font:600 13px var(--font);background:var(--input-bg);color:var(--text);box-shadow:var(--focus);border-radius:5px;outline:none;flex:1;padding:0 6px}.act-flags{flex:none;gap:4px;margin-left:auto;padding-left:6px;display:inline-flex}.act-flag{color:var(--text-3);display:inline-flex}.act-flag.warn{color:var(--warn)}.act-flag.ok{color:var(--ok)}.act-flag.err{color:var(--err)}.act-sum{font-family:var(--mono);color:var(--text-2);white-space:nowrap;text-overflow:ellipsis;margin-top:-4px;padding:0 12px 9px 64px;font-size:11px;overflow:hidden}.act-collapsed{background:var(--fill);color:var(--text-2);font:12px var(--font);cursor:default;border:0;border-radius:6px;margin:0 10px 9px 64px;padding:3px 9px;display:block}.act-collapsed:hover{color:var(--text);background:var(--fill-2)}.act-blocks{flex-direction:column;gap:8px;padding:2px 10px 10px;display:flex}.act-blocks.cols{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.blk{background:color-mix(in srgb, var(--c) 5%, var(--st-canvas));border:1px solid var(--border);border-radius:10px;min-width:0;padding:6px 8px}.blk-label{color:var(--text-2);padding:2px 2px 0;font-size:11px;font-weight:600}.blk-then .blk-label{color:var(--ok)}.blk-else .blk-label,.blk-catch .blk-label{color:var(--err)}.blk-finally .blk-label{color:var(--info)}.act.disabled{opacity:.55;background:repeating-linear-gradient(135deg, var(--surface), var(--surface) 8px, var(--surface-2) 8px, var(--surface-2) 16px)}.act.disabled>.act-head .act-title{color:var(--text-2);text-decoration:line-through}.act.unknown{border-style:dashed;border-color:var(--border-strong)}.act.unknown>.act-head .act-icon{background:var(--fill-2);color:var(--text-2)}.act.tr-done:not(.container){border-color:color-mix(in srgb, var(--ok) 55%, transparent);box-shadow:0 0 0 1px color-mix(in srgb, var(--ok) 35%, transparent), 0 2px 6px #0000000d}.act.tr-done:not(.container)>.act-head{background:color-mix(in srgb, var(--ok) 6%, transparent)}.act.tr-running.container{border-color:color-mix(in srgb, var(--signal) 60%, transparent)}.act.tr-current{border-color:var(--signal);box-shadow:0 0 0 2px var(--signal);z-index:1;animation:1.3s ease-in-out infinite trpulse}.act.tr-current>.act-head{background:var(--signal-soft)}.act.tr-error{border-color:var(--err);box-shadow:0 0 0 2px color-mix(in srgb, var(--err) 45%, transparent)}.act.tr-error>.act-head{background:var(--err-soft)}@keyframes trpulse{0%,to{box-shadow:0 0 0 2px var(--signal), 0 0 0 2px color-mix(in srgb, var(--signal) 45%, transparent)}50%{box-shadow:0 0 0 2px var(--signal), 0 0 0 9px color-mix(in srgb, var(--signal) 0%, transparent)}}.st-rhead{--c:var(--brand);border-bottom:1px solid var(--border);flex:none;align-items:center;gap:10px;min-height:52px;padding:10px 14px;display:flex}.st-rhead h4{font-size:13px}.props{flex:1;padding:14px 14px 30px;overflow-y:auto}.props-empty{text-align:center;color:var(--text-2);padding:48px 24px}.props-empty svg{color:var(--text-3)}.props-desc{color:var(--text-2);background:var(--fill);border-radius:8px;align-items:flex-start;gap:8px;margin-bottom:14px;padding:8px 10px;font-size:12px;line-height:1.45;display:flex}.props-desc svg{color:var(--text-3);flex:none;margin-top:2px}.props-desc.warn{background:var(--warn-soft);color:var(--warn)}.props-desc.warn svg{color:var(--warn)}.props .field{margin-bottom:12px}.props .field>label{align-items:center;gap:4px;font-size:11.5px;display:flex}.props .req{color:var(--err);margin-left:1px}.kind-tag{color:var(--text-3);margin-left:auto;font-size:10.5px;font-weight:500}.props .field.missing .input,.props .field.missing .textarea,.props .field.missing .select{border-color:color-mix(in srgb, var(--warn) 65%, transparent)}.props .hint code{background:var(--fill);border-radius:3px;padding:0 3px;font-size:11px}.code-wrap{position:relative}.code-lang{font:600 10px var(--mono);text-transform:uppercase;color:var(--text-3);background:var(--fill);pointer-events:none;border-radius:4px;padding:1px 5px;position:absolute;top:5px;right:6px}.textarea.code{white-space:pre;overflow-wrap:normal;tab-size:2;background:var(--bg-sunken);min-height:90px;overflow-x:auto}.ac-wrap{width:100%;position:relative}.ac-list{z-index:30;background:var(--material-strong);-webkit-backdrop-filter:saturate(180%)blur(24px);backdrop-filter:saturate(180%)blur(24px);box-shadow:var(--shadow-lg);border-radius:8px;max-height:240px;padding:4px;position:absolute;top:calc(100% + 4px);left:0;right:0;overflow-y:auto}.ac-item{cursor:default;height:24px;color:var(--text);border-radius:5px;align-items:center;gap:7px;padding:0 8px;font-size:12.5px;display:flex}.ac-item.active{background:var(--brand);color:#fff}.ac-item.active .ac-kind{color:#fffc}.ac-kind{color:var(--text-3);margin-left:auto;font-size:10.5px}.var-create{background:var(--brand-soft);color:var(--brand);font:500 12px var(--font);cursor:default;border:0;border-radius:999px;align-items:center;gap:5px;margin-top:6px;padding:3px 10px;display:inline-flex}.var-create:hover{background:color-mix(in srgb, var(--brand) 22%, transparent)}.kv{flex-direction:column;gap:6px;display:flex}.kv-row{grid-template-columns:38% 1fr 26px;align-items:center;gap:5px;display:grid}.kv-row .input.sm{height:26px}.sel-box{flex-direction:column;gap:7px;display:flex}.sel-ask{align-items:center;gap:5px;display:flex}.sel-wait{color:var(--info);background:var(--info-soft);border-radius:8px;align-items:center;gap:7px;padding:7px 9px;font-size:12px;display:flex}.sel-result{background:var(--fill);border-radius:8px;padding:7px 9px}.sel-alts{flex-wrap:wrap;align-items:center;gap:4px;margin-top:6px;display:flex}.sel-alt{background:var(--surface);box-shadow:0 0 0 .5px var(--border-strong);cursor:default;text-overflow:ellipsis;white-space:nowrap;max-width:100%;color:var(--text-2);border:0;border-radius:5px;padding:2px 7px;font-size:11px;overflow:hidden}.sel-alt.active,.sel-alt:hover{box-shadow:0 0 0 1px var(--brand);color:var(--brand)}.btn.on{background:var(--brand-soft);color:var(--brand);box-shadow:none}.uisel{background:var(--fill);border-radius:8px;padding:8px 10px}.uisel.empty{text-align:center;padding:12px}.uisel-app{margin-bottom:5px;font-size:13px}.uisel-path{font-size:11px;font-family:var(--mono);flex-wrap:wrap;align-items:center;gap:3px 0;display:flex}.uisel-step{color:var(--text-3);white-space:nowrap}.uisel-step:after{content:"›";color:var(--text-3);margin:0 5px}.uisel-step.last:after{display:none}.uisel-step.last{color:var(--text);font-weight:600}.uisel-step em{color:var(--signal);margin-left:3px;font-style:normal}.uisel-step sub{margin-left:1px;font-size:9.5px}.uisel-check{border-radius:8px;flex-wrap:wrap;align-items:center;gap:6px;padding:7px 9px;font-size:12px;display:flex}.uisel-check.ok{background:var(--ok-soft);color:var(--ok)}.uisel-check.err{background:var(--err-soft);color:var(--err)}.uisel-check img{object-fit:contain;border:1px solid var(--border);background:#fff;border-radius:6px;flex-basis:100%;max-width:100%;max-height:120px;margin-top:4px}.st-bottom{background:var(--surface);border-top:1px solid var(--border);flex-direction:column;flex:none;min-height:0;display:flex;position:relative}.st-bottom.collapsed{height:auto}.st-resize{cursor:ns-resize;z-index:5;height:8px;position:absolute;top:-4px;left:0;right:0}.st-resize:hover{background:linear-gradient(transparent 3px, var(--brand) 3px, var(--brand) 5px, transparent 5px)}.st-btabs{border-bottom:1px solid var(--border);background:var(--st-toolbar);flex:none;align-items:center;gap:2px;height:34px;padding:0 8px;display:flex;overflow:auto hidden}.st-bottom.collapsed .st-btabs{border-bottom:0}.st-btabs>button:not(.btn){height:24px;font:500 12px var(--font);color:var(--text-2);cursor:default;white-space:nowrap;background:0 0;border:0;border-radius:6px;flex:none;align-items:center;gap:6px;padding:0 10px;display:inline-flex}.st-btabs>button:not(.btn):hover{background:var(--surface-hover);color:var(--text)}.st-btabs>button:not(.btn).active{color:var(--text);background:var(--fill-2)}.st-btabs>.btn{flex:none}.st-count{background:var(--fill);color:var(--text-2);font-variant-numeric:tabular-nums;border-radius:999px;padding:0 6px;font-size:10.5px;line-height:16px}.st-bbody{flex:1;min-height:0;overflow:auto}.st-table{border-collapse:collapse;width:100%;font-size:12.5px}.st-table th{background:var(--material-strong);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);text-align:left;color:var(--text-2);border-bottom:1px solid var(--border);z-index:1;padding:6px 10px;font-size:11px;font-weight:500;position:sticky;top:0}.st-table td{border-bottom:1px solid var(--border);vertical-align:middle;padding:4px 10px}.st-table tbody tr:nth-child(2n) td{background:color-mix(in srgb, var(--fill) 35%, transparent)}.st-table .input.sm,.st-table .select.sm{height:24px}.st-addrow td{border-bottom:0;padding:6px 10px;background:0 0!important}.st-table.locals td{vertical-align:top;padding:5px 10px}.st-json-toggle{text-align:left;cursor:default;color:var(--text);background:0 0;border:0;width:100%;max-width:100%;padding:0}.st-json-toggle pre{white-space:pre-wrap;word-break:break-all;background:var(--bg-sunken);border-radius:6px;max-height:300px;margin:0;padding:6px 8px;font-size:11px;overflow:auto}.st-json-toggle .ellipsis{max-width:640px;color:var(--text-2)}.val-string{color:var(--ok)}.val-number{color:var(--info)}.val-boolean{color:var(--cat-data)}.st-log-wrap{flex-direction:column;height:100%;display:flex}.st-log-tools{border-bottom:1px solid var(--border);flex:none;justify-content:flex-end;padding:4px 12px;display:flex}.st-log{flex:1;padding:4px 0;overflow-y:auto}.st-ll{grid-template-columns:74px 46px 1fr}.st-ll-act{background:var(--fill);color:var(--text-2);font:500 11px var(--font);cursor:default;border:0;border-radius:4px;margin-right:6px;padding:0 6px}.st-ll-act:hover{color:var(--brand)}.issue-list{flex-direction:column;gap:4px;max-height:360px;display:flex;overflow-y:auto}.issue{text-align:left;background:var(--fill);cursor:default;font:13px var(--font);color:var(--text);border:0;border-radius:8px;align-items:flex-start;gap:8px;padding:7px 10px;display:flex}.issue svg{color:var(--warn);flex:none;margin-top:2px}.issue:hover{background:var(--brand-soft)}.pub-warn{background:var(--warn-soft);color:var(--warn);border-radius:10px;margin-bottom:8px;padding:10px}.pub-warn .issue{color:var(--text);background:var(--surface)}.pub-done{align-items:center;gap:14px;display:flex}.pub-done>svg{color:var(--brand);flex:none}.ctx{z-index:150;background:var(--material-strong);-webkit-backdrop-filter:saturate(180%)blur(30px);backdrop-filter:saturate(180%)blur(30px);min-width:210px;box-shadow:var(--shadow-lg);border-radius:9px;padding:5px;animation:80ms fade;position:fixed}.ctx-item{width:100%;height:24px;font:13px var(--font);color:var(--text);cursor:default;text-align:left;background:0 0;border:0;border-radius:5px;align-items:center;gap:8px;padding:0 9px;display:flex}.ctx-item svg{width:14px;height:14px}.ctx-item:hover:not(:disabled){background:var(--brand);color:#fff}.ctx-item:hover:not(:disabled) .ctx-kbd{color:#fffc}.ctx-item:disabled{opacity:.4;cursor:default}.ctx-item.danger{color:var(--err)}.ctx-item.danger:hover:not(:disabled){background:var(--err);color:#fff}.ctx-kbd{font:12px var(--font);color:var(--text-3);margin-left:auto}.ctx-sep{background:var(--border);height:1px;margin:5px 9px}.pk-apps{min-height:300px}.pk-applist{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;max-height:60vh;display:grid;overflow-y:auto}.pk-app{border:1px solid var(--card-border);background:var(--surface);cursor:default;color:var(--text);font:13px var(--font);min-width:0;box-shadow:var(--shadow-sm);text-align:left;border-radius:10px;align-items:center;gap:10px;padding:9px 12px;display:flex}.pk-app:hover{border-color:var(--brand);background:var(--brand-soft)}.pk-app>svg:first-child{color:var(--brand);flex:none}.pk-app-name{align-items:center;gap:6px;font-weight:600;display:flex}.pk-loading{color:var(--text-2);justify-content:center;align-items:center;gap:8px;padding:30px;display:flex}.pk-loading.tall{min-height:360px}.pk-err{background:var(--err-soft);color:var(--err);border-radius:8px;align-items:center;gap:8px;margin-bottom:10px;padding:10px 12px;font-size:13px;display:flex}.pk{flex-direction:column;gap:10px;display:flex}.pk-bar{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.pk-main{grid-template-columns:minmax(0,1fr) 300px;gap:10px;height:56vh;min-height:320px;display:grid}.pk-main.reloading{opacity:.55;pointer-events:none}.pk-shot-wrap{background-color:var(--st-canvas);background-image:radial-gradient(var(--st-grid) 1px, transparent 1.3px);border:1px solid var(--border);background-size:14px 14px;border-radius:10px;justify-content:center;align-items:flex-start;min-width:0;min-height:0;padding:10px;display:flex;overflow:auto}.pk-shot{cursor:crosshair;max-width:100%;line-height:0;display:inline-block;position:relative}.pk-shot img{-webkit-user-select:none;user-select:none;max-width:100%;max-height:calc(56vh - 22px);box-shadow:var(--shadow);border-radius:6px;display:block}.pk-box{pointer-events:none;border-radius:3px;position:absolute}.pk-box.hover{outline:2px solid var(--brand);background:color-mix(in srgb, var(--brand) 12%, transparent)}.pk-box.sel{outline:2px solid var(--signal);background:color-mix(in srgb, var(--signal) 18%, transparent);box-shadow:0 0 0 9999px #0000002e}.pk-box.found{outline:2px dashed var(--ok)}.pk-tip{pointer-events:none;background:var(--text);color:var(--bg);font:500 11px/18px var(--font);white-space:nowrap;z-index:2;border-radius:4px;padding:0 6px;position:absolute;transform:translateY(0)}.pk-tree{border:1px solid var(--border);background:var(--surface);border-radius:10px;flex-direction:column;min-height:0;display:flex;overflow:hidden}.pk-tree-list{flex:1;padding-bottom:6px;overflow:auto}.pk-row{cursor:default;white-space:nowrap;align-items:center;gap:4px;height:22px;padding:0 8px 0 6px;font-size:12px;display:flex}.pk-row:hover,.pk-row.hover{background:var(--brand-soft)}.pk-row.sel{background:var(--signal-soft);box-shadow:inset 3px 0 0 var(--signal)}.pk-row.dis{opacity:.6}.pk-tw{width:14px;color:var(--text-3);flex:none;display:inline-flex}.pk-role{font-family:var(--mono);color:var(--text-2);font-size:11px}.pk-lbl{color:var(--text);text-overflow:ellipsis;overflow:hidden}.pk-sel{border-top:1px solid var(--border);padding-top:10px}.pk-win{gap:8px;margin-bottom:8px}.pk-steps{flex-direction:column;gap:4px;max-height:190px;display:flex;overflow-y:auto}.pk-step{background:var(--fill);border-radius:7px;grid-template-columns:150px repeat(3,minmax(0,1fr)) 100px;align-items:center;gap:6px;padding:4px 6px;display:grid}.pk-step.last{background:var(--signal-soft)}.pk-step-role{white-space:nowrap;text-overflow:ellipsis;font-size:12px;overflow:hidden}.pk-attr{align-items:center;gap:5px;min-width:0;display:flex}.pk-attr .check{color:var(--text-2);flex:none;gap:4px;font-size:11px}.pk-attr .check input{width:13px;height:13px}.pk-attr .input.sm{min-width:0;height:24px;font-size:12px}.pk-attr.na{opacity:.45}.pk-attr:not(.on) .input{color:var(--text-3)}.pk-foot{align-items:center;gap:8px;margin-top:10px;display:flex}.pk-check{border-radius:7px;align-items:center;gap:6px;padding:4px 8px;font-size:12px;display:inline-flex}.pk-check.ok{color:var(--ok);background:var(--ok-soft)}.pk-check.err{color:var(--err);background:var(--err-soft)}.pk-check img{border:1px solid var(--border);background:#fff;border-radius:4px;max-width:120px;max-height:28px}.pl-grid{grid-template-columns:repeat(auto-fill,minmax(min(300px,100%),1fr));gap:14px;display:grid}.pl-card{cursor:pointer;border-radius:12px;flex-direction:column;padding:16px 16px 12px;transition:box-shadow .15s,transform .15s;display:flex;position:relative}.pl-card:hover{box-shadow:var(--shadow);transform:translateY(-1px)}.pl-card:focus-visible{box-shadow:var(--focus);outline:none}.pl-card-top{align-items:flex-start;gap:12px;display:flex}.pl-mark{background:linear-gradient(180deg, color-mix(in srgb, var(--brand) 80%, #fff), var(--brand));color:#fff;width:38px;height:38px;box-shadow:inset 0 .5px 0 #ffffff4d, 0 1px 3px color-mix(in srgb, var(--brand) 30%, transparent);border-radius:9px;flex:none;place-items:center;font-size:16px;font-weight:600;display:grid}.pl-name{letter-spacing:-.01em;text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:600;overflow:hidden}.pl-desc{color:var(--text-2);-webkit-line-clamp:2;-webkit-box-orient:vertical;min-height:36px;margin:10px 0 12px;font-size:12.5px;display:-webkit-box;overflow:hidden}.pl-desc.none{color:var(--text-3);font-style:italic}.pl-files{flex-wrap:wrap;gap:4px;margin-bottom:12px;display:flex}.pl-foot{border-top:1px solid var(--border);color:var(--text-3);align-items:center;gap:8px;padding-top:10px;font-size:12px;display:flex}.pl-menu{z-index:20;position:absolute;top:40px;right:8px}.pl-toolbar-search{width:220px}@media (width<=1100px){.st-body{grid-template-columns:220px minmax(0,1fr) 300px}.pk-step{grid-template-columns:110px repeat(3,minmax(0,1fr)) 90px}}@media (width<=900px){.st-body{grid-template-columns:180px minmax(0,1fr) 250px}.st-pname{max-width:160px}.pk-main{grid-template-columns:minmax(0,1fr);height:auto}.pk-shot-wrap{height:40vh}.pk-tree{height:30vh}.pk-applist{grid-template-columns:minmax(0,1fr)}.pl-toolbar-search{width:100%}}@media (width<=640px){.st-body{grid-template-columns:170px minmax(300px,1fr) 240px;overflow-x:auto}.pk-step{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}.st-log-tools{flex-wrap:wrap;align-items:center;gap:8px}.st-log-tools .ai-explain{flex-basis:100%;max-height:170px;margin-top:0;overflow:auto}.sel-warn{color:var(--text);background:#ff9f0a1f;border-radius:8px;align-items:flex-start;gap:6px;padding:6px 8px;line-height:1.4;display:flex}.sel-warn svg{color:#ff9f0a;flex:none;margin-top:2px}:root{--font:-apple-system, BlinkMacSystemFont, "SF Pro Text", "Helvetica Neue", system-ui, sans-serif;--mono:ui-monospace, "SF Mono", Menlo, Monaco, Consolas, monospace;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#f5f5f7;--bg-sunken:#ececef;--surface:#fff;--surface-2:#f9f9fb;--surface-hover:#0000000b;--fill:#7878801f;--fill-2:#78788033;--border:#00000017;--border-strong:#0000002b;--card-border:#00000012;--text:#1d1d1f;--text-2:#6e6e73;--text-3:#8e8e93;--brand:#007aff;--brand-hover:#0068d9;--brand-soft:#007aff1f;--brand-text:#fff;--accent:#007aff;--accent-soft:#007aff1a;--signal:#ff9500;--signal-soft:#ff950026;--yellow:#fc0;--ok:#248a3d;--ok-soft:#34c75926;--info:#5856d6;--info-soft:#5856d61f;--warn:#c65f00;--warn-soft:#ff950029;--err:#d70015;--err-soft:#ff3b301f;--neutral:#8e8e93;--neutral-soft:#7878801f;--sidebar-bg:#e8e8edb8;--sidebar-text:#1d1d1f;--sidebar-text-strong:#fff;--sidebar-icon:var(--brand);--sidebar-hover:#0000000d;--sidebar-active:var(--brand);--sidebar-section:#0000006b;--sidebar-border:#00000014;--control:#fff;--control-top:#fff;--control-shadow:0 0 0 .5px #00000029, 0 .5px 1.5px #0000001f;--control-hover:#f6f6f8;--input-bg:#fff;--input-border:#00000026;--seg-active:#fff;--seg-shadow:0 0 0 .5px #00000014, 0 1px 2px #00000024;--material:#f6f6f8cc;--material-strong:#fafafce6;--scrim:#0003;--shadow-sm:0 .5px 1px #0000000d, 0 1px 3px #0000000a;--shadow:0 1px 3px #00000014, 0 4px 14px #00000014;--shadow-lg:0 0 0 .5px #0000001f, 0 12px 28px #00000029, 0 28px 70px #0000002e;--radius:10px;--radius-sm:6px;--focus:0 0 0 3.5px #007aff52}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#1e1e1e;--bg-sunken:#161617;--surface:#2c2c2e;--surface-2:#313133;--surface-hover:#ffffff0f;--fill:#7676803d;--fill-2:#76768057;--border:#ffffff1a;--border-strong:#ffffff2e;--card-border:#ffffff12;--text:#f5f5f7;--text-2:#a1a1a6;--text-3:#7c7c82;--brand:#0a84ff;--brand-hover:#3396ff;--brand-soft:#0a84ff38;--brand-text:#fff;--accent:#0a84ff;--accent-soft:#0a84ff2e;--signal:#ff9f0a;--signal-soft:#ff9f0a33;--yellow:#ffd60a;--ok:#30d158;--ok-soft:#30d1582e;--info:#7d7aff;--info-soft:#5e5ce63d;--warn:#ff9f0a;--warn-soft:#ff9f0a2e;--err:#ff453a;--err-soft:#ff453a2e;--neutral:#98989d;--neutral-soft:#7676803d;--sidebar-bg:#2c2c2ead;--sidebar-text:#f5f5f7;--sidebar-hover:#ffffff0f;--sidebar-section:#fff6;--sidebar-border:#ffffff14;--control:#ffffff21;--control-top:#ffffff29;--control-hover:#ffffff2e;--control-shadow:inset 0 .5px 0 #ffffff1f, 0 0 0 .5px #00000080, 0 1px 1.5px #0000004d;--input-bg:#ffffff0f;--input-border:#ffffff24;--seg-active:#636366;--seg-shadow:0 0 0 .5px #0000004d, 0 1px 2px #0000004d;--material:#28282ac7;--material-strong:#323234e0;--scrim:#0000006b;--shadow-sm:0 .5px 1px #0000004d, 0 1px 3px #0003;--shadow:0 1px 3px #00000059, 0 6px 16px #0000004d;--shadow-lg:0 0 0 .5px #ffffff1f, 0 14px 32px #00000073, 0 30px 80px #00000080;--focus:0 0 0 3.5px #0a84ff73}}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#1e1e1e;--bg-sunken:#161617;--surface:#2c2c2e;--surface-2:#313133;--surface-hover:#ffffff0f;--fill:#7676803d;--fill-2:#76768057;--border:#ffffff1a;--border-strong:#ffffff2e;--card-border:#ffffff12;--text:#f5f5f7;--text-2:#a1a1a6;--text-3:#7c7c82;--brand:#0a84ff;--brand-hover:#3396ff;--brand-soft:#0a84ff38;--brand-text:#fff;--accent:#0a84ff;--accent-soft:#0a84ff2e;--signal:#ff9f0a;--signal-soft:#ff9f0a33;--yellow:#ffd60a;--ok:#30d158;--ok-soft:#30d1582e;--info:#7d7aff;--info-soft:#5e5ce63d;--warn:#ff9f0a;--warn-soft:#ff9f0a2e;--err:#ff453a;--err-soft:#ff453a2e;--neutral:#98989d;--neutral-soft:#7676803d;--sidebar-bg:#2c2c2ead;--sidebar-text:#f5f5f7;--sidebar-hover:#ffffff0f;--sidebar-section:#fff6;--sidebar-border:#ffffff14;--control:#ffffff21;--control-top:#ffffff29;--control-hover:#ffffff2e;--control-shadow:inset 0 .5px 0 #ffffff1f, 0 0 0 .5px #00000080, 0 1px 1.5px #0000004d;--input-bg:#ffffff0f;--input-border:#ffffff24;--seg-active:#636366;--seg-shadow:0 0 0 .5px #0000004d, 0 1px 2px #0000004d;--material:#28282ac7;--material-strong:#323234e0;--scrim:#0000006b;--shadow-sm:0 .5px 1px #0000004d, 0 1px 3px #0003;--shadow:0 1px 3px #00000059, 0 6px 16px #0000004d;--shadow-lg:0 0 0 .5px #ffffff1f, 0 14px 32px #00000073, 0 30px 80px #00000080;--focus:0 0 0 3.5px #0a84ff73}*{box-sizing:border-box}html,body,#root{height:100%}body{background:var(--bg);color:var(--text);font:13px/1.42 var(--font);letter-spacing:-.003em;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;margin:0}a{color:var(--brand);text-decoration:none}a:hover{text-decoration:underline}code,pre,.mono{font-family:var(--mono);font-size:12px}h1,h2,h3,h4{margin:0;font-weight:600}h1{letter-spacing:-.022em;font-size:22px;font-weight:700}h2{letter-spacing:-.012em;font-size:15px}h3{letter-spacing:-.008em;font-size:13.5px}h4{font-size:13px}::selection{background:color-mix(in srgb, var(--brand) 28%, transparent)}.lucide{stroke-width:1.75px}input[type=checkbox],input[type=radio],input[type=range],progress{accent-color:var(--brand)}*{scrollbar-width:thin;scrollbar-color:var(--fill-2) transparent}::-webkit-scrollbar{width:11px;height:11px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--fill-2);background-clip:content-box;border:3px solid #0000;border-radius:999px}::-webkit-scrollbar-thumb:hover{background-color:var(--text-3)}::-webkit-scrollbar-corner{background:0 0}.shell{background:var(--bg);grid-template-columns:236px minmax(0,1fr);height:100%;display:grid}.sidebar{background:var(--sidebar-bg);-webkit-backdrop-filter:saturate(180%)blur(24px);backdrop-filter:saturate(180%)blur(24px);color:var(--sidebar-text);min-height:0;box-shadow:0 0 0 .5px var(--sidebar-border), 0 1px 3px #0000000f, 0 8px 24px #0000000d;border-radius:12px;flex-direction:column;margin:8px 0 8px 8px;display:flex;overflow:hidden}.sidebar .brand{color:var(--sidebar-text);letter-spacing:-.01em;align-items:center;gap:10px;padding:16px 16px 10px;font-size:14px;font-weight:600;display:flex}.sidebar .brand small{color:var(--text-2);letter-spacing:0;font-size:11px;font-weight:400;display:block}.sidebar nav{flex:1;padding:2px 10px 10px;overflow-y:auto}.sidebar .nav-section{letter-spacing:0;color:var(--sidebar-section);padding:14px 8px 4px;font-size:11px;font-weight:600}.sidebar a.nav{height:28px;color:var(--sidebar-text);border-radius:7px;align-items:center;gap:8px;margin:1px 0;padding:0 8px;font-size:13px;font-weight:400;text-decoration:none;transition:background .12s;display:flex}.sidebar a.nav:hover{background:var(--sidebar-hover)}.sidebar a.nav svg{width:16px;height:16px;color:var(--sidebar-icon);flex:none}.sidebar a.nav.active{background:var(--sidebar-active);color:var(--sidebar-text-strong);font-weight:500}.sidebar a.nav.active svg{color:var(--sidebar-text-strong)}.sidebar .foot{border-top:1px solid var(--sidebar-border);color:var(--text-2);align-items:center;gap:8px;padding:10px 12px 10px 16px;font-size:12px;display:flex}.main{flex-direction:column;min-width:0;min-height:0;display:flex;overflow:auto}.page{width:100%;max-width:1400px;padding:22px 28px 40px}.page-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:18px;display:flex}.page-head p{color:var(--text-2);margin:3px 0 0}.toolbar{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.spacer{flex:1}.card{background:var(--surface);border:1px solid var(--card-border);border-radius:var(--radius);box-shadow:var(--shadow-sm)}.card-head{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:12px;min-height:44px;padding:11px 14px;display:flex}.card-body{padding:14px}.grid{gap:14px;display:grid}.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}.stat{padding:14px 16px}.stat .label{color:var(--text-2);font-size:12px;font-weight:500}.stat .value{letter-spacing:-.02em;font-variant-numeric:tabular-nums;margin-top:2px;font-size:28px;font-weight:600}.stat .sub{color:var(--text-3);margin-top:2px;font-size:12px}.table-wrap{overflow-x:auto}table.table{border-collapse:collapse;width:100%;font-size:13px}.table th{text-align:left;color:var(--text-2);border-bottom:1px solid var(--border);white-space:nowrap;background:0 0;padding:8px 14px 7px;font-size:11.5px;font-weight:500}.table td{border-bottom:1px solid var(--border);vertical-align:middle;padding:8px 14px}.table tr:last-child td{border-bottom:0}.table tbody tr{transition:background .1s}.table tbody tr:hover td{background:var(--surface-hover)}.table tr.selected td,.table tr[aria-selected=true] td{background:var(--brand-soft)}.table tr.clickable{cursor:pointer}.table .actions{text-align:right;white-space:nowrap}.table .num{text-align:right;font-variant-numeric:tabular-nums}.btn{border-radius:var(--radius-sm);background:linear-gradient(180deg, var(--control-top), var(--control));height:28px;box-shadow:var(--control-shadow);color:var(--text);font:500 13px var(--font);letter-spacing:-.003em;cursor:default;white-space:nowrap;-webkit-user-select:none;user-select:none;border:0;justify-content:center;align-items:center;gap:5px;padding:0 11px;transition:background .12s,box-shadow .12s,opacity .12s;display:inline-flex}.btn:hover{background:var(--control-hover)}.btn:active:not(:disabled){filter:brightness(.95)}.btn:focus-visible{box-shadow:var(--control-shadow), var(--focus);outline:none}.btn:disabled{opacity:.45;cursor:default}.btn svg{width:15px;height:15px}.btn.primary{background:linear-gradient(180deg, color-mix(in srgb, var(--brand) 88%, #fff), var(--brand));color:var(--brand-text);box-shadow:0 0 0 .5px color-mix(in srgb, var(--brand) 70%, #000), 0 1px 1.5px #0000002e}.btn.primary:hover{background:var(--brand-hover)}.btn.primary:focus-visible{box-shadow:0 0 0 .5px color-mix(in srgb, var(--brand) 70%, #000), var(--focus)}.btn.danger{color:var(--err)}.btn.danger:hover{background:var(--err-soft)}.btn.danger-solid{background:linear-gradient(180deg, color-mix(in srgb, var(--err) 88%, #fff), var(--err));color:#fff;box-shadow:0 0 0 .5px color-mix(in srgb, var(--err) 70%, #000), 0 1px 1.5px #0000002e}.btn.ghost{box-shadow:none;background:0 0}.btn.ghost:hover:not(:disabled){background:var(--surface-hover)}.btn.ghost:focus-visible{box-shadow:var(--focus)}.btn.sm{border-radius:5px;height:24px;padding:0 8px;font-size:12px}.btn.sm svg{width:14px;height:14px}.btn.icon{width:28px;padding:0}.btn.sm.icon{width:24px}.field{flex-direction:column;gap:5px;margin-bottom:14px;display:flex}.field>label{color:var(--text-2);font-size:12px;font-weight:500}.field .hint{color:var(--text-3);font-size:11.5px}.input,.select,.textarea{border:1px solid var(--input-border);border-radius:var(--radius-sm);background:var(--input-bg);width:100%;height:28px;color:var(--text);font:13px var(--font);padding:0 9px;transition:box-shadow .15s,border-color .15s;box-shadow:inset 0 .5px 1px #0000000d}.input::placeholder,.textarea::placeholder{color:var(--text-3)}.select{appearance:none;cursor:default;background:linear-gradient(180deg, var(--control-top), var(--control));box-shadow:var(--control-shadow);background-repeat:no-repeat;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16'%3E%3Crect width='16' height='16' rx='4' fill='%23007aff'/%3E%3Cpath d='M5.2 6.6 8 3.9l2.8 2.7M5.2 9.4 8 12.1l2.8-2.7' fill='none' stroke='%23fff' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E"), linear-gradient(180deg, var(--control-top), var(--control));background-position:right 5px center,0 0;background-size:16px 16px,100% 100%;border-color:#0000;padding-right:28px}.select option{color:initial;background:initial}.textarea{resize:vertical;height:auto;min-height:80px;padding:6px 9px;line-height:1.5}.input.mono,.textarea.mono{font-family:var(--mono);font-size:12px}.input:focus,.select:focus,.textarea:focus{border-color:var(--brand);box-shadow:var(--focus);outline:none}.input:disabled,.select:disabled,.textarea:disabled{opacity:.55}.input.sm,.select.sm{height:24px;padding:0 7px;font-size:12px}.select.sm{background-position:right 4px center,0 0;background-size:14px 14px,100% 100%;padding-right:24px}.check{cursor:default;align-items:center;gap:7px;font-size:13px;display:inline-flex}.check input{accent-color:var(--brand);width:14px;height:14px;margin:0}.row{align-items:center;gap:10px;display:flex}.row>.grow{flex:1;min-width:0}.badge{white-space:nowrap;background:var(--neutral-soft);height:20px;color:var(--text-2);border-radius:999px;align-items:center;gap:5px;padding:0 8px;font-size:11.5px;font-weight:500;display:inline-flex}.badge.ok{background:var(--ok-soft);color:var(--ok)}.badge.info{background:var(--info-soft);color:var(--info)}.badge.warn{background:var(--warn-soft);color:var(--warn)}.badge.err{background:var(--err-soft);color:var(--err)}.badge.brand{background:var(--brand-soft);color:var(--brand)}.badge .dot,.dot{background:currentColor;border-radius:50%;flex:none;width:7px;height:7px}.badge:not(.ok):not(.info):not(.warn):not(.err):not(.brand) .dot{color:var(--neutral)}.badge.info .dot.pulse,.dot.pulse{animation:1.4s ease-in-out infinite pulse}@keyframes pulse{0%,to{opacity:1}50%{opacity:.3}}.tag{font-family:var(--mono);background:var(--fill);color:var(--text-2);border-radius:5px;padding:1px 6px;font-size:11px;display:inline-block}.modal-backdrop{background:var(--scrim);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);z-index:100;justify-content:center;align-items:flex-start;padding:7vh 16px;animation:.15s fade;display:flex;position:fixed;inset:0;overflow-y:auto}.modal{background:var(--surface);box-shadow:var(--shadow-lg);border-radius:12px;width:100%;max-width:520px;animation:.22s cubic-bezier(.2,.9,.3,1.05) sheet}.modal.wide{max-width:860px}.modal.xwide{max-width:1240px}.modal-head{justify-content:space-between;align-items:center;gap:12px;padding:14px 16px 4px 20px;display:flex}.modal-head h2{font-size:15px;font-weight:600}.modal-body{padding:14px 20px 18px}.modal-foot{border-top:1px solid var(--border);border-radius:0 0 12px 12px;justify-content:flex-end;gap:8px;padding:12px 20px 16px;display:flex}.modal-foot .btn{min-width:78px}@keyframes fade{0%{opacity:0}}@keyframes rise{0%{opacity:0;transform:translateY(8px)}}@keyframes sheet{0%{opacity:0;transform:translateY(-10px)scale(.98)}}.toasts{z-index:200;pointer-events:none;flex-direction:column;gap:8px;max-width:calc(100vw - 28px);display:flex;position:fixed;top:14px;right:14px}.toast{pointer-events:auto;background:var(--material-strong);color:var(--text);-webkit-backdrop-filter:saturate(180%)blur(30px);backdrop-filter:saturate(180%)blur(30px);box-shadow:var(--shadow-lg);overflow-wrap:anywhere;border-radius:12px;align-items:flex-start;gap:8px;width:340px;max-width:100%;padding:11px 14px 11px 32px;font-size:13px;line-height:1.38;animation:.28s cubic-bezier(.2,.9,.3,1.1) banner;display:flex;position:relative}.toast:before{content:"";background:var(--brand);border-radius:50%;width:9px;height:9px;position:absolute;top:15px;left:13px}.toast.err:before{background:var(--err)}.toast.ok:before{background:var(--ok)}.toast.warn:before{background:var(--warn)}@keyframes banner{0%{opacity:0;transform:translate(24px)}}.empty{text-align:center;color:var(--text-2);padding:44px 20px}.empty svg{width:36px;height:36px;color:var(--text-3);stroke-width:1.4px;margin-bottom:10px}.empty h3{color:var(--text);margin-bottom:4px;font-size:15px}.muted{color:var(--text-2)}.faint{color:var(--text-3)}.small{font-size:12px}.err-text{color:var(--err)}.codeblock{background:var(--bg-sunken);border:1px solid var(--border);font-family:var(--mono);white-space:pre-wrap;word-break:break-all;border-radius:8px;padding:10px 12px;font-size:12px;position:relative}.tabs{background:var(--fill);border:0;border-radius:8px;gap:2px;width:fit-content;max-width:100%;padding:2px;display:flex;overflow-x:auto}.tabs.grow,.row>.tabs.grow{flex:0 auto;margin-right:auto}.tabs button{height:24px;font:500 12.5px var(--font);color:var(--text);cursor:default;white-space:nowrap;background:0 0;border:0;border-radius:6px;flex:none;padding:0 12px;transition:background .12s}.tabs button:hover:not(.active){background:var(--surface-hover)}.tabs button.active{background:var(--seg-active);box-shadow:var(--seg-shadow)}.tabs button:focus-visible{box-shadow:var(--focus);outline:none}.split{align-items:center;gap:6px;display:flex}.spinner{border:2px solid var(--fill-2);border-top-color:var(--text-2);border-radius:50%;width:16px;height:16px;animation:.8s linear infinite spin;display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}.kbd{font-family:var(--font);background:var(--fill);color:var(--text-2);border-radius:4px;padding:0 5px;font-size:11px}.log-line{font-family:var(--mono);grid-template-columns:86px 52px 1fr;gap:10px;padding:2px 12px;font-size:11.5px;line-height:1.55;display:grid}.log-line:hover{background:var(--surface-hover)}.log-line .lvl-error{color:var(--err);font-weight:600}.log-line .lvl-warn{color:var(--warn);font-weight:600}.log-line .lvl-info{color:var(--info)}.log-line .lvl-trace{color:var(--text-3)}.log-line .msg{white-space:pre-wrap;word-break:break-word}.login{background:radial-gradient(1100px 600px at 15% -10%, var(--brand-soft), transparent 60%), radial-gradient(900px 500px at 110% 110%, var(--info-soft), transparent 60%), var(--bg);place-items:center;min-height:100%;padding:24px;display:grid}.login .card{width:100%;max-width:360px;box-shadow:var(--shadow-lg);border:0;border-radius:14px;padding:28px}@media (width<=900px){.shell{grid-template-columns:minmax(0,1fr)}.sidebar{display:none}.grid-2,.grid-3,.grid-4{grid-template-columns:minmax(0,1fr)}.page{padding:16px}}.ow-loading{justify-content:center;align-items:center;gap:10px;padding:40px 16px;display:flex}.ow-strong{color:var(--text);font-weight:600}a.ow-strong{color:var(--text)}a.ow-strong:hover{color:var(--brand)}.ow-clip{text-overflow:ellipsis;white-space:nowrap;max-width:420px;overflow:hidden}.ow-search{width:200px}.ow-back{color:var(--brand);align-items:center;gap:4px;margin-bottom:8px;font-size:13px;display:inline-flex}.ow-back:hover{opacity:.8;text-decoration:none}.ow-card-foot{border-top:1px solid var(--border);justify-content:flex-end;padding:8px 14px;display:flex}.ow-pager{align-items:center;gap:6px;display:flex}.ow-stale{opacity:.6;transition:opacity .15s}.ow-json{word-break:normal;white-space:pre;overflow:auto}.ow-dl{grid-template-columns:max-content 1fr;gap:6px 16px;margin:0;font-size:13px;display:grid}.ow-dl dt{color:var(--text-2);font-weight:400}.ow-dl dd{overflow-wrap:anywhere;min-width:0;margin:0}.ow-errbox{background:var(--err-soft);color:var(--err);border-radius:8px;padding:10px 12px;font-size:13px}.ow-errbox pre{font-family:var(--mono);white-space:pre-wrap;word-break:break-word;color:var(--text);max-height:240px;margin:6px 0 0;font-size:12px;overflow:auto}.ow-note{background:var(--accent-soft);color:var(--text);border-radius:8px;padding:10px 14px;font-size:13px}.ow-note p{margin:6px 0}.ow-note ul{margin:4px 0;padding-left:18px}.ow-note code{background:var(--surface);border-radius:4px;padding:1px 4px}.ow-seg{background:var(--fill);border-radius:8px;gap:2px;max-width:100%;padding:2px;display:inline-flex;overflow-x:auto}.ow-seg button{height:22px;font:500 12px var(--font);color:var(--text);cursor:default;white-space:nowrap;background:0 0;border:0;border-radius:6px;flex:none;padding:0 12px}.ow-seg button:hover:not(.active):not(:disabled){background:var(--surface-hover)}.ow-seg button.active{background:var(--seg-active);box-shadow:var(--seg-shadow)}.ow-seg button:disabled{opacity:.4}.ow-seg button:focus-visible{box-shadow:var(--focus);outline:none}.ow-filters{flex-wrap:wrap;align-items:center;gap:8px 12px;margin-bottom:12px;display:flex}.ow-filter-select{width:auto;min-width:150px}.ow-chips,.ow-presets{flex-wrap:wrap;gap:6px;display:flex}.ow-presets{margin-bottom:8px}.ow-chip{background:var(--fill);height:24px;color:var(--text);font:500 12px var(--font);cursor:default;border:0;border-radius:999px;align-items:center;gap:6px;padding:0 10px;transition:background .12s;display:inline-flex}.ow-chip:hover{background:var(--fill-2)}.ow-chip:focus-visible{box-shadow:var(--focus);outline:none}.ow-chip .dot{color:var(--neutral)}.ow-chip.ok .dot{color:var(--ok)}.ow-chip.info .dot{color:var(--info)}.ow-chip.warn .dot{color:var(--warn)}.ow-chip.err .dot{color:var(--err)}.ow-chip.on{background:var(--brand);color:#fff}.ow-chip.on .dot{color:#fff!important}.ow-chip.lvl-error.on{background:var(--err)}.ow-chip.lvl-warn.on{background:var(--warn)}.ow-chip.lvl-info.on{background:var(--info)}.ow-chip.lvl-trace.on{background:var(--neutral)}.ow-switch{background:var(--fill-2);cursor:default;border:0;border-radius:999px;flex:none;width:32px;height:19px;padding:0;transition:background .18s;position:relative;box-shadow:inset 0 0 0 .5px #0000000f}.ow-switch span{background:#fff;border-radius:50%;width:15px;height:15px;transition:transform .18s cubic-bezier(.3,.7,.4,1.2);position:absolute;top:2px;left:2px;box-shadow:0 .5px 1px #0003,0 1px 3px #00000026}.ow-switch.on{background:var(--brand)}.ow-switch.on span{transform:translate(13px)}.ow-switch:focus-visible{box-shadow:var(--focus);outline:none}.table tr.ow-disabled td{color:var(--text-3)}.table tr.ow-disabled td .ow-strong{color:var(--text-2)}.ow-kpis{margin-bottom:14px}.ow-kpi{color:inherit;text-decoration:none;transition:box-shadow .15s,transform .15s;display:block}a.ow-kpi:hover{box-shadow:var(--shadow);text-decoration:none}.ow-kpi-top{justify-content:space-between;align-items:center;display:flex}.ow-kpi-icon{width:18px;height:18px;color:var(--text-3)}.ow-kpi-icon.brand{color:var(--brand)}.ow-kpi-icon.info{color:var(--info)}.ow-kpi-icon.ok{color:var(--ok)}.ow-kpi-icon.err{color:var(--err)}.ow-of{color:var(--text-3);font-size:18px;font-weight:500}.ow-dash-grid{grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:14px;margin-bottom:14px;display:grid}.ow-list{margin:0;padding:0;list-style:none}.ow-list li{border-bottom:1px solid var(--border);align-items:center;gap:10px;min-width:0;padding:8px 14px;display:flex}.ow-list li:last-child{border-bottom:0}.ow-list .grow{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.ow-mini{color:var(--text-2);font-variant-numeric:tabular-nums;align-items:center;gap:4px;min-width:30px;font-size:12px;display:inline-flex}.ow-mini i{background:var(--neutral);border-radius:50%;width:7px;height:7px}.ow-mini i.info{background:var(--info)}.ow-mini i.ok{background:var(--ok)}.ow-mini i.err{background:var(--err)}.ow-legend{color:var(--text-2);flex-wrap:wrap;gap:6px 16px;margin-bottom:8px;font-size:12px;display:flex}.ow-legend span{align-items:center;gap:6px;display:inline-flex}.ow-legend i{border-radius:3px;width:10px;height:10px;display:inline-block}.ow-chart-box{position:relative}.ow-chart-box svg{display:block;overflow:visible}.ow-tooltip{pointer-events:none;background:var(--material-strong);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);box-shadow:var(--shadow-lg);z-index:2;border-radius:8px;min-width:150px;padding:8px 10px;font-size:12px;position:absolute;top:0}.ow-tooltip-head{margin-bottom:4px;font-weight:600}.ow-tooltip-row{color:var(--text-2);align-items:center;gap:6px;display:flex}.ow-tooltip-row i{border-radius:2px;width:8px;height:8px;display:inline-block}.ow-tooltip-row span{flex:1}.ow-tooltip-row b{color:var(--text);font-variant-numeric:tabular-nums}.ow-perms{flex-wrap:wrap;gap:8px;display:flex}.ow-perm{background:var(--fill);border-radius:8px;align-items:center;gap:8px;padding:7px 12px;font-weight:500;display:inline-flex}.ow-perm svg{width:16px;height:16px;color:var(--text-3)}.ow-perm.ok svg{color:var(--ok)}.ow-perm.err svg{color:var(--err)}.ow-perm.err{background:var(--err-soft);color:var(--err)}.ow-args-grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:10px 14px;display:grid}.ow-arg{flex-direction:column;gap:4px;min-width:0;display:flex}.ow-arg-label{align-items:center;gap:6px;font-size:12px;display:flex}.table tr.ow-subrow td{background:var(--surface-2);padding-top:4px;padding-bottom:12px}.table tbody tr.ow-subrow:hover td{background:var(--surface-2)}.ow-versions{flex-direction:column;gap:6px;display:flex}.ow-version{background:var(--surface);border:1px solid var(--card-border);box-shadow:var(--shadow-sm);border-radius:8px;padding:8px 10px}.ow-notes{color:var(--text-2);white-space:pre-wrap;margin-top:6px;font-size:12.5px}.ow-argchips{flex-wrap:wrap;gap:4px;margin-top:6px;display:flex}.ow-argchip{background:var(--fill);border-radius:5px;padding:1px 7px;font-size:11px}.ow-facts{grid-template-columns:repeat(4,minmax(0,1fr));display:grid;overflow:hidden}.ow-fact{border-right:1px solid var(--border);border-bottom:1px solid var(--border);overflow-wrap:anywhere;min-width:0;padding:11px 14px}.ow-fact:nth-child(4n){border-right:0}.ow-fact:nth-last-child(-n+4){border-bottom:0}.ow-fact .label{color:var(--text-2);margin-bottom:2px;font-size:11.5px;font-weight:500}.ow-ticking{font-variant-numeric:tabular-nums;color:var(--info);font-weight:600}.ow-loghead{flex-wrap:wrap;justify-content:flex-start}.ow-loghead h4{align-items:center;margin-right:auto;display:flex}.ow-searchbox{color:var(--text-3);align-items:center;gap:6px;display:flex}.ow-searchbox .input{width:200px}.ow-log{background:var(--surface-2);border-radius:0 0 var(--radius) var(--radius);height:52vh;min-height:260px;padding:6px 0;overflow:auto}.ow-log .log-line{grid-template-columns:70px 52px 1fr}.ow-log-more{color:var(--text-3);padding:4px 12px;font-size:12px}.ow-act{color:var(--text-2);background:var(--fill);border-radius:4px;margin-right:8px;padding:0 5px;font-size:11px;display:inline-block}.ow-cron-desc{background:var(--brand-soft);color:var(--text);border-radius:7px;margin-top:8px;padding:7px 10px;font-size:12.5px;font-weight:500}.ow-cron-desc.bad{background:var(--err-soft);color:var(--err)}.ow-countchips{flex-wrap:wrap;gap:4px;display:flex}.ow-countchips a:hover{text-decoration:none}.ow-count{height:20px;color:var(--text-2);background:var(--neutral-soft);white-space:nowrap;border-radius:999px;align-items:center;gap:5px;padding:0 8px;font-size:11.5px;display:inline-flex}.ow-count i{background:var(--neutral);border-radius:50%;width:6px;height:6px}.ow-count b{color:var(--text);font-variant-numeric:tabular-nums;font-weight:600}.ow-count.ok{background:var(--ok-soft)}.ow-count.ok i{background:var(--ok)}.ow-count.info{background:var(--info-soft)}.ow-count.info i{background:var(--info)}.ow-count.warn{background:var(--warn-soft)}.ow-count.warn i{background:var(--warn)}.ow-count.err{background:var(--err-soft)}.ow-count.err i{background:var(--err)}.ow-count.zero{opacity:.45;background:0 0}.tabs.ow-tabs-scroll{max-width:calc(100% - 24px);margin:10px 12px}.ow-tabs-scroll button{white-space:nowrap}.ow-tabcount{color:var(--text-3);font-variant-numeric:tabular-nums;margin-left:3px;font-size:11px}.ow-links{flex-wrap:wrap;gap:8px 20px;display:flex}@media (width<=1100px){.ow-dash-grid{grid-template-columns:minmax(0,1fr)}.ow-facts{grid-template-columns:repeat(2,minmax(0,1fr))}.ow-fact:nth-child(4n){border-right:1px solid var(--border)}.ow-fact:nth-child(2n){border-right:0}.ow-fact:nth-last-child(-n+4){border-bottom:1px solid var(--border)}.ow-fact:nth-last-child(-n+2){border-bottom:0}}@media (width<=900px){.ow-search,.ow-searchbox .input{width:100%}.ow-filter-select{flex:1}.ow-log{height:60vh}.ow-clip{max-width:220px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}.spinner,.spin{animation-duration:1.2s!important;animation-iteration-count:infinite!important}}.ext-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:12px;padding:14px;display:grid}.ext-card{border:1px solid var(--border);background:var(--surface,transparent);border-radius:12px;flex-direction:column;gap:8px;padding:12px 14px;display:flex}.ext-head{align-items:center;gap:10px;display:flex}.ext-dot{color:#fff;border-radius:8px;flex:none;place-items:center;width:28px;height:28px;display:grid}.ext-desc{-webkit-line-clamp:4;-webkit-box-orient:vertical;margin:0;line-height:1.45;display:-webkit-box;overflow:hidden}.ext-desc code{background:var(--accent-soft);border-radius:4px;padding:0 3px;font-size:.92em}.ext-acts{-webkit-line-clamp:3;-webkit-box-orient:vertical;line-height:1.5;display:-webkit-box;overflow:hidden}.ext-foot{justify-content:flex-end;margin-top:auto;display:flex}.ext-list{flex-direction:column;gap:8px;display:flex}.ext-row{border:1px solid var(--border);border-radius:10px;align-items:flex-start;gap:10px;padding:10px 12px;display:flex}.ext-row.on{border-color:var(--accent);background:var(--accent-soft)}.ext-head .grow{flex:1;min-width:0}.ai-explain{background:var(--accent-soft);border:1px solid var(--border);color:var(--text);border-radius:10px;margin-top:10px;padding:12px 14px;line-height:1.55}.md p{margin:0 0 6px}.md p:last-child{margin-bottom:0}.md ul,.md ol{margin:2px 0 8px;padding-left:20px}.md li{margin:2px 0}.md code{background:#7f7f7f29;border-radius:4px;padding:0 4px;font-size:.92em}.ai-explain-head{color:var(--accent);align-items:center;gap:6px;margin-bottom:4px;font-weight:600;display:flex}.ai-examples{flex-wrap:wrap;gap:6px;margin-top:8px;display:flex}.ai-examples .btn{white-space:normal;text-align:left;height:auto;padding:4px 8px}.badge.claude{color:#c2603f;background:#d9775724;border-color:#d9775759}
