:root{color-scheme:light;--page:#f5faf9;--surface:#fbfdff;--surface-line:#d5e5e2;--text:#07131f;--muted:#5b6775;--sidebar:#173c3a;--sidebar-soft:#214d4a;--accent:#0f766e;--accent-strong:#115e59;--accent-blue:#2563eb;--accent-soft:#e7f5f2;--danger:#dc2626;--code-bg:#0b1d2a;--el-color-primary:#0f766e;--el-color-primary-dark-2:#115e59;--el-color-primary-light-3:#4da39b;--el-color-primary-light-5:#87c6bf;--el-color-primary-light-7:#b9dfda;--el-color-primary-light-8:#d2ebe8;--el-color-primary-light-9:#e9f6f4;--el-border-color:#d5e5e2;--el-border-color-hover:#87c6bf;--el-fill-color-light:#f4faf8;--el-text-color-primary:#07131f;--el-text-color-regular:#344253;--el-input-focus-border-color:#0f766e}*{box-sizing:border-box}#app,body,html{min-height:100%}body{margin:0;min-width:320px;background:var(--page);color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,Microsoft YaHei,sans-serif;letter-spacing:0}button,input,select,textarea{font:inherit}h1,h2,h3,p{margin:0}.app-shell{min-height:100vh;background:linear-gradient(118deg,rgba(15,118,110,.1),transparent 32%),linear-gradient(292deg,rgba(37,99,235,.08),transparent 38%),linear-gradient(180deg,#fbfdff 0,#eef7f5 48%,#f7fafc 100%),var(--page);animation:appShellIn .52s ease-out both}.route-fade-enter-active,.route-fade-leave-active{transition:opacity .42s ease,transform .42s ease}.route-fade-enter-from,.route-fade-leave-to{opacity:0;transform:translateY(10px)}.entry-splash{position:relative;isolation:isolate;display:grid;min-height:100vh;overflow:hidden;place-items:center;padding:28px;background:linear-gradient(118deg,rgba(15,118,110,.18),transparent 30%),linear-gradient(292deg,rgba(37,99,235,.12),transparent 36%),linear-gradient(180deg,#fbfdff,#eef7f5 50%,#f7fafc);color:#0f172a;cursor:pointer}.entry-splash:after,.entry-splash:before{position:absolute;inset:0;z-index:-1;content:"";pointer-events:none}.entry-splash:before{background:repeating-linear-gradient(90deg,rgba(15,23,42,.08),rgba(15,23,42,.08) 1px,transparent 0,transparent 72px),linear-gradient(180deg,hsla(0,0%,100%,.72),transparent);-webkit-mask-image:linear-gradient(90deg,transparent,#000 16%,#000 84%,transparent);mask-image:linear-gradient(90deg,transparent,#000 16%,#000 84%,transparent);animation:entryTimeGrid 1.5s cubic-bezier(.2,.8,.2,1) both}.entry-splash:after{background:linear-gradient(110deg,transparent,transparent 34%,hsla(0,0%,100%,.58) 0,hsla(0,0%,100%,.58) 43%,transparent 0,transparent);animation:entryLightSweep 1.5s cubic-bezier(.2,.8,.2,1) both}.entry-time-mark{position:absolute;top:34px;right:38px;display:flex;align-items:flex-end;gap:10px}.entry-time-mark span{display:block;width:4px;border-radius:999px;background:#0f766e;animation:entryTick .86s ease-out both}.entry-time-mark span:first-child{height:24px;animation-delay:.14s}.entry-time-mark span:nth-child(2){height:42px;animation-delay:.24s}.entry-time-mark span:nth-child(3){height:30px;animation-delay:.34s}.entry-splash-copy{display:grid;justify-items:center;gap:18px;max-width:min(680px,100%);text-align:center}.entry-splash-copy span{color:#0f766e;font-size:14px;font-weight:800;letter-spacing:0;animation:entryTextIn .64s ease-out .18s both}.entry-splash-copy h1{color:#07131f;font-size:clamp(48px,8vw,92px);font-weight:900;letter-spacing:0;line-height:1;animation:entryTitleIn .76s cubic-bezier(.2,.8,.2,1) .28s both}.entry-splash-copy p{max-width:520px;color:#465464;font-size:17px;font-weight:700;line-height:1.6;animation:entryTextIn .62s ease-out .52s both}.entry-progress{position:absolute;right:10vw;bottom:58px;left:10vw;height:3px;overflow:hidden;border-radius:999px;background:rgba(15,23,42,.12)}.entry-progress span{display:block;width:100%;height:100%;border-radius:inherit;background:linear-gradient(90deg,#0f766e,#2563eb);transform-origin:left center;animation:entryProgress 1.8s linear both}.auth-screen{position:relative;isolation:isolate;display:grid;min-height:100vh;overflow-x:hidden;place-items:center;padding:28px;background:linear-gradient(125deg,rgba(15,118,110,.18),transparent 34%),linear-gradient(315deg,rgba(37,99,235,.14),transparent 38%),linear-gradient(180deg,#f8fbff,#eef5f7 52%,#e7f0ed);animation:authBackgroundIn .76s ease-out both}.auth-screen:after,.auth-screen:before{position:absolute;inset:0;z-index:-1;content:"";pointer-events:none}.auth-screen:before{background:linear-gradient(90deg,rgba(31,41,55,.06) 1px,transparent 0),linear-gradient(180deg,rgba(31,41,55,.05) 1px,transparent 0);background-size:42px 42px;-webkit-mask-image:linear-gradient(180deg,rgba(0,0,0,.72),rgba(0,0,0,.22));mask-image:linear-gradient(180deg,rgba(0,0,0,.72),rgba(0,0,0,.22));animation:authGridIn .98s ease-out both}.auth-screen:after{inset:-18%;background:linear-gradient(115deg,transparent,transparent 24%,hsla(0,0%,100%,.5) 0,hsla(0,0%,100%,.5) 33%,transparent 0,transparent 63%,rgba(15,118,110,.1) 0,rgba(15,118,110,.1) 70%,transparent 0);transform:translateX(-10%);animation:authSweepIn 1.2s cubic-bezier(.2,.8,.2,1) both}.auth-card{position:relative;display:grid;grid-template-columns:minmax(280px,.9fr) minmax(360px,1fr);width:min(920px,100%);min-height:520px;overflow:hidden;border:1px solid #d6dee8;border-radius:8px;background:var(--surface);box-shadow:0 24px 60px rgba(15,23,42,.14);animation:authCardIn .62s cubic-bezier(.2,.8,.2,1) .12s both}.auth-card:before{position:absolute;inset:0;z-index:0;background:linear-gradient(135deg,hsla(0,0%,100%,.52),transparent 38%);content:"";pointer-events:none}.auth-intro{position:relative;z-index:1;display:flex;min-width:0;flex-direction:column;justify-content:space-between;padding:34px;background:linear-gradient(135deg,hsla(0,0%,100%,.12),transparent 42%),linear-gradient(180deg,rgba(4,120,87,.2),transparent 62%),#173c3a;color:#f8fafc;animation:authIntroIn .72s cubic-bezier(.2,.8,.2,1) .22s both}.auth-intro:after{position:absolute;right:-18%;bottom:28px;width:58%;height:1px;background:linear-gradient(90deg,transparent,rgba(230,255,251,.55),transparent);content:""}.auth-intro .brand-mark{background:#f8fafc;color:#173c3a}.auth-intro-copy{display:grid;gap:24px}.auth-intro-copy h1{max-width:320px;color:#fff;font-size:34px;font-weight:800;line-height:1.16;animation:authTextIn .56s ease-out .36s both}.auth-signal-list{display:flex;flex-wrap:wrap;gap:10px}.auth-signal-list span{display:inline-flex;align-items:center;gap:6px;min-height:34px;border:1px solid hsla(0,0%,100%,.22);border-radius:8px;padding:0 12px;background:hsla(0,0%,100%,.08);color:#e6fffb;font-size:13px;font-weight:700;animation:authTextIn .52s ease-out both}.auth-signal-list span:first-child{animation-delay:.44s}.auth-signal-list span:nth-child(2){animation-delay:.52s}.auth-signal-list span:nth-child(3){animation-delay:.6s}.auth-panel{position:relative;z-index:1;display:grid;align-content:center;gap:22px;background:var(--surface);padding:42px;animation:authPanelIn .7s cubic-bezier(.2,.8,.2,1) .26s both}.auth-screen>.auth-panel{width:min(420px,100%);border:1px solid var(--surface-line);border-radius:8px;box-shadow:0 16px 34px rgba(15,23,42,.08);animation:authPanelIn .56s ease-out both}.auth-brand{display:flex;align-items:center;gap:12px}.auth-brand .brand-copy span{color:var(--muted)}.auth-intro .brand-copy span{color:#bad8d5}.auth-panel-head{display:grid;gap:8px;animation:authTextIn .52s ease-out .42s both}.auth-panel-head span{color:#0f766e;font-size:13px;font-weight:800}.auth-panel-head strong{color:#111827;font-size:28px;line-height:1.15}.auth-mode{width:100%;padding:4px;border:1px solid #dce4ee;border-radius:8px;background:#f6f8fb;animation:authTextIn .52s ease-out .5s both}.auth-mode .el-radio-button{width:50%}.auth-mode .el-radio-button__inner{width:100%;border:0!important;border-radius:6px!important;background:transparent;box-shadow:none!important;color:#4b5563;font-weight:700}.auth-mode .el-radio-button__original-radio:checked+.el-radio-button__inner{background:#fff;color:#0f766e;box-shadow:0 4px 12px rgba(15,23,42,.08)!important}.auth-form{display:grid;gap:8px;animation:authTextIn .52s ease-out .58s both}.auth-form .el-form-item{margin-bottom:8px}.auth-form .el-form-item__label{color:#374151;font-weight:700}.auth-form .el-input__wrapper{border-radius:8px;box-shadow:inset 0 0 0 1px #d8e0ea}.auth-submit{width:100%;justify-content:center;min-height:44px;margin-top:4px;border:0;background:var(--accent);font-weight:800}.auth-submit:focus,.auth-submit:hover{background:var(--accent-strong)}.auth-submit-icon{margin-left:4px}.app-sidebar{position:sticky;top:0;height:100vh;padding:18px 14px;overflow-y:auto;background:linear-gradient(180deg,hsla(0,0%,100%,.06),transparent 34%),linear-gradient(145deg,rgba(37,99,235,.14),transparent 46%),var(--sidebar);color:#f9fafb}.brand{display:flex;align-items:center;gap:12px;min-height:52px;margin-bottom:18px;padding:0 6px}.brand-mark{display:inline-grid;width:40px;height:40px;place-items:center;border-radius:8px;background:#e6fffb;color:var(--sidebar);font-weight:800}.brand-copy{display:grid;gap:2px}.brand-copy strong{font-size:16px}.brand-copy span{color:#bad8d5;font-size:13px}.nav-menu.el-menu{border-right:0;background:transparent}.nav-menu .el-menu-item{height:44px;margin-bottom:6px;border-radius:8px;color:#d8ebe8}.nav-menu .el-menu-item:hover{background:var(--sidebar-soft);color:#fff}.nav-menu .el-menu-item.is-active{background:#e6fffb;color:#0b4f49;font-weight:700}.app-body{min-width:0}.app-header{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:20px 26px;border-bottom:1px solid var(--surface-line);background:rgba(251,253,255,.9);backdrop-filter:blur(10px)}.header-title{display:grid;gap:8px;min-width:0}.header-title h1{color:var(--text);font-size:24px;line-height:1.2}.header-meta{display:flex;flex-wrap:wrap;gap:8px 14px;color:var(--muted);font-size:13px}.header-meta span{min-width:0;overflow-wrap:anywhere}.form-actions,.header-actions,.node-controls{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.current-user{max-width:160px;overflow:hidden;color:var(--muted);font-size:13px;text-overflow:ellipsis;white-space:nowrap}.session-fill-control{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.session-fill-control .el-input{width:180px}.json-field-tools{display:flex;align-items:flex-start;flex-direction:column;gap:8px;justify-content:flex-start;width:100%;margin-bottom:8px}.app-main{padding:18px 26px 28px}.app-main,.split-grid,.view{display:grid;gap:16px}.split-grid{grid-template-columns:minmax(0,1.1fr) minmax(380px,.9fr);align-items:start}.split-grid.compact{grid-template-columns:minmax(360px,.82fr) minmax(0,1.18fr)}.surface{min-width:0;border:1px solid var(--surface-line);border-radius:8px;background:rgba(251,253,255,.94);padding:16px;box-shadow:0 12px 28px rgba(15,76,72,.06)}.surface-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}.surface-head>div{display:grid;gap:5px;min-width:0}.surface-head h2{color:var(--text);font-size:16px;line-height:1.25}.muted,.surface-head span{color:var(--muted);font-size:13px}.surface-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}.flow-table,.job-table,.rule-table,.template-table{width:100%}.flow-table .selected-row>.el-table__cell,.job-table .selected-row>.el-table__cell,.rule-table .selected-row>.el-table__cell{background:var(--accent-soft)!important}.job-name{display:grid;gap:4px;min-width:0}.job-name strong{overflow-wrap:anywhere;color:var(--text);font-size:14px}.job-name span{overflow-wrap:anywhere;color:var(--muted);font-size:12px}.template-owner{display:flex;align-items:center;gap:6px;min-width:0}.template-owner span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rule-template-actions .el-select{width:min(360px,100%)}.rule-template-content{overflow-wrap:anywhere;color:var(--text);font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,Monaco,monospace;font-size:12px}.editor-surface{position:sticky;top:18px}.flow-form .el-form-item,.job-form .el-form-item,.rule-form .el-form-item{margin-bottom:14px}.form-section{display:grid;gap:12px;margin-bottom:16px;border:1px solid var(--surface-line);border-radius:8px;background:#f8fcfb;padding:14px}.section-title{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:24px}.section-title h3{color:var(--text);font-size:14px;line-height:1.3}.section-title span{color:var(--muted);font-size:12px}.step-input-row{display:flex;align-items:flex-start;gap:8px}.step-input-row .el-input{flex:1 1 0}.step-input-row .el-button{flex:0 0 auto}.code-input .el-textarea__inner,.response-box,.rule-content{font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,Monaco,monospace;letter-spacing:0}.form-actions{padding-top:4px}.assertion-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}.assertion-dialog-list{display:grid;gap:10px;max-height:54vh;margin:0;overflow:auto;padding-left:20px;color:#991b1b;font-size:14px;line-height:1.6}.assertion-dialog-list li{overflow-wrap:anywhere}.assertion-failures{display:grid;gap:8px;margin-top:14px;border:1px solid #fecaca;border-radius:8px;background:#fef2f2;padding:12px 14px}.assertion-failures h3{color:#991b1b;font-size:14px;line-height:1.35}.assertion-failure-list{display:grid;gap:8px;margin:0;padding-left:20px;color:#7f1d1d;font-size:13px;line-height:1.55}.assertion-failure-list li{overflow-wrap:anywhere}.stress-target{display:grid;gap:6px;margin-bottom:14px}.stress-target strong{overflow-wrap:anywhere;color:var(--text);font-size:15px;line-height:1.35}.stress-target span{overflow-wrap:anywhere;color:var(--muted);font-size:13px}.stress-form{margin-bottom:16px}.stress-form-grid{display:grid;gap:12px;grid-template-columns:repeat(3,minmax(0,1fr));align-items:end}.stress-form-grid .el-input-number{width:100%}.stress-progress{display:grid;gap:8px;margin-bottom:16px;border:1px solid var(--surface-line);border-radius:8px;background:#f8fcfb;padding:12px}.stress-progress-head{display:flex;min-width:0;align-items:center;justify-content:space-between;gap:12px;color:var(--muted);font-size:13px}.stress-progress-head span,.stress-progress-head strong{overflow-wrap:anywhere}.stress-progress-head strong{flex-shrink:0;color:var(--text);font-size:14px}.stress-result{display:grid;gap:14px}.stress-metric-grid{display:grid;gap:10px;grid-template-columns:repeat(3,minmax(0,1fr))}.stress-metric{display:grid;gap:5px;min-width:0;border:1px solid var(--surface-line);border-radius:8px;background:#f8fcfb;padding:12px}.stress-metric span{color:var(--muted);font-size:12px}.stress-metric strong{overflow-wrap:anywhere;color:var(--text);font-size:18px;line-height:1.25}.stress-failure-list{display:grid;gap:8px;max-height:180px;margin:0;overflow:auto;border:1px solid #fecaca;border-radius:8px;background:#fef2f2;padding:12px 12px 12px 28px;color:#7f1d1d;font-size:13px;line-height:1.55}.stress-failure-list li{overflow-wrap:anywhere}.result-grid{display:grid;gap:14px;grid-template-columns:repeat(2,minmax(0,1fr))}.result-panel{display:grid;min-width:0;gap:8px}.result-panel h3{color:#111827;font-size:14px;font-weight:700;line-height:1.35}.response-box{min-height:190px;max-height:380px;margin:0;overflow:auto;border:1px solid #0f172a;border-radius:8px;background:var(--code-bg);color:#e5edf8;padding:14px;white-space:pre-wrap;word-break:break-word;line-height:1.55}.response-box.tall{min-height:520px}.wide-select{width:min(420px,100%)}.rule-job-select{width:min(620px,100%)}.rule-job-select-dropdown .el-select-dropdown__item{height:auto;padding:8px 12px;line-height:1.35}.rule-form{margin:16px 0}.rule-editor-surface{border-color:#cfd9ea}.rule-list-surface{padding-top:14px}.rule-assert-grid,.rule-builder-grid{display:grid;gap:12px;grid-template-columns:repeat(3,minmax(0,1fr))}.rule-builder-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.rule-assert-grid{grid-template-columns:160px minmax(0,1fr)}.rule-form .el-select{width:100%}.rule-query-parser{display:grid;gap:8px;margin-bottom:14px}.rule-query-parser .el-button{justify-self:start}.selected-rule-target{display:flex;align-items:center;gap:10px;min-height:38px;margin:0 0 14px;border:1px solid #dbe5f4;border-radius:8px;background:#f8fbff;padding:8px 10px}.selected-rule-label{flex:0 0 auto;color:var(--muted);font-size:13px;font-weight:700}.rule-target-text,.selected-rule-target strong{min-width:0;overflow-wrap:anywhere}.rule-path{display:flex;flex:1 1 auto;flex-wrap:wrap;gap:6px;min-width:0}.rule-path span{display:inline-flex;align-items:center;min-height:26px;border:1px solid #cbd5e1;border-radius:6px;background:#fff;color:#111827;font-size:13px;font-weight:700;line-height:1.2;padding:4px 8px;overflow-wrap:anywhere}.rule-path.compact{gap:4px}.rule-path.compact span{min-height:24px;background:#f8fafc;font-size:12px;font-weight:600;padding:3px 7px}.field-chip-list{display:flex;flex-wrap:wrap;gap:8px;max-height:156px;margin:-4px 0 14px;overflow:auto;border:1px dashed #cbd5e1;border-radius:8px;background:#fbfcfe;padding:10px}.field-chip-list .el-button{height:auto;min-height:30px;margin-left:0!important;padding:5px 9px}.field-chip-list .el-button>span{display:inline-flex;align-items:center;gap:6px}.field-chip-list small{color:inherit;font-size:11px;font-weight:600;opacity:.72}.rule-assertion-list{display:grid;gap:10px;margin-bottom:14px}.rule-assertion-head{display:flex;align-items:center;justify-content:space-between;gap:10px;color:var(--muted);font-size:13px;font-weight:700}.rule-assertion-row{display:grid;gap:8px;grid-template-columns:minmax(160px,1.2fr) 110px minmax(140px,1fr) 40px;align-items:center}.flow-bind-grid .el-select,.flow-form .el-select{width:100%}.flow-bind-grid{display:grid;gap:12px;grid-template-columns:repeat(2,minmax(0,1fr))}.flow-node-list{display:grid;gap:8px}.flow-session-fill-control{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-bottom:10px}.flow-session-fill-control .el-input{width:180px}.flow-node-row{display:grid;grid-template-columns:32px 34px minmax(0,1fr) auto;gap:10px;align-items:center;border:1px solid #dbe5f4;border-radius:8px;background:#fff;padding:10px 12px}.flow-node-row.dragging{opacity:.58}.flow-node-row.missing{border-color:#fecaca;background:#fef2f2}.flow-drag-handle{cursor:grab}.flow-drag-handle:active{cursor:grabbing}.flow-node-actions{display:flex;align-items:center;flex-wrap:wrap;justify-content:flex-end;gap:6px}.flow-node-actions .el-button{margin-left:0!important}.flow-node-index{display:grid;width:26px;min-height:26px;place-items:center;border-radius:6px;background:#eef5ff;color:#1d4ed8;font-size:13px;font-weight:700}.flow-node-main{display:grid;gap:4px;min-width:0}.flow-node-title{display:flex;align-items:center;gap:8px;min-width:0}.flow-node-title strong,.flow-node-url{overflow-wrap:anywhere}.flow-node-title strong{color:#111827;font-size:13px}.flow-node-url{color:var(--muted);font-size:12px}.flow-empty-chain{min-height:44px;border:1px solid #dbe5f4;border-radius:8px;background:#fff;color:var(--muted);font-size:13px;line-height:22px;padding:10px 12px}.flow-add-group{display:grid;gap:10px}.flow-add-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.flow-add-head strong{color:#111827;font-size:13px}.flow-add-head span{color:var(--muted);font-size:12px}.flow-auth-jobs{display:flex;flex-wrap:wrap;gap:8px}.flow-auth-button.selected{border-color:var(--accent);background:#eef5ff;color:#1d4ed8}.flow-actions{padding-top:0}.flow-result-list{display:grid;gap:14px;margin-top:14px}.flow-result-node{display:grid;gap:12px;border:1px solid #d6deea;border-radius:8px;background:#fff;padding:14px}.flow-result-node-head,.flow-rule-result-row,.flow-rule-section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.flow-result-node-head h3,.flow-rule-section-head h3{color:#111827;font-size:15px;line-height:1.35}.flow-result-node-head span,.flow-rule-section-head span{color:var(--muted);font-size:12px;overflow-wrap:anywhere}.flow-result-tags,.flow-rule-result-tags{display:flex;flex:0 0 auto;flex-wrap:wrap;justify-content:flex-end;gap:6px}.flow-interrupt-muted{color:var(--muted);font-size:12px;line-height:24px}.flow-interrupt-muted.small{line-height:22px}.flow-step-result-grid .response-box{min-height:170px;max-height:300px}.flow-rule-result-section{display:grid;gap:10px}.flow-rule-result-list{display:grid;gap:8px;margin:0;padding:0;list-style:none}.flow-rule-result-row{border:1px solid #e1e6ef;border-radius:8px;background:#f8fafc;padding:10px 12px}.flow-rule-result-main{display:grid;gap:4px;min-width:0}.flow-rule-result-main span,.flow-rule-result-main strong{overflow-wrap:anywhere}.flow-rule-result-main strong{color:#111827;font-size:13px}.flow-rule-empty,.flow-rule-result-main span{color:var(--muted);font-size:12px;line-height:1.45}.flow-rule-empty{border:1px dashed #cbd5e1;border-radius:8px;padding:10px 12px}.rule-preview{width:100%;max-height:220px;margin:0;overflow:auto;background:#f8fafc;color:#1f2937;white-space:pre-wrap;word-break:break-word;line-height:1.5}.rule-preview,.rule-test-result{border:1px solid #d6deea;border-radius:8px;padding:12px}.rule-test-result{display:grid;gap:10px;background:#fbfdff}.rule-test-checks li,.rule-test-result-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.rule-test-result-head h3{color:#111827;font-size:14px;line-height:1.35}.rule-test-checks{display:grid;gap:8px;margin:0;padding:0;list-style:none}.rule-test-checks li{border-top:1px solid #e5eaf3;padding-top:8px}.rule-test-checks div{display:grid;min-width:0;gap:4px}.rule-test-checks span,.rule-test-checks strong{overflow-wrap:anywhere;font-size:13px;line-height:1.45}.rule-test-checks strong{color:#111827}.rule-test-checks span{color:var(--muted)}.rule-content{margin:0;white-space:pre-wrap;word-break:break-word;color:#374151}.empty-surface{display:grid;min-height:260px;place-items:center}.node-controls{align-items:stretch;margin-bottom:16px}.node-controls .el-select{flex:1 1 240px}.node-detail{margin-top:12px}.url-text{overflow-wrap:anywhere}.el-button{border-radius:6px}.el-button--primary{--el-button-bg-color:var(--accent);--el-button-border-color:var(--accent);--el-button-hover-bg-color:var(--accent-strong);--el-button-hover-border-color:var(--accent-strong);--el-button-active-bg-color:#0b4f49;--el-button-active-border-color:#0b4f49;--el-button-outline-color:rgba(15,118,110,.22)}.el-input__wrapper,.el-select__wrapper,.el-textarea__inner{border-radius:6px}.el-table{--el-table-header-bg-color:#f4faf8;--el-table-row-hover-bg-color:#e9f6f4}@keyframes authBackgroundIn{0%{background-position:0 16px,0 -12px,0 0;opacity:.72}to{background-position:0 0,0 0,0 0;opacity:1}}@keyframes entryTimeGrid{0%{opacity:0;transform:translateX(28px)}to{opacity:1;transform:translateX(0)}}@keyframes entryLightSweep{0%{opacity:0;transform:translateX(-22%)}42%{opacity:1}to{opacity:.78;transform:translateX(12%)}}@keyframes entryTick{0%{opacity:0;transform:scaleY(.22)}to{opacity:1;transform:scaleY(1)}}@keyframes entryTitleIn{0%{opacity:0;transform:translateY(18px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes entryTextIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes entryProgress{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes authGridIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes authSweepIn{0%{opacity:0;transform:translateX(-16%)}45%{opacity:1}to{opacity:.76;transform:translateX(0)}}@keyframes authCardIn{0%{opacity:0;transform:translateY(18px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes authIntroIn{0%{opacity:0;transform:translateX(-16px)}to{opacity:1;transform:translateX(0)}}@keyframes authPanelIn{0%{opacity:0;transform:translateX(16px)}to{opacity:1;transform:translateX(0)}}@keyframes authTextIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes appShellIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:1ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:1ms!important}}@media (max-width:1180px){.result-grid,.split-grid,.split-grid.compact{grid-template-columns:1fr}.editor-surface{position:static}.response-box.tall{min-height:320px}}@media (max-width:820px){.entry-splash{padding:22px}.entry-time-mark{top:22px;right:24px}.entry-splash-copy{gap:14px}.entry-splash-copy h1{font-size:52px}.entry-splash-copy p{font-size:15px}.entry-progress{right:22px;bottom:38px;left:22px}.auth-screen{align-items:start;padding:16px}.auth-card{grid-template-columns:1fr;min-height:0}.auth-intro{gap:28px;padding:24px}.auth-intro-copy{gap:18px}.auth-intro-copy h1{max-width:none;font-size:26px}.auth-panel{padding:24px}.auth-panel-head strong{font-size:24px}.app-shell{display:block}.app-sidebar{position:relative;width:100%!important;height:auto}.app-header{align-items:stretch;flex-direction:column;padding:16px}.header-actions{justify-content:flex-start}.app-main,.surface{padding:14px}.surface-head{align-items:stretch}.node-controls,.surface-head{flex-direction:column}.json-field-tools{justify-content:flex-start}.json-field-tools .el-button{flex-shrink:0}.session-fill-control .el-input{width:min(100%,180px)}.step-input-row{flex-direction:column}.step-input-row .el-button{width:100%}.flow-bind-grid,.flow-step-result-grid,.rule-assert-grid,.rule-assertion-row,.rule-builder-grid,.stress-form-grid,.stress-metric-grid{grid-template-columns:1fr}.flow-node-row{grid-template-columns:32px 30px minmax(0,1fr)}.flow-node-row .el-button{grid-column:2;justify-self:start}.flow-node-actions{grid-column:3;justify-content:flex-start}.flow-drag-handle,.flow-node-actions .el-button{grid-column:auto}.selected-rule-target{align-items:flex-start;flex-direction:column}.flow-result-node-head,.flow-rule-result-row{align-items:stretch;flex-direction:column}.flow-result-tags,.flow-rule-result-tags{justify-content:flex-start}}