:root{color:#1c2b2a;font-synthesis:none;text-rendering:optimizelegibility;--ink:#1c2b2a;--muted:#6f7f7d;--line:#dce5e3;--surface:#fff;--soft:#f7f9f8;--teal:#146c66;--teal-dark:#0e514d;--teal-soft:#e5f2f0;--blue:#356ea0;--blue-soft:#e9f1f8;--orange:#b6632f;--orange-soft:#faeee6;--red:#b54b48;--red-soft:#f9e9e7;--green:#27765a;--green-soft:#e6f2ec;--shadow:0 10px 30px #16343112;background:#f3f6f5;font-family:Inter,PingFang SC,Microsoft YaHei,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html{min-width:320px;min-height:100%}body{background:#f3f6f5;min-width:320px;min-height:100vh;margin:0}button,input,select,textarea{font:inherit;letter-spacing:0}button{color:inherit}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline-offset:1px;outline:3px solid #146c6629}.app-shell{min-height:100vh}.sidebar{z-index:30;color:#fff;background:#173d3a;border-right:1px solid #ffffff14;flex-direction:column;width:252px;display:flex;position:fixed;inset:0 auto 0 0}.brand{border-bottom:1px solid #ffffff1a;align-items:center;gap:12px;height:78px;padding:0 22px;display:flex}.brand-mark{color:#173d3a;background:#f0b35d;border-radius:8px;place-items:center;width:38px;height:38px;display:grid}.brand>div:nth-child(2){flex-direction:column;min-width:0;display:flex}.brand strong{font-size:18px;line-height:1.35}.brand span{color:#ffffffa3;font-size:11px}.sidebar-close{color:#fff;margin-left:auto;display:none!important}.sidebar-nav{padding:20px 12px;overflow-y:auto}.nav-group{margin-bottom:20px}.nav-group>p{color:#ffffff6b;letter-spacing:0;margin:0 10px 8px;font-size:11px;font-weight:700}.nav-item{color:#ffffffb8;cursor:pointer;text-align:left;background:0 0;border:0;border-radius:6px;align-items:center;gap:11px;width:100%;height:42px;padding:0 12px;transition:background .18s,color .18s;display:flex}.nav-item:hover{color:#fff;background:#ffffff14}.nav-item.active{color:#123e3a;background:#e7f2f0;font-weight:700}.nav-item .live-dot{background:#f0b35d;border-radius:50%;width:7px;height:7px;margin-left:auto;box-shadow:0 0 0 4px #f0b35d29}.sidebar-footer{border-top:1px solid #ffffff1a;margin-top:auto;padding:12px}.user-chip{background:#ffffff12;border-radius:7px;align-items:center;gap:10px;min-height:58px;margin-top:10px;padding:8px;display:flex}.avatar{color:#173d3a;background:#f0b35d;border-radius:50%;flex:none;place-items:center;width:34px;height:34px;font-size:11px;font-weight:800;display:grid}.user-chip>div:nth-child(2){flex-direction:column;flex:1;min-width:0;display:flex}.user-chip strong{font-size:12px}.user-chip span{color:#ffffff80;text-overflow:ellipsis;font-size:10px;overflow:hidden}.user-chip>svg{color:#ffffff7a}.main-area{min-height:100vh;margin-left:252px}.topbar{z-index:20;border-bottom:1px solid var(--line);background:#fffffff5;justify-content:space-between;align-items:center;height:66px;padding:0 30px;display:flex;position:sticky;top:0}.topbar-left,.topbar-actions{align-items:center;gap:13px;display:flex}.context-label{color:var(--muted);font-size:12px;font-weight:600}.project-switcher-wrap{align-items:center;gap:11px;display:flex;position:relative}.project-switcher{border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:6px;align-items:center;gap:9px;min-width:196px;height:38px;padding:0 12px;font-weight:700;display:flex}.project-switcher>span:nth-child(2){text-align:left;flex:1}.project-dot{border-radius:3px;width:9px;height:9px}.project-menu{z-index:35;border:1px solid var(--line);background:#fff;border-radius:8px;width:310px;padding:8px;position:absolute;top:46px;left:69px;box-shadow:0 18px 50px #12373329}.menu-heading{color:var(--muted);padding:7px 8px 8px;font-size:11px;font-weight:700}.project-menu button{cursor:pointer;text-align:left;background:0 0;border:0;border-radius:6px;align-items:center;gap:10px;width:100%;padding:9px 8px;display:flex}.project-menu button:hover,.project-menu button.selected{background:var(--soft)}.project-menu button>span:nth-child(2){flex-direction:column;flex:1;min-width:0;display:flex}.project-menu strong{font-size:13px}.project-menu small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.project-avatar{color:#fff;border-radius:6px;place-items:center;width:30px;height:30px;font-size:10px;font-weight:800;display:grid}.project-menu .new-project-action{color:var(--teal);border-top:1px solid var(--line);border-radius:0 0 6px 6px;margin-top:6px;padding-top:11px;font-weight:700}.runner-status{background:var(--green-soft);color:var(--green);border-radius:999px;align-items:center;gap:7px;padding:7px 10px;font-size:11px;font-weight:700;display:flex}.runner-status span{background:#35a278;border-radius:50%;width:7px;height:7px;box-shadow:0 0 0 3px #35a27824}.runner-status.offline{background:var(--red-soft);color:var(--red)}.runner-status.offline span{background:var(--red);box-shadow:0 0 0 3px #b54b4824}.top-avatar{width:34px;height:34px}.mobile-menu{display:none!important}.page-content{max-width:1560px;margin:0 auto;padding:30px 34px 48px}.page-title-row{justify-content:space-between;align-items:flex-start;gap:24px;min-height:82px;margin-bottom:24px;display:flex}.page-title-row h1{color:var(--ink);letter-spacing:0;margin:3px 0 6px;font-size:27px;line-height:1.25}.page-title-row p{color:var(--muted);margin:0;font-size:13px}.page-title-row .eyebrow{color:var(--teal);font-size:10px;font-weight:800}.page-title-row>.primary-button{margin-top:20px}.primary-button,.secondary-button,.secondary-small,.text-button,.run-icon,.icon-button{cursor:pointer;border:0}.primary-button{background:var(--teal);color:#fff;border-radius:6px;justify-content:center;align-items:center;gap:8px;min-height:40px;padding:0 16px;font-size:13px;font-weight:700;display:inline-flex;box-shadow:0 4px 12px #146c662e}.primary-button:hover{background:var(--teal-dark)}.secondary-button{border:1px solid var(--line);background:#fff;border-radius:6px;min-height:40px;padding:0 16px;font-size:13px;font-weight:700}.secondary-button:hover{background:var(--soft);border-color:#adc5c2}.secondary-small{min-height:31px;color:var(--teal);white-space:nowrap;background:#fff;border:1px solid #bed7d3;border-radius:5px;align-items:center;gap:6px;padding:0 10px;font-size:11px;font-weight:700;display:inline-flex}.secondary-small:hover{background:var(--teal-soft)}.secondary-small:disabled{opacity:.46;cursor:not-allowed}.text-button{color:var(--teal);background:0 0;padding:5px;font-size:12px}.text-button.strong{font-weight:700}.icon-button{width:36px;height:36px;color:var(--muted);background:0 0;border-radius:6px;place-items:center;padding:0;display:inline-grid}.icon-button:hover{color:var(--ink);background:#edf2f1}.icon-button.small{width:30px;height:30px}.icon-button.danger-hover:hover{background:var(--red-soft);color:var(--red)}.dashboard-grid{grid-template-columns:minmax(0,1.45fr) minmax(330px,.8fr);gap:18px;display:grid}.grid-span-full{grid-column:1/-1}.metric-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;display:grid}.metric-card{border:1px solid var(--line);background:var(--surface);border-radius:8px;align-items:center;gap:15px;min-height:116px;padding:20px;display:flex;box-shadow:0 4px 18px #1634310a}.metric-icon{border-radius:7px;flex:none;place-items:center;width:42px;height:42px;display:grid}.metric-icon.teal{background:var(--teal-soft);color:var(--teal)}.metric-icon.blue{background:var(--blue-soft);color:var(--blue)}.metric-icon.orange{background:var(--orange-soft);color:var(--orange)}.metric-icon.green{background:var(--green-soft);color:var(--green)}.metric-card>div:last-child{grid-template-columns:auto 1fr;align-items:baseline;column-gap:9px;min-width:0;display:grid}.metric-card p{color:var(--muted);grid-column:1/-1;margin:0 0 7px;font-size:12px;font-weight:600}.metric-card strong{color:var(--ink);font-size:26px;line-height:1}.metric-card span{color:#899694;text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.panel{border:1px solid var(--line);background:var(--surface);border-radius:8px;box-shadow:0 5px 22px #1634310b}.panel-header{border-bottom:1px solid #e7eceb;justify-content:space-between;align-items:center;gap:16px;min-height:74px;padding:17px 20px;display:flex}.panel-header h2{margin:0 0 4px;font-size:15px}.panel-header p{color:var(--muted);margin:0;font-size:11px}.chart-panel,.quick-panel{min-height:320px}.chart-summary{align-items:center;gap:14px;padding:19px 22px 0;display:flex}.chart-summary strong{font-size:28px}.chart-summary span{color:var(--muted);align-items:center;gap:6px;font-size:11px;display:flex}.chart-summary i{background:var(--teal);border-radius:50%;width:7px;height:7px}.bar-chart{align-items:flex-end;gap:clamp(12px,4vw,38px);height:192px;padding:22px 28px 18px;display:flex}.bar-column{flex-direction:column;flex:1;justify-content:flex-end;align-items:center;gap:8px;height:100%;display:flex}.bar{background:#72a8a2;border-radius:4px 4px 2px 2px;width:min(28px,75%);min-height:10px;transition:height .25s;position:relative}.bar:hover{background:var(--teal)}.bar span{opacity:0;color:var(--teal);font-size:9px;font-weight:700;position:absolute;top:-20px;left:50%;transform:translate(-50%)}.bar:hover span{opacity:1}.bar-column small{color:var(--muted);font-size:10px}.quick-list{padding:8px 18px}.quick-item{border-bottom:1px solid #edf0ef;align-items:center;gap:11px;min-height:69px;display:flex}.quick-item:last-child{border-bottom:0}.quick-index{background:var(--orange-soft);width:31px;height:31px;color:var(--orange);border-radius:6px;flex:none;place-items:center;display:grid}.quick-item>div:nth-child(2){flex-direction:column;flex:1;min-width:0;display:flex}.quick-item strong{text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.quick-item span{color:var(--muted);margin-top:4px;font-size:10px}.run-icon{background:var(--teal-soft);width:31px;height:31px;color:var(--teal);border-radius:50%;flex:none;place-items:center;display:grid}.run-icon:hover{background:var(--teal);color:#fff}.recent-panel,.table-panel{overflow:hidden}.filter-bar{border-bottom:1px solid var(--line);background:#fbfcfc;align-items:center;gap:10px;min-height:66px;padding:12px 16px;display:flex}.search-field{border:1px solid var(--line);color:#81908e;background:#fff;border-radius:6px;align-items:center;gap:8px;width:min(300px,40vw);height:38px;padding:0 11px;display:flex}.search-field:focus-within{border-color:#73aaa5;box-shadow:0 0 0 3px #146c6614}.search-field input{background:0 0;border:0;outline:0;flex:1;min-width:0;font-size:12px}.filter-bar select{border:1px solid var(--line);min-width:150px;height:38px;color:var(--ink);background:#fff;border-radius:6px;padding:0 30px 0 11px;font-size:12px}.result-count{color:var(--muted);white-space:nowrap;margin-left:auto;font-size:11px}.filter-title{color:var(--teal);align-items:center;gap:8px;font-size:12px;font-weight:700;display:flex}.table-scroll{overflow-x:auto}table{border-collapse:collapse;width:100%;min-width:970px}th{color:#70807e;text-align:left;white-space:nowrap;background:#f7f9f8;height:45px;padding:0 14px;font-size:10px;font-weight:700}td{color:#344340;border-top:1px solid #e9eeed;height:67px;padding:10px 14px;font-size:11px}tbody tr:hover{background:#fbfcfc}.compact-table td{height:62px}.primary-cell{align-items:center;gap:10px;min-width:190px;display:flex}.primary-cell>div{flex-direction:column;gap:4px;min-width:0;display:flex}.primary-cell strong{max-width:260px;color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.primary-cell small{color:#899694;font-size:9px}.case-glyph{border-radius:6px;flex:none;place-items:center;width:32px;height:32px;display:grid}.case-glyph.ui{background:var(--blue-soft);color:var(--blue)}.case-glyph.api{background:var(--teal-soft);color:var(--teal)}.case-glyph.schedule{background:var(--orange-soft);color:var(--orange)}.case-glyph.run-passed{background:var(--green-soft);color:var(--green)}.case-glyph.run-failed{background:var(--red-soft);color:var(--red)}.case-glyph.run-running{background:var(--blue-soft);color:var(--blue)}.endpoint{align-items:center;gap:7px;min-width:220px;display:flex}.endpoint code{color:#5b6967;text-overflow:ellipsis;white-space:nowrap;max-width:180px;font:10px ui-monospace,SFMono-Regular,Menlo,monospace;overflow:hidden}.method{text-align:center;border-radius:4px;min-width:43px;padding:3px 5px;font-size:8px;font-weight:800}.method-get{background:var(--green-soft);color:var(--green)}.method-post{background:var(--blue-soft);color:var(--blue)}.method-put{background:var(--orange-soft);color:var(--orange)}.method-delete{background:var(--red-soft);color:var(--red)}.module-tag,.environment-tag,.type-tag{white-space:nowrap;border-radius:4px;align-items:center;font-weight:700;display:inline-flex}.module-tag{color:#52615f;background:#edf1f0;padding:4px 7px;font-size:9px}.environment-tag{color:var(--teal);background:#edf4f3;padding:4px 7px;font-size:9px}.type-tag{padding:3px 6px;font-size:8px}.type-tag.ui{background:var(--blue-soft);color:var(--blue)}.type-tag.api{background:var(--teal-soft);color:var(--teal)}.type-tag.scenario{background:var(--orange-soft);color:var(--orange)}.priority{font-size:10px;font-weight:800}.priority.p0{color:var(--red)}.priority.p1{color:var(--orange)}.priority.p2{color:var(--muted)}.status{white-space:nowrap;align-items:center;gap:5px;font-size:10px;font-weight:700;display:inline-flex}.status i{border-radius:50%;width:6px;height:6px}.status-passed{color:var(--green)}.status-passed i{background:var(--green)}.status-failed{color:var(--red)}.status-failed i{background:var(--red)}.status-running{color:var(--blue)}.status-running i{background:var(--blue)}.status-queued,.status-never{color:var(--muted)}.status-queued i,.status-never i{background:#9aa6a4}.row-actions{align-items:center;gap:4px;display:flex}.muted-cell{color:var(--muted)}.type-text{white-space:nowrap}.toggle{cursor:pointer;background:#b8c4c2;border:0;border-radius:999px;width:32px;height:18px;padding:0;transition:background .18s;position:relative}.toggle span{background:#fff;border-radius:50%;width:12px;height:12px;transition:transform .18s;position:absolute;top:3px;left:3px;box-shadow:0 1px 3px #0000002e}.toggle.checked{background:var(--teal)}.toggle.checked span{transform:translate(14px)}.target-cell{align-items:center;gap:8px;min-width:180px;display:flex}.target-cell strong{font-size:11px}.next-run{color:var(--teal);font-weight:700}.run-result{align-items:center;gap:9px;display:flex}.run-result small{color:var(--muted)}.running-progress{align-items:center;gap:7px;width:110px;display:flex}.running-progress>span{background:#dce9e7;border-radius:4px;width:58px;height:4px;overflow:hidden}.running-progress i{background:var(--teal);width:45%;height:100%;animation:1.2s ease-in-out infinite alternate progress;display:block}.running-progress small{color:var(--blue);white-space:nowrap}.spin{animation:1.1s linear infinite spin}.scenario-grid,.data-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.scenario-card,.data-card{border:1px solid var(--line);background:#fff;border-radius:8px;min-height:268px;padding:20px;box-shadow:0 5px 20px #1634310b}.scenario-card-top,.data-card-head{justify-content:space-between;align-items:center;display:flex}.scenario-icon,.data-icon{border-radius:7px;place-items:center;width:38px;height:38px;display:grid}.scenario-icon{background:var(--orange-soft);color:var(--orange)}.data-icon{background:var(--teal-soft);color:var(--teal)}.scenario-card-actions{align-items:center;gap:5px;display:flex}.scenario-card h3,.data-card h3{margin:17px 0 7px;font-size:15px}.scenario-card>p,.data-card>p{min-height:35px;color:var(--muted);margin:0;font-size:11px;line-height:1.6}.scenario-flow{align-items:center;min-height:48px;margin:14px 0;display:flex}.flow-node{margin-right:18px;position:relative}.flow-node span{border-radius:5px;place-items:center;width:32px;height:25px;font-size:8px;font-weight:800;display:grid}.flow-node.ui span{background:var(--blue-soft);color:var(--blue)}.flow-node.api span{background:var(--teal-soft);color:var(--teal)}.flow-node i{background:#bdc9c7;width:18px;height:1px;position:absolute;top:12px;left:32px}.scenario-flow>small{color:var(--muted)}.scenario-meta{border-top:1px solid #edf0ef;border-bottom:1px solid #edf0ef;flex-wrap:wrap;gap:12px;padding:10px 0;display:flex}.scenario-meta span{color:var(--muted);align-items:center;gap:5px;font-size:9px;display:flex}.scenario-footer{justify-content:space-between;align-items:center;gap:10px;margin-top:13px;display:flex}.scenario-footer small{color:var(--muted);font-size:9px}.variable-list{border:1px solid #e6ecea;border-radius:6px;min-height:110px;margin:15px 0;overflow:hidden}.variable-list>div{background:#fafbfb;border-bottom:1px solid #edf0ef;justify-content:space-between;align-items:center;gap:12px;min-height:34px;padding:6px 9px;display:flex}.variable-list>div:last-child{border-bottom:0}.variable-list code{color:var(--teal);font:10px ui-monospace,SFMono-Regular,Menlo,monospace}.variable-list span{max-width:45%;color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.data-footer{color:var(--muted);justify-content:space-between;font-size:9px;display:flex}.empty-panel{grid-column:1/-1}.empty-state{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:230px;padding:34px;display:flex}.empty-state>div{background:var(--soft);color:#82918f;border-radius:8px;place-items:center;width:44px;height:44px;margin-bottom:12px;display:grid}.empty-state strong{font-size:13px}.empty-state p{max-width:360px;color:var(--muted);margin:6px 0 0;font-size:11px;line-height:1.6}.empty-mini{min-height:82px;color:var(--muted);justify-content:center;align-items:center;gap:7px;font-size:11px;display:flex}.modal-backdrop{z-index:100;background:#1023217a;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.modal{background:#fff;border-radius:8px;width:min(580px,100%);max-height:calc(100vh - 48px);overflow-y:auto;box-shadow:0 24px 70px #0a242147}.modal.modal-wide{width:min(940px,100%)}.modal-head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:18px;min-height:80px;padding:17px 21px;display:flex}.modal-head h2{margin:0 0 5px;font-size:17px}.modal-head p{color:var(--muted);margin:0;font-size:11px}.modal-form{padding:20px 21px}.form-field{color:#41504e;flex-direction:column;gap:7px;font-size:11px;font-weight:700;display:flex}.form-field>span{justify-content:space-between;gap:12px;display:flex}.form-field>span small{color:#8c9997;font-size:9px;font-weight:500}.form-field input,.form-field select,.form-field textarea{width:100%;min-height:40px;color:var(--ink);background:#fff;border:1px solid #d5dfdd;border-radius:6px;outline:0;padding:9px 11px;font-size:12px}.form-field textarea{resize:vertical;line-height:1.6}.form-field input:focus,.form-field select:focus,.form-field textarea:focus{border-color:#70aaa5;box-shadow:0 0 0 3px #146c6614}.form-grid{gap:14px;margin-bottom:15px;display:grid}.form-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.modal-form>.form-field{margin-bottom:15px}.endpoint-form{grid-template-columns:125px minmax(0,1fr);gap:14px;margin-bottom:15px;display:grid}.info-strip{color:#536966;background:#eff5f4;border-radius:6px;align-items:center;gap:8px;min-height:42px;margin-top:4px;padding:10px 12px;font-size:10px;display:flex}.info-strip svg{color:var(--teal)}.settings-section{border:1px solid var(--line);background:var(--soft);border-radius:7px;margin:18px 0 15px;padding:14px}.settings-section-title{color:var(--teal);align-items:center;gap:7px;margin-bottom:14px;display:flex}.settings-section-title strong{color:var(--ink);font-size:12px}.settings-section-title span{color:var(--muted);margin-left:auto;font-size:9px}.settings-section .form-field{margin-bottom:12px}.settings-section .form-field:last-child{margin-bottom:0}.form-actions{border-top:1px solid var(--line);background:#fbfcfc;justify-content:flex-end;gap:9px;margin:20px -21px -20px;padding:14px 21px;display:flex}.code-area{font-family:ui-monospace,SFMono-Regular,Menlo,monospace!important}.builder-grid{grid-template-columns:1fr 1fr;gap:14px;display:grid}.builder-column{border:1px solid var(--line);border-radius:7px;min-width:0;overflow:hidden}.builder-title{background:var(--soft);border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;height:42px;padding:0 12px;display:flex}.builder-title span{font-size:11px;font-weight:700}.builder-title small{color:var(--muted);font-size:9px}.case-picker,.selected-steps{height:250px;padding:7px;overflow-y:auto}.case-picker label{cursor:pointer;border-bottom:1px solid #edf0ef;grid-template-columns:16px auto minmax(0,1fr);align-items:center;gap:7px;min-height:43px;padding:6px 7px;display:grid}.case-picker label:hover{background:var(--soft)}.case-picker strong{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:10px;overflow:hidden}.case-picker small{color:var(--muted);grid-column:3;font-size:8px}.case-picker input{accent-color:var(--teal)}.selected-steps>div:not(.empty-mini){border-bottom:1px solid #edf0ef;align-items:center;gap:6px;min-height:44px;padding:6px;display:flex}.selected-steps>div>svg{color:#9ba8a6}.selected-steps b{width:20px;height:20px;color:var(--muted);background:#edf1f0;border-radius:4px;place-items:center;font-size:8px;display:grid}.selected-steps strong{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:9px;overflow:hidden}.selected-steps>div>div{display:flex}.selected-steps button{width:23px;height:23px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:4px;place-items:center;padding:0;display:grid}.selected-steps button:hover:not(:disabled){color:var(--teal);background:#edf1f0}.selected-steps button:disabled{opacity:.3;cursor:not-allowed}.run-detail-summary{border:1px solid var(--line);background:var(--soft);border-radius:7px;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:18px 21px 4px;padding:14px;display:grid}.run-detail-summary>div{flex-direction:column;gap:6px;display:flex}.run-detail-summary span:first-child{color:var(--muted);font-size:9px}.run-detail-summary strong{font-size:11px}.step-timeline{padding:13px 21px 10px}.timeline-step{gap:11px;min-height:63px;display:flex;position:relative}.timeline-step:not(:last-child):after{content:"";background:#d8e2e0;width:1px;position:absolute;top:27px;bottom:-2px;left:12px}.timeline-marker{z-index:1;background:var(--green-soft);width:25px;height:25px;color:var(--green);border-radius:50%;flex:none;place-items:center;display:grid}.timeline-marker.failed{background:var(--red-soft);color:var(--red)}.timeline-marker.running{background:var(--blue-soft);color:var(--blue)}.timeline-step>div:last-child{gap:2px;display:grid}.timeline-step span{color:var(--muted);font-size:8px}.timeline-step strong{font-size:11px}.timeline-step small{color:var(--muted);font-size:9px}.modal>.form-actions{margin:10px 0 0}.toast{z-index:150;max-width:min(380px,100vw - 32px);min-height:46px;color:var(--green);background:#fff;border:1px solid #bcd8d1;border-radius:7px;align-items:center;gap:9px;padding:0 15px;font-size:12px;font-weight:700;animation:.22s ease-out toast-in;display:flex;position:fixed;bottom:24px;right:24px;box-shadow:0 12px 40px #0f332f2e}@keyframes spin{to{transform:rotate(360deg)}}@keyframes progress{0%{transform:translate(-45%)}to{transform:translate(110%)}}@keyframes toast-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media (width<=1180px){.metric-grid,.scenario-grid,.data-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=920px){.sidebar{transition:transform .22s;transform:translate(-100%);box-shadow:16px 0 50px #0a242138}.sidebar.sidebar-open{transform:translate(0)}.sidebar-close{display:inline-grid!important}.sidebar-scrim{z-index:25;background:#0b1f1d6b;border:0;position:fixed;inset:0}.main-area{margin-left:0}.mobile-menu{display:inline-grid!important}.dashboard-grid{grid-template-columns:1fr}.grid-span-full{grid-column:1}}@media (width<=680px){.topbar{height:60px;padding:0 14px}.context-label,.runner-status,.topbar-actions>.icon-button{display:none}.project-switcher{min-width:0;max-width:52vw;height:36px}.project-switcher>span:nth-child(2){text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.project-menu{width:min(310px,100vw - 72px);position:fixed;top:54px;left:58px}.page-content{padding:22px 14px 36px}.page-title-row{flex-direction:column;gap:15px;min-height:0;margin-bottom:18px}.page-title-row h1{font-size:23px}.page-title-row>.primary-button{width:100%;margin-top:0}.metric-grid{grid-template-columns:1fr 1fr;gap:9px}.metric-card{gap:10px;min-height:106px;padding:14px 12px}.metric-icon{width:35px;height:35px}.metric-card strong{font-size:21px}.metric-card span{grid-column:1/-1;margin-top:5px}.scenario-grid,.data-grid{grid-template-columns:1fr}.filter-bar{flex-wrap:wrap;align-items:stretch}.search-field{width:100%}.filter-bar select{flex:1;min-width:0}.result-count{align-items:center;display:flex}.modal-backdrop{align-items:flex-end;padding:0}.modal,.modal.modal-wide{border-radius:8px 8px 0 0;width:100%;max-height:92vh}.form-grid.two,.endpoint-form,.builder-grid{grid-template-columns:1fr}.builder-column{min-height:190px}.case-picker,.selected-steps{height:180px}.run-detail-summary{grid-template-columns:1fr 1fr}.bar-chart{gap:10px;padding-inline:18px}}@media (width<=430px){.metric-grid{grid-template-columns:1fr}.metric-card{min-height:92px}.metric-card>div:last-child{grid-template-columns:auto 1fr}.metric-card span{grid-column:auto;margin-top:0}.top-avatar{display:none}.project-switcher{max-width:64vw}}
