.sso-block{display:flex;flex-direction:column;gap:10px}.sso-divider{display:flex;align-items:center;gap:12px;color:var(--muted);font-size:12px;text-transform:uppercase;letter-spacing:.08em;margin:4px 0}.sso-divider:before,.sso-divider:after{content:"";flex:1;height:1px;background:var(--border)}.sso-buttons{display:flex;flex-direction:column;gap:8px}.login-card .sso-btn,.sso-btn{display:flex;align-items:center;gap:10px;width:100%;padding:10px 14px;border-radius:10px;border:1px solid var(--border);background:var(--surface);color:var(--ink);font:inherit;font-size:14px;font-weight:600;cursor:pointer;text-align:left;transition:border-color .15s,box-shadow .15s,background .15s}.sso-btn:hover{border-color:var(--brand-line);background:var(--brand-soft);box-shadow:var(--shadow)}.sso-btn:focus-visible{outline:none;border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-soft)}.sso-btn-icon{width:28px;height:28px;border-radius:8px;display:grid;place-items:center;background:var(--brand-soft);color:var(--brand);flex:none}.sso-btn-label{flex:1}.sso-btn-proto{font-size:10px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}.sso-link{background:none;border:0;padding:2px 0;color:var(--brand);font:inherit;font-size:13px;font-weight:600;cursor:pointer;align-self:center}.sso-link:hover{text-decoration:underline}.sso-discover{display:flex;flex-direction:column;gap:6px}.sso-discover label{font-size:12px;font-weight:600;color:var(--ink-2)}.sso-discover-row{display:flex;gap:8px}.sso-discover-row input{flex:1;min-width:0;padding:9px 11px;border:1px solid var(--border);border-radius:8px;font:inherit;font-size:14px}.sso-discover-row input:focus{outline:none;border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-soft)}.login-card .sso-discover-row .btn{width:auto}.sso-note{margin:0;font-size:12px;color:var(--ink-2);background:var(--surface-2);border-radius:8px;padding:8px 10px}.sso-error{display:flex;flex-direction:column;gap:2px;background:var(--red-soft);color:var(--red);border-radius:8px;padding:10px 12px;font-size:13px}.idp-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin:4px 0 18px}.idp-head h2{margin:0 0 4px;font-size:18px}.idp-head p{margin:0;max-width:720px}.idp-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:10px}.idp-card{background:var(--surface);border:1px solid var(--border);border-radius:10px;box-shadow:var(--shadow);padding:12px 14px;display:flex;flex-direction:column;gap:8px;min-width:0;transition:box-shadow .15s,border-color .15s}.idp-card:hover{box-shadow:var(--shadow);border-color:var(--brand-line)}.idp-card-top{display:flex;align-items:center;gap:10px}.idp-card-icon{width:32px;height:32px;border-radius:8px;display:grid;place-items:center;background:var(--brand-soft);color:var(--brand);flex:none}.idp-card-title{flex:1;min-width:0}.idp-card-title h3{margin:0;font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.idp-card-title .muted{font-size:12px}.idp-card-foot{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--border);padding-top:8px;gap:8px}.idp-card-foot .actions{display:flex;gap:8px}.idp-stats{display:flex;gap:14px;font-size:12px;color:var(--ink-2)}.idp-stats b{display:inline;margin-right:4px;font-size:13.5px;color:var(--ink)}.idp-proto{display:inline-flex;align-items:center;font-size:10.5px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;padding:3px 8px;border-radius:6px;background:var(--brand-soft);color:var(--brand);border:1px solid var(--brand-line);white-space:nowrap}.idp-proto.p-saml{background:var(--amber-soft);color:var(--amber);border-color:transparent}.idp-proto.p-ldap{background:var(--green-soft);color:var(--green);border-color:transparent}.idp-proto.p-scim{background:var(--gray-soft);color:var(--ink-2);border-color:transparent}.idp-proto.p-oauth2{background:var(--accent-soft);color:var(--accent);border-color:transparent}.idp-status{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:600;padding:3px 10px;border-radius:20px;white-space:nowrap}.idp-status:before{content:"";width:7px;height:7px;border-radius:50%;background:currentColor}.idp-status.on{background:var(--green-soft);color:var(--green)}.idp-status.off{background:var(--gray-soft);color:var(--muted)}.idp-status.warn{background:var(--amber-soft);color:var(--amber)}.idp-chips{display:flex;flex-wrap:wrap;gap:6px;min-height:22px}.idp-chip{font-size:12px;padding:2px 9px;border-radius:20px;background:var(--surface-2);border:1px solid var(--border);color:var(--ink-2)}.idp-chip.flag{background:var(--brand-soft);border-color:var(--brand-line);color:var(--brand);font-weight:600}.idp-empty{text-align:center;padding:48px 24px;border:1px dashed var(--brand-line);border-radius:var(--radius);background:linear-gradient(180deg,var(--brand-soft),var(--surface) 70%)}.idp-empty h3{margin:12px 0 6px;font-size:17px}.idp-empty p{margin:0 auto 18px;max-width:560px;color:var(--ink-2);font-size:13px;line-height:1.55}.idp-empty-icon{width:52px;height:52px;border-radius:14px;margin:0 auto;display:grid;place-items:center;background:var(--surface);color:var(--brand);box-shadow:var(--shadow)}.idp-empty .idp-chips{justify-content:center;margin-bottom:18px}.idp-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0b164061;display:grid;place-items:center;z-index:60;padding:24px}.idp-modal{background:var(--surface);border-radius:14px;width:min(860px,100%);max-height:calc(100vh - 48px);overflow:auto;box-shadow:0 24px 60px #0b164040}.idp-modal-head{display:flex;justify-content:space-between;align-items:center;padding:18px 22px;border-bottom:1px solid var(--border);position:sticky;top:0;background:var(--surface);z-index:1}.idp-modal-head h2{margin:0;font-size:17px}.idp-modal-body{padding:20px 22px 24px}.idp-tiles{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:12px}.idp-tile{text-align:left;border:1px solid var(--border);border-radius:10px;padding:11px 14px;background:var(--surface);cursor:pointer;font:inherit;color:var(--ink);display:flex;flex-direction:column;gap:4px;min-width:0;transition:border-color .15s,box-shadow .15s}.idp-tile:hover,.idp-tile.on{border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-soft)}.idp-tile b{font-size:13.5px}.idp-tile span{font-size:12px;color:var(--ink-2);line-height:1.45}.idp-presets{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:10px;margin-top:10px}.idp-step{font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin:20px 0 8px}.idp-step:first-child{margin-top:0}.idp-editor{display:flex;flex-direction:column;gap:16px;padding-bottom:80px}.idp-editor-head{display:flex;align-items:center;gap:14px}.idp-editor-head h2{margin:0;font-size:19px}.idp-back{background:none;border:0;color:var(--brand);font:inherit;font-weight:600;cursor:pointer;padding:0;font-size:13px}.idp-section{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:20px 22px}.idp-section>h3{margin:0 0 4px;font-size:15px}.idp-section>.idp-help{margin:0 0 6px}.idp-help{font-size:12px;color:var(--muted);line-height:1.5;margin:4px 0 0}.idp-fields{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:14px 18px;margin-top:14px}.idp-fields .full{grid-column:1 / -1}.idp-field{display:flex;flex-direction:column;gap:6px;min-width:0}.idp-field>label{font-size:12px;font-weight:600;color:var(--ink-2)}.idp-field input,.idp-field select,.idp-field textarea{padding:9px 11px;border:1px solid var(--border);border-radius:8px;font:inherit;font-size:13.5px;background:var(--surface);color:var(--ink);min-width:0}.idp-field textarea{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12px;resize:vertical}.idp-field input:focus,.idp-field select:focus,.idp-field textarea:focus{outline:none;border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-soft)}.idp-copy{display:flex;gap:8px}.idp-copy input{flex:1;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12px;background:var(--surface-2)}.idp-paste{background:var(--brand-soft);border:1px solid var(--brand-line);border-radius:10px;padding:14px 16px;margin-top:14px}.idp-paste .idp-fields{margin-top:8px}.idp-switch{display:flex;align-items:flex-start;gap:12px;cursor:pointer;padding:6px 0}.idp-switch input{position:absolute;opacity:0;pointer-events:none}.idp-switch .track{width:36px;height:20px;border-radius:20px;background:var(--border);position:relative;flex:none;margin-top:1px;transition:background .15s}.idp-switch .track:after{content:"";position:absolute;top:2px;left:2px;width:16px;height:16px;border-radius:50%;background:#fff;box-shadow:0 1px 2px #0b164040;transition:transform .15s}.idp-switch input:checked+.track{background:var(--brand)}.idp-switch input:checked+.track:after{transform:translate(16px)}.idp-switch input:focus-visible+.track{box-shadow:0 0 0 3px var(--brand-soft)}.idp-switch .text b{display:block;font-size:13px;font-weight:600}.idp-switch .text span{font-size:12px;color:var(--muted)}.idp-table{width:100%;border-collapse:collapse;margin-top:12px;font-size:13px}.idp-table th{text-align:left;font-size:11px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--muted);padding:0 8px 6px;border-bottom:1px solid var(--border)}.idp-table td{padding:8px;border-bottom:1px solid var(--border);vertical-align:middle}.idp-table td input,.idp-table td select{width:100%;padding:7px 9px;border:1px solid var(--border);border-radius:7px;font:inherit;font-size:13px;background:var(--surface)}.idp-table tr:last-child td{border-bottom:0}.idp-table .x{background:none;border:0;color:var(--muted);cursor:pointer;font-size:18px;line-height:1;padding:0 4px}.idp-table .x:hover{color:var(--red)}.idp-roles{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.idp-role{display:inline-flex;align-items:center;gap:6px;padding:6px 11px;border:1px solid var(--border);border-radius:20px;font-size:12.5px;cursor:pointer;background:var(--surface);-webkit-user-select:none;user-select:none}.idp-role input{margin:0}.idp-role.on{border-color:var(--brand);background:var(--brand-soft);color:var(--brand);font-weight:600}.idp-certs{display:flex;flex-direction:column;gap:8px;margin-top:4px}.idp-cert{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:9px 12px;border-radius:8px;background:var(--surface-2);border:1px solid var(--border);font-size:12px}.idp-cert code{font-size:11px;word-break:break-all}.idp-cert.expired{border-color:var(--red);background:var(--red-soft)}.idp-token{margin-top:12px;padding:14px 16px;border-radius:10px;background:var(--amber-soft);border:1px solid var(--amber);display:flex;flex-direction:column;gap:8px}.idp-token b{color:var(--amber);font-size:13px}.idp-result{margin-top:12px;border-radius:10px;padding:12px 14px;font-size:13px;border:1px solid transparent}.idp-result.ok{background:var(--green-soft);color:var(--green)}.idp-result.bad{background:var(--red-soft);color:var(--red)}.idp-result pre{margin:10px 0 0;max-height:280px;overflow:auto;background:var(--surface);color:var(--ink);border:1px solid var(--border);border-radius:8px;padding:10px;font-size:11.5px;white-space:pre-wrap}.idp-foot{position:sticky;bottom:0;z-index:5;display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px 18px;background:#fffffff0;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border:1px solid var(--border);border-radius:var(--radius);box-shadow:0 -4px 20px #0b16400f}.idp-foot .right{display:flex;gap:10px;align-items:center}.idp-msg-err{color:var(--red);font-size:13px}.idp-msg-ok{color:var(--green);font-size:13px}.idp-loading{padding:40px;text-align:center;color:var(--muted)}@media(max-width:760px){.idp-head{flex-direction:column}.idp-foot{flex-direction:column;align-items:stretch}}.ge-toolbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.ge-toolbar .ge-spacer{flex:1}.ge-seg{display:inline-flex;border:1px solid var(--border);border-radius:8px;overflow:hidden;background:var(--surface)}.ge-seg button{border:0;background:transparent;padding:5px 12px;font:inherit;font-size:12.5px;color:var(--ink-2);cursor:pointer}.ge-seg button+button{border-left:1px solid var(--border)}.ge-seg button:hover{background:var(--surface-2)}.ge-seg button.on{background:var(--brand-soft);color:var(--brand);font-weight:600}.ge-kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;margin-bottom:18px}.ge-kpi{display:flex;flex-wrap:wrap;align-items:baseline;column-gap:10px;row-gap:2px;min-width:0;background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:11px 16px;box-shadow:var(--shadow)}.ge-kpi-label{font-size:12.5px;color:var(--muted);min-width:0}.ge-kpi-value{order:-1;font-size:20px;font-weight:700;color:var(--ink);line-height:1.2;letter-spacing:-.01em;font-variant-numeric:tabular-nums}.ge-kpi-sub{flex-basis:100%;font-size:11.5px;color:var(--muted)}.ge-kpi.good .ge-kpi-value{color:var(--green)}.ge-kpi.bad .ge-kpi-value{color:var(--red)}.ge-kpi.warn .ge-kpi-value{color:var(--amber)}.ge-empty{text-align:center;padding:44px 20px;color:var(--muted)}.ge-empty h3{color:var(--ink);margin:0 0 6px;font-size:16px}.ge-empty p{margin:0 auto 14px;max-width:460px;font-size:13px;line-height:1.5}.ge-error{display:flex;gap:10px;align-items:flex-start;background:var(--red-soft);color:var(--red);border:1px solid color-mix(in srgb,var(--red) 25%,transparent);border-radius:8px;padding:10px 14px;font-size:13px;margin-bottom:14px}.ge-error button{margin-left:auto}.ge-note{background:var(--brand-soft);color:var(--brand-deep);border:1px solid var(--brand-line);border-radius:8px;padding:10px 14px;font-size:13px;margin-bottom:14px}.ge-pill{display:inline-flex;align-items:center;gap:5px;border-radius:999px;padding:2px 9px;font-size:11.5px;font-weight:600;background:var(--surface-2);color:var(--ink-2);white-space:nowrap}.ge-pill.green{background:var(--green-soft);color:var(--green)}.ge-pill.red{background:var(--red-soft);color:var(--red)}.ge-pill.amber{background:var(--amber-soft);color:var(--amber)}.ge-pill.blue{background:var(--brand-soft);color:var(--brand)}.ge-table{width:100%;border-collapse:collapse;font-size:13px}.ge-table th{text-align:left;font-size:11.5px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);font-weight:600;padding:9px 10px;border-bottom:1px solid var(--border);white-space:nowrap}.ge-table td{padding:10px;border-bottom:1px solid var(--border);vertical-align:middle}.ge-table tr:last-child td{border-bottom:0}.ge-table tr.ge-click{cursor:pointer}.ge-table tr.ge-click:hover td{background:var(--surface-2)}.ge-table td.num,.ge-table th.num{text-align:right;font-variant-numeric:tabular-nums}.ge-table-wrap{overflow-x:auto}.ge-bar{position:relative;height:6px;border-radius:3px;background:var(--surface-2);min-width:60px;overflow:hidden}.ge-bar>span{position:absolute;inset:0 auto 0 0;background:var(--brand);border-radius:3px}.ge-section-title{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin:0 0 12px}.ge-section-title h2{margin:0;font-size:15px}.ge-params{display:flex;flex-wrap:wrap;gap:10px 14px;align-items:flex-end;padding:12px 14px;margin-top:12px;border:1px dashed var(--brand-line);background:color-mix(in srgb,var(--brand-soft) 45%,var(--surface));border-radius:10px}.ge-params-title{font-size:11.5px;font-weight:700;color:var(--brand-deep);text-transform:uppercase;letter-spacing:.05em;align-self:center}.ge-param{display:flex;flex-direction:column;gap:4px;min-width:150px}.ge-param label{font-size:12px;color:var(--ink-2);font-weight:600;display:flex;gap:6px;align-items:center}.ge-param label code{font-size:11.5px;color:var(--brand)}.ge-param-row{display:flex;gap:6px}.ge-param-row select{width:84px}.ge-param-row input,.ge-param-row select.ge-param-value{flex:1;min-width:0}.ge-result-head{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.ge-chart-tools{display:flex;flex-wrap:wrap;gap:10px 16px;align-items:flex-end;padding:10px 0 14px;border-bottom:1px solid var(--border);margin-bottom:14px}.ge-chart-tools .field{margin-top:0;min-width:150px}.ge-chart-tools .chips{flex-wrap:wrap}.ge-chart-box{padding:4px 2px}.ge-rendered{font-size:12px;background:var(--surface-2);border:1px solid var(--border);border-radius:8px;padding:8px 10px;margin:0 0 12px;white-space:pre-wrap;max-height:110px;overflow:auto}.ge-saved-chip{display:inline-flex;align-items:center;gap:6px;font-size:12.5px;padding:3px 10px;border-radius:999px;background:var(--brand-soft);color:var(--brand-deep);border:1px solid var(--brand-line);max-width:280px}.ge-saved-chip b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ge-saved-chip .ge-dirty{width:7px;height:7px;border-radius:50%;background:var(--amber);flex:none}.ge-library{display:grid;grid-template-columns:240px minmax(0,1fr);gap:20px;align-items:start}.ge-folders{padding:14px}.ge-folders h3{font-size:11.5px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);margin:14px 8px 6px}.ge-folders h3:first-child{margin-top:0}.ge-folder{display:flex;align-items:center;gap:8px;width:100%;border:0;background:transparent;text-align:left;padding:7px 10px;border-radius:7px;font:inherit;font-size:13px;color:var(--ink-2);cursor:pointer}.ge-folder:hover{background:var(--surface-2)}.ge-folder.on{background:var(--brand-soft);color:var(--brand);font-weight:600}.ge-folder .ge-count{margin-left:auto;font-size:11.5px;color:var(--muted)}.ge-item-name{font-weight:600;color:var(--ink);display:flex;align-items:center;gap:8px}.ge-item-sub{font-size:12px;color:var(--muted);margin-top:3px}.ge-item-sql{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:11.5px;color:var(--ink-2);margin-top:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:520px}.ge-kind{display:inline-grid;place-items:center;width:22px;height:22px;border-radius:6px;font-size:10.5px;font-weight:800;flex:none}.ge-kind.query{background:var(--brand-soft);color:var(--brand)}.ge-kind.notebook{background:var(--amber-soft);color:var(--amber)}.ge-nb{display:grid;grid-template-columns:250px minmax(0,1fr);gap:20px;align-items:start}.ge-nb-head{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:14px}.ge-nb-head input.ge-nb-title{font-size:18px;font-weight:700;border:1px solid transparent;background:transparent;padding:4px 8px;border-radius:6px;min-width:240px;flex:1;color:var(--ink)}.ge-nb-head input.ge-nb-title:hover,.ge-nb-head input.ge-nb-title:focus{border-color:var(--border);background:var(--surface)}.ge-cell{position:relative;background:var(--surface);border:1px solid var(--border);border-radius:12px;margin-bottom:14px;box-shadow:var(--shadow);transition:border-color .15s}.ge-cell:focus-within{border-color:var(--brand-line)}.ge-cell-bar{display:flex;align-items:center;gap:8px;padding:8px 10px 8px 14px;border-bottom:1px solid var(--border);background:var(--surface-2);border-radius:12px 12px 0 0}.ge-cell-no{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:11.5px;color:var(--muted);min-width:34px}.ge-cell-bar input{border:0;background:transparent;font:inherit;font-size:13px;font-weight:600;flex:1;min-width:80px;color:var(--ink)}.ge-cell-state{font-size:11.5px;color:var(--muted);white-space:nowrap}.ge-cell textarea{display:block;width:100%;border:0;resize:vertical;padding:12px 14px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:13px;line-height:1.55;min-height:86px;background:var(--surface);color:var(--ink);outline:none;box-sizing:border-box}.ge-cell.md textarea{font-family:inherit}.ge-md{padding:12px 16px;font-size:14px;line-height:1.6;color:var(--ink-2);cursor:text}.ge-md h1,.ge-md h2,.ge-md h3{color:var(--ink);margin:4px 0 8px}.ge-md h1{font-size:20px}.ge-md h2{font-size:17px}.ge-md h3{font-size:15px}.ge-md p{margin:0 0 8px}.ge-md ul{margin:0 0 8px;padding-left:20px}.ge-md code{background:var(--surface-2);padding:1px 5px;border-radius:4px;font-size:12.5px}.ge-cell-out{padding:0 14px 14px}.ge-cell-out .panel{margin:12px 0 0;box-shadow:none}.ge-add{display:flex;justify-content:center;gap:8px;margin:-6px 0 8px;opacity:.35;transition:opacity .15s}.ge-add:hover,.ge-add:focus-within{opacity:1}.ge-heat{display:grid;grid-template-columns:repeat(7,30px);gap:4px}.ge-heat-day{width:30px;height:30px;border-radius:6px;background:var(--surface-2);border:1px solid var(--border);position:relative;display:grid;place-items:center;font-size:10.5px;color:var(--muted);font-variant-numeric:tabular-nums}.ge-heat-day.ok{background:color-mix(in srgb,var(--green) calc(var(--ge-i, .3) * 100%),var(--surface));color:#fff;border-color:transparent}.ge-heat-day.mixed{background:var(--amber-soft);color:var(--amber);border-color:color-mix(in srgb,var(--amber) 35%,transparent)}.ge-heat-day.bad{background:var(--red);color:#fff;border-color:transparent}.ge-heat-legend{display:flex;gap:14px;font-size:12px;color:var(--muted);margin-top:10px;flex-wrap:wrap}.ge-heat-legend i{display:inline-block;width:10px;height:10px;border-radius:3px;margin-right:5px;vertical-align:-1px}.ge-spark{display:block}.ge-spark .line{fill:none;stroke:var(--brand);stroke-width:1.6}.ge-spark .area{fill:var(--brand-soft)}.ge-spark .sla{stroke:var(--amber);stroke-dasharray:3 3;stroke-width:1}.ge-spark .fail{fill:var(--red)}.ge-spark .late{fill:var(--amber)}.ge-gantt{width:100%;overflow-x:auto}.ge-gantt svg{display:block;min-width:640px}.ge-gantt .lane-label{font-size:11.5px;fill:var(--ink-2)}.ge-gantt .lane{fill:var(--surface-2)}.ge-gantt .tick{stroke:var(--border)}.ge-gantt .tick-label{font-size:10.5px;fill:var(--muted)}.ge-gantt .now{stroke:var(--accent);stroke-width:1.5}.ge-gantt rect.run{rx:3}.ge-gantt rect.run.succeeded{fill:var(--green)}.ge-gantt rect.run.failed{fill:var(--red)}.ge-gantt rect.run.running{fill:var(--brand)}.ge-gantt rect.run.other{fill:var(--muted)}.ge-gantt rect.run.late{stroke:var(--amber);stroke-width:2}.ge-alert-row{display:flex;gap:10px;align-items:flex-start;padding:10px 0;border-bottom:1px solid var(--border);font-size:13px}.ge-alert-row:last-child{border-bottom:0}.ge-alert-row .ge-when{margin-left:auto;font-size:12px;color:var(--muted);white-space:nowrap}.ge-alert-dot{width:9px;height:9px;border-radius:50%;margin-top:5px;flex:none;background:var(--amber)}.ge-alert-dot.critical,.ge-alert-dot.failure,.ge-alert-dot.streak{background:var(--red)}.ge-alert-dot.info,.ge-alert-dot.test{background:var(--brand)}.ge-alert-row.acked{opacity:.55}.ge-grid-2{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:20px}@media(max-width:1100px){.ge-grid-2,.ge-library,.ge-nb{grid-template-columns:minmax(0,1fr)}}.ge-inline-edit{display:inline-flex;gap:6px;align-items:center}.ge-inline-edit input{width:72px;padding:4px 6px;font-size:12.5px}.ge-rule{display:flex;align-items:center;gap:14px;padding:14px 0;border-bottom:1px solid var(--border)}.ge-rule:last-child{border-bottom:0}.ge-rule-main{flex:1;min-width:0}.ge-rule-name{font-weight:600;color:var(--ink)}.ge-rule-conds{display:flex;gap:6px;flex-wrap:wrap;margin-top:6px}.ge-rule.off{opacity:.6}.ge-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 16px}.ge-form-grid .span{grid-column:1 / -1}.ge-checks{display:flex;flex-direction:column;gap:8px;margin-top:8px}.ge-checks label{display:flex;gap:8px;align-items:center;font-size:13px;color:var(--ink-2)}.ge-checks input[type=number]{width:80px}.ge-help{font-size:12px;color:var(--muted);margin-top:4px;line-height:1.45}.ge-modal-back{position:fixed;top:0;right:0;bottom:0;left:0;background:color-mix(in srgb,var(--brand-deep) 45%,transparent);display:grid;place-items:center;z-index:60;padding:20px}.ge-modal{background:var(--surface);border-radius:14px;box-shadow:0 24px 60px #0b164047;width:min(560px,100%);max-height:calc(100vh - 40px);overflow:auto}.ge-modal.wide{width:min(880px,100%)}.ge-modal-head{display:flex;align-items:center;justify-content:space-between;padding:18px 22px 0}.ge-modal-head h2{margin:0;font-size:17px}.ge-modal-body{padding:8px 22px 6px}.ge-modal-foot{display:flex;justify-content:flex-end;gap:8px;padding:14px 22px 18px}.ge-x{border:0;background:transparent;font-size:20px;line-height:1;color:var(--muted);cursor:pointer;padding:4px 6px;border-radius:6px}.ge-x:hover{background:var(--surface-2);color:var(--ink)}.auth-code{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:22px;letter-spacing:.42em;text-align:center;font-variant-numeric:tabular-nums;padding:10px 12px!important}.auth-code.auth-code-text{font-size:16px;letter-spacing:.12em}.auth-code::placeholder{color:var(--border)}.auth-note{margin:0;font-size:13px;color:var(--ink-2);line-height:1.5}.auth-who{margin:-6px 0 2px;font-size:13px;color:var(--ink-2);overflow-wrap:anywhere}.auth-who b{color:var(--ink);font-weight:600}.auth-row{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.login-card .auth-row .btn{width:auto;flex:1 1 0;margin-top:0}.auth-row .btn.sm{flex:0 0 auto}.auth-links{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;font-size:12.5px}.auth-steps{margin:0;padding-left:20px;display:flex;flex-direction:column;gap:4px;font-size:13px;color:var(--ink-2);line-height:1.45}.auth-qr{display:flex;justify-content:center;padding:4px 0}.auth-qr img{width:176px;height:176px;background:#fff;padding:8px;border:1px solid var(--border);border-radius:var(--radius-sm);box-shadow:var(--shadow)}.auth-secret{display:flex;flex-direction:column;gap:4px;padding:10px 12px;background:var(--brand-soft);border:1px solid var(--brand-line);border-radius:var(--radius-sm)}.auth-secret code{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:14px;letter-spacing:.08em;color:var(--brand-deep);overflow-wrap:anywhere;-webkit-user-select:all;user-select:all}.auth-secret span{font-size:11.5px;color:var(--ink-2)}.auth-codes{list-style:none;margin:0;padding:12px 14px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px 16px;background:var(--canvas);border:1px dashed var(--brand-line);border-radius:var(--radius-sm);counter-reset:rc}.auth-codes li{counter-increment:rc;display:flex;align-items:baseline;gap:8px}.auth-codes li:before{content:counter(rc) ".";min-width:1.6em;font-size:11px;color:var(--muted);text-align:right}.auth-codes code{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:14px;letter-spacing:.04em;color:var(--ink)}@media(max-width:420px){.auth-codes{grid-template-columns:1fr}}.auth-check{display:flex;align-items:flex-start;gap:8px;font-size:13px;color:var(--ink);line-height:1.4;cursor:pointer}.auth-check input{margin-top:2px;accent-color:var(--brand)}.auth-stack{display:flex;flex-direction:column;gap:12px}.auth-inline{max-width:460px;margin-top:12px;display:flex;flex-direction:column;gap:12px}.auth-badge{display:inline-flex;align-items:center;padding:2px 10px;border-radius:999px;font-size:12px;font-weight:600}.auth-badge.on{background:var(--green-soft);color:var(--green)}.auth-badge.off{background:var(--amber-soft);color:var(--amber)}.auth-badge.here{background:var(--brand-soft);color:var(--brand);margin-left:6px}.auth-shield{display:flex;align-items:center;gap:8px;font-size:12.5px;color:var(--ink-2)}.auth-shield svg{color:var(--brand);flex:none}.pw-rules{list-style:none;margin:-4px 0 0;padding:10px 12px;display:flex;flex-direction:column;gap:5px;background:var(--canvas);border:1px solid var(--border);border-radius:var(--radius-sm);font-size:12.5px;color:var(--ink-2);line-height:1.45}.pw-rules li{position:relative;padding-left:20px}.pw-rules li:before{content:"•";position:absolute;left:4px;top:0;width:12px;text-align:center;color:var(--muted);font-weight:700}.pw-rules li.ok{color:var(--ink)}.pw-rules li.ok:before{content:"✓";color:var(--green);left:2px}.pw-rules li.bad{color:var(--red)}.pw-rules li.bad:before{content:"✕";color:var(--red);left:2px}.pw-rules li.note{padding-left:0;margin-top:2px;font-size:11.5px;color:var(--muted)}.pw-rules li.note:before{content:none}.pw-count{font-variant-numeric:tabular-nums;color:var(--muted)}.pw-status{margin:-2px 0 0;min-height:1.4em;font-size:12.5px;line-height:1.4;color:var(--ink-2)}.pw-status.ok{color:var(--green)}.pw-status.bad{color:var(--red)}.pw-status.wait{color:var(--muted)}.ask-launcher{position:fixed;right:24px;bottom:24px;z-index:1001;display:inline-flex;align-items:center;justify-content:center;gap:8px;height:44px;padding:0 20px 0 16px;border:none;border-radius:999px;background:var(--brand-deep);color:#fff;font:inherit;font-size:14px;font-weight:600;letter-spacing:.01em;cursor:pointer;box-shadow:0 10px 28px #0b164047,0 2px 6px #0b164029;transition:transform .15s ease,box-shadow .15s ease,background .15s ease,width .15s ease}.ask-launcher:hover{background:#13225e;transform:translateY(-1px);box-shadow:0 14px 32px #0b164052,0 3px 8px #0b16402e}.ask-launcher:focus-visible{outline:3px solid rgba(31,79,214,.45);outline-offset:2px}.ask-launcher-spark{color:var(--accent);filter:drop-shadow(0 0 6px rgba(214,43,51,.45))}.ask-launcher.is-open{width:44px;padding:0}.ask-panel{position:fixed;right:24px;bottom:80px;z-index:1000;width:440px;max-width:calc(100vw - 32px);height:min(680px,calc(100vh - 104px));display:flex;flex-direction:column;overflow:hidden;background:var(--surface);color:var(--ink);border:1px solid var(--border);border-radius:16px;box-shadow:0 24px 64px #0b164033,0 4px 14px #0b164014;animation:ask-rise .18s ease-out}.ask-panel.is-drawer{top:0;right:0;bottom:0;height:auto;width:min(640px,100vw);max-width:100vw;border-radius:0;border-width:0 0 0 1px;box-shadow:-18px 0 48px #0b164024;animation:ask-slide .2s ease-out}@keyframes ask-rise{0%{opacity:0;transform:translateY(10px) scale(.985)}to{opacity:1;transform:none}}@keyframes ask-slide{0%{opacity:.4;transform:translate(24px)}to{opacity:1;transform:none}}.ask-panel.is-floating{animation:none;box-shadow:0 28px 72px #0b164042,0 6px 18px #0b16401a}.ask-head.is-draggable{cursor:move;-webkit-user-select:none;user-select:none;touch-action:none}.ask-head.is-draggable .ask-icon-btn{cursor:pointer}.ask-launcher{touch-action:none}.ask-mini{position:fixed;right:24px;bottom:24px;z-index:1001;display:flex;align-items:center;gap:2px;padding:4px 6px 4px 4px;max-width:calc(100vw - 32px);background:var(--surface);color:var(--ink);border:1px solid var(--border);border-radius:14px;box-shadow:0 10px 28px #0b164038,0 2px 6px #0b16401f;animation:ask-rise .15s ease-out}.ask-mini-open{display:flex;align-items:center;gap:10px;min-width:0;padding:6px 10px 6px 6px;border:none;border-radius:10px;background:transparent;color:inherit;font:inherit;text-align:left;cursor:pointer;touch-action:none}.ask-mini-open:hover{background:var(--surface-2)}.ask-mini-mark{width:30px;height:30px;flex-shrink:0;border-radius:9px;display:grid;place-items:center;background:var(--brand-deep)}.ask-mini-text{display:flex;flex-direction:column;min-width:0}.ask-mini-text b{font-size:13.5px;font-weight:650}.ask-mini-note{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:var(--muted);white-space:nowrap}.ask-mini-note.is-alert{color:var(--brand);font-weight:600}.ask-mini-btn{width:28px;height:28px}.ask-head{display:flex;align-items:center;gap:11px;padding:13px 12px 12px 16px;border-bottom:1px solid var(--border);background:linear-gradient(180deg,#fbfcff,#fff)}.ask-head-mark{width:34px;height:34px;flex-shrink:0;border-radius:10px;display:grid;place-items:center;color:var(--accent);background:var(--brand-deep);box-shadow:inset 0 1px #ffffff14}.ask-head-text{flex:1;min-width:0}.ask-head-title{font-size:15px;font-weight:650;letter-spacing:-.005em;color:var(--ink)}.ask-head-sub{font-size:12px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:1px}.ask-head-actions{display:flex;gap:2px}.ask-icon-btn{width:32px;height:32px;border:none;border-radius:8px;background:transparent;color:var(--ink-2);display:grid;place-items:center;cursor:pointer;transition:background .12s,color .12s}.ask-icon-btn:hover{background:var(--surface-2);color:var(--ink)}.ask-icon-btn.is-on{background:var(--brand-soft);color:var(--brand)}.ask-icon-btn:focus-visible{outline:2px solid var(--brand);outline-offset:1px}.ask-body{flex:1;overflow-y:auto;padding:18px 16px 10px;background:var(--surface);overscroll-behavior:contain}.ask-inner{max-width:760px;margin:0 auto}.ask-msg{margin:0 0 18px}.ask-msg-user{display:flex;justify-content:flex-end}.ask-bubble-user{max-width:85%;padding:9px 14px;border-radius:14px 14px 4px;background:var(--brand-deep);color:#fff;font-size:14px;line-height:1.5;white-space:pre-wrap;overflow-wrap:anywhere}.ask-msg-assistant{display:flex;gap:10px;align-items:flex-start}.ask-avatar{width:26px;height:26px;flex-shrink:0;margin-top:1px;border-radius:50%;display:grid;place-items:center;color:var(--accent);background:var(--brand-soft);border:1px solid var(--brand-line)}.ask-answer{flex:1;min-width:0}.ask-bubble-assistant{padding:11px 14px;border:1px solid var(--border);border-radius:4px 14px 14px;background:#fff;font-size:14px;line-height:1.6;color:var(--ink);box-shadow:0 1px 2px #0b164008}.ask-caret{display:inline-block;width:7px;height:15px;margin-left:2px;vertical-align:-2px;border-radius:1px;background:var(--brand);animation:ask-blink 1s steps(2,start) infinite}@keyframes ask-blink{to{visibility:hidden}}.ask-thinking{display:inline-flex;align-items:center;gap:8px;font-size:13px;color:var(--ink-2);padding:6px 2px}.ask-dots{display:inline-flex;gap:3px}.ask-dots i{width:5px;height:5px;border-radius:50%;background:var(--brand);opacity:.35;animation:ask-dot 1.2s infinite ease-in-out}.ask-dots i:nth-child(2){animation-delay:.15s}.ask-dots i:nth-child(3){animation-delay:.3s}@keyframes ask-dot{0%,80%,to{opacity:.25;transform:translateY(0)}40%{opacity:1;transform:translateY(-2px)}}.ask-spin{display:inline-block;width:12px;height:12px;flex-shrink:0;border-radius:50%;border:2px solid var(--brand-line);border-top-color:var(--brand);animation:ask-rotate .8s linear infinite}@keyframes ask-rotate{to{transform:rotate(360deg)}}.ask-note{font-size:12.5px;color:var(--muted);margin-top:6px}.ask-muted-line{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--ink-2);padding:12px 0}.ask-error{display:flex;gap:8px;align-items:flex-start;margin-top:8px;padding:9px 11px;border-radius:10px;background:var(--red-soft);color:var(--red);font-size:13px;line-height:1.45}.ask-error .ask-icon{flex-shrink:0;margin-top:1px}.ask-trail{margin:0 0 7px}.ask-trail-line{display:inline-flex;align-items:center;gap:7px;max-width:100%;padding:3px 9px 3px 7px;border:1px solid var(--border);border-radius:999px;background:var(--surface-2);color:var(--ink-2);font:inherit;font-size:12.5px;cursor:pointer;transition:border-color .12s,background .12s}.ask-trail-line:hover{border-color:var(--brand-line);background:var(--brand-soft);color:var(--ink)}.ask-trail-line>span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ask-trail.has-error .ask-trail-line{border-color:#f5c6c6;background:var(--red-soft);color:var(--red)}.ask-chev{transition:transform .15s;flex-shrink:0}.ask-chev.is-open{transform:rotate(90deg)}.ask-trail-body{margin:7px 0 4px 6px;padding:8px 12px;border-left:2px solid var(--brand-line)}.ask-steps{list-style:none;margin:0 0 6px;padding:0}.ask-step{display:flex;gap:8px;align-items:flex-start;padding:4px 0;font-size:13px}.ask-step>.ask-icon,.ask-step>.ask-spin{margin-top:3px}.ask-step-text{display:flex;flex-direction:column;min-width:0;gap:1px}.ask-step-label{color:var(--ink);line-height:1.4}.ask-step-summary{color:var(--ink-2);font-size:12.5px}.ask-step.is-error .ask-step-label,.ask-step.is-error .ask-step-summary{color:var(--red)}.ask-step-tech{margin-top:3px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:11.5px;color:var(--muted);overflow-wrap:anywhere}.ask-step-icon.is-ok{color:var(--green)}.ask-step-icon.is-error{color:var(--red)}.ask-step-icon.is-waiting{color:var(--amber)}.ask-step-icon.is-declined{color:var(--muted)}.ask-link{border:none;background:none;padding:0;color:var(--brand);font:inherit;font-size:12.5px;font-weight:500;cursor:pointer}.ask-link:hover{text-decoration:underline}.ask-md>:first-child{margin-top:0}.ask-md>:last-child{margin-bottom:0}.ask-md p{margin:0 0 10px}.ask-md .ask-h{margin:14px 0 6px;color:var(--ink);line-height:1.35;letter-spacing:-.005em}.ask-md h3.ask-h{font-size:16px}.ask-md h4.ask-h{font-size:15px}.ask-md h5.ask-h{font-size:14px}.ask-md strong{font-weight:650;color:var(--ink)}.ask-md a{color:var(--brand);text-decoration:none;font-weight:500}.ask-md a:hover{text-decoration:underline}.ask-list{margin:0 0 10px;padding-left:20px}.ask-list li{margin:3px 0}.ask-list li::marker{color:var(--muted)}.ask-list .ask-list{margin:3px 0 0}.ask-hr{border:none;border-top:1px solid var(--border);margin:12px 0}.ask-quote{margin:0 0 10px;padding:2px 0 2px 12px;border-left:3px solid var(--brand-line);color:var(--ink-2)}.ask-code{padding:1px 5px;border-radius:5px;border:1px solid var(--border);background:var(--surface-2);font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12.5px;color:var(--brand-deep)}.ask-codeblock{margin:4px 0 12px;border-radius:10px;overflow:hidden;background:var(--brand-deep)}.ask-codeblock-head{display:flex;justify-content:space-between;align-items:center;padding:6px 10px 6px 12px;background:#ffffff0d;color:#9fb0db;font-size:11.5px;text-transform:lowercase}.ask-codeblock-copy{display:inline-flex;align-items:center;gap:5px;border:none;background:none;color:#c6d2f3;font:inherit;font-size:11.5px;cursor:pointer;padding:2px 4px;border-radius:5px}.ask-codeblock-copy:hover{background:#ffffff14;color:#fff}.ask-codeblock pre{margin:0;padding:10px 12px 12px;overflow-x:auto;color:#e7ecfb;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12.5px;line-height:1.55}.ask-table-block{margin:6px 0 12px}.ask-table-wrap{overflow:auto;max-height:380px;border:1px solid var(--border);border-radius:10px;background:#fff}.ask-table{width:100%;border-collapse:collapse;font-size:13px;line-height:1.4}.ask-table th{position:sticky;top:0;z-index:1;text-align:left;white-space:nowrap;padding:8px 12px;background:var(--surface-2);color:var(--ink-2);font-size:12px;font-weight:600;border-bottom:1px solid var(--border)}.ask-table td{padding:7px 12px;border-bottom:1px solid #eef1f6;color:var(--ink);vertical-align:top}.ask-table tbody tr:last-child td{border-bottom:none}.ask-table tbody tr:hover td{background:#fafbfe}.ask-table .num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.ask-table .center{text-align:center}.ask-table-foot{margin-top:5px;font-size:11.5px;color:var(--muted);text-align:right}.ask-approval{margin-top:10px;padding:12px 14px;border-radius:12px;border:1px solid #f0dcb4;background:linear-gradient(180deg,#fffaf1,#fffdf8)}.ask-approval.is-high{border-color:#f3c7c9;background:linear-gradient(180deg,#fff6f6,#fffbfb)}.ask-approval-head{display:flex;align-items:center;gap:7px;font-size:11.5px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--amber)}.ask-approval.is-high .ask-approval-head{color:var(--accent)}.ask-risk{margin-left:auto;padding:2px 8px;border-radius:999px;background:var(--accent-soft);color:var(--accent);font-size:10.5px;letter-spacing:.04em}.ask-approval-summary{margin:7px 0 8px;font-size:14px;font-weight:600;color:var(--ink);line-height:1.45}.ask-approval-call{display:flex;align-items:center;gap:8px;margin-bottom:8px;min-width:0}.ask-approval-call code{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12px;color:var(--ink-2);overflow-wrap:anywhere}.ask-method{flex-shrink:0;padding:2px 7px;border-radius:5px;font-size:10.5px;font-weight:700;letter-spacing:.04em;background:var(--brand-soft);color:var(--brand)}.ask-method.m-delete{background:var(--red-soft);color:var(--red)}.ask-method.m-put,.ask-method.m-patch{background:var(--amber-soft);color:var(--amber)}.ask-approval-body{margin:8px 0 4px;padding:10px 12px;max-height:220px;overflow:auto;border-radius:8px;background:#fff;border:1px solid var(--border);color:var(--ink-2);font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12px;line-height:1.5}.ask-approval-actions{display:flex;align-items:center;gap:8px;margin-top:10px;flex-wrap:wrap}.ask-approval-hint{margin-left:auto;font-size:11.5px;color:var(--muted)}.ask-nav{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.ask-nav-btn{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:999px;border:1px solid var(--brand-line);background:var(--brand-soft);color:var(--brand);font:inherit;font-size:13px;font-weight:600;cursor:pointer;transition:background .12s,border-color .12s}.ask-nav-btn:hover{background:#e1e9fd;border-color:#bccdf7}.ask-empty{padding:26px 4px 6px}.ask-empty-mark{width:46px;height:46px;border-radius:14px;display:grid;place-items:center;margin-bottom:14px;color:var(--accent);background:var(--brand-gradient);box-shadow:0 8px 20px #0b16402e}.ask-empty h3{margin:0 0 6px;font-size:19px;letter-spacing:-.01em;color:var(--ink)}.ask-empty p{margin:0 0 18px;color:var(--ink-2);font-size:13.5px;line-height:1.55}.ask-suggest{display:grid;grid-template-columns:1fr;gap:8px}.is-drawer .ask-suggest{grid-template-columns:1fr 1fr}.ask-suggest-item{display:flex;align-items:center;justify-content:space-between;gap:10px;text-align:left;padding:11px 13px;border:1px solid var(--border);border-radius:11px;background:#fff;color:var(--ink);font:inherit;font-size:13.5px;line-height:1.4;cursor:pointer;transition:border-color .12s,background .12s,box-shadow .12s}.ask-suggest-item .ask-icon{color:var(--muted);flex-shrink:0;transition:transform .12s,color .12s}.ask-suggest-item:hover{border-color:var(--brand-line);background:var(--brand-soft);box-shadow:var(--shadow)}.ask-suggest-item:hover .ask-icon{color:var(--brand);transform:translate(2px)}.ask-history-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.ask-history-head h3{margin:0;font-size:14px;font-weight:650;color:var(--ink)}.ask-history{list-style:none;margin:0;padding:0}.ask-history li{display:flex;align-items:center;gap:6px;padding:2px 4px 2px 0;border-radius:10px;transition:background .12s}.ask-history li:hover,.ask-history li.is-current{background:var(--surface-2)}.ask-history-open{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px;text-align:left;padding:9px 10px;border:none;background:none;font:inherit;cursor:pointer;color:var(--ink)}.ask-history-title{font-size:13.5px;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ask-history-meta{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--muted)}.ask-history-del{opacity:0}.ask-history li:hover .ask-history-del,.ask-history-del:focus-visible{opacity:1}.ask-history-confirm{display:flex;gap:6px}.ask-pill-amber{padding:1px 7px;border-radius:999px;background:var(--amber-soft);color:var(--amber);font-size:11px;font-weight:600}.ask-history-empty{display:flex;flex-direction:column;align-items:center;gap:8px;padding:36px 16px;color:var(--muted);text-align:center}.ask-history-empty p{margin:0;font-size:13px;color:var(--ink-2);max-width:280px;line-height:1.5}.ask-foot{padding:10px 14px;border-top:1px solid var(--border);background:#fff}.ask-composer{display:flex;align-items:flex-end;gap:8px;padding:7px 7px 7px 13px;border:1px solid var(--border);border-radius:13px;background:#fff;transition:border-color .12s,box-shadow .12s}.ask-composer:focus-within{border-color:var(--brand);box-shadow:0 0 0 3px #1f4fd61f}.ask-composer.is-disabled{background:var(--surface-2)}.ask-composer textarea{flex:1;min-height:24px;max-height:160px;padding:5px 0;border:none;outline:none;resize:none;background:transparent;color:var(--ink);font:inherit;font-size:14px;line-height:1.45}.ask-composer textarea::placeholder{color:var(--muted)}.ask-send{width:34px;height:34px;flex-shrink:0;border:none;border-radius:9px;display:grid;place-items:center;background:var(--brand);color:#fff;cursor:pointer;transition:background .12s,transform .12s}.ask-send:hover:not(:disabled){background:var(--brand-strong)}.ask-send:disabled{background:var(--gray-soft);color:var(--muted);cursor:default}.ask-send.is-stop{background:var(--brand-deep)}.ask-disclaimer{margin:0 0 8px;padding:6px 10px;border-radius:8px;background:var(--surface-2);color:var(--ink-2);font-size:11.5px;line-height:1.4;text-align:center}.ask-foot-note{margin-top:7px;text-align:center;font-size:11.5px;color:var(--muted)}.ask-setup{display:flex;gap:12px;align-items:flex-start;padding:13px 14px;border:1px solid var(--brand-line);border-radius:12px;background:var(--brand-soft);color:var(--brand)}.ask-setup>.ask-spark,.ask-setup>.ask-icon{flex-shrink:0;margin-top:2px}.ask-setup>.ask-spark{color:var(--accent)}.ask-setup b{display:block;color:var(--ink);font-size:13.5px;margin-bottom:2px}.ask-setup p{margin:0 0 9px;color:var(--ink-2);font-size:13px;line-height:1.45}.ask-setup .ask-setup-hint{margin:0;font-weight:500;color:var(--ink)}@media(max-width:560px){.ask-launcher,.ask-mini{right:16px;bottom:16px}.ask-panel.is-floating{width:calc(100vw - 16px)}.ask-panel{right:8px;left:8px;bottom:72px;width:auto;max-width:none;height:calc(100vh - 90px)}.ask-panel.is-drawer{left:0;right:0;bottom:0;width:100vw}.is-drawer .ask-suggest{grid-template-columns:1fr}.ask-approval-hint{display:none}}@media(prefers-reduced-motion:reduce){.ask-panel,.ask-panel.is-drawer,.ask-mini{animation:none}.ask-caret,.ask-dots i,.ask-spin{animation-duration:2.4s}}.vc{width:100%;min-width:0;position:relative;color:var(--ink)}.vc-head{display:flex;align-items:center;gap:6px 16px;flex-wrap:wrap;margin-bottom:6px;min-height:20px}.vc-title{font-size:13px;font-weight:600;color:var(--ink)}.vc-toggle{margin-left:auto;background:none;border:0;padding:0;cursor:pointer;font:inherit;font-size:12px;font-weight:600;color:var(--brand)}.vc-toggle:hover{text-decoration:underline}.vc-toggle:focus-visible,.vc-legend-btn:focus-visible,.vc-sort-btn:focus-visible{outline:none;box-shadow:0 0 0 3px var(--brand-soft);border-radius:4px}.vc-legend{display:flex;flex-wrap:wrap;gap:4px 14px;list-style:none;padding:0;margin:0;flex:1;min-width:0}.vc-legend-item{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--ink-2);min-width:0;max-width:220px}.vc-legend-btn{display:flex;align-items:center;gap:6px;min-width:0;max-width:100%;background:none;border:0;padding:1px 2px;margin:-1px -2px;cursor:pointer;font:inherit;color:inherit;border-radius:4px}.vc-legend-btn:hover{color:var(--ink);background:var(--surface-2)}.vc-legend-btn.vc-on,.vc-legend-btn[aria-pressed=true]{color:var(--ink);font-weight:600}.vc-legend-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.vc-legend-value{margin-left:auto;padding-left:8px;color:var(--muted);font-variant-numeric:tabular-nums}.vc-key{display:inline-block;flex-shrink:0;background:var(--vc-c)}.vc-key-square{width:10px;height:10px;border-radius:2px}.vc-key-line{width:14px;height:2px;border-radius:2px}.vc-key-dot{width:8px;height:8px;border-radius:50%}.vc-key-dash{width:14px;height:2px;background:repeating-linear-gradient(90deg,var(--vc-c) 0 4px,transparent 4px 7px)}.vc-key-band{width:14px;height:10px;border-radius:2px;opacity:.25}.vc-key-ring{width:8px;height:8px;border-radius:50%;background:none;border:2px solid var(--vc-c)}.vc-plot{position:relative}.vc-svg{display:block;outline:none;overflow:visible;font-family:inherit}.vc-svg:focus-visible{box-shadow:0 0 0 3px var(--brand-soft);border-radius:6px}.vc-clickable{cursor:pointer}.vc-grid,.vc-axis{stroke:var(--border);stroke-width:1}.vc-zero{stroke:var(--muted);stroke-width:1}.vc-tick{fill:var(--muted);font-variant-numeric:tabular-nums}.vc-cat{fill:var(--ink-2)}.vc-axis-title{fill:var(--ink-2);font-weight:600}.vc-value{fill:var(--ink-2);font-variant-numeric:tabular-nums;pointer-events:none}.vc-hoverband{fill:var(--surface-2)}.vc-bar{transition:opacity .12s}.vc-line{fill:none;stroke-linejoin:round;stroke-linecap:round}.vc-area{fill-opacity:.14;stroke:none}.vc-area-stacked{fill-opacity:.5}.vc-marker{stroke:var(--surface);stroke-width:1.5}.vc-marker-open{fill:var(--surface);stroke-width:1.5}.vc-crosshair{stroke:var(--muted);stroke-width:1}.vc-selmark{stroke:var(--brand);stroke-width:1;stroke-dasharray:3 3}.vc-slice{stroke:var(--surface);stroke-width:1.5;cursor:pointer;transition:transform .12s,opacity .12s}.vc-center-value{fill:var(--ink);font-weight:700;font-variant-numeric:tabular-nums}.vc-center-label{fill:var(--muted)}.vc-point{stroke:var(--surface);stroke-width:.75}.vc-point-hover{fill:none;stroke-width:2}.vc-band{fill-opacity:.2;stroke:none}.vc-band-faint{fill-opacity:.08}.vc-forecast-line{stroke-dasharray:5 4}.vc-now{stroke:var(--muted);stroke-width:1;stroke-dasharray:2 3}.vc-now-label{fill:var(--muted);font-weight:600;text-transform:uppercase;letter-spacing:.04em}.vc-anomaly{fill:none;stroke:var(--red);stroke-width:2}.vc-dim{opacity:.35}.vc-trend{fill:none;stroke-width:1.75;stroke-dasharray:6 4;stroke-linecap:round}.vc-body{display:flex;gap:12px}.vc-body-bottom{flex-direction:column;gap:6px}.vc-body-left,.vc-body-right{flex-direction:row;align-items:flex-start}.vc-body-main{min-width:0;flex:1}.vc-legend-at-bottom{flex:none}.vc-legend-at-left,.vc-legend-at-right{flex:none;flex-direction:column;flex-wrap:nowrap;gap:5px;overflow-y:auto;padding-top:4px}.vc-legend-at-left .vc-legend-item,.vc-legend-at-right .vc-legend-item{max-width:100%}.vc-card{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;text-align:center;box-sizing:border-box;min-width:0;min-height:60px}.vc-card-value{font-weight:700;line-height:1.1;color:var(--ink);font-variant-numeric:tabular-nums;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.vc-card-label{font-size:12px;font-weight:600;color:var(--ink-2);max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.vc-gauge-track{fill:var(--border)}.vc-gauge-fill{stroke:none}.vc-gauge-target{stroke:var(--ink);stroke-width:2;stroke-linecap:round}.vc-connector{stroke:var(--muted);stroke-width:1;stroke-dasharray:2 2}.vc-funnel-neck{fill-opacity:.12;stroke:none}.vc-value-in{fill:var(--surface);font-weight:600}.vc-tile{stroke:var(--surface);stroke-width:1;transition:opacity .12s}.vc-tile-on{stroke:var(--ink);stroke-width:2}.vc-group{fill:var(--surface);stroke:var(--surface);stroke-width:3}.vc-group-strip{stroke:none}.vc-group-label,.vc-tile-label{fill:var(--surface);pointer-events:none;font-variant-numeric:tabular-nums;paint-order:stroke;stroke:var(--ink);stroke-opacity:.25;stroke-width:2px;stroke-linejoin:round}.vc-group-label{font-weight:700}.vc-tile-value{font-weight:600}.vc-sea{fill:var(--brand-soft)}.vc-land{fill:var(--border);stroke:var(--surface);stroke-width:.6;stroke-linejoin:round}.vc-bubble{fill-opacity:.55;transition:opacity .12s}.vc-map-label{paint-order:stroke;stroke:var(--surface);stroke-width:3px;stroke-linejoin:round}.vc-tip{position:absolute;pointer-events:none;min-width:140px;max-width:240px;z-index:5;background:var(--surface);border:1px solid var(--border);border-radius:8px;box-shadow:var(--shadow-hover);padding:8px 10px;font-size:12px;color:var(--ink)}.vc-tip-head{color:var(--ink);font-weight:600;margin-bottom:4px;word-break:break-word}.vc-tip-row{display:flex;align-items:center;gap:8px;padding:1px 0}.vc-tip-key{flex-shrink:0;background:var(--vc-c)}.vc-tip-key-square{width:9px;height:9px;border-radius:2px}.vc-tip-key-line{width:12px;height:2px;border-radius:2px}.vc-tip-key-dot{width:8px;height:8px;border-radius:50%}.vc-tip-key-dash{width:12px;height:2px;background:repeating-linear-gradient(90deg,var(--vc-c) 0 4px,transparent 4px 6px)}.vc-tip-key-band{width:12px;height:9px;border-radius:2px;opacity:.25}.vc-tip-key-ring{width:8px;height:8px;border-radius:50%;background:none;border:2px solid var(--vc-c)}.vc-tip-label{color:var(--ink-2);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.vc-tip-value{margin-left:auto;padding-left:10px;font-variant-numeric:tabular-nums;color:var(--ink);white-space:nowrap}.vc-tip-foot{margin-top:5px;padding-top:5px;border-top:1px solid var(--border);color:var(--muted);font-size:11px}.vc-empty{display:flex;align-items:center;justify-content:center;text-align:center;padding:12px;box-sizing:border-box;min-height:80px;color:var(--muted);font-size:13px;background:var(--surface-2);border:1px dashed var(--border);border-radius:10px}.vc-note{margin:6px 0 0;font-size:12px;color:var(--muted)}.vc-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.vc-pie{display:flex;flex-direction:column;gap:8px}.vc-pie-side{flex-direction:row;align-items:center;flex-wrap:wrap}.vc-pie-side .vc-pie-legend{flex:1;min-width:130px}.vc-pie-side .vc-note{flex-basis:100%}.vc-pie-legend{list-style:none;padding:0;margin:0;overflow-y:auto;display:flex;flex-direction:column;gap:3px}.vc-pie-legend .vc-legend-item{max-width:none;padding:1px 4px;border-radius:4px}.vc-pie-legend .vc-legend-item.vc-on{background:var(--surface-2)}.vc-pie-legend .vc-legend-btn{flex:1}.vc-pie-flip{flex-direction:column-reverse}.vc-pie-side.vc-pie-flip{flex-direction:row-reverse}.vc-kpi{display:flex;flex-direction:column;justify-content:center;gap:2px;box-sizing:border-box;min-width:0}.vc-kpi-label{font-size:12px;font-weight:600;color:var(--ink-2);text-transform:uppercase;letter-spacing:.05em}.vc-kpi-value{font-weight:700;line-height:1.15;color:var(--ink);font-variant-numeric:tabular-nums;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.vc-kpi-sub{font-size:12px;color:var(--muted);min-height:16px;font-variant-numeric:tabular-nums}.vc-kpi-change{font-size:13px;margin-top:4px;font-variant-numeric:tabular-nums}.vc-kpi-compare{color:var(--muted)}.vc-up{color:var(--green)}.vc-down{color:var(--red)}.vc-flat{color:var(--muted)}.vc-kpi-target{display:flex;flex-direction:column;gap:4px;margin-top:8px;font-size:12px;color:var(--ink-2)}.vc-progress{height:6px;border-radius:3px;background:var(--border);overflow:hidden}.vc-progress-fill{height:100%;border-radius:3px;background:var(--brand)}.vc-progress-fill.vc-done{background:var(--green)}.vc-kpi-sparkwrap{margin-top:10px}.vc-spark-fill{fill:var(--brand-soft);stroke:none}.vc-table-wrap{overflow:auto;border:1px solid var(--border);border-radius:8px;background:var(--surface)}.vc-table{width:100%;border-collapse:separate;border-spacing:0;font-size:13px}.vc-table th{position:sticky;top:0;z-index:1;background:var(--surface-2);text-align:left;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);padding:7px 10px;border-bottom:1px solid var(--border);white-space:nowrap}.vc-table td{padding:6px 10px;border-bottom:1px solid var(--border);white-space:nowrap;max-width:320px;overflow:hidden;text-overflow:ellipsis}.vc-table tbody tr:last-child td{border-bottom:0}.vc-table .vc-num{text-align:right;font-variant-numeric:tabular-nums}.vc-table .vc-null{color:var(--muted)}.vc-sort-btn{background:none;border:0;padding:0;margin:0;cursor:pointer;font:inherit;color:inherit;text-transform:inherit;letter-spacing:inherit}.vc-sort-btn:hover{color:var(--brand)}.vc-sort-mark{font-size:9px}.vc-row-click{cursor:pointer}.vc-row-click:hover td{background:var(--surface-2)}.vc-row-click:focus-visible{outline:none}.vc-row-click:focus-visible td{background:var(--brand-soft)}.vc-row-sel td{background:var(--brand-soft)}.vc-table tr.vc-dim:hover{opacity:.7}.vc-table-foot{margin-top:5px;font-size:12px;color:var(--muted);font-variant-numeric:tabular-nums}.vc-format-wrap{display:flex;gap:16px;align-items:flex-start;flex-wrap:wrap}.vc-format-chart{flex:1 1 480px;min-width:0}.vc-format{flex:0 0 230px;box-sizing:border-box;display:flex;flex-direction:column;gap:10px;padding:10px 12px 12px;border:1px solid var(--border);border-radius:8px;background:var(--surface-2)}.vc-format h3{margin:0}.vc-format .vt-field{min-width:0}.vc-format-group{display:flex;flex-direction:column;gap:6px}.vc-format-color{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--ink-2)}.vc-format-color input[type=color]{width:28px;height:22px;padding:0;border:1px solid var(--border);border-radius:4px;background:none;cursor:pointer}.vc-format-reset{margin-left:auto;background:none;border:0;padding:0;cursor:pointer;font:inherit;font-size:12px;color:var(--brand)}.vc-format-reset:hover{text-decoration:underline}@media(max-width:900px){.vc-format{flex-basis:100%}}.vc-compact .vc-head{margin-bottom:4px;gap:4px 12px}.vc-compact .vc-title{font-size:12.5px}.vc-compact .vc-legend-item{font-size:11px}.vc-compact .vc-tip{font-size:11.5px;padding:6px 8px}.vc-compact .vc-empty{font-size:12px}.vc-compact .vc-kpi-label{font-size:11px}.vc-compact .vc-kpi-change,.vc-table-compact .vc-table{font-size:12px}.vc-table-compact .vc-table td{padding:4px 8px}.vc-table-compact .vc-table th{padding:5px 8px}.wf-tone-brand{--t: var(--brand);--t-soft: var(--brand-soft)}.wf-tone-violet{--t: #7c3aed;--t-soft: #f3edfe}.wf-tone-teal{--t: #0d9488;--t-soft: #e6f6f4}.wf-tone-amber{--t: var(--amber);--t-soft: var(--amber-soft)}.wf-tone-green{--t: var(--green);--t-soft: var(--green-soft)}.wf-tone-red{--t: var(--red);--t-soft: var(--red-soft)}.wf-tone-gray{--t: var(--ink-2);--t-soft: var(--gray-soft)}.wf-kind-tile{flex-shrink:0;display:grid;place-items:center;width:40px;height:40px;border-radius:11px;color:var(--t);background:var(--t-soft)}.wf-kind-tile.sm{width:28px;height:28px;border-radius:8px}.wf-icon-btn{display:inline-grid;place-items:center;width:34px;height:34px;flex-shrink:0;border:1px solid var(--border);border-radius:8px;background:var(--surface);color:var(--ink-2);cursor:pointer;transition:background .12s,color .12s,border-color .12s}.wf-icon-btn:hover:not(:disabled){background:var(--surface-2);color:var(--ink);border-color:#cfd6e4}.wf-icon-btn:disabled{opacity:.45;cursor:default}.wf-spin{animation:wf-spin .9s linear infinite}@keyframes wf-spin{to{transform:rotate(360deg)}}.wf-pill{display:inline-flex;align-items:center;gap:6px;flex-shrink:0;font-size:11.5px;font-weight:600;padding:3px 9px;border-radius:20px}.wf-pill .dot{width:6px;height:6px;border-radius:50%;background:currentColor}.wf-pill.is-active{color:var(--green);background:var(--green-soft)}.wf-pill.is-paused{color:var(--muted);background:var(--gray-soft)}.wf-skeleton{border-radius:12px;background:linear-gradient(90deg,var(--surface-2) 25%,#edf0f6 50%,var(--surface-2) 75%) 0 0 / 200% 100%;animation:wf-shimmer 1.3s ease-in-out infinite}@keyframes wf-shimmer{to{background-position:-200% 0}}.wf-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px;margin-bottom:16px}.wf-stat{display:flex;align-items:center;gap:12px;min-width:0;background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:12px 14px;box-shadow:var(--shadow)}.wf-stat-icon{display:grid;place-items:center;width:36px;height:36px;border-radius:10px;color:var(--t);background:var(--t-soft);flex-shrink:0}.wf-stat-value{font-size:20px;font-weight:700;line-height:1.15;letter-spacing:-.01em}.wf-stat-value.is-small{font-size:15px;text-transform:capitalize}.wf-stat-label{font-size:12px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.wf-toolbar{display:flex;flex-direction:column;gap:10px;margin-bottom:16px}.wf-toolbar-row{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.wf-toolbar-row .muted.wf-count{margin:0}.wf-search{display:flex;align-items:center;gap:8px;flex:0 1 360px;min-width:200px;border:1px solid var(--border);border-radius:10px;padding:0 12px;height:38px;background:var(--surface);color:var(--muted);transition:border-color .12s,box-shadow .12s}.wf-search:focus-within{border-color:var(--brand);box-shadow:var(--focus-ring)}.wf-search input{border:0;outline:none;background:transparent;flex:1;min-width:0;font-size:14px;color:var(--ink)}.wf-chips{display:flex;flex-wrap:wrap;gap:6px}.wf-chip{display:inline-flex;align-items:center;gap:6px;height:32px;padding:0 12px;border:1px solid var(--border);border-radius:20px;background:var(--surface);font-size:12.5px;font-weight:600;color:var(--ink-2);cursor:pointer;transition:background .12s,border-color .12s,color .12s}.wf-chip span{font-weight:600;font-size:11px;color:var(--muted);background:var(--gray-soft);border-radius:10px;padding:1px 6px}.wf-chip:hover{border-color:var(--brand-line);color:var(--ink)}.wf-chip.is-on{background:var(--brand-soft);border-color:var(--brand-line);color:var(--brand)}.wf-chip.is-on span{background:#fff;color:var(--brand)}.wf-toolbar-end{display:flex;align-items:center;gap:8px;margin-left:auto}.wf-card-name{border:0;padding:0;background:none;cursor:pointer;text-align:left;font-size:14px;font-weight:650;color:var(--ink);letter-spacing:-.005em}.wf-card-name:hover{color:var(--brand);text-decoration:underline;text-underline-offset:3px}.wf-row-name{display:flex;align-items:flex-start;gap:10px}.wf-row td:first-child{box-shadow:inset 3px 0 0 transparent;padding-left:12px}.wf-row.wf-last-online td:first-child{box-shadow:inset 3px 0 0 var(--green)}.wf-row.wf-last-offline td:first-child{box-shadow:inset 3px 0 0 var(--red)}.wf-row.wf-last-degraded td:first-child{box-shadow:inset 3px 0 0 var(--amber)}.wf-row:hover td{background:var(--surface-2)}.wf-actions-th{text-align:right}.wf-row-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:6px}.wf-row-actions .btn{text-decoration:none;gap:5px}@media(min-width:1360px){.wf-row-actions{flex-wrap:nowrap}}.wf-empty{display:flex;flex-direction:column;align-items:center;text-align:center;gap:10px;padding:48px 24px;border:1.5px dashed var(--border);border-radius:16px;background:var(--surface)}.wf-empty .wf-kind-tile{width:56px;height:56px;border-radius:16px}.wf-empty h3{margin:4px 0 0;font-size:16px}.wf-empty p{max-width:520px;margin:0 0 6px}.wf-graph-scroll{overflow-x:auto;padding:20px 18px;border-radius:12px;border:1px solid var(--border);background:radial-gradient(circle,#d9dfeb 1px,transparent 1.2px) 0 0 / 18px 18px,var(--surface-2)}.wf-graph{position:relative;margin:0 auto}.wf-graph-edges{position:absolute;top:0;right:0;bottom:0;left:0;overflow:visible}.wf-edge{fill:none;stroke-width:2;stroke:#b9c3d6}.wf-edge-ok{stroke:#86d3a3}.wf-edge-bad{stroke:#f2a5a5}.wf-edge-live{stroke:var(--amber);stroke-dasharray:6 5;animation:wf-dash .8s linear infinite}@keyframes wf-dash{to{stroke-dashoffset:-11}}.wf-node{position:absolute;display:flex;align-items:center;gap:10px;padding:0 12px;background:var(--surface);border:1px solid var(--border);border-radius:12px;box-shadow:0 1px 2px #0b16400f,0 4px 12px #0b16400d}.wf-node-icon{display:grid;place-items:center;width:34px;height:34px;border-radius:9px;color:var(--t);background:var(--t-soft);flex-shrink:0}.wf-node-text{display:flex;flex-direction:column;min-width:0;flex:1}.wf-node-text b{font-size:13px;font-weight:650;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.wf-node-text span{font-size:11.5px;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.wf-node.wf-state-ok{border-color:#a7e0bd}.wf-node.wf-state-bad{border-color:#f2a5a5;background:snow}.wf-node.wf-state-live{border-color:var(--amber);box-shadow:0 0 0 3px #d9770624}.wf-node.wf-state-skip{opacity:.55}.wf-node-state{position:absolute;top:-7px;right:-7px;display:grid;place-items:center;width:20px;height:20px;border-radius:50%;color:#fff;border:2px solid var(--surface)}.wf-node-state-ok{background:var(--green)}.wf-node-state-bad{background:var(--red)}.wf-node-state-live{background:var(--amber);animation:wf-pulse 1.4s ease-out infinite}@keyframes wf-pulse{0%{box-shadow:0 0 #d9770680}to{box-shadow:0 0 0 6px #d9770600}}.wf-node-state-skip,.wf-node-state-idle{background:var(--muted)}.wf-drawer-wrap{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;display:flex;justify-content:flex-end;background:#0b164047;animation:wf-fade .16s ease-out}@keyframes wf-fade{0%{opacity:0}}.wf-drawer{width:min(880px,100vw);height:100%;display:flex;flex-direction:column;background:var(--surface);box-shadow:-12px 0 40px #0b16402e;animation:wf-slide .22s cubic-bezier(.2,.8,.2,1)}@keyframes wf-slide{0%{transform:translate(32px);opacity:.4}}.wf-drawer-head{display:flex;align-items:flex-start;gap:14px;padding:20px 22px 14px}.wf-drawer-head .wf-kind-tile{width:46px;height:46px;border-radius:13px}.wf-drawer-title{flex:1;min-width:0}.wf-drawer-title h2{margin:0 0 6px;font-size:18px;letter-spacing:-.01em;overflow-wrap:anywhere}.wf-drawer-meta{display:flex;align-items:center;gap:8px}.wf-drawer-meta .tag{margin:0}.wf-drawer-actions{display:flex;flex-wrap:wrap;gap:8px;padding:0 22px 16px;border-bottom:1px solid var(--border)}.wf-drawer-actions .btn{text-decoration:none}.wf-drawer-body{flex:1;overflow-y:auto;padding:18px 22px 28px}.wf-drawer-desc{margin:0 0 16px;color:var(--ink-2);line-height:1.55}.wf-facts{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--border);border:1px solid var(--border);border-radius:12px;overflow:hidden}.wf-facts>div{background:var(--surface);padding:10px 12px;display:flex;flex-direction:column;gap:2px;min-width:0}.wf-facts span{font-size:11.5px;color:var(--muted)}.wf-facts b{font-size:13.5px;font-weight:650;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.wf-section{margin-top:22px}.wf-section-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:10px}.wf-section-head h3{margin:0;font-size:14px;font-weight:650}.wf-runbars{display:flex;align-items:flex-end;gap:4px;height:72px;padding:10px 12px;border:1px solid var(--border);border-radius:12px;background:var(--surface-2)}.wf-runbar{flex:1;max-width:22px;min-width:6px;border-radius:4px 4px 2px 2px;background:var(--muted);opacity:.85;transition:opacity .12s,transform .12s}.wf-runbar:hover{opacity:1;transform:scaleY(1.04);transform-origin:bottom}.wf-runbar.wf-state-ok{background:var(--green)}.wf-runbar.wf-state-bad{background:var(--red)}.wf-runbar.wf-state-live{background:var(--amber)}.wf-drawer-danger{margin-top:28px;padding-top:16px;border-top:1px solid var(--border)}.wf-editor{margin-bottom:16px;border-color:var(--brand-line);box-shadow:var(--shadow-hover)}.wf-editor-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.wf-editor-head h2{font-size:17px}.wf-editor-head p{margin:4px 0 0;max-width:720px}.wf-editor-head-actions{display:flex;gap:8px;flex-shrink:0}.wf-canvas{margin-top:18px;padding:28px 22px;overflow-x:auto;border-radius:14px;border:1px solid var(--border);background:radial-gradient(circle,#d9dfeb 1px,transparent 1.2px) 0 0 / 18px 18px,var(--surface-2)}.wf-flow{display:flex;align-items:center;width:max-content;min-width:100%}.wf-fnode{position:relative;display:flex;align-items:center;gap:10px;width:224px;min-height:68px;padding:10px 12px;text-align:left;font:inherit;color:var(--ink);cursor:pointer;background:var(--surface);border:1.5px solid var(--border);border-radius:12px;box-shadow:0 1px 2px #0b16400f,0 4px 12px #0b16400d;transition:border-color .12s,box-shadow .12s,transform .12s,opacity .12s}.wf-fnode:hover{border-color:var(--brand-line)}.wf-fnode.is-sel{border-color:var(--brand);box-shadow:0 0 0 4px #1f4fd624,0 6px 18px #0b164014}.wf-fnode.is-missing:not(.is-sel){border-style:dashed;border-color:#f0c27a}.wf-fnode.is-drag{opacity:.4}.wf-fnode.is-over{transform:translateY(-3px);border-color:var(--brand)}.wf-fnode[draggable=true]{cursor:grab}.wf-fnode-trigger{width:224px;border-radius:34px 12px 12px 34px}.wf-fnode-trigger .wf-fnode-icon{border-radius:50%}.wf-fnode-icon{display:grid;place-items:center;width:36px;height:36px;border-radius:10px;color:var(--t);background:var(--t-soft);flex-shrink:0}.wf-fnode-text{display:flex;flex-direction:column;min-width:0;gap:1px}.wf-fnode-text b{font-size:13px;font-weight:650;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.wf-fnode-kicker{font-size:10.5px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.wf-fnode-sub{font-size:11.5px;color:var(--muted)}.wf-fnode-warn{display:inline-flex;align-items:center;gap:4px;color:var(--amber)}.wf-fnode-num{position:absolute;top:-9px;left:-9px;display:grid;place-items:center;width:20px;height:20px;border-radius:50%;font-size:11px;font-weight:700;color:#fff;background:var(--ink);border:2px solid var(--surface-2)}.wf-fnode-num.static{position:static;border:0;margin-right:8px;background:var(--brand)}.wf-fnode-add{width:150px;justify-content:center;gap:6px;color:var(--brand);font-weight:600;font-size:13px;background:#fff9;border-style:dashed;border-color:var(--brand-line);box-shadow:none}.wf-fnode-add:hover:not(:disabled){background:var(--brand-soft);border-color:var(--brand)}.wf-fnode-add:disabled{color:var(--muted);cursor:default}.wf-joint{position:relative;display:flex;align-items:center;justify-content:center;width:52px;height:68px;flex-shrink:0}.wf-joint-line{position:absolute;left:0;right:6px;top:50%;height:2px;background:#b9c3d6}.wf-joint-line:after{content:"";position:absolute;right:-6px;top:-4px;border-left:7px solid #b9c3d6;border-top:5px solid transparent;border-bottom:5px solid transparent}.wf-joint.is-end .wf-joint-line{background:repeating-linear-gradient(90deg,#b9c3d6 0 5px,transparent 5px 9px)}.wf-joint.is-end .wf-joint-line:after{display:none}.wf-joint-add{position:relative;display:grid;place-items:center;width:22px;height:22px;border-radius:50%;border:1.5px solid var(--brand-line);background:var(--surface);color:var(--brand);cursor:pointer;opacity:0;transform:scale(.8);transition:opacity .12s,transform .12s,background .12s}.wf-joint:hover .wf-joint-add,.wf-joint-add:focus-visible{opacity:1;transform:scale(1)}.wf-joint-add:hover{background:var(--brand);color:#fff;border-color:var(--brand)}.wf-joint-add:disabled{display:none}.wf-canvas-hint{margin:8px 2px 0}.wf-warn-text{color:var(--amber);font-weight:600}.wf-inspector{margin-top:16px;padding:18px;border:1px solid var(--border);border-radius:14px;background:var(--surface)}.wf-inspector-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.wf-inspector-head h3{display:flex;align-items:center;gap:8px;margin:0;font-size:14.5px;font-weight:650}.wf-inspector-head h3 svg{color:var(--green)}.wf-actions-inline{display:flex;align-items:center;gap:6px}.wf-label{display:block;font-size:12.5px;font-weight:600;color:var(--ink-2);margin-bottom:8px}.wf-tiles{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:8px}.wf-tile{display:flex;align-items:center;gap:10px;padding:10px 12px;min-height:44px;text-align:left;font:inherit;font-size:13px;color:var(--ink);cursor:pointer;background:var(--surface);border:1.5px solid var(--border);border-radius:10px;transition:border-color .12s,background .12s,box-shadow .12s}.wf-tile>svg{color:var(--muted);flex-shrink:0}.wf-tile:hover{border-color:var(--brand-line);background:var(--surface-2)}.wf-tile.is-on{border-color:var(--brand);background:var(--brand-soft);box-shadow:0 0 0 3px #1f4fd61a}.wf-tile.is-on>svg{color:var(--brand)}.wf-tile-icon{display:grid;place-items:center;width:30px;height:30px;border-radius:8px;color:var(--t);background:var(--t-soft);flex-shrink:0}.wf-tile-text{display:flex;flex-direction:column;min-width:0}.wf-tile-text b{font-size:12.5px;font-weight:600}.wf-tile-text span{font-size:11.5px;color:var(--muted)}.wf-retries{max-width:360px}.wf-retries input{max-width:120px}@media(max-width:760px){.wf-row-actions{justify-content:flex-start}.wf-toolbar-end{margin-left:0;width:100%}.wf-toolbar-end .btn.primary{margin-left:auto}.wf-hide-phone{display:none}.wf-search{flex:1 1 100%}.wf-facts{grid-template-columns:repeat(2,1fr)}.wf-editor-head{flex-direction:column}.wf-canvas{padding:20px 16px}.wf-flow{flex-direction:column;width:100%}.wf-fnode,.wf-fnode-trigger,.wf-fnode-add{width:100%}.wf-joint{width:100%;height:40px}.wf-joint-line{left:50%;right:auto;top:0;bottom:6px;width:2px;height:auto}.wf-joint-line:after{right:-4px;top:auto;bottom:-6px;border-left:5px solid transparent;border-right:5px solid transparent;border-top:7px solid #b9c3d6;border-bottom:0}.wf-joint.is-end .wf-joint-line{background:repeating-linear-gradient(180deg,#b9c3d6 0 5px,transparent 5px 9px)}.wf-joint-add{opacity:1;transform:none}}@media(prefers-reduced-motion:reduce){.wf-drawer,.wf-drawer-wrap,.wf-edge-live,.wf-run-degraded,.wf-node-state-live,.wf-skeleton,.wf-spin{animation:none;transition:none}}.wf-combo{position:relative;padding-right:4px}.wf-combo-btn{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border:0;border-radius:6px;background:transparent;color:var(--muted);cursor:pointer;flex:none}.wf-combo-btn:hover{background:var(--gray-soft);color:var(--ink)}.wf-combo-caret svg{transition:transform .12s}.wf-combo-caret.is-open svg{transform:rotate(180deg)}.wf-combo-list{position:absolute;top:calc(100% + 4px);left:0;right:0;z-index:30;margin:0;padding:4px;list-style:none;max-height:320px;overflow-y:auto;background:var(--surface);border:1px solid var(--border);border-radius:10px;box-shadow:var(--shadow-hover)}.wf-combo-opt{display:flex;flex-direction:column;gap:1px;padding:7px 10px;border-radius:7px;cursor:pointer;color:var(--ink);font-size:13.5px}.wf-combo-opt.is-hi{background:var(--brand-soft)}.wf-combo-label{font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.wf-combo-sub{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.wf-combo-empty{padding:8px 10px}.field .wf-combo{flex:none;width:100%}.field .wf-combo input,.field .wf-combo input:hover,.field .wf-combo input:focus{border:0;box-shadow:none;padding:0;height:auto;background:transparent}.wf-acts{display:flex;align-items:center;justify-content:flex-end;gap:6px;flex-wrap:wrap}.or-wf-table td.wf-acts-cell{width:1%}@media(min-width:1400px){.wf-acts{flex-wrap:nowrap}}.or-wf-table .wf-row-name{min-width:170px}.or-wf-table tbody td.ds-star-col,.or-wf-table thead th.ds-star-col{min-width:0;width:34px}.wf-acts-group{display:inline-flex;align-items:center;gap:4px;flex-wrap:nowrap}.wf-acts-sep{width:1px;height:20px;background:var(--border);flex:none}.wf-acts-rest{display:inline-flex;align-items:center;gap:6px;flex-wrap:nowrap}@media(max-width:1399px){.wf-acts-sep-1{display:none}}.wf-acts .btn{gap:5px;white-space:nowrap}.wf-acts .btn:disabled{opacity:.5}.wf-act-run{color:var(--brand-strong);background:var(--brand-soft);border-color:var(--brand-line)}.wf-act-run:hover:not(:disabled){background:#dfe8fd}.split-btn .wf-act-run.split-caret{padding-left:6px;padding-right:6px}.wf-act-resume{color:var(--green)}.wf-act-delete{color:var(--ink-2)}.wf-act-delete:hover:not(:disabled){color:var(--red);border-color:var(--red);background:var(--red-soft)}@media(max-width:1399px){.wf-acts{justify-content:flex-start}}.wf-chip.is-bad:not(.is-on){color:var(--red)}.wf-chip.is-bad:not(.is-on) span{color:var(--red);background:var(--red-soft)}.wf-blocks{display:inline-flex;flex-direction:column;align-items:flex-start;gap:3px;white-space:nowrap}.wf-blocks-row{display:inline-flex;gap:2px}.wf-blocks-row i{display:inline-block;width:6px;height:12px;border-radius:1.5px;background:var(--t)}.wf-blocks-more{font-size:10.5px;color:var(--muted);margin-left:2px;align-self:center}.wf-strip{display:inline-flex;align-items:flex-end;gap:2px;height:22px;vertical-align:middle}.wf-strip-bar{display:inline-block;width:6px;border-radius:1.5px;background:var(--border)}.wf-strip-bar.is-online{background:var(--green)}.wf-strip-bar.is-offline{background:var(--red)}.wf-strip-bar.is-degraded{background:var(--amber)}.wf-strip-bar:hover,.wf-strip-bar:focus-visible{outline:2px solid var(--brand);outline-offset:1px}.wfp-title{display:flex;align-items:center;gap:10px;flex-wrap:wrap;min-width:0}.wfp-last{border:0;cursor:pointer;font:inherit;font-size:12px}.wfp-facts{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.wfp-ro{margin:8px 0 0}.wfp-overview-canvas .wfc-scroll{max-height:360px}.wfp-schedule-grid{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:28px}.wfp-schedule-grid h3{font-size:14px;margin:16px 0 4px}@media(max-width:900px){.wfp-schedule-grid{grid-template-columns:minmax(0,1fr)}}.wfs-body{--pane-l: 260px;--pane-r: 340px}.fw-centre>.fw-section.wfs-canvas-wrap{padding:10px 12px 12px}.wfs-canvas-bar{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:0 0 8px}.wfs-seg{display:inline-flex;border:1px solid var(--border);border-radius:8px;overflow:hidden;background:var(--surface)}.wfs-seg button{border:0;background:none;padding:3px 10px;min-height:26px;font:inherit;font-size:12px;font-weight:600;color:var(--ink-2);cursor:pointer}.wfs-seg button+button{border-left:1px solid var(--border)}.wfs-seg button.is-on{background:var(--brand-soft);color:var(--brand-strong)}.wfs-finder{display:flex;flex-direction:column;gap:2px;font-size:13px}.wfs-scopes{margin:0 0 6px}.wfs-group{margin-top:6px}.wfs-group-head{display:flex;align-items:center;gap:6px;margin:6px 0 2px;font-size:11px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--muted)}.wfs-group-head .muted{margin-left:auto;font-weight:600}.wfs-dot{width:8px;height:8px;border-radius:50%;background:var(--t);flex:none}.wfs-note{margin:2px 6px 4px}.wfs-leaf{display:flex;align-items:center;gap:2px;border-radius:6px}.wfs-leaf:hover{background:var(--brand-soft)}.wfs-pick{flex:1;min-width:0;display:flex;align-items:center;gap:6px;padding:4px 6px;border:0;background:none;font:inherit;color:var(--ink);text-align:left;cursor:pointer;border-radius:6px}.wfs-pick[draggable=true]{cursor:grab}.wfs-pick:disabled{cursor:default;color:var(--ink-2)}.wfs-ico{display:grid;place-items:center;width:20px;height:20px;border-radius:5px;color:var(--t);background:var(--t-soft);flex:none}.wfs-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.wfs-hint{margin-left:auto;font-size:10.5px;color:var(--muted);white-space:nowrap}.wfs-hint.is-warn{color:var(--amber)}.wfs-star{border:0;background:none;color:var(--muted);cursor:pointer;font-size:14px;padding:0 4px;line-height:1}.wfs-star.is-on{color:var(--amber)}.wfs-tiles{grid-template-columns:1fr 1fr}.wfs-add-row{display:flex;gap:6px;flex-wrap:wrap;margin-top:4px}.wfs-sect{border-top:1px solid var(--border);margin-top:12px;padding-top:10px}.wfs-sect h4{margin:0 0 6px;font-size:13px}.wfs-steps-table tr{cursor:pointer}.wfs-steps-table tr.is-sel td{background:var(--brand-soft)}.wfc-scroll{overflow:auto;max-height:70vh;border-radius:12px;border:1px solid var(--border);background:radial-gradient(circle,#d9dfeb 1px,transparent 1.2px) 0 0 / 18px 18px,var(--surface-2)}.wfc-scroll.is-over{border-color:var(--brand);box-shadow:inset 0 0 0 2px var(--brand-soft)}.wfc{position:relative;margin:0 auto}.wfc-edges{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.wfc-edge{fill:none;stroke:#b9c3d6;stroke-width:2}.wfc-edge-ok{stroke:#86d3a3}.wfc-edge-bad{stroke:var(--red);stroke-dasharray:5 4}.wfc-edge-live{stroke:var(--amber)}.wfc-edge-skip{stroke:#d5dbe7}.wfc-edge-add{stroke:var(--brand-line);stroke-dasharray:4 4}.wfc-node{position:absolute}.wfc-node.is-over{border-color:var(--brand);box-shadow:0 0 0 4px #1f4fd624}.wfc-state-ok{border-bottom:3px solid var(--green)}.wfc-state-bad{border-bottom:3px solid var(--red);background:snow}.wfc-state-live{border-bottom:3px solid var(--amber)}.wfc-state-skip{opacity:.6}.wfc-plus{position:absolute;z-index:2;display:inline-flex;align-items:center;gap:3px;padding:2px 9px;min-height:24px;font:inherit;font-size:11.5px;font-weight:600;color:var(--brand);background:var(--surface);border:1px dashed var(--brand-line);border-radius:999px;cursor:pointer;white-space:nowrap}.wfc-plus:hover:not(:disabled){background:var(--brand-soft);border-color:var(--brand)}.wfc-plus:disabled{color:var(--muted);cursor:default}.wfr-body{--pane-l: 260px;--pane-r: 360px}.wfr-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:2px}.wfr-list li{margin:0;padding:0}.wfr-run{display:flex;align-items:flex-start;gap:8px;width:100%;padding:6px 8px;border:0;border-radius:8px;background:none;font:inherit;color:var(--ink);text-align:left;cursor:pointer}.wfr-run:hover{background:var(--surface-2)}.wfr-run.is-on{background:var(--brand-soft)}.wfr-run-text{display:flex;flex-direction:column;min-width:0;line-height:1.35}.wfr-run-text>*{margin:0}.wfr-run-text b{font-size:13px;font-weight:600}.wfr-wf{font-size:12px;color:var(--ink-2);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.wfr-dot{width:9px;height:9px;border-radius:50%;margin-top:5px;flex:none;background:var(--border)}.wfr-ok,.wfr-bar.wfr-ok{background:var(--green)}.wfr-bad,.wfr-bar.wfr-bad{background:var(--red)}.wfr-live,.wfr-bar.wfr-live{background:var(--amber)}.wfr-skip,.wfr-bar.wfr-skip{background:#c8cfdc}.wfr-head{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:12px}.wfr-head h2{margin:0;font-size:15px}.wfr-timeline{display:flex;flex-direction:column;gap:4px}.wfr-axis{display:grid;grid-template-columns:190px minmax(0,1fr);font-size:10.5px;color:var(--muted);font-variant-numeric:tabular-nums}.wfr-axis>div{position:relative;height:16px}.wfr-axis>div span{position:absolute;transform:translate(-50%);white-space:nowrap}.wfr-axis>div span:first-child{transform:none}.wfr-axis>div span:last-child{transform:translate(-100%)}.wfr-lane-row{display:grid;grid-template-columns:190px minmax(0,1fr);align-items:center;padding:3px 0;border:0;background:none;font:inherit;color:var(--ink);text-align:left;cursor:pointer;border-radius:6px}.wfr-lane-row:hover{background:var(--surface-2)}.wfr-lane-row.is-on{background:var(--brand-soft)}.wfr-lane-name{font-size:12.5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:0 10px 0 6px}.wfr-lane{position:relative;height:20px;background:var(--surface-2);border-radius:4px}.wfr-bar{position:absolute;top:3px;height:14px;border-radius:3px;background:#c8cfdc}.wfr-bar.wfr-live{animation:wfr-pulse 1.4s ease-in-out infinite}.wfr-tries,.wfr-lane-note{position:absolute;top:2px;font-size:11px;color:var(--muted);white-space:nowrap}.wfr-lane-note{left:8px}.wfr-log{margin:8px 0;padding:8px 10px;max-height:50vh;overflow:auto;font-size:11.5px;line-height:1.55;font-family:ui-monospace,JetBrains Mono,Consolas,monospace;background:var(--surface-2);border:1px solid var(--border);border-radius:8px;white-space:pre-wrap;overflow-wrap:anywhere}@keyframes wfr-pulse{50%{opacity:.55}}@media(prefers-reduced-motion:reduce){.wfr-bar.wfr-live{animation:none}}.sy-route-big{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:stretch;gap:12px;margin:4px 0 14px}.sy-route-arrow{align-self:center;font-size:22px;color:var(--brand)}.sy-endcard{display:flex;flex-direction:column;gap:3px;min-width:0;padding:10px 12px;text-align:left;font:inherit;color:var(--ink);background:var(--surface);border:1.5px solid var(--border);border-radius:12px}.sy-endcard b{display:inline-flex;align-items:center;gap:6px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sy-endcard .mono{overflow-wrap:anywhere}.sy-endcard.is-pick{cursor:pointer}.sy-endcard.is-pick:hover{border-color:var(--brand-line)}.sy-endcard.is-aim{border-color:var(--brand);box-shadow:0 0 0 4px #1f4fd61f}.sy-end-fields{margin-top:4px}.sy-node{display:flex;flex-direction:column}.sy-children{margin-left:16px;padding-left:6px;border-left:1px solid var(--border);display:flex;flex-direction:column;gap:1px}.sy-schemas{margin:4px 0;gap:4px}.sy-schemas .wf-chip{padding:1px 8px;font-size:11.5px}.sy-leaf,.sy-all{font-size:12.5px}.sy-all{color:var(--ink-2)}.sy-use{margin-left:auto;min-height:22px;padding:0 8px;font-size:11.5px}.wfs-pick.is-chosen{background:var(--brand-soft)}.sy-table .wf-acts{flex-wrap:wrap;justify-content:flex-start;max-width:430px}.sy-table .wf-acts-sep-1{display:none}.sy-table td:first-child{max-width:280px}.sy-table .wf-acts-rest{flex-wrap:wrap}.sy-cols tr.is-sel td{background:var(--brand-soft)}.sy-cols td input{margin:0}.sy-modes{flex-wrap:wrap}.sy-modes button{flex:1 1 auto}@media(max-width:760px){.sy-route-big{grid-template-columns:minmax(0,1fr)}.sy-route-arrow{transform:rotate(90deg);justify-self:center}}.gd-pill{display:inline-flex;align-items:center;gap:6px;padding:2px 10px;border-radius:999px;font-size:11.5px;font-weight:600;white-space:nowrap;background:var(--gray-soft, var(--surface-2));color:var(--muted)}.gd-pill:before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor}.gd-pill-pass,.gd-pill-healthy,.gd-pill-ok{background:var(--green-soft);color:var(--green)}.gd-pill-fail,.gd-pill-failing,.gd-pill-failed{background:var(--red-soft);color:var(--red)}.gd-pill-warn,.gd-pill-degraded,.gd-pill-partial{background:var(--amber-soft);color:var(--amber)}.gd-pill-running,.gd-pill-waiting{background:var(--brand-soft);color:var(--brand)}.gd-score{--gd-score-color: var(--muted);display:inline-grid;place-items:center;width:54px;height:54px;border-radius:50%;background:conic-gradient(var(--gd-score-color) calc(var(--gd-pct, 0) * 1%),var(--surface-2) 0);flex:none}.gd-score>span{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:var(--surface);font-weight:700;font-size:14px;color:var(--ink);font-variant-numeric:tabular-nums}.gd-score-healthy{--gd-score-color: var(--green)}.gd-score-watch{--gd-score-color: var(--amber)}.gd-score-poor{--gd-score-color: var(--red)}.gd-score-sm{width:34px;height:34px}.gd-score-sm>span{width:26px;height:26px;font-size:11px}.gd-score-chip{display:inline-flex;align-items:center;gap:4px;padding:1px 8px;border-radius:6px;font-size:11px;font-weight:700;border:1px solid var(--border);color:var(--muted);background:var(--surface);font-variant-numeric:tabular-nums}.gd-score-chip.gd-score-healthy{color:var(--green);border-color:color-mix(in srgb,var(--green) 35%,transparent)}.gd-score-chip.gd-score-watch{color:var(--amber);border-color:color-mix(in srgb,var(--amber) 35%,transparent)}.gd-score-chip.gd-score-poor{color:var(--red);border-color:color-mix(in srgb,var(--red) 35%,transparent)}.gd-cert{display:inline-flex;align-items:center;gap:5px;padding:3px 10px;border-radius:6px;font-size:12px;font-weight:600}.gd-cert-compact{padding:1px 7px;font-size:10.5px;text-transform:uppercase;letter-spacing:.04em}.gd-cert-certified{background:var(--green-soft);color:var(--green)}.gd-cert-endorsed{background:var(--brand-soft);color:var(--brand)}.gd-cert-deprecated{background:var(--amber-soft);color:var(--amber)}.gd-star{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--border);background:var(--surface);color:var(--ink-2);border-radius:8px;padding:5px 11px;font:inherit;font-size:12.5px;cursor:pointer}.gd-star:hover{border-color:var(--brand-line, var(--brand))}.gd-star-glyph{font-size:15px;line-height:1;color:var(--muted)}.gd-star.on .gd-star-glyph,.gd-star-on{color:#e0a100}.gd-star-on{font-size:13px}.gd-trustbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:14px;margin-top:14px;padding:14px 18px;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface)}.gd-trust-left{display:flex;align-items:center;gap:14px;flex-wrap:wrap;min-width:0}.gd-trust-note{color:var(--ink-2);font-size:13px;max-width:520px}.gd-trust-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.gd-trust-form{display:flex;gap:8px;flex-wrap:wrap;align-items:center;width:100%}.gd-trust-form select,.gd-trust-form input{border:1px solid var(--border);border-radius:8px;padding:6px 9px;font:inherit;font-size:13px;background:var(--surface)}.gd-trust-form input{flex:1;min-width:200px}.gd-panel{margin-top:18px}.gd-panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:6px}.gd-panel-head h2{margin:0 0 4px}.gd-panel-title{display:flex;align-items:center;gap:14px}.gd-empty{border:1px dashed var(--border);border-radius:var(--radius);padding:22px;text-align:center;color:var(--muted);font-size:13px;background:var(--surface-2)}.gd-empty b{color:var(--ink);display:block;margin-bottom:4px;font-size:14px}.gd-empty .btn{margin-top:10px}.gd-err{color:var(--red);font-size:13px;margin:8px 0}.gd-rules{list-style:none;margin:10px 0 0;padding:0;display:flex;flex-direction:column;gap:8px}.gd-rule{display:grid;grid-template-columns:110px 1fr auto;gap:14px;align-items:center;padding:12px 14px;border:1px solid var(--border);border-radius:10px;background:var(--surface)}.gd-rule.off{opacity:.6}.gd-rule-name{font-weight:600}.gd-rule-meta{color:var(--muted);font-size:12px;margin-top:2px}.gd-rule-msg{font-size:12.5px;color:var(--ink-2);margin-top:4px}.gd-rule-actions{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}.gd-history{grid-column:1 / -1;border-top:1px solid var(--border);padding-top:10px}.gd-ticks{display:flex;gap:3px;align-items:flex-end;height:22px;margin-bottom:8px}.gd-tick{width:8px;height:100%;border-radius:2px;background:var(--gray-soft, var(--surface-2))}.gd-tick-pass{background:var(--green)}.gd-tick-fail{background:var(--red)}.gd-tick-warn{background:var(--amber)}.gd-tick-error{background:var(--muted);height:50%}.gd-form{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px 14px;margin-top:12px}.gd-form .field{margin:0}.gd-form .gd-span{grid-column:1 / -1}.gd-form label{display:block;font-size:12px;font-weight:600;color:var(--ink-2);margin-bottom:5px}.gd-form input,.gd-form select,.gd-form textarea{width:100%;box-sizing:border-box;border:1px solid var(--border);border-radius:8px;padding:7px 10px;font:inherit;font-size:13px;background:var(--surface);color:var(--ink)}.gd-form input:focus,.gd-form select:focus,.gd-form textarea:focus{outline:none;border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-soft)}.gd-form textarea{min-height:70px;resize:vertical;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12.5px}.gd-hint{font-size:11.5px;color:var(--muted);margin-top:4px}.gd-form-actions{display:flex;gap:10px;align-items:center;margin-top:14px;flex-wrap:wrap}.gd-check{display:inline-flex;gap:6px;align-items:center;font-size:13px;color:var(--ink-2)}.gd-seg{display:inline-flex;border:1px solid var(--border);border-radius:8px;overflow:hidden}.gd-seg button{border:0;background:var(--surface);padding:6px 14px;font:inherit;font-size:12.5px;color:var(--ink-2);cursor:pointer}.gd-seg button+button{border-left:1px solid var(--border)}.gd-seg button.on{background:var(--brand-soft);color:var(--brand);font-weight:600}.gd-scroll{overflow-x:auto;margin-top:12px}.gd-profile{width:100%;border-collapse:collapse;font-size:12.5px}.gd-profile th{text-align:left;font-size:11px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);padding:8px 12px 8px 0;border-bottom:1px solid var(--border);white-space:nowrap;font-weight:600}.gd-profile td{padding:10px 12px 10px 0;border-bottom:1px solid var(--border);vertical-align:middle}.gd-profile tr:last-child td{border-bottom:0}.gd-col-name{font-weight:600}.gd-col-type{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px;color:var(--muted)}.gd-num{font-variant-numeric:tabular-nums;white-space:nowrap}.gd-clip{max-width:160px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:inline-block;vertical-align:bottom}.gd-nullbar{display:flex;align-items:center;gap:8px;min-width:110px}.gd-nullbar-track{flex:1;height:6px;border-radius:3px;background:var(--surface-2);overflow:hidden}.gd-nullbar-fill{height:100%;background:var(--brand)}.gd-nullbar-fill.high{background:var(--red)}.gd-nullbar-fill.mid{background:var(--amber)}.gd-hist{display:flex;align-items:flex-end;gap:2px;height:30px;min-width:120px}.gd-hist span{flex:1;background:var(--brand);opacity:.75;border-radius:2px 2px 0 0;min-height:1px}.gd-hist span:hover{opacity:1}.gd-top{display:flex;flex-direction:column;gap:3px;min-width:150px}.gd-top-row{display:grid;grid-template-columns:1fr 44px;gap:6px;align-items:center;font-size:11.5px}.gd-top-bar{position:relative;height:16px;border-radius:3px;background:var(--surface-2);overflow:hidden}.gd-top-bar i{position:absolute;inset:0 auto 0 0;background:var(--brand-soft)}.gd-top-bar b{position:relative;font-weight:500;padding-left:5px;line-height:16px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block}.gd-sample{border-collapse:collapse;font-size:12px;min-width:100%}.gd-sample th{position:sticky;top:0;background:var(--surface-2);text-align:left;padding:7px 10px;border-bottom:1px solid var(--border);font-weight:600;white-space:nowrap}.gd-sample td{padding:6px 10px;border-bottom:1px solid var(--border);white-space:nowrap;max-width:260px;overflow:hidden;text-overflow:ellipsis}.gd-sample-wrap{max-height:440px;overflow:auto;border:1px solid var(--border);border-radius:10px;margin-top:12px}.gd-null{color:var(--muted);font-style:italic}.gd-overview-grid{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:18px;align-items:start}.gd-problems{list-style:none;margin:8px 0 0;padding:0}.gd-problems li{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center;padding:11px 0;border-bottom:1px solid var(--border)}.gd-problems li:last-child{border-bottom:0}.gd-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:10px;margin-top:10px}.gd-card{display:flex;gap:10px;align-items:center;text-align:left;width:100%;min-width:0;border:1px solid var(--border);border-radius:10px;padding:11px 14px;background:var(--surface);font:inherit;color:inherit;cursor:pointer;transition:border-color .12s,box-shadow .12s,background .12s}.gd-card:hover{border-color:var(--brand-line, var(--brand));box-shadow:var(--shadow);background:#fbfcff}.gd-card-name{font-size:13.5px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.gd-card-body{min-width:0}.gd-list-plain{list-style:none;margin:8px 0 0;padding:0}.gd-list-plain li{padding:8px 0;border-bottom:1px solid var(--border);display:flex;gap:8px;align-items:center;justify-content:space-between}.gd-list-plain li:last-child{border-bottom:0}.gd-alert{display:flex;gap:12px;align-items:flex-start;padding:12px 16px;margin-bottom:16px;border-radius:var(--radius);background:var(--red-soft);color:var(--red);border:1px solid color-mix(in srgb,var(--red) 25%,transparent);font-size:13px}.gd-alert b{display:block}.gd-route{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.gd-route-arrow{color:var(--muted)}.gd-sub{color:var(--muted);font-size:11.5px}.gd-runs{list-style:none;margin:0;padding:0}.gd-runs li{padding:10px 0;border-bottom:1px solid var(--border)}.gd-runs li:last-child{border-bottom:0}.gd-runs-top{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.gd-starred{margin-bottom:18px}.gd-starred h4{margin:0 0 6px;font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}.gd-starred button{display:block;width:100%;text-align:left;border:0;background:none;font:inherit;font-size:13px;padding:4px 6px;border-radius:6px;color:var(--ink-2);cursor:pointer;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.gd-starred button:hover{background:var(--surface-2);color:var(--ink)}@media(max-width:900px){.gd-overview-grid,.gd-rule{grid-template-columns:1fr}.gd-rule-actions{justify-content:flex-start}}.sy-table td{vertical-align:top}.sy-table td:first-child{max-width:320px}.sy-table .wf-row-actions{max-width:300px;margin-left:auto;flex-wrap:wrap}.sy-table.or-wf-table td:first-child .clamp-1{max-width:260px}.sy-sched-link{color:inherit;text-decoration:underline dotted;text-underline-offset:2px}.sy-sched-link:hover{color:var(--brand)}.sy-table .or-wf-sched{min-width:130px;max-width:170px}@media(max-width:900px){.sy-table td:first-child,.sy-table .wf-row-actions{max-width:none}.sy-table .wf-row-actions{justify-content:flex-start;margin:6px 0 0}}.sy-end{display:inline-flex;align-items:center;gap:5px;font-weight:500}.sy-end svg{color:var(--muted);flex-shrink:0}.sy-path{max-width:260px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-top:3px}.sy-strip{display:flex;gap:2px;margin-top:6px;height:14px;align-items:flex-end}.sy-mark{width:5px;height:14px;border-radius:2px;background:var(--gray-soft)}.sy-mark-ok{background:var(--green)}.sy-mark-failed{background:var(--red)}.sy-mark-partial{background:var(--amber)}.sy-mark-running{background:var(--brand);height:8px}.sy-form-head{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);margin:18px 0 0;padding-top:12px;border-top:1px solid var(--border)}.sy-ends{margin:0}.sy-ends .wf-chip{display:inline-flex;align-items:center;gap:6px}.sy-ends .wf-chip:disabled{opacity:.45;cursor:not-allowed}.clamp-1{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:280px}.gd-form label.gd-check{display:inline-flex}.gd-form .gd-check input{width:auto}.gm-page{display:flex;flex-direction:column;gap:20px}.gm-head{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;flex-wrap:wrap}.gm-head h2{font-size:18px;margin:0;letter-spacing:-.01em}.gm-head p{margin:4px 0 0}.gm-eyebrow{font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--brand)}.gm-toolbar{display:flex;flex-wrap:wrap;gap:12px;align-items:flex-end}.gm-control{display:flex;flex-direction:column;gap:4px;font-size:12px;color:var(--muted);font-weight:600}.gm-control select,.gm-control input{font:inherit;font-size:13px;font-weight:500;color:var(--ink);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);padding:7px 10px;min-width:150px}.gm-control select:focus,.gm-control input:focus{outline:2px solid var(--brand-soft);border-color:var(--brand)}.gm-seg{display:inline-flex;border:1px solid var(--border);border-radius:var(--radius-sm);overflow:hidden;background:var(--surface)}.gm-seg button{font:inherit;font-size:13px;padding:7px 12px;border:0;background:transparent;color:var(--ink-2);cursor:pointer;border-right:1px solid var(--border)}.gm-seg button:last-child{border-right:0}.gm-seg button:hover{background:var(--surface-2)}.gm-seg button.gm-on{background:var(--brand-soft);color:var(--brand);font-weight:600}.gm-health{display:flex;gap:14px;align-items:flex-start;padding:16px 18px;border-radius:var(--radius);border:1px solid var(--border);background:var(--surface)}.gm-health-icon{flex:none;width:34px;height:34px;border-radius:50%;display:grid;place-items:center;font-weight:800;font-size:16px}.gm-health-title{font-weight:700;font-size:15px}.gm-health ul{margin:6px 0 0;padding-left:18px;color:var(--ink-2);font-size:13px}.gm-health ul li{margin:2px 0}.gm-health-healthy{border-color:var(--green-soft)}.gm-health-healthy .gm-health-icon{background:var(--green-soft);color:var(--green)}.gm-health-watch{border-color:var(--amber-soft)}.gm-health-watch .gm-health-icon{background:var(--amber-soft);color:var(--amber)}.gm-health-alert{border-color:var(--red-soft);background:linear-gradient(0deg,var(--surface),var(--surface))}.gm-health-alert .gm-health-icon{background:var(--red-soft);color:var(--red)}.gm-health-no-traffic .gm-health-icon{background:var(--gray-soft);color:var(--muted)}.gm-kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px}.gm-kpi{display:flex;flex-wrap:wrap;align-items:baseline;column-gap:10px;row-gap:2px;min-width:0;background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:11px 16px;box-shadow:var(--shadow)}.gm-kpi-label{font-size:12.5px;color:var(--muted);min-width:0}.gm-kpi-value{order:-1;font-size:20px;font-weight:700;line-height:1.2;letter-spacing:-.01em;color:var(--ink);font-variant-numeric:tabular-nums}.gm-kpi-sub{flex-basis:100%;font-size:11.5px;color:var(--ink-2)}.gm-delta-good{color:var(--green);font-weight:600}.gm-delta-bad{color:var(--red);font-weight:600}.gm-chips{display:flex;flex-wrap:wrap;gap:8px}.gm-chip{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:var(--ink-2);border:1px solid var(--border);background:var(--surface);border-radius:999px;padding:4px 10px}.gm-chip b{color:var(--ink)}.gm-grid2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}@media(max-width:1100px){.gm-grid2{grid-template-columns:minmax(0,1fr)}}.gm-split{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:20px;align-items:start}@media(max-width:1100px){.gm-split{grid-template-columns:minmax(0,1fr)}}.gm-section-title{display:flex;justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:4px}.gm-section-title h3{margin:0;font-size:15px}.gm-chart-frame{position:relative}.gm-chart-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:8px;flex-wrap:wrap}.gm-chart-title{font-weight:700;font-size:14px;color:var(--ink)}.gm-chart-sub{font-size:12px;color:var(--muted);margin-top:2px}.gm-chart-tools{display:flex;align-items:center;gap:14px}.gm-chart{position:relative;width:100%}.gm-chart svg{display:block;overflow:visible}.gm-chart svg:focus{outline:none}.gm-chart svg:focus-visible{outline:2px solid var(--brand-soft);border-radius:4px}.gm-gridline{stroke:var(--border);stroke-width:1}.gm-baseline{stroke:var(--border);stroke-width:1.5}.gm-tick{fill:var(--muted);font-size:11px;font-variant-numeric:tabular-nums}.gm-ref{stroke:var(--ink-2);stroke-width:1.5;stroke-dasharray:5 4}.gm-ref-label{fill:var(--ink-2);font-size:11px;font-weight:600}.gm-crosshair{stroke:var(--ink-2);stroke-width:1;stroke-dasharray:3 3;opacity:.6}.gm-hit{fill:transparent;cursor:default}.gm-hit-on{fill:var(--brand);opacity:.05}.gm-row-label{fill:var(--ink-2);font-size:12px}.gm-value-label{fill:var(--ink);font-size:11px;font-weight:600;font-variant-numeric:tabular-nums}.gm-tip{position:absolute;z-index:5;pointer-events:none;min-width:150px;max-width:260px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);box-shadow:var(--shadow-hover, var(--shadow));padding:8px 10px;font-size:12px;color:var(--ink)}.gm-tip-head{font-weight:700;margin-bottom:4px;color:var(--ink)}.gm-tip-row{display:flex;align-items:center;gap:6px;margin:2px 0;color:var(--ink-2)}.gm-tip-row b{color:var(--ink);font-variant-numeric:tabular-nums;margin-left:auto;padding-left:10px}.gm-key{width:10px;height:10px;border-radius:3px;flex:none;display:inline-block}.gm-legend{display:flex;flex-wrap:wrap;gap:12px;list-style:none;margin:0;padding:0;font-size:12px;color:var(--ink-2)}.gm-legend li{display:inline-flex;align-items:center;gap:6px}.gm-link{font-size:12px}.gm-chart-empty{padding:28px 0;text-align:center;color:var(--muted);font-size:13px}.gm-table-wrap{overflow-x:auto}.gm-num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.gm-psi{display:flex;align-items:center;gap:8px;min-width:150px}.gm-psi-track{position:relative;flex:1;height:8px;border-radius:4px;background:var(--gray-soft);min-width:80px}.gm-psi-fill{position:absolute;left:0;top:0;bottom:0;border-radius:4px}.gm-psi-mark{position:absolute;top:-3px;bottom:-3px;width:1px;background:var(--ink-2);opacity:.35}.gm-psi-value{font-size:12px;font-variant-numeric:tabular-nums;color:var(--ink);min-width:42px;text-align:right}.gm-fill-stable{background:var(--green)}.gm-fill-watch{background:var(--amber)}.gm-fill-drift{background:var(--red)}.gm-fill-insufficient,.gm-fill-no-baseline{background:var(--muted)}.gm-status{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:600;border-radius:999px;padding:3px 9px;white-space:nowrap}.gm-status:before{content:"";width:7px;height:7px;border-radius:50%;background:currentColor}.gm-status-stable{color:var(--green);background:var(--green-soft)}.gm-status-watch{color:var(--amber);background:var(--amber-soft)}.gm-status-drift{color:var(--red);background:var(--red-soft)}.gm-status-insufficient,.gm-status-no-baseline{color:var(--muted);background:var(--gray-soft)}.gm-clickable tbody tr{cursor:pointer}.gm-clickable tbody tr:hover td{background:var(--surface-2)}.gm-row-on td{background:var(--brand-soft)!important}.gm-stats{display:flex;flex-wrap:wrap;gap:18px;margin:6px 0 12px;font-size:13px;color:var(--ink-2)}.gm-stats b{color:var(--ink);font-variant-numeric:tabular-nums}.gm-empty{text-align:center;padding:40px 20px}.gm-empty-icon{width:48px;height:48px;border-radius:14px;margin:0 auto 12px;display:grid;place-items:center;background:var(--brand-soft);color:var(--brand);font-size:22px;font-weight:700}.gm-empty h3{margin:0 0 6px;font-size:16px}.gm-empty p{margin:0 auto;max-width:520px;color:var(--ink-2);font-size:13px}.gm-code{text-align:left;margin:14px auto 0;max-width:760px;overflow-x:auto;background:var(--brand-deep);color:#e7ecff;border-radius:var(--radius-sm);padding:12px 14px;font-size:12px;line-height:1.55;white-space:pre;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.gm-skeleton{height:14px;border-radius:6px;margin:10px 0;background:linear-gradient(90deg,var(--gray-soft) 0%,var(--surface-2) 50%,var(--gray-soft) 100%);background-size:200% 100%;animation:gm-shimmer 1.2s linear infinite}@keyframes gm-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@media(prefers-reduced-motion:reduce){.gm-skeleton{animation:none}}.gm-note{font-size:12px;color:var(--ink-2);background:var(--surface-2);border-radius:var(--radius-sm);padding:8px 10px}.gm-ok{font-size:13px;color:var(--green);background:var(--green-soft);border-radius:var(--radius-sm);padding:8px 12px}.gm-callout{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;border:1px solid var(--brand-line, var(--border));background:var(--brand-soft);border-radius:var(--radius);padding:14px 18px}.gm-callout-title{font-weight:700;color:var(--brand-deep)}.gm-callout p{margin:2px 0 0;font-size:13px;color:var(--ink-2)}.gm-rank{width:26px;height:26px;border-radius:50%;display:inline-grid;place-items:center;font-size:12px;font-weight:700;background:var(--gray-soft);color:var(--ink-2)}.gm-rank-1{background:var(--brand);color:#fff}.gm-rank-2,.gm-rank-3{background:var(--brand-soft);color:var(--brand)}.gm-bar{display:flex;align-items:center;gap:8px;min-width:160px}.gm-bar-track{flex:1;height:8px;border-radius:4px;background:var(--gray-soft);position:relative;min-width:80px}.gm-bar-fill{position:absolute;left:0;top:0;bottom:0;border-radius:4px;background:var(--series-1)}.gm-bar-value{font-weight:600;font-variant-numeric:tabular-nums;min-width:64px;text-align:right}.gm-gap{font-size:12px;color:var(--muted);font-variant-numeric:tabular-nums}.gm-params{font-size:12px;color:var(--ink-2)}.gm-params code{background:var(--surface-2);border-radius:4px;padding:1px 5px}.gm-inline-form{display:flex;flex-wrap:wrap;gap:10px;align-items:flex-end;padding:12px;background:var(--surface-2);border-radius:var(--radius-sm);margin-top:8px}.gm-explain{margin-top:14px;border-top:1px solid var(--border);padding-top:12px}.gm-explain-head{font-size:13px;color:var(--ink-2);margin-bottom:6px}.gm-explain-head b{color:var(--ink)}.gm-card{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:24px;align-items:start}@media(max-width:1000px){.gm-card{grid-template-columns:minmax(0,1fr)}}.gm-card-section{padding:14px 0;border-bottom:1px solid var(--border)}.gm-card-section:last-child{border-bottom:0}.gm-card-section h4{margin:0 0 6px;font-size:13px;color:var(--ink);letter-spacing:.01em}.gm-card-section p{margin:0;font-size:13px;color:var(--ink-2);white-space:pre-wrap;line-height:1.55}.gm-card-missing{color:var(--muted)!important;font-style:italic}.gm-aside{background:var(--surface-2);border-radius:var(--radius);padding:16px 18px}.gm-aside dl{margin:0;display:grid;grid-template-columns:auto 1fr;gap:8px 12px;font-size:13px}.gm-aside dt{color:var(--muted);font-weight:600}.gm-aside dd{margin:0;color:var(--ink);word-break:break-word}.gm-tags{display:flex;flex-wrap:wrap;gap:6px}.gm-tag{font-size:11px;font-weight:600;background:var(--brand-soft);color:var(--brand);border-radius:999px;padding:2px 8px}.gm-risk-low{color:var(--green)}.gm-risk-medium{color:var(--amber)}.gm-risk-high{color:var(--red)}.gm-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 16px}@media(max-width:800px){.gm-form{grid-template-columns:minmax(0,1fr)}}.gm-form .gm-control textarea{font:inherit;font-size:13px;color:var(--ink);border:1px solid var(--border);border-radius:var(--radius-sm);padding:8px 10px;min-height:76px;resize:vertical;background:var(--surface)}.gm-form .gm-wide{grid-column:1 / -1}.gm-lineage{list-style:none;margin:0;padding:0}.gm-lineage li{padding:8px 0;border-bottom:1px dashed var(--border);font-size:13px}.gm-lineage li:last-child{border-bottom:0}.gm-actions{display:flex;gap:8px;flex-wrap:wrap}.fav-star{display:inline-grid;place-items:center;flex:none;width:30px;height:30px;padding:0;border:1px solid transparent;border-radius:8px;background:none;color:#9aa3b5;cursor:pointer;transition:color .12s,background .12s,transform .12s}.fav-star:hover{color:#d99a00;background:#fff7e0}.fav-star:focus-visible{outline:none;box-shadow:var(--focus-ring, 0 0 0 3px rgba(31, 79, 214, .3))}.fav-star.is-on{color:#e0a100}.fav-star.is-on svg path{fill:currentColor}.fav-star:active{transform:scale(.92)}.fav-mark{display:inline-flex;vertical-align:-1px;margin-right:5px;color:#e0a100}.fav-mark svg path{fill:currentColor}.fav-title{display:flex;align-items:center;gap:6px;min-width:0}.fav-title>h2,.fav-title>input{min-width:0}.vt-list-item{position:relative}.vt-list-item>.fav-mark{position:absolute;top:9px;right:9px;margin:0}.vt-list-item:has(>.fav-mark){padding-right:28px}.content .home-favs{padding:16px 18px;margin:0 0 16px}.home-favs-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:10px}.home-fav{position:relative;display:flex;align-items:stretch;min-width:0;border:1px solid var(--border);border-radius:10px;background:var(--surface);transition:border-color .12s,box-shadow .12s}.home-fav:hover{border-color:#c9d3e6;box-shadow:0 4px 14px #0f172a12}.home-fav-link{flex:1;min-width:0;display:flex;align-items:center;gap:11px;padding:10px 4px 10px 12px;text-decoration:none;color:inherit}.home-fav-icon{width:34px;height:34px;border-radius:9px;display:grid;place-items:center;flex:none;background:var(--brand-soft);color:var(--brand)}.home-fav.is-report .home-fav-icon,.home-fav.is-view .home-fav-icon{background:#eaf7f1;color:#138a5e}.home-fav.is-forecast .home-fav-icon{background:#fff4e0;color:#b86e00}.home-fav.is-scenario .home-fav-icon{background:#f1edfb;color:#4a3aa7}.home-fav-text{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.home-fav-text b{font-size:13.5px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.home-fav-text small{font-size:12px;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.home-fav-side{display:flex;flex-direction:column;align-items:flex-end;justify-content:space-between;padding:4px 6px 8px 0}.home-fav-when{font-size:11px;color:var(--muted);white-space:nowrap}.home-favs-empty{margin:0;font-size:13px;color:var(--ink-2);display:flex;align-items:center;gap:4px;flex-wrap:wrap}.home-favs-empty svg{color:#e0a100}.home-fav-skeleton{height:58px;border-radius:10px;background:linear-gradient(90deg,var(--surface) 0%,var(--surface-2) 50%,var(--surface) 100%);background-size:200% 100%;animation:sh-shimmer 1.2s ease-in-out infinite}@media(prefers-reduced-motion:reduce){.home-fav-skeleton{animation:none}}.vt-split{display:grid;grid-template-columns:270px minmax(0,1fr);gap:18px;align-items:start}.vt-side{display:flex;flex-direction:column;gap:14px;position:sticky;top:14px;max-height:calc(100vh - 28px);overflow-y:auto}.vt-main{min-width:0;display:flex;flex-direction:column;gap:14px}.vt-main>.panel,.vt-side>.panel{margin:0}@media(max-width:980px){.vt-split{grid-template-columns:minmax(0,1fr)}.vt-side{position:static;max-height:none}}.vt-row{display:flex;gap:10px;align-items:flex-end;flex-wrap:wrap}.vt-wrap{flex-wrap:wrap}.vt-end{justify-content:flex-end}.vt-grow{flex:1}.vt-mt{margin-top:16px}.vt-nomargin{margin:0!important}.vt-pane{display:flex;flex-direction:column;gap:12px;padding-top:12px}.vt-h3{font-size:13.5px;margin:16px 0 4px;display:flex;gap:8px;align-items:baseline}.vt-h3 .small{font-weight:400;margin:0}.vt-scroll{overflow-x:auto;max-width:100%}.vt-num{text-align:right;font-variant-numeric:tabular-nums}input.vt-num{width:90px}.vt-good{color:var(--green)}.vt-bad{color:var(--red)}.vt-warn{color:var(--amber);display:block;margin:4px 0}.vt-input,.vt-field input,.vt-field select,.vt-field textarea,.vt-filter select,.vt-row>select,.vt-deftable select,.vd-propsbody select,.vd-fc select,.vr-line select,.vt-inline-select{padding:6px 8px;font-size:13px;border:1px solid var(--border);border-radius:8px;background:var(--surface);color:var(--ink);min-width:0;font-family:inherit}.vt-input:focus,.vt-field input:focus,.vt-field select:focus,.vt-field textarea:focus,.vt-filter select:focus{outline:none;border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-soft)}.vt-field{display:flex;flex-direction:column;gap:5px;min-width:120px}.vt-field>span{font-size:12px;font-weight:600;color:var(--ink-2)}.vt-field small{font-size:11px;line-height:1.35}.vt-field textarea{resize:vertical}.vt-toggle{display:inline-flex;align-items:center;gap:7px;font-size:13px;cursor:pointer;padding:3px 0}.vt-toggle input{margin:0}.vt-toggle-inline{align-self:center;margin-bottom:6px}.vt-inline-select{margin-left:10px;padding:2px 6px;font-size:12px}.vt-tabs{display:flex;gap:2px;border-bottom:1px solid var(--border);margin-bottom:4px;flex-wrap:wrap}.vt-tab{background:none;border:none;padding:8px 12px;font-size:13px;color:var(--ink-2);cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-1px;font-family:inherit}.vt-tab:hover{color:var(--ink)}.vt-tab-on{color:var(--brand);border-bottom-color:var(--brand);font-weight:600}.vt-sidelist h2{margin-bottom:8px}.vt-list{list-style:none;margin:8px 0 0;padding:0;display:flex;flex-direction:column;gap:2px}.vt-list-item{width:100%;text-align:left;background:none;border:1px solid transparent;border-radius:9px;padding:8px 10px;display:flex;flex-direction:column;gap:2px;cursor:pointer;font-family:inherit;color:var(--ink)}.vt-list-item b{font-size:13.5px;font-weight:600}.vt-list-item .small{margin:0;font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.vt-list-item:hover{background:var(--surface-2)}.vt-list-on{background:var(--brand-soft);border-color:var(--brand-soft)}.vt-list-on b{color:var(--brand)}.vt-error{background:var(--red-soft);color:var(--red);border-radius:9px;padding:10px 12px;font-size:13px;margin:8px 0}.vt-error-head{display:flex;justify-content:space-between;gap:10px}.vt-error ul{margin:6px 0 0;padding-left:18px}.vt-empty{text-align:center;padding:36px 16px;display:flex;flex-direction:column;gap:8px;align-items:center}.vt-empty b{font-size:15px}.vt-empty p{max-width:560px}.vt-running{font-size:12px;color:var(--muted);margin:4px 0}.vt-modal-back{position:fixed;top:0;right:0;bottom:0;left:0;background:#10182859;display:grid;place-items:center;z-index:50;padding:20px}.vt-modal{background:var(--surface);border-radius:14px;width:min(560px,100%);max-height:calc(100vh - 40px);display:flex;flex-direction:column;box-shadow:0 20px 60px #10182840}.vt-modal-wide{width:min(1080px,100%)}.vt-modal-head{display:flex;justify-content:space-between;align-items:center;padding:16px 20px 8px}.vt-modal-head h2{margin:0;font-size:16px}.vt-modal-body{padding:4px 20px 16px;overflow-y:auto}.vt-modal-foot{padding:12px 20px 16px;border-top:1px solid var(--border)}.vt-multi{display:inline-flex;gap:6px;flex-wrap:wrap;align-items:center}.vt-chip{display:inline-flex;align-items:center;gap:4px;background:var(--brand-soft);color:var(--brand);border-radius:999px;padding:3px 4px 3px 10px;font-size:12.5px}.vt-chip button{border:none;background:none;color:inherit;cursor:pointer;font-size:14px;line-height:1;padding:0 4px}.vt-multi-input .vt-input{width:140px}.vt-param-pick{font-size:12px}.vt-param-or{display:inline-flex;gap:4px;align-items:center}.vt-filters{display:flex;flex-direction:column;gap:6px;margin:6px 0}.vt-filter{display:flex;gap:6px;align-items:center;flex-wrap:wrap}.vt-filter .vt-input{width:150px}.vt-filter-x{order:0;font-size:15px;padding:0 4px}.vt-filter{border-left:2px solid var(--border);padding-left:8px}.vt-filters-compact .vt-filter select,.vt-filters-compact .vt-input{max-width:120px}.vt-and{margin:0 2px!important}.vt-add{align-self:flex-start;margin-top:4px;font-size:13px}.vt-viewas{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:var(--ink-2);border:1px dashed var(--border);border-radius:9px;padding:3px 6px 3px 10px}.vt-viewas input{border:none;outline:none;font-size:12.5px;width:170px;background:transparent;color:var(--ink);font-family:inherit}.vt-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;margin-bottom:14px}.vt-stat{display:flex;flex-wrap:wrap;align-items:baseline;column-gap:10px;row-gap:2px;min-width:0;border:1px solid var(--border);border-radius:10px;padding:11px 16px;background:var(--surface);box-shadow:var(--shadow)}.vt-stat-value{font-size:20px;font-weight:700;line-height:1.2;letter-spacing:-.01em;font-variant-numeric:tabular-nums}.vt-stat-label{font-size:12.5px;color:var(--muted);min-width:0}.vt-stat-good .vt-stat-value{color:var(--green)}.vt-stat-bad .vt-stat-value{color:var(--red)}.vt-stat-warn .vt-stat-value{color:var(--amber)}.vt-deftable{margin-top:4px}.vt-deftable td,.vt-deftable th{padding:5px 6px 5px 0}.vt-deftable .vt-input{width:100%;min-width:80px}.vt-linked{background:var(--surface-2);border-radius:10px;padding:12px 14px}.vt-defsum{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:8px}.vt-defsum ul{list-style:none;padding:0;margin:6px 0 0;font-size:13px;display:flex;flex-direction:column;gap:4px}.vt-defsum .small{margin:0}.vt-fields{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:14px 0 10px}@media(max-width:900px){.vt-fields{grid-template-columns:minmax(0,1fr)}}.vt-fields-head{font-size:12px;font-weight:600;color:var(--ink-2);text-transform:uppercase;letter-spacing:.05em;margin:10px 0 6px;display:flex;align-items:baseline;flex-wrap:wrap;gap:6px}.vt-fields-head .small{text-transform:none;letter-spacing:0;font-weight:400;margin:0}.vt-subline{font-size:13px;color:var(--ink-2);margin:2px 0 0}.vt-chips{display:flex;flex-wrap:wrap;gap:6px}.vt-pick{display:inline-flex;align-items:center;gap:5px;padding:4px 11px;font-size:12.5px;cursor:pointer;border:1px solid var(--border);border-radius:999px;background:var(--surface);-webkit-user-select:none;user-select:none}.vt-pick input{display:none}.vt-pick:hover{background:var(--surface-2)}.vt-pick-on{background:var(--brand);border-color:var(--brand);color:#fff}.vt-pick-dim.vt-pick-on{background:var(--ink);border-color:var(--ink)}.vt-toolbar{margin-top:12px;padding-top:12px;border-top:1px solid var(--border)}.vt-answer{min-height:200px}.vt-crumbs{font-size:13px;margin-bottom:8px}.vt-drillbar{display:flex;gap:8px;align-items:center;flex-wrap:wrap;background:var(--brand-soft);border-radius:10px;padding:8px 12px;margin-bottom:10px;font-size:13px}.vt-meta{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin-top:8px}.vt-meta .small{margin:0}.vt-sql{background:var(--surface-2);border-radius:10px;padding:12px 14px;overflow-x:auto;font-size:12px;margin:8px 0 0;white-space:pre}.vt-records{font-size:12px}.vt-records td{padding:6px 12px 6px 0;white-space:nowrap;max-width:280px;overflow:hidden;text-overflow:ellipsis}.vt-about summary{cursor:pointer;font-weight:600;font-size:13px}.vt-more{margin-top:10px}.vt-more summary{cursor:pointer;font-size:13px;color:var(--ink-2);margin-bottom:8px}.vt-menu{display:inline-flex;gap:6px}.vt-menu a{text-decoration:none}.vd-head{margin:0}.vd-titlebox{min-width:0;flex:1}.vd-titlebox h2{font-size:18px;margin:0}.vd-title-input{font-size:17px;font-weight:600;border:1px solid transparent;border-radius:8px;padding:4px 8px;margin-left:-8px;background:transparent;color:var(--ink);min-width:260px;font-family:inherit}.vd-title-input:hover{border-color:var(--border)}.vd-title-input:focus{outline:none;border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-soft)}.vd-editor{display:grid;grid-template-columns:150px minmax(0,1fr) 300px;gap:14px;align-items:start}@media(max-width:1280px){.vd-editor{grid-template-columns:130px minmax(0,1fr) 260px}}.vd-palette,.vd-props{margin:0;position:sticky;top:14px;max-height:calc(100vh - 28px);overflow-y:auto}.vd-palette h2{font-size:13px}.vd-pal-item{display:flex;align-items:center;gap:8px;width:100%;text-align:left;padding:7px 9px;margin-bottom:5px;border:1px solid var(--border);border-radius:9px;background:var(--surface);font-size:12.5px;cursor:grab;font-family:inherit;color:var(--ink);overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.vd-pal-item:hover{border-color:var(--brand);background:var(--brand-soft)}.vd-pal-glyph{width:20px;height:20px;border-radius:6px;background:var(--surface-2);display:inline-grid;place-items:center;font-size:12px;flex-shrink:0}.vd-board{min-width:0}.vd-propsbody{display:flex;flex-direction:column;gap:10px}.vd-propsbody h2{margin:0}.vd-picklist{display:flex;flex-direction:column;gap:2px;max-height:200px;overflow-y:auto}.vd-picklist .vt-fields-head{margin:4px 0}.vd-filterdef{display:flex;flex-direction:column;gap:5px;border:1px solid var(--border);border-radius:9px;padding:8px}.vd-filterdef .small{margin:0}.vd-canvas{display:flex;flex-direction:column;gap:12px}.vd-filterbar{display:flex;gap:14px;flex-wrap:wrap;align-items:center;background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:10px 14px}.vd-filter{display:flex;align-items:center;gap:8px;font-size:12.5px}.vd-filter>span:first-child{font-weight:600;color:var(--ink-2)}.vd-fc{display:inline-flex;gap:6px;align-items:center;flex-wrap:wrap}.vd-fc .vt-input{width:140px}.vd-fc-search{width:110px!important}.vd-cl{position:relative}.vd-cl-btn{display:inline-flex;align-items:center;gap:8px;min-width:110px;max-width:220px;padding:6px 8px;font:inherit;font-size:13px;border:1px solid var(--border);border-radius:8px;background:var(--surface);color:var(--ink);cursor:pointer}.vd-cl-btn:focus-visible{outline:none;border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-soft)}.vd-cl-on{border-color:var(--brand);color:var(--brand)}.vd-cl-sum{flex:1;text-align:left;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.vd-cl-caret{font-size:11px;color:var(--ink-2)}.vd-cl-pop{position:absolute;top:calc(100% + 4px);left:0;z-index:30;width:240px;max-width:calc(100vw - 32px);background:var(--surface);border:1px solid var(--border);border-radius:10px;box-shadow:var(--shadow-hover);padding:8px;display:flex;flex-direction:column;gap:6px}.vd-cl-search{width:100%!important;box-sizing:border-box}.vd-cl-actions{display:flex;justify-content:space-between;font-size:12px}.vd-cl-list{max-height:260px;overflow-y:auto;display:flex;flex-direction:column}.vd-cl-row{display:flex;align-items:center;gap:8px;padding:5px 6px;border-radius:6px;cursor:pointer;font-size:13px}.vd-cl-row:hover{background:var(--surface-2)}.vd-cl-row input{margin:0;accent-color:var(--brand)}.vd-cl-note{padding:6px}.vd-selection{font-size:12.5px;background:var(--brand-soft);color:var(--brand);border-radius:999px;padding:4px 12px;display:inline-flex;gap:8px;align-items:center}.vd-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:12px;position:relative}.vd-grid-edit{background-image:linear-gradient(to right,var(--surface-2) 1px,transparent 1px);background-size:calc((100% + 12px) / 12) 100%;border-radius:12px;min-height:360px;outline:1px dashed var(--border);outline-offset:4px}.vd-widget{background:var(--surface);border:1px solid var(--border);border-radius:12px;box-shadow:var(--shadow);display:flex;flex-direction:column;min-width:0;min-height:0;position:relative;overflow:hidden}.vd-grid-edit .vd-widget{cursor:default}.vd-grid-edit .vd-widget:focus{outline:none}.vd-widget-on{border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-soft)}.vd-widget-drag{opacity:.85;box-shadow:var(--shadow-hover);z-index:3}.vd-widget-new{border-color:var(--brand);animation:vd-arrive 6s ease-out forwards}@keyframes vd-arrive{0%{box-shadow:0 0 0 0 var(--brand-soft);transform:scale(.98)}8%{box-shadow:0 0 0 6px var(--brand-soft);transform:scale(1)}75%{box-shadow:0 0 0 4px var(--brand-soft)}to{box-shadow:0 0 0 0 transparent}}@media(prefers-reduced-motion:reduce){.vd-widget-new{animation:none;box-shadow:0 0 0 3px var(--brand-soft)}}.vd-widget-text{background:var(--surface-2);box-shadow:none}.vd-whead{display:flex;align-items:center;gap:8px;padding:9px 12px 0;min-height:30px}.vd-grid-edit .vd-whead{cursor:grab}.vd-grid-edit .vd-whead:active{cursor:grabbing}.vd-wtitle{font-size:13px;font-weight:600;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.vd-wmenu{font-size:11px;opacity:0;transition:opacity .15s}.vd-widget:hover .vd-wmenu{opacity:1}.vd-wbody{flex:1;min-height:0;padding:4px 10px 8px;overflow:auto}.vd-loading,.vd-werror{font-size:12.5px;color:var(--muted);padding:12px 4px}.vd-werror{color:var(--red)}.vd-text{font-size:13px;line-height:1.5;padding:4px;overflow-y:auto;height:100%;display:flex;flex-direction:column;box-sizing:border-box}.vd-text-in{width:100%}.vd-valign-middle .vd-text-in{margin:auto 0}.vd-valign-bottom .vd-text-in{margin-top:auto}.vd-text h3{margin:0 0 6px;font-size:1.15em}.vd-wbody[data-align=center] .vc-kpi{align-items:center;text-align:center}.vd-wbody[data-align=right] .vc-kpi{align-items:flex-end;text-align:right}.vd-wbody[data-align] .vc-kpi-target,.vd-wbody[data-align] .vc-kpi-sparkwrap{align-self:stretch}.vd-wbody[data-valign=top] .vc-kpi{justify-content:flex-start}.vd-wbody[data-valign=bottom] .vc-kpi{justify-content:flex-end}.vd-wbody[data-align=left] .vc-card{align-items:flex-start;text-align:left}.vd-wbody[data-align=right] .vc-card{align-items:flex-end;text-align:right}.vd-wbody[data-valign=top] .vc-card{justify-content:flex-start}.vd-wbody[data-valign=bottom] .vc-card{justify-content:flex-end}.vd-wbody.vd-sized .vc-table{font-size:var(--vd-size)}.vd-text p{margin:0 0 6px;color:var(--ink-2)}.vd-resize{position:absolute;right:2px;bottom:2px;width:16px;height:16px;cursor:nwse-resize;background:linear-gradient(135deg,transparent 50%,var(--muted) 50%,var(--muted) 58%,transparent 58%,transparent 70%,var(--muted) 70%,var(--muted) 78%,transparent 78%);opacity:.6}.vd-resize:hover{opacity:1}.vd-dropzone{border:2px dashed var(--border);border-radius:12px;display:grid;place-items:center;color:var(--muted);font-size:13px;text-align:center;padding:20px}.vd-spin{width:10px;height:10px;border-radius:50%;border:2px solid var(--border);border-top-color:var(--brand);animation:vd-spin .8s linear infinite}@keyframes vd-spin{to{transform:rotate(360deg)}}.vt-pubbox{display:flex;gap:6px;margin-top:10px}.vt-pubbox input{flex:1;padding:6px 8px;border:1px solid var(--border);border-radius:8px;font-size:12.5px;font-family:inherit}.vp-page{max-width:1500px;margin:0 auto;padding:26px 30px 60px;background:var(--bg);min-height:100vh}.vp-head{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:18px;gap:16px}.vp-head h1{margin:6px 0 2px;font-size:24px}.vp-brand{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--muted);letter-spacing:.05em;text-transform:uppercase;font-weight:600}.vp-missing{max-width:520px;margin:12vh auto;text-align:center}.vp-grid2{display:grid;grid-template-columns:1fr 1fr;gap:14px}.vp-grid2>.panel{margin:0}@media(max-width:1000px){.vp-grid2{grid-template-columns:minmax(0,1fr)}}.vt-rowon td{background:var(--brand-soft)}.vr-layout{display:grid;grid-template-columns:minmax(380px,440px) minmax(0,1fr);gap:14px;align-items:start}.vr-layout>.panel{margin:0}@media(max-width:1200px){.vr-layout{grid-template-columns:minmax(0,1fr)}}.vr-designer{position:sticky;top:14px;max-height:calc(100vh - 28px);overflow-y:auto}.vr-line{align-items:center;gap:6px;flex-wrap:nowrap}.vr-line .vt-input{width:110px}.vr-level{width:20px;height:20px;border-radius:50%;background:var(--surface-2);display:inline-grid;place-items:center;font-size:11px;font-weight:700;flex-shrink:0}.vr-move{display:inline-flex;gap:2px;line-height:1}.vr-move .link-btn{font-size:12px;padding:0 2px}.vr-param{border:1px solid var(--border);border-radius:10px;padding:8px 10px;display:flex;flex-direction:column;gap:8px}.vr-params{display:flex;gap:10px;flex-wrap:wrap;margin:6px 0 12px;padding:10px;background:var(--surface-2);border-radius:10px}.vr-preview{min-width:0}.vr-sheet{--vr-accent: #1f4fd6;background:#fff;border:1px solid var(--border);box-shadow:var(--shadow);border-radius:4px;padding:34px 38px;margin:8px auto 0;max-width:820px;color:#1a1d23;font-size:12.5px}.vr-landscape{max-width:1100px}.vr-header{font-size:10.5px;color:#8a909c;border-bottom:1px solid #e6e8ec;padding-bottom:6px;margin-bottom:14px}.vr-title{font-size:22px;margin:0}.vr-subtitle{color:#5b626e;margin:2px 0 14px}.vr-text{color:#3a3f47;line-height:1.5}.vr-params-line{color:#8a909c;font-size:11.5px}.vr-kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px;margin:12px 0 16px}.vr-kpi{border:1px solid #e6e8ec;border-radius:6px;padding:10px 12px;display:flex;flex-direction:column;gap:4px}.vr-kpi span{font-size:11px;color:#8a909c}.vr-kpi b{font-size:18px;font-variant-numeric:tabular-nums}.vr-chart{margin:8px 0 16px}.vr-table{width:100%;border-collapse:collapse;font-size:12px}.vr-table th{background:var(--vr-accent);color:#fff;text-align:left;padding:6px 8px;font-weight:600;position:sticky;top:0}.vr-table th.vt-num{text-align:right}.vr-table td{padding:5px 8px;border-bottom:1px solid #f0f1f4}.vr-group td{font-weight:700;padding-top:10px;border-bottom:1px solid #e6e8ec}.vr-group.vr-l1 td{padding-left:22px}.vr-group.vr-l2 td{padding-left:36px}.vr-detail.vr-l1 td:first-child{padding-left:22px}.vr-detail.vr-l2 td:first-child{padding-left:36px}.vr-detail.vr-l3 td:first-child{padding-left:50px}.vr-subtotal td{font-weight:700;background:#f7f8fa;border-top:1px solid #e6e8ec}.vr-subtotal.vr-l1 td:first-child{padding-left:22px}.vr-total td{font-weight:700;border-top:2px solid var(--vr-accent);padding-top:8px}.vr-footer{font-size:10.5px;color:#8a909c;border-top:1px solid #e6e8ec;margin-top:18px;padding-top:6px;text-align:center}.vs-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,3fr);gap:14px}.vs-grid>.panel{margin:0;min-width:0}@media(max-width:1300px){.vs-grid{grid-template-columns:minmax(0,1fr)}}.vs-grid td .muted.small{margin:0}.vs-matrix th{font-size:11.5px;white-space:nowrap}.vs-coef{width:70px!important;min-width:60px!important}.vs-recommend{border-left:4px solid var(--green);background:var(--green-soft)}.vs-recommend h2{color:var(--green)}.vs-recommend p{margin:6px 0 0}.vs-none{border-left-color:var(--red);background:var(--red-soft)}.vs-none h2{color:var(--red)}.vs-status{display:inline-block;font-size:11px;font-weight:600;border-radius:999px;padding:2px 8px;background:var(--gray-soft);color:var(--ink-2);text-transform:capitalize}.vs-optimal,.vs-tone-ok{background:var(--green-soft);color:var(--green)}.vs-infeasible,.vs-unbounded,.vs-tone-bad{background:var(--red-soft);color:var(--red)}.vs-iteration_limit,.vs-node_limit,.vs-tone-warn{background:var(--amber-soft);color:var(--amber)}.vt-clickrow{cursor:pointer}.vt-clickrow:hover td{background:var(--surface-2)}.vt-colon{background:var(--brand-soft)}.vs-changed{font-weight:700;color:var(--brand)}.vs-binding td{background:var(--amber-soft)}.vs-tag{font-size:10.5px;background:var(--amber);color:#fff;border-radius:999px;padding:1px 7px;margin-left:6px}.vs-recipient{margin:2px 0}@media(max-width:1200px){.vr-designer{position:static;max-height:none}}@media(max-width:980px){.vt-main .console-head,.vs-grid .console-head{flex-wrap:wrap;gap:10px;align-items:flex-start}.vt-main .console-head>div:first-child:not(:only-child){flex:1 1 100%;min-width:0}.vt-main .console-head .vt-row{align-items:center}.vt-side .vt-list{max-height:264px;overflow-y:auto}}@media(max-width:900px){.vd-editor,.panes-3.vd-editor.pane-left-off,.panes-3.vd-editor.pane-right-off{grid-template-columns:minmax(0,1fr)}.vd-palette,.vd-props{position:static;max-height:none}.vd-palette{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.vd-palette>h2{flex:1 1 100%}.vd-pal-item{width:auto;margin:0}}@media(max-width:720px){.vt-split,.vr-layout,.vs-grid{gap:12px}.panes>.panes-handles{position:static;height:auto;display:flex;justify-content:space-between;margin-bottom:8px}.panes-handles>.pane-handle,.panes-handles>.pane-handle.is-off{position:static}.panes-handles>.pane-handle.is-off{flex-direction:row;min-height:0;width:auto;height:28px;padding:0 12px 0 8px;border-radius:999px}.panes-handles .pane-handle-text{writing-mode:horizontal-tb;transform:none}.vt-main table.conn-table,.vs-grid table.conn-table,.vp-page table.conn-table,.vt-modal table.conn-table{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch}.vt-main table.conn-table td:first-child,.vs-grid table.conn-table td:first-child{min-width:150px}.vt-row>.vt-field{flex:1 1 140px}.vt-row>select,.vt-field select,.vt-field input{max-width:100%}.vt-viewas{max-width:100%}.vt-viewas input{width:110px;min-width:0}.vt-filter .vt-input,.vd-fc .vt-input{width:120px}.vr-line{flex-wrap:wrap}.vd-title-input{min-width:0;width:100%}.vd-filterbar{padding:8px 10px;gap:8px 12px}.vd-filter{flex-wrap:wrap}.vd-cl-btn{max-width:100%}.vd-gridwrap-edit{overflow-x:auto;padding:6px}.vd-gridwrap-edit>.vd-grid{min-width:720px}.vp-page{padding:16px 16px 48px}.vp-head{flex-wrap:wrap;align-items:flex-start}.vp-head h1{font-size:20px}.vr-sheet{padding:18px 14px}.vr-title{font-size:18px}.vt-modal-back{padding:8px;align-items:end}.vt-modal{max-height:calc(100vh - 16px)}.vt-modal-head{padding:14px 14px 6px}.vt-modal-body{padding:4px 14px 14px}.vt-modal-foot{padding:10px 14px 14px}.vt-defsum{grid-template-columns:minmax(0,1fr)}}@media(hover:none){.vd-wmenu{opacity:1}}.vd-grid-stacked{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:auto}.vt-main td.vt-num,.vt-main th.vt-num,.vs-grid td.vt-num,.vs-grid th.vt-num,.vp-page td.vt-num{white-space:nowrap}.vd-style{margin-top:12px;padding-top:10px;border-top:1px solid var(--border)}.vd-seg{display:inline-flex;border:1px solid var(--border);border-radius:8px;overflow:hidden}.vd-seg-btn{font:inherit;font-size:12.5px;padding:5px 10px;background:var(--surface);color:var(--ink-2);border:0;border-right:1px solid var(--border);cursor:pointer}.vd-seg-btn:last-child{border-right:0}.vd-seg-btn:hover{background:var(--surface-2)}.vd-seg-on,.vd-seg-on:hover{background:var(--brand-soft);color:var(--brand);font-weight:600}.vt-related{margin-top:14px}.vt-rel{border:1px solid var(--border);border-radius:10px;padding:10px 12px;margin:8px 0;background:var(--surface-2)}.vt-rel .vt-row{margin-bottom:6px}.vt-rel-on .vt-row{align-items:center}.vt-rel-on select,.vt-rel-on input{min-width:160px}.tab-tools{display:flex;align-items:center;gap:10px;margin:-10px 0 14px;position:relative;z-index:30}.vt-search{position:relative;width:380px;max-width:100%}.vt-search-box{display:flex;align-items:center;gap:8px;height:36px;padding:0 8px 0 11px;color:var(--muted);background:var(--surface);border:1px solid var(--border);border-radius:10px}.vt-search-box:focus-within{border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-soft);color:var(--brand)}.vt-search-box input{flex:1;min-width:0;border:0;outline:none;background:transparent;color:var(--ink);font-size:13.5px;font-family:inherit;padding:0;-webkit-appearance:none;-moz-appearance:none;appearance:none}.vt-search-box input:focus-visible{outline:none;box-shadow:none}.vt-search-box input::-webkit-search-cancel-button{display:none}.vt-search-clear{border:0;background:none;color:var(--muted);cursor:pointer;width:22px;height:22px;border-radius:6px;display:grid;place-items:center;flex:none;padding:0}.vt-search-clear:hover,.vt-search-toggle:hover{background:var(--surface-2);color:var(--ink)}.vt-search-toggle{border:0;border-left:1px solid var(--border);background:none;color:var(--ink-2);cursor:pointer;width:28px;height:22px;border-radius:0 6px 6px 0;display:grid;place-items:center;flex:none;padding:0 0 0 4px}.vt-search-toggle svg{transition:transform .12s ease-out}.vt-search-box.is-open .vt-search-toggle svg{transform:rotate(180deg)}.vt-search-group-label{display:flex;align-items:baseline;gap:8px}.vt-search-group-label span{font-weight:600;letter-spacing:0;color:var(--ink-2);background:var(--surface-2);border-radius:999px;padding:0 7px;font-size:10.5px}.vt-search-pop{position:absolute;top:calc(100% + 6px);left:0;z-index:60;width:max(100%,440px);max-width:calc(100vw - 32px);max-height:min(60vh,460px);overflow-y:auto;padding:4px 6px 8px;text-align:left;background:var(--surface);border:1px solid var(--border);border-radius:12px;box-shadow:0 16px 40px #0b16402e,0 2px 6px #0b16400f}.vt-search-group-label{font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);padding:10px 8px 4px}.vt-search-item{display:flex;align-items:center;gap:10px;width:100%;text-align:left;border:0;background:none;border-radius:8px;padding:7px 8px;cursor:pointer;font-family:inherit;color:var(--ink)}.vt-search-item.is-selected{background:var(--brand-soft)}.vt-search-icon{width:28px;height:28px;border-radius:7px;display:grid;place-items:center;flex:none;background:var(--surface-2);color:var(--ink-2);border:1px solid var(--border)}.vt-search-item.is-selected .vt-search-icon{background:var(--surface);color:var(--brand);border-color:var(--brand-line)}.vt-search-text{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}.vt-search-text b{font-size:13.5px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.vt-search-item .vt-search-text .small{margin:0;font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.vt-search-text mark{background:none;color:var(--brand);font-weight:700}.vt-search-kind{font-size:11.5px;color:var(--muted);white-space:nowrap;flex:none}.vt-search-note{display:flex;flex-direction:column;gap:3px;padding:12px 10px 6px;font-size:12.5px;color:var(--ink-2)}.vt-search-note b{color:var(--ink);font-size:13.5px}@media(max-width:720px){.tab-tools{margin:-6px 0 12px}.tab-tools .vt-search{flex:1;width:auto}.vt-search-pop{width:calc(100vw - 32px)}}.vd-pages{display:flex;gap:4px;flex-wrap:wrap;align-items:center;margin-top:10px;border-bottom:1px solid var(--border)}.vd-page{font:inherit;font-size:13px;background:none;border:0;border-bottom:2px solid transparent;margin-bottom:-1px;padding:7px 12px;color:var(--ink-2);cursor:pointer}.vd-page:hover{color:var(--ink)}.vd-page-on{color:var(--brand);border-bottom-color:var(--brand);font-weight:600}.vd-page-hidden{font-style:italic;opacity:.75}.vd-page-flag{font-size:11px;color:var(--muted)}.vd-page-add{color:var(--brand)}.vd-page-more{padding:7px 8px;color:var(--muted);letter-spacing:1px}.vd-page-more:hover,.vd-page-more[aria-expanded=true]{color:var(--ink)}.vd-page-rename{font:inherit;font-size:13px;padding:5px 8px;border:1px solid var(--brand);border-radius:6px;width:150px;background:var(--surface);color:var(--ink)}.vd-hist{display:inline-flex;align-items:stretch;min-height:30px;border:1px solid var(--border);border-radius:8px;background:var(--surface);overflow:hidden}.vd-hist button{display:inline-flex;align-items:center;justify-content:center;border:0;background:none;color:var(--ink-2);cursor:pointer;padding:0 8px}.vd-hist .vd-hist-flip{padding:0 5px;color:var(--muted)}.vd-hist button:hover:not(:disabled){background:var(--surface-2);color:var(--ink)}.vd-hist button:focus-visible{outline:2px solid var(--brand);outline-offset:-2px}.vd-hist button:disabled{opacity:.4;cursor:default}.vd-note{margin:6px 0 0}.vd-keys{line-height:1.5}.vd-bm{position:relative}.vd-bm-pop{position:absolute;right:0;top:calc(100% + 4px);z-index:30;min-width:240px;max-height:360px;overflow-y:auto;background:var(--surface);border:1px solid var(--border);border-radius:10px;box-shadow:var(--shadow-hover);padding:4px;display:flex;flex-direction:column}.vd-bm-item{font:inherit;text-align:left;background:none;border:0;border-radius:7px;padding:7px 10px;cursor:pointer;display:flex;flex-direction:column;gap:1px;color:var(--ink)}.vd-bm-item:hover{background:var(--surface-2)}.vd-bm-add{color:var(--brand);border-top:1px solid var(--border);border-radius:0 0 7px 7px}.vd-bm-note{padding:8px 10px}.vp-side{display:flex;flex-direction:column;align-items:flex-end;gap:6px}.vd-drill{display:inline-flex;gap:2px;margin-left:auto}.vd-drill-btn{font:inherit;font-size:11px;line-height:1;padding:3px 6px;border:1px solid var(--border);border-radius:6px;background:var(--surface);color:var(--ink-2);cursor:pointer}.vd-drill-btn:hover{border-color:var(--brand);color:var(--brand)}.vd-drill-on,.vd-drill-on:hover{background:var(--brand-soft);border-color:var(--brand);color:var(--brand);font-weight:600}.vd-whead-float{position:absolute;top:4px;right:6px;z-index:2;padding:0;min-height:0}.vd-crumbs{font-size:11px;color:var(--ink-2);padding:2px 12px 0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.vd-through{background:var(--surface-2);color:var(--ink)}.vd-through-btn{font-weight:600}.vd-back{margin-left:auto}.vd-widget-button{background:transparent;box-shadow:none;border-style:dashed}.vd-grid:not(.vd-grid-edit) .vd-widget-button{border-color:transparent}.vd-buttonwrap{display:flex;height:100%;align-items:center;padding:4px}.vd-buttonwrap.vd-valign-top{align-items:flex-start}.vd-buttonwrap.vd-valign-bottom{align-items:flex-end}.vd-button{font:inherit;font-size:13px;font-weight:600;padding:8px 16px;border-radius:9px;border:1px solid var(--brand);background:var(--brand);color:#fff;cursor:pointer;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.vd-button:hover{filter:brightness(1.08)}.vd-whead-ghost{opacity:.55;min-height:22px;padding-top:4px}.vd-whead-ghost .vd-wtitle{font-size:11px;font-weight:500}.vd-matrix{overflow:auto;height:100%}.vd-matrix .rs-grid-wrap{max-height:none;border:0;border-radius:0}.vd-matrix .rs-sortable{pointer-events:none}.vd-matrix .rs-c{cursor:default}.vd-measure{display:flex;align-items:center;gap:6px;justify-content:space-between}.vd-rename{justify-content:flex-start;font-size:13px}.vd-agg{font:inherit;font-size:11.5px;max-width:130px;padding:2px 4px}.vd-summarize{display:flex;align-items:center;gap:4px;flex-wrap:wrap;margin-top:4px}.vd-summarize select{font:inherit;font-size:12px;max-width:120px}.vf{margin-top:12px;padding-top:10px;border-top:1px solid var(--border);display:flex;flex-direction:column;gap:4px}.vf-section{border:1px solid var(--border);border-radius:9px;background:var(--surface)}.vf-section>summary{cursor:pointer;padding:7px 10px;font-size:12.5px;font-weight:600;color:var(--ink);list-style-position:inside}.vf-section[open]>summary{border-bottom:1px solid var(--border)}.vf-body{display:flex;flex-direction:column;gap:8px;padding:8px 10px 10px}.vf-color{display:flex;align-items:center;gap:8px;font-size:12.5px}.vf-color-label{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--ink-2)}.vf-color input[type=color]{width:32px;height:24px;padding:0;border:1px solid var(--border);border-radius:6px;background:none;cursor:pointer}.vf-upload{cursor:pointer}.vf-swatches{display:inline-flex;gap:3px}.vf-swatches i{width:12px;height:12px;border-radius:3px;display:inline-block}.vs-tag.vs-rec-warn{background:var(--amber)}.vs-tag.vs-rec-good{background:var(--green, #2e7d32)}.vs-tag.vs-rec-bad{background:var(--red, #c62828)}.vs-tag.vs-rec-quiet{background:var(--ink-2, #667)}.vs-tag.vs-rec-warn,.vs-tag.vs-rec-good,.vs-tag.vs-rec-bad,.vs-tag.vs-rec-quiet{white-space:nowrap;margin-left:0}.vs-rec-note{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.vs-rec-note input{flex:1;min-width:240px}.vt-share-pick{max-width:720px;margin-top:8px}.rs-studio{display:grid;grid-template-columns:272px minmax(0,1fr);gap:18px;align-items:start}@media(max-width:1100px){.rs-studio{grid-template-columns:minmax(0,1fr)}}.rs-grow{flex:1}.rs-muted{color:var(--muted)}.rs-small{font-size:12px}.rs-pad{padding:12px 14px;margin:0}.rs-pad-x{padding:0 14px 12px;margin:0}.rs-num{text-align:right;font-variant-numeric:tabular-nums}.rs-row{display:flex;gap:8px;align-items:center}.rs-warn{margin:0;font-size:12.5px;color:var(--amber);background:var(--amber-soft);border-radius:9px;padding:8px 12px}.rs-err-inline{color:var(--red);font-size:12.5px;margin:6px 0}.rs-select,.rs-input{font:inherit;font-size:13px;color:var(--ink);background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:7px 9px;min-width:0}.rs-select:focus,.rs-input:focus{outline:none;border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-soft)}.rs-select-sm{padding:4px 7px;font-size:12.5px}.rs-input-num{width:80px}textarea.rs-input{resize:vertical;width:100%}.rs-skel{background:linear-gradient(90deg,var(--surface-2) 0%,#eef2f9 50%,var(--surface-2) 100%);background-size:200% 100%;border-radius:6px;animation:rs-shimmer 1.3s ease-in-out infinite}.rs-skel-line{height:12px;margin:10px 0}.rs-skel-line:nth-child(3n){width:70%}.rs-skel-row{height:30px;margin:6px 0}.rs-skel-input{height:34px}@keyframes rs-shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}.rs-spinner{width:22px;height:22px;border-radius:50%;border:2.5px solid var(--brand-line);border-top-color:var(--brand);animation:rs-spin .8s linear infinite}.rs-spinner-sm{width:11px;height:11px;border-width:2px}@keyframes rs-spin{to{transform:rotate(360deg)}}.rs-rail{position:sticky;top:12px;max-height:calc(100vh - 24px);overflow-y:auto;background:var(--surface);border:1px solid var(--border);border-radius:14px;box-shadow:var(--shadow)}@media(max-width:1100px){.rs-rail{position:static;max-height:360px}}.rs-rail-inner{padding:16px 14px 18px;display:flex;flex-direction:column;gap:12px}.rs-rail-ds{display:flex;flex-direction:column;gap:6px}.rs-rail-ds .rs-select{width:100%;font-weight:600}.rs-rail-desc{margin:-4px 0 0;font-size:12px;color:var(--ink-2);line-height:1.45}.rs-rail-err{margin:0;font-size:12.5px;color:var(--red)}.rs-caption{display:flex;align-items:center;gap:6px;margin:0;font-size:11px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--ink-2)}.rs-caption span{margin-left:auto;font-weight:600;color:var(--muted);letter-spacing:0}.rs-subcaption{font-size:11.5px;font-weight:600;color:var(--muted);margin:10px 0 4px 4px}.rs-search{display:flex;align-items:center;gap:7px;border:1px solid var(--border);border-radius:9px;padding:0 9px;color:var(--muted);background:var(--surface-2)}.rs-search:focus-within{border-color:var(--brand);background:var(--surface);box-shadow:0 0 0 3px var(--brand-soft)}.rs-search input{flex:1;border:none;outline:none;background:transparent;font:inherit;font-size:13px;padding:7px 0;color:var(--ink);min-width:0}.rs-search-x{border:none;background:none;color:var(--muted);cursor:pointer;font-size:15px}.rs-rail-group{display:flex;flex-direction:column}.rs-rail-group+.rs-rail-group{border-top:1px solid var(--border);padding-top:12px}.rs-rail-none{font-size:12.5px;color:var(--muted);margin:6px 4px}.rs-rail-empty{background:var(--surface-2);border-radius:10px;padding:12px;font-size:12.5px}.rs-rail-empty p{margin:4px 0 0;color:var(--ink-2)}.rs-fields{list-style:none;margin:4px 0 0;padding:0;display:flex;flex-direction:column;gap:1px}.rs-fields-tree{margin-left:8px;border-left:1px dashed var(--border);padding-left:4px}.rs-field{width:100%;display:flex;align-items:center;gap:8px;padding:6px 8px;border-radius:8px;border:1px solid transparent;background:none;font:inherit;font-size:13px;color:var(--ink);cursor:grab;text-align:left;transition:background .12s,border-color .12s}.rs-field:hover{background:var(--surface-2);border-color:var(--border)}.rs-field:active{cursor:grabbing}.rs-field:focus-visible{outline:2px solid var(--brand);outline-offset:1px}.rs-field-on{background:var(--brand-soft)}.rs-field-on:hover{background:var(--brand-soft);border-color:var(--brand-line)}.rs-field-label{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rs-field-where{font-size:10px;font-weight:700;color:var(--brand);background:var(--surface);border:1px solid var(--brand-line);border-radius:5px;padding:0 5px;line-height:16px}.rs-field-fmt{font-size:11px;color:var(--muted);font-variant-numeric:tabular-nums}.rs-glyph{flex-shrink:0;width:22px;height:20px;border-radius:6px;display:inline-grid;place-items:center;font-size:10px;font-weight:700;color:var(--ink-2);background:var(--surface-2);border:1px solid var(--border)}.rs-glyph-t{color:var(--brand);background:var(--brand-soft);border-color:var(--brand-line)}.rs-glyph-m{color:#fff;background:var(--brand);border-color:var(--brand);font-size:12px}.rs-canvas{min-width:0;display:flex;flex-direction:column;gap:14px}.rs-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;flex-wrap:wrap;padding:2px 2px 0}.rs-title{min-width:0}.rs-eyebrow{font-size:11.5px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);display:flex;align-items:center;gap:6px}.rs-eyebrow span{color:var(--brand)}.rs-title h2{margin:4px 0 0;font-size:21px;font-weight:700;color:var(--ink);letter-spacing:-.01em;display:flex;align-items:center;gap:8px}.rs-subtitle{margin:4px 0 0;font-size:13px;color:var(--ink-2)}.rs-dirty-dot{width:8px;height:8px;border-radius:50%;background:var(--amber);display:inline-block}.rs-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.rs-with-icon{display:inline-flex;align-items:center;gap:6px}.rs-tag{display:inline-flex;align-items:center;font-size:11px;font-weight:600;padding:2px 8px;border-radius:999px;background:var(--surface-2);color:var(--ink-2);border:1px solid var(--border);text-transform:none;letter-spacing:0}.rs-tag-brand{background:var(--brand-soft);color:var(--brand);border-color:var(--brand-line)}.rs-card{background:var(--surface);border:1px solid var(--border);border-radius:14px;box-shadow:var(--shadow);padding:16px 18px;min-width:0}.rs-card-head{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap;margin-bottom:10px}.rs-card-head h3{margin:0;font-size:14px;font-weight:700;color:var(--ink)}.rs-pop-anchor{position:relative;display:inline-flex}.rs-pop{position:absolute;top:calc(100% + 6px);z-index:40;min-width:220px;max-width:min(92vw,420px);background:var(--surface);border:1px solid var(--border);border-radius:12px;box-shadow:var(--shadow-hover);animation:rs-pop-in .12s ease-out}.rs-pop-left{left:0}.rs-pop-right{right:0}@keyframes rs-pop-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}.rs-pop-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 14px 8px;font-size:13.5px}.rs-pop-body{padding:6px 14px 10px;display:flex;flex-direction:column;gap:8px}.rs-pop-body .rs-input{width:100%}.rs-pop-caption{font-size:11px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--muted);padding:12px 14px 4px}.rs-pop-caption small{text-transform:none;letter-spacing:0;font-weight:500}.rs-pop-foot{display:flex;align-items:center;gap:8px;padding:10px 14px 12px;border-top:1px solid var(--border)}.rs-menu-item{display:flex;flex-direction:column;align-items:flex-start;gap:1px;width:100%;padding:9px 14px;border:none;background:none;font:inherit;cursor:pointer;color:var(--ink);text-align:left}.rs-menu-item:first-child{border-radius:12px 12px 0 0}.rs-menu-item:last-child{border-radius:0 0 12px 12px}.rs-menu-item:hover{background:var(--surface-2)}.rs-menu-item b{font-size:13px}.rs-menu-item span{font-size:12px;color:var(--muted)}.rs-shelves{display:grid;grid-template-columns:1fr 1fr;gap:10px}@media(max-width:760px){.rs-shelves{grid-template-columns:minmax(0,1fr)}}.rs-shelf{display:flex;gap:10px;align-items:flex-start;min-height:50px;padding:8px 10px;background:var(--surface);border:1px dashed var(--border);border-radius:12px;transition:border-color .12s,background .12s,box-shadow .12s}.rs-shelf-over{border-color:var(--brand);border-style:solid;background:var(--brand-soft);box-shadow:0 0 0 3px var(--brand-soft)}.rs-shelf-head{flex-shrink:0;width:92px;display:flex;align-items:center;gap:6px;padding-top:6px;font-size:11px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--ink-2)}.rs-shelf-head svg{color:var(--brand)}.rs-shelf-count{font-size:10.5px;color:var(--brand);background:var(--brand-soft);border-radius:999px;padding:0 6px;letter-spacing:0}.rs-shelf-body{flex:1;min-width:0;display:flex;flex-wrap:wrap;gap:6px;align-items:center;min-height:32px}.rs-shelf-hint{font-size:12.5px;color:var(--muted)}.rs-drop-caret{width:3px;height:26px;border-radius:2px;background:var(--brand)}.rs-chip{display:inline-flex;align-items:center;gap:5px;height:30px;padding:0 4px 0 6px;max-width:100%;border-radius:8px;border:1px solid var(--border);background:var(--surface);font-size:12.5px;color:var(--ink);box-shadow:0 1px 1px #0b16400a;cursor:grab;position:relative}.rs-chip:active{cursor:grabbing}.rs-chip-grip{color:var(--muted);font-size:9px;letter-spacing:-2px;opacity:.7}.rs-chip-label{font-weight:600;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rs-chip-x{border:none;background:none;color:var(--muted);font-size:15px;line-height:1;cursor:pointer;padding:2px 4px;border-radius:5px}.rs-chip-x:hover{color:var(--red);background:var(--red-soft)}.rs-chip .field-rename-btn{opacity:0}.rs-chip:hover .field-rename-btn,.rs-chip .field-rename-btn:focus-visible{opacity:1}.rs-chip-before:before{content:"";position:absolute;left:-5px;top:3px;bottom:3px;width:3px;border-radius:2px;background:var(--brand)}.rs-chip-dim{border-color:var(--brand-line)}.rs-chip-measure{background:var(--brand);border-color:var(--brand);color:#fff}.rs-chip-measure .rs-chip-grip,.rs-chip-measure .rs-chip-x{color:#fffc}.rs-chip-measure .rs-chip-x:hover{color:#fff;background:#ffffff2e}.rs-chip-badge{font-size:10.5px;font-weight:700;background:#fff3;border-radius:5px;padding:1px 5px}.rs-chip-missing{border-color:var(--red);background:var(--red-soft);color:var(--red)}.rs-chip-grain{border:none;background:var(--brand-soft);color:var(--brand);font:inherit;font-size:11.5px;font-weight:600;border-radius:6px;padding:2px 4px;cursor:pointer}.rs-chip-filter{cursor:default;background:var(--surface-2);padding-left:0}.rs-chip-open-btn{display:inline-flex;align-items:center;gap:6px;border:none;background:none;font:inherit;color:inherit;cursor:pointer;padding:0 2px 0 9px;height:100%;min-width:0}.rs-chip-open-btn svg{color:var(--brand);flex-shrink:0}.rs-chip-filter .rs-chip-label{font-weight:500;max-width:260px}.rs-chip-pending{border-style:dashed;border-color:var(--amber);background:var(--amber-soft)}.rs-chip-open{border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-soft)}.rs-valueinput .vt-input{width:100%}.rs-check{display:flex;flex-direction:column;gap:8px}.rs-check-chosen{display:flex;flex-wrap:wrap;gap:5px;max-height:76px;overflow-y:auto}.rs-mini-chip{display:inline-flex;align-items:center;gap:2px;background:var(--brand-soft);color:var(--brand);border-radius:999px;padding:2px 3px 2px 9px;font-size:12px;font-weight:600}.rs-mini-chip button{border:none;background:none;color:inherit;cursor:pointer;font-size:13px;line-height:1;padding:0 4px}.rs-check-list{max-height:220px;overflow-y:auto;border:1px solid var(--border);border-radius:9px;padding:4px}.rs-check-item{display:flex;align-items:center;gap:8px;padding:5px 7px;border-radius:6px;font-size:13px;cursor:pointer}.rs-check-item:hover{background:var(--surface-2)}.rs-check-item span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rs-check-item input{accent-color:var(--brand);margin:0}.rs-check-list .rs-muted{font-size:12.5px;margin:8px}.rs-check-add{margin:4px 7px;font-size:12.5px}.rs-check-foot{display:flex;align-items:center;gap:10px;font-size:12px;color:var(--muted)}.rs-check-foot .link-btn{font-size:12px}.rs-toolbar{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:8px 10px;background:var(--surface);border:1px solid var(--border);border-radius:12px}.rs-sep{width:1px;height:22px;background:var(--border);margin:0 4px}.rs-switch{display:inline-flex;align-items:center;gap:8px;border:none;background:none;font:inherit;font-size:13px;color:var(--ink-2);cursor:pointer;padding:5px 8px;border-radius:8px}.rs-switch:hover{background:var(--surface-2)}.rs-switch-track{width:28px;height:16px;border-radius:999px;background:#cfd6e4;position:relative;transition:background .15s}.rs-switch-knob{position:absolute;top:2px;left:2px;width:12px;height:12px;border-radius:50%;background:#fff;box-shadow:0 1px 2px #0b164040;transition:transform .15s}.rs-switch-on{color:var(--ink);font-weight:600}.rs-switch-on .rs-switch-track{background:var(--brand)}.rs-switch-on .rs-switch-knob{transform:translate(12px)}.rs-tool{display:inline-flex;align-items:center;gap:6px;font:inherit;font-size:13px;color:var(--ink);border:1px solid var(--border);background:var(--surface);border-radius:8px;padding:5px 10px;cursor:pointer}.rs-tool:hover:not(:disabled){border-color:var(--brand-line);background:var(--brand-soft)}.rs-tool:disabled{opacity:.5;cursor:default}.rs-tool-on{border-color:var(--brand-line);background:var(--brand-soft);color:var(--brand);font-weight:600}.rs-tool-count{font-size:10.5px;background:var(--brand);color:#fff;border-radius:999px;padding:0 6px}.rs-limit{display:inline-flex;align-items:center;gap:7px;font-size:13px;color:var(--ink-2);margin-left:4px}.rs-seg{display:inline-flex;border:1px solid var(--border);border-radius:8px;overflow:hidden}.rs-seg button{font:inherit;font-size:12.5px;border:none;background:var(--surface);padding:5px 10px;cursor:pointer;color:var(--ink-2)}.rs-seg button+button{border-left:1px solid var(--border)}.rs-seg button:hover{background:var(--surface-2);color:var(--ink)}.rs-showas-line{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:13px}.rs-showas-line span{font-weight:600;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rs-chart-types{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;padding:4px 14px 10px}.rs-chart-type{font:inherit;font-size:12.5px;padding:7px 6px;border-radius:8px;border:1px solid var(--border);background:var(--surface);cursor:pointer;color:var(--ink-2)}.rs-chart-type:hover{border-color:var(--brand-line);color:var(--ink)}.rs-chart-type-on{background:var(--brand);border-color:var(--brand);color:#fff;font-weight:600}.rs-chart-type-on:hover{color:#fff}.rs-results{display:flex;flex-direction:column;gap:14px;transition:opacity .15s}.rs-results-busy .rs-kpis,.rs-results-busy .rs-chart{opacity:.6}.rs-kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px}.rs-kpi{display:flex;flex-wrap:wrap;align-items:baseline;column-gap:10px;row-gap:2px;min-width:0;background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:11px 16px;box-shadow:var(--shadow)}.rs-kpi-label{font-size:12.5px;color:var(--muted);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rs-kpi-value{order:-1;font-size:20px;font-weight:700;line-height:1.2;color:var(--ink);font-variant-numeric:tabular-nums;letter-spacing:-.01em}.rs-kpi-value-sm{font-size:16px}.rs-kpi-note{flex-basis:100%;font-size:11.5px;color:var(--muted)}.rs-kpi-meta{background:var(--surface-2);box-shadow:none}.rs-running{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:var(--brand);margin-left:auto}.rs-chart{padding-bottom:10px}.rs-state{display:flex;flex-direction:column;align-items:center;text-align:center;gap:8px;padding:40px 20px}.rs-state b{font-size:15px;color:var(--ink)}.rs-state p{margin:0;max-width:540px;font-size:13px;color:var(--ink-2);line-height:1.5}.rs-state-hero{padding:56px 24px}.rs-hero-mark{width:54px;height:54px;border-radius:14px;display:grid;place-items:center;color:#fff;background:var(--brand-gradient);box-shadow:0 8px 20px #1f4fd640;margin-bottom:6px}.rs-quick{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin-top:8px}.rs-quick-btn{font:inherit;font-size:13px;font-weight:600;color:var(--brand);background:var(--brand-soft);border:1px solid var(--brand-line);border-radius:999px;padding:6px 14px;cursor:pointer}.rs-quick-btn:hover{background:var(--brand);color:#fff;border-color:var(--brand)}.rs-table-card{padding-bottom:12px}.rs-table-card .rs-warn{margin-bottom:10px}.rs-grid-wrap{overflow:auto;max-height:620px;border:1px solid var(--border);border-radius:10px}.rs-grid{border-collapse:separate;border-spacing:0;width:100%;font-size:13px;font-variant-numeric:tabular-nums}.rs-grid th,.rs-grid td{white-space:nowrap}.rs-grid thead th{position:sticky;z-index:2;background:var(--surface-2);color:var(--ink-2);font-weight:600;font-size:12px;text-align:right;padding:0 12px;border-bottom:1px solid var(--border);border-right:1px solid var(--border);box-sizing:border-box}.rs-grid thead th.rs-h-value[colspan]:not([colspan="1"]){text-align:center}.rs-grid thead th.rs-h-subtotal,.rs-grid thead th.rs-h-total{color:var(--ink);background:#eef2fb}.rs-grid thead th.rs-h-measure{color:var(--ink)}.rs-grid .rs-corner{left:0;z-index:4;text-align:left;vertical-align:bottom;padding:8px 12px;min-width:200px;background:var(--surface-2)}.rs-corner-measure{font-size:11px;color:var(--muted);font-weight:600;margin-top:2px}.rs-sortable{font:inherit;color:inherit;background:none;border:none;cursor:pointer;display:inline-flex;align-items:center;gap:4px;padding:0}.rs-sortable:hover{color:var(--brand)}.rs-arrow{color:var(--brand);font-size:12px;min-width:8px}.rs-rowh{position:sticky;left:0;z-index:1;background:var(--surface);text-align:left;font-weight:500;color:var(--ink);padding:0 14px 0 12px;height:34px;border-bottom:1px solid #eef1f6;border-right:1px solid var(--border);max-width:360px}.rs-rowh-in{display:flex;align-items:center;gap:4px;min-width:0}.rs-rowh-label{overflow:hidden;text-overflow:ellipsis}.rs-caret{width:20px;height:20px;flex-shrink:0;border:none;background:none;border-radius:5px;color:var(--ink-2);cursor:pointer;display:inline-grid;place-items:center;padding:0}.rs-caret:hover{background:var(--brand-soft);color:var(--brand)}.rs-caret svg{transition:transform .12s}.rs-caret-space{width:20px;flex-shrink:0}.rs-c{text-align:right;padding:0 12px;height:34px;border-bottom:1px solid #eef1f6;border-right:1px solid #f1f3f8;cursor:pointer;color:var(--ink)}.rs-c:hover{background:var(--brand-soft)!important;box-shadow:inset 0 0 0 1px var(--brand-line)}.rs-c-subtotal,.rs-c-total{background:#fafbfe;font-weight:600}.rs-neg{color:var(--red)}.rs-bar{background-image:linear-gradient(to left,var(--brand-line) var(--rs-bar),transparent var(--rs-bar));background-size:100% 3px;background-position:bottom 4px right 0;background-repeat:no-repeat}.rs-neg.rs-bar{background-image:linear-gradient(to left,#f6c9c9 var(--rs-bar),transparent var(--rs-bar))}.rs-r:hover .rs-rowh,.rs-r:hover .rs-c{background-color:#f7f9fd}.rs-r-group .rs-rowh,.rs-r-group .rs-c{background:#f6f8fd;font-weight:700}.rs-r-group.rs-l1 .rs-rowh,.rs-r-group.rs-l1 .rs-c{background:#fafbfe;font-weight:600}.rs-r-total .rs-rowh,.rs-r-total .rs-c{font-weight:700;background:var(--surface);border-top:2px solid var(--brand);position:sticky;bottom:0;z-index:1}.rs-r-total .rs-rowh{z-index:3;color:var(--brand-deep)}.rs-grid-empty{text-align:center;padding:28px;color:var(--muted)}.rs-grid-loading{padding:4px 0}.rs-views-btn{display:inline-flex;align-items:center;gap:7px;font:inherit;font-size:13px;font-weight:600;color:var(--ink);border:1px solid var(--border);background:var(--surface);border-radius:9px;padding:6px 10px;cursor:pointer;max-width:280px}.rs-views-btn:hover,.rs-views-btn-on{border-color:var(--brand-line);background:var(--brand-soft)}.rs-views-btn svg:first-child{color:var(--brand);flex-shrink:0}.rs-views-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rs-dirty{font-size:10.5px;font-weight:700;color:var(--amber);background:var(--amber-soft);border-radius:999px;padding:1px 7px}.rs-views{list-style:none;margin:0;padding:2px 6px 8px;display:flex;flex-direction:column;gap:1px;max-height:320px;overflow-y:auto}.rs-view{display:flex;align-items:center;gap:6px;padding:3px 4px;border-radius:8px}.rs-view:hover{background:var(--surface-2)}.rs-view-on{background:var(--brand-soft)}.rs-view-open{flex:1;min-width:0;display:flex;flex-direction:column;align-items:flex-start;border:none;background:none;font:inherit;cursor:pointer;padding:4px 2px;text-align:left;color:var(--ink)}.rs-view-name{font-size:13px;font-weight:600;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rs-view-desc{font-size:11.5px;color:var(--muted);max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rs-view-del{border:none;background:none;color:var(--muted);cursor:pointer;padding:4px;border-radius:6px;opacity:0}.rs-view:hover .rs-view-del{opacity:1}.rs-view-del:hover{color:var(--red);background:var(--red-soft)}.rs-star{border:none;background:none;color:var(--muted);cursor:pointer;padding:4px;border-radius:6px;display:inline-grid;place-items:center}.rs-star:hover,.rs-star-on{color:var(--amber)}.rs-views-empty{padding:16px;font-size:13px}.rs-views-empty p{margin:4px 0 0;color:var(--ink-2);font-size:12.5px;line-height:1.45}.rs-form{display:flex;flex-direction:column;gap:14px;padding-top:6px}.rs-form-field{display:flex;flex-direction:column;gap:6px}.rs-form-field>span{font-size:12.5px;font-weight:600;color:var(--ink-2)}.rs-form-field em{font-style:normal;font-weight:400;color:var(--muted)}.rs-form-toggles{display:flex;flex-direction:column;gap:10px;background:var(--surface-2);border-radius:10px;padding:12px 14px}.rs-form-toggles .vt-toggle{align-items:flex-start}.rs-form-toggles .vt-toggle input{margin-top:3px;accent-color:var(--brand)}.rs-modal-foot{display:flex;justify-content:flex-end;gap:8px}.rs-drawer-back{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;background:#0b164047;display:flex;justify-content:flex-end;animation:rs-fade .15s ease-out}.rs-drawer{width:min(760px,94vw);height:100%;background:var(--surface);box-shadow:-18px 0 48px #0b16402e;display:flex;flex-direction:column;animation:rs-slide .2s ease-out}@keyframes rs-fade{0%{opacity:0}to{opacity:1}}@keyframes rs-slide{0%{transform:translate(24px);opacity:.6}to{transform:none;opacity:1}}.rs-drawer-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;padding:20px 22px 12px;border-bottom:1px solid var(--border)}.rs-drawer-head h3{margin:4px 0 0;font-size:17px;color:var(--ink);word-break:break-word}.rs-drawer-value{margin-top:4px;font-size:13px;color:var(--ink-2)}.rs-drawer-value b{color:var(--brand);font-variant-numeric:tabular-nums}.rs-drawer-filters{display:flex;flex-wrap:wrap;gap:6px;padding:10px 22px;border-bottom:1px solid var(--border);background:var(--surface-2)}.rs-drawer-body{flex:1;overflow:auto;padding:0 0 8px}.rs-drawer-loading{padding:12px 22px}.rs-drawer-body .vt-error{margin:14px 22px}.rs-drawer-foot{padding:10px 22px;border-top:1px solid var(--border);font-size:12.5px;color:var(--muted)}.rs-records{border-collapse:separate;border-spacing:0;font-size:12.5px;min-width:100%}.rs-records th{position:sticky;top:0;background:var(--surface-2);text-align:left;font-weight:600;color:var(--ink-2);padding:8px 12px;border-bottom:1px solid var(--border);white-space:nowrap}.rs-records td{padding:7px 12px;border-bottom:1px solid #eef1f6;white-space:nowrap;max-width:280px;overflow:hidden;text-overflow:ellipsis}.rs-records tr:hover td{background:#f7f9fd}.rs-toast{position:fixed;left:50%;bottom:26px;transform:translate(-50%);z-index:70;background:var(--brand-deep);color:#fff;font-size:13px;font-weight:500;padding:10px 18px;border-radius:10px;box-shadow:0 12px 32px #0b16404d;animation:rs-toast-in .2s ease-out;max-width:min(560px,92vw)}.rs-toast-bad{background:var(--red)}@keyframes rs-toast-in{0%{opacity:0;transform:translate(-50%,8px)}to{opacity:1;transform:translate(-50%)}}.vrh-switch{display:inline-flex;gap:4px;padding:4px;margin:0 0 16px;max-width:100%;background:var(--surface-2);border:1px solid var(--border);border-radius:10px}.vrh-mode{display:inline-flex;align-items:center;gap:10px;min-width:0;padding:7px 14px 7px 12px;border:0;border-radius:7px;background:none;cursor:pointer;text-align:left;color:var(--ink-2);transition:background .12s,color .12s,box-shadow .12s}.vrh-mode svg{flex:none;color:var(--muted)}.vrh-mode-text{display:flex;flex-direction:column;min-width:0;line-height:1.25}.vrh-mode-text b{font-size:13px;font-weight:600}.vrh-mode-text small{font-size:11.5px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.vrh-mode:hover{color:var(--ink)}.vrh-mode:focus-visible{outline:none;box-shadow:var(--focus-ring)}.vrh-mode.is-on{background:var(--surface);color:var(--brand-strong);box-shadow:var(--shadow)}.vrh-mode.is-on svg{color:var(--brand)}@media(max-width:900px){.vrh-mode-text small{display:none}}.sec-layout{display:grid;grid-template-columns:176px minmax(0,1fr);gap:16px;align-items:start}.sec-nav{position:sticky;top:8px;display:flex;flex-direction:column;gap:0;padding:4px 0}.sec-nav-group{padding:10px 0 8px;border-top:1px solid var(--border)}.sec-nav-top{border-top:0;padding:0 0 8px}.sec-nav-head{display:flex;align-items:center;gap:6px;width:100%;text-align:left;border:0;background:none;cursor:pointer;font:inherit;font-size:11.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--ink);padding:2px 10px 6px}.sec-nav-head:before{content:"";width:6px;height:6px;border-radius:2px;background:var(--ink-3, #9aa3b5);flex:none}.sec-nav-head:hover{color:var(--brand-strong)}.sec-nav-head:hover:before,.has-on>.sec-nav-head:before{background:var(--brand-strong)}.has-on>.sec-nav-head{color:var(--brand-strong)}.sec-nav-head:focus-visible{outline:2px solid var(--brand-strong);outline-offset:2px;border-radius:4px}.sec-nav-items{margin-left:13px;padding-left:8px;border-left:2px solid var(--border);display:flex;flex-direction:column;gap:1px}.has-on>.sec-nav-items{border-left-color:var(--brand-soft)}.sec-nav-item{display:block;width:100%;text-align:left;padding:5px 10px;border:0;border-radius:8px;background:none;font:inherit;font-size:13.5px;font-weight:400;color:var(--ink-2);cursor:pointer}.sec-nav-top .sec-nav-item{font-size:14px;font-weight:600;color:var(--ink)}.sec-nav-item:hover{background:var(--gray-soft);color:var(--ink)}.sec-nav-item.on{background:var(--brand-soft);color:var(--brand-strong);font-weight:600}.sec-body{min-width:0}@media(max-width:900px){.sec-layout{grid-template-columns:minmax(0,1fr)}.sec-nav{position:static;flex-direction:row;flex-wrap:wrap;gap:6px 14px}.sec-nav-group{display:flex;flex-wrap:wrap;align-items:center;gap:2px;border-top:0;padding:0}.sec-nav-items{display:flex;flex-direction:row;flex-wrap:wrap;margin:0;padding:0;border:0}.sec-nav-head{width:auto;padding:0 4px 0 0}.sec-nav-item{width:auto}}.sk-page-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:12px}.sk-page-head h2{margin:0;font-size:16px;color:var(--ink)}.sk-lede{margin:4px 0 0;max-width:820px}.sk-page-action{flex:none}.sk-toolbar{display:flex;align-items:center;gap:10px;margin:4px 0 10px;flex-wrap:wrap}.sk-search-wrap{position:relative;display:flex;flex:1 1 260px;max-width:420px}.sk-search-menu{min-width:100%}.sk-search-wrap .sk-search{padding-right:32px}.sk-search-caret{position:absolute;right:4px;top:50%;transform:translateY(-50%);width:26px;height:26px;display:flex;align-items:center;justify-content:center;border:0;border-radius:6px;background:none;color:var(--ink-soft, #4a5470);cursor:pointer}.sk-search-caret:hover{background:var(--gray-soft);color:var(--ink)}.sk-search{flex:1 1 auto;width:100%;box-sizing:border-box;padding:7px 10px;border:1px solid var(--border);border-radius:8px;font:inherit;background:var(--surface, #fff);color:var(--ink)}.sk-toolbar select{padding:7px 10px;border:1px solid var(--border);border-radius:8px;font:inherit;background:var(--surface, #fff);color:var(--ink)}.sk-count{margin:0 0 0 auto;line-height:1;align-self:center}.sk-row-actions{text-align:right}.sk-row-actions .link-btn+.link-btn,.sk-row-actions .link-btn+.sk-more{margin-left:10px}.sk-chip{display:inline-block;font-size:11px;font-weight:600;padding:2px 8px;border-radius:20px;white-space:nowrap}.sk-chip+.sk-chip{margin-left:4px}.sk-chip-good{color:var(--green);background:var(--green-soft)}.sk-chip-warn{color:var(--amber);background:var(--amber-soft)}.sk-chip-bad{color:var(--red);background:var(--red-soft)}.sk-chip-quiet{color:var(--ink-2);background:var(--gray-soft)}.sk-more{position:relative;display:inline-block}.sk-more-menu{position:absolute;right:0;top:calc(100% + 4px);z-index:30;min-width:200px;display:flex;flex-direction:column;padding:4px;background:var(--surface, #fff);border:1px solid var(--border);border-radius:8px;box-shadow:0 8px 24px #0b164024}.sk-more-item{text-align:left;padding:7px 10px;border:0;border-radius:6px;background:none;font:inherit;color:var(--ink);cursor:pointer;white-space:nowrap}.sk-more-item:hover:not(:disabled){background:var(--gray-soft)}.sk-more-item.danger{color:var(--red)}.sk-more-item:disabled{color:var(--ink-3, #9aa3b5);cursor:default}.sk-drawer-back{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;background:#0b164047;display:flex;justify-content:flex-end}.sk-drawer{width:min(520px,100vw);height:100%;display:flex;flex-direction:column;background:var(--surface, #fff);box-shadow:-8px 0 32px #0b16402e}.sk-drawer-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;padding:20px 22px 12px;border-bottom:1px solid var(--border)}.sk-drawer-head h3{margin:4px 0 0;font-size:17px;color:var(--ink)}.sk-eyebrow{font-size:11px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--ink-2)}.sk-drawer-body{flex:1;overflow:auto;padding:16px 22px}.sk-drawer-foot{display:flex;justify-content:flex-end;gap:8px;padding:12px 22px;border-top:1px solid var(--border)}.sk-actions{display:inline-flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.sk-group-row td{background:var(--surface-2);font-weight:600;color:var(--ink);padding-top:8px;padding-bottom:8px}.sk-drawer-wide{width:min(780px,100vw)}.sk-section{margin-top:18px;padding-top:14px;border-top:1px solid var(--border)}.sk-section h4,.sk-plain h4{margin:16px 0 6px;font-size:13px;color:var(--ink)}.sk-plain{border:0;padding:0;margin:0;min-width:0}.sk-h3{margin:8px 0 6px;font-size:14px;color:var(--ink)}.sk-inline{display:inline-flex;align-items:center;gap:8px;flex-wrap:wrap}.sk-inline input[type=date],.sk-inline select{padding:6px 8px;border:1px solid var(--border);border-radius:8px;font:inherit;background:var(--surface, #fff);color:var(--ink)}.sk-add-row{margin:0 0 10px}.sk-tick{width:28px;text-align:center}.sk-typeahead{position:relative;display:inline-block;width:100%;max-width:460px}.sk-typeahead input{width:100%;padding:7px 26px 7px 10px;border:1px solid var(--border);border-radius:8px;font:inherit;background:var(--surface, #fff);color:var(--ink);box-sizing:border-box}.sk-typeahead-clear{position:absolute;right:8px;top:50%;transform:translateY(-50%)}.sk-typeahead-menu{position:absolute;left:0;right:0;top:calc(100% + 4px);z-index:70;max-height:280px;overflow:auto;display:flex;flex-direction:column;padding:4px;background:var(--surface, #fff);border:1px solid var(--border);border-radius:8px;box-shadow:0 8px 24px #0b164024}.sk-typeahead-item{display:flex;flex-direction:column;align-items:flex-start;gap:1px;text-align:left;padding:6px 8px;border:0;border-radius:6px;background:none;font:inherit;color:var(--ink);cursor:pointer}.sk-typeahead-item.on,.sk-typeahead-item:hover{background:var(--gray-soft)}.sk-checklist{display:flex;flex-wrap:wrap;gap:4px 14px}.sk-facts{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:12px 18px;margin:4px 0 8px}.sk-answer{display:flex;flex-direction:column;gap:4px}.sk-compare{display:grid;grid-template-columns:1fr 1fr;gap:12px 18px;padding:10px 12px;border:1px solid var(--border);border-radius:8px}.sk-compare-change{grid-column:1 / -1}.sk-explain-fields{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:0 16px}.sk-problems{margin:10px 0 0;padding-left:18px}.sk-tabs{display:flex;gap:4px;margin:0 0 12px;border-bottom:1px solid var(--border)}.sk-tabs button{padding:6px 12px;border:0;border-bottom:2px solid transparent;background:none;font:inherit;color:var(--ink-2);cursor:pointer}.sk-tabs button.on{color:var(--brand-strong);border-bottom-color:var(--brand-strong);font-weight:600}.sk-grid td{vertical-align:top}.sk-grid-thing{width:190px;color:var(--ink-2)}.sk-compare-bar{margin:0 0 10px}.sk-legend{margin:0 0 8px}.sk-perm{display:inline-block;margin:2px 4px 2px 0;padding:2px 8px;border-radius:20px;font-size:12px;border:1px solid transparent;white-space:nowrap}.sk-perm-on,.sk-perm-both{color:var(--green);background:var(--green-soft)}.sk-perm-off{color:var(--ink-3, #9aa3b5);background:none;border-color:var(--border)}.sk-perm-a{color:var(--brand-strong);background:var(--brand-soft)}.sk-perm-b{color:var(--amber);background:var(--amber-soft)}.sk-perm-toggle{font:inherit;font-size:12px;cursor:pointer}.sk-perm-toggle:disabled{cursor:not-allowed;text-decoration:line-through}.sk-figures{display:flex;flex-wrap:wrap;gap:8px;margin:4px 0 10px}.sk-figure{display:flex;flex-direction:column;align-items:flex-start;min-width:104px;padding:8px 12px;border:1px solid var(--border);border-radius:8px;background:var(--surface, #fff);font:inherit;color:var(--ink);cursor:pointer;text-align:left}.sk-figure b{font-size:18px}.sk-figure span{font-size:12px;color:var(--ink-2)}.sk-figure.on{border-color:var(--brand-strong);box-shadow:0 0 0 1px var(--brand-strong) inset}.sk-figure.warn b{color:var(--amber)}.sk-bar{height:6px;border-radius:6px;background:var(--gray-soft);overflow:hidden;margin:0 0 10px}.sk-bar span{display:block;height:100%;background:var(--green)}.sk-tagline{display:flex;flex-wrap:wrap;align-items:center;gap:6px}.sk-tag{padding:2px 8px;border:1px solid var(--border);border-radius:20px;background:none;font:inherit;font-size:12px;color:var(--ink);cursor:pointer}.sk-tag.on{background:var(--brand-soft);color:var(--brand-strong);border-color:var(--brand-strong)}.sk-selbar{margin:0 0 8px;padding:6px 10px;border-radius:8px;background:var(--brand-soft)}.sk-overview{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px}.sk-card{display:flex;flex-direction:column;align-items:flex-start;gap:4px;padding:14px 16px;border:1px solid var(--border);border-left-width:4px;border-radius:10px;background:var(--surface, #fff);font:inherit;color:var(--ink);text-align:left;cursor:pointer}.sk-card:hover{box-shadow:0 4px 14px #0b164014}.sk-card b{font-size:26px;line-height:1.1}.sk-card-good{border-left-color:var(--green)}.sk-card-warn{border-left-color:var(--amber)}.sk-card-bad{border-left-color:var(--red)}.sk-card-quiet{border-left-color:var(--border)}@media(max-width:700px){.sk-compare{grid-template-columns:1fr}.sk-grid-thing{width:auto}}.sk-grid td{padding-top:6px;padding-bottom:6px}.sk-drawer table input,.sk-drawer table select{width:100%;box-sizing:border-box;padding:5px 8px;border:1px solid var(--border);border-radius:6px;font:inherit;background:var(--surface, #fff);color:var(--ink)}.sk-ss-menu{position:fixed;z-index:90;display:flex;flex-direction:column;max-width:min(440px,calc(100vw - 16px));padding:4px;background:var(--surface, #fff);border:1px solid var(--border);border-radius:8px;box-shadow:0 8px 24px #0b164024;box-sizing:border-box;outline:none}.sk-ss-search{flex:0 0 auto;margin:2px 2px 6px;padding:7px 10px;border:1px solid var(--border);border-radius:6px;font:inherit;font-size:13px;background:var(--surface, #fff);color:var(--ink);outline:none}.sk-ss-search:focus{border-color:var(--brand);box-shadow:var(--focus-ring)}.sk-ss-list{flex:1 1 auto;overflow:auto;display:flex;flex-direction:column}.sk-ss-item{flex:0 0 auto;text-align:left;padding:6px 8px;border:0;border-radius:6px;background:none;font:inherit;font-size:13.5px;color:var(--ink);cursor:pointer;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sk-ss-item.on{background:var(--gray-soft)}.sk-ss-item.chosen{font-weight:600;color:var(--brand)}.sk-ss-item:disabled{color:var(--muted, #8a93a6);cursor:default}.sk-ss-group{padding:8px 8px 2px;font-size:11px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--muted, #8a93a6)}.sk-ss-empty{padding:8px;font-size:13px;color:var(--muted, #8a93a6)}.gallery-switch{position:relative;display:inline-flex;align-items:center;gap:8px;margin-right:12px}.gallery-switch-label{font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-2)}.gallery-switch-button{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border:1px solid var(--border);border-radius:8px;background:var(--surface, #fff);font:inherit;font-size:13.5px;color:var(--ink);cursor:pointer;max-width:260px}.gallery-switch-button:hover{border-color:var(--brand-strong)}.gallery-switch-name{font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.gallery-switch-menu{position:absolute;left:0;top:calc(100% + 4px);z-index:40;min-width:280px;max-height:360px;overflow:auto;display:flex;flex-direction:column;padding:4px;background:var(--surface, #fff);border:1px solid var(--border);border-radius:8px;box-shadow:0 8px 24px #0b164024}.gallery-switch-item{display:flex;flex-direction:column;align-items:flex-start;gap:1px;text-align:left;padding:7px 10px;border:0;border-radius:6px;background:none;font:inherit;color:var(--ink);cursor:pointer}.gallery-switch-item:hover{background:var(--gray-soft)}.gallery-switch-item.on{background:var(--brand-soft);color:var(--brand-strong);font-weight:600}.gallery-switch-empty{padding:8px 10px}.gallery-switch-manage{margin-top:4px;padding:8px 10px;border:0;border-top:1px solid var(--border);background:none;font:inherit;font-size:13px;color:var(--brand-strong);text-align:left;cursor:pointer}.gallery-add{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:0 0 10px}.gallery-add .sk-typeahead{flex:1 1 240px}.gallery-add select,.gallery-add input[type=date]{padding:6px 8px;border:1px solid var(--border);border-radius:8px;font:inherit;background:var(--surface, #fff);color:var(--ink)}.va-head{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:14px}.va-head h1{margin:2px 0 4px}.va-layout{display:grid;grid-template-columns:230px minmax(0,1fr);gap:18px;align-items:start}.va-nav{position:sticky;top:8px;display:flex;flex-direction:column;gap:12px;padding:12px;background:var(--surface, #fff);border:1px solid var(--border);border-radius:12px}.va-section-title{font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--ink);padding:0 8px 4px}.va-item{display:flex;flex-direction:column;align-items:flex-start;gap:1px;width:100%;text-align:left;padding:7px 10px;border:0;border-radius:8px;background:none;font:inherit;font-size:13.5px;color:var(--ink);cursor:pointer}.va-item:hover{background:var(--gray-soft)}.va-item.on{background:var(--brand-soft);color:var(--brand-strong);font-weight:600}.va-body{min-width:0}.va-item-head h2{margin:0 0 4px;font-size:18px}@media(max-width:900px){.va-layout{grid-template-columns:minmax(0,1fr)}.va-nav{position:static}}.vab-section{margin:0 0 18px;padding:12px;border:1px solid var(--border);border-radius:10px}.vab-section-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:8px}.vab-title{flex:1;max-width:420px;padding:6px 10px;border:1px solid var(--border);border-radius:8px;font:inherit;font-weight:600;background:var(--surface, #fff);color:var(--ink)}.vab-section select,.vab-add select{margin-top:8px;padding:6px 8px;border:1px solid var(--border);border-radius:8px;font:inherit;background:var(--surface, #fff);color:var(--ink)}.vab-add{margin:0 0 10px;max-width:460px}.vab-sees{display:flex;flex-wrap:wrap;gap:4px 12px}.pm-page{display:flex;flex-direction:column;gap:10px}.pm-head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:10px 24px;padding:12px 16px;background:var(--surface);border:1px solid var(--border);border-left:3px solid var(--brand);border-radius:var(--radius-sm)}.pm-head-main{display:flex;flex-direction:column;gap:4px;min-width:0}.pm-head-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.pm-dim-select{min-width:220px;font-size:15px;font-weight:600}.pm-eyebrow{font-size:12px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.pm-head-props{display:flex;flex-wrap:wrap;gap:4px 20px;margin:0}.pm-head-props>div{display:flex;flex-direction:column}.pm-head-props dt{font-size:11.5px;color:var(--muted)}.pm-head-props dd{margin:0;font-weight:600;font-size:13.5px}.pm-toolbar{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:8px 10px;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-sm)}.pm-toolbar input[type=search]{min-width:240px;flex:0 1 300px}.pm-danger{color:var(--red)}.pm-danger:disabled{color:var(--muted)}.pm-message{color:var(--ink-2)}.pm-body{display:grid;grid-template-columns:minmax(0,1fr);gap:12px;align-items:start}.pm-body.with-panel{grid-template-columns:minmax(0,1fr) minmax(320px,400px)}.pm-main{min-width:0;display:flex;flex-direction:column;gap:6px}.pm-count{font-size:13px;color:var(--ink-2)}.pm-table-scroll{overflow:auto;max-height:calc(100vh - 300px);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface)}.pm-table{margin:0}.pm-table thead th{position:sticky;top:0;z-index:1;background:var(--gray-soft);white-space:nowrap}.conn-table.pm-table td{white-space:nowrap;vertical-align:middle;padding-top:4px;padding-bottom:4px}.conn-table.pm-table th{padding-top:8px;padding-bottom:8px}.conn-table.pm-table td:first-child,.conn-table.pm-table th:first-child{padding-left:10px}.conn-table.pm-table .row-actions .btn{min-height:0;height:26px;padding-top:0;padding-bottom:0}.pm-table td.plan-formula{max-width:260px;overflow:hidden;text-overflow:ellipsis}.pm-row{cursor:pointer}.pm-row:hover td{background:var(--surface-2)}.pm-row.is-current td{background:var(--brand-soft)}.pm-row.is-current td:first-child{box-shadow:inset 3px 0 0 var(--brand)}.pm-row.is-drop td{background:var(--brand-soft);box-shadow:inset 0 -2px 0 var(--brand)}.pm-row.is-dragging td{opacity:.45}.pm-row.is-hidden td:not(.row-actions):not(.pm-pick){color:var(--muted)}.pm-row.is-inactive .pm-code{text-decoration:line-through}.pm-pick{width:32px}.pm-indent{display:inline-flex;align-items:center;gap:4px}.pm-caret,.pm-caret-space{display:inline-flex;width:20px;height:20px;align-items:center;justify-content:center;flex:none}.pm-caret{border:0;background:none;cursor:pointer;color:var(--ink-2);border-radius:4px;font-size:12px}.pm-caret:hover{background:var(--gray-soft)}.pm-caret:focus-visible{box-shadow:var(--focus-ring);outline:none}.pm-code{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-weight:600;margin:0}.pm-kids-n{display:inline-block;min-width:18px;margin-left:4px;padding:0 5px;border-radius:999px;background:var(--gray-soft);font-size:11px;line-height:16px;text-align:center;vertical-align:middle}.pm-type{display:inline-block;min-width:40px;padding:1px 6px;border-radius:4px;font-size:12px;font-weight:600;text-align:center;background:var(--gray-soft);color:var(--ink-2)}.pm-type-INC{background:var(--green-soft);color:#166534}.pm-type-EXP{background:var(--red-soft);color:#9f1d1d}.pm-type-AST{background:var(--brand-soft);color:var(--brand-strong)}.pm-type-LEQ{background:var(--amber-soft);color:#92400e}.pm-drop-top{padding:8px 12px;border:1px dashed var(--brand-line);border-radius:var(--radius-sm);color:var(--ink-2);font-size:13px;text-align:center}.pm-drop-top.is-over{background:var(--brand-soft);border-color:var(--brand)}.pm-panel{position:sticky;top:10px;display:flex;flex-direction:column;max-height:calc(100vh - 120px);overflow:hidden;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);box-shadow:var(--shadow)}.pm-panel-head,.pm-unsaved,.pm-panel-foot,.pm-panel>.field-error{flex:none}.pm-panel-head{display:flex;justify-content:space-between;align-items:flex-start;gap:8px;padding:12px 14px 8px;border-bottom:1px solid var(--border)}.pm-panel-title{margin:2px 0 0;font-size:16px}.pm-panel-sub{display:block;font-size:13px;font-weight:400;color:var(--ink-2)}.pm-panel-quick{display:flex;gap:4px;flex-wrap:wrap;justify-content:flex-end}.pm-unsaved{margin:8px 14px 0;padding:4px 8px;font-size:12.5px;border-radius:6px;background:var(--amber-soft);color:#92400e}.pm-fields{padding:4px 14px 8px;min-width:0;flex:1 1 auto;min-height:0;overflow-y:auto}.pm-fieldset{border:0;margin:0;padding:0;min-width:0}.pm-fields .field-row{display:flex;flex-wrap:wrap;gap:0 12px}.pm-fields .field-row>.field{flex:1 1 140px;min-width:0}.pm-fields .field input,.pm-fields .field select,.pm-fields .field textarea{width:100%;max-width:100%}.pm-fields .field.has-error input{border-color:var(--red)}.pm-req{color:var(--red)}.pm-section{border-bottom:1px solid var(--border);padding:6px 0}.pm-section:last-child{border-bottom:0}.pm-section>summary{cursor:pointer;font-weight:600;font-size:12.5px;text-transform:uppercase;letter-spacing:.03em;color:var(--ink-2);padding:6px 0}.pm-section-body{padding:2px 0 6px}.pm-calc{padding:8px 0}.pm-facts{display:grid;grid-template-columns:max-content 1fr;gap:6px 12px;margin:4px 0;font-size:13px}.pm-facts dt{color:var(--ink-2)}.pm-facts dd{margin:0}.pm-facts .link-btn{margin:0;padding:0}.pm-kids{display:flex;flex-wrap:wrap;gap:4px 10px}.pm-panel-foot{display:flex;gap:8px;flex-wrap:wrap;padding:10px 14px;border-top:1px solid var(--border);background:var(--surface-2);border-radius:0 0 var(--radius-sm) var(--radius-sm)}.pm-panel-foot .pm-danger{margin-left:auto}.pm-panel>.field-error{margin:0 14px 8px}.pm-formula{display:flex;flex-direction:column;gap:6px}.pm-formula-box{position:relative}.pm-suggest{position:absolute;z-index:30;left:0;right:0;top:calc(100% + 2px);margin:0;padding:4px;list-style:none;max-height:240px;overflow-y:auto;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);box-shadow:var(--shadow-hover)}.pm-suggest li{display:flex;gap:8px;padding:5px 8px;border-radius:6px;cursor:pointer;font-size:13px}.pm-suggest li.is-active,.pm-suggest li:hover{background:var(--brand-soft)}.pm-suggest li span{color:var(--ink-2);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pm-formula-tools{display:flex;flex-wrap:wrap;gap:4px}.pm-formula-tools .btn{min-width:30px;padding-left:6px;padding-right:6px}.pm-formula-preview{padding:6px 8px;border:1px solid var(--border);border-radius:6px;background:var(--surface-2);font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:13px;line-height:1.6;overflow-wrap:anywhere}.pm-formula-preview .muted{font-family:system-ui,sans-serif}.pm-formula-eq{color:var(--ink-2)}.pm-tok-ref{color:var(--brand-strong);background:var(--brand-soft);border-radius:4px;padding:0 2px}.pm-tok-unknown{color:var(--red);background:var(--red-soft);text-decoration:wavy underline}.pm-tok-num{color:#0f766e}.pm-tok-func{color:#7c3aed;font-weight:600}.pm-tok-op{color:var(--ink);font-weight:600}.pm-tok-bad{color:var(--red);text-decoration:wavy underline}.pm-problems{margin:4px 0;padding-left:18px;color:var(--red);font-size:13px}.pm-problems li{margin-bottom:3px}.pm-ok{color:var(--green)}.pm-bulk{display:grid;grid-template-columns:minmax(0,1fr) minmax(220px,300px);gap:16px;align-items:start}.pm-bulk-main{min-width:0}.pm-bulk-main .field-row{display:flex;flex-wrap:wrap;align-items:flex-end;gap:0 12px}.pm-bulk-main .field-row>.field.grow{flex:1 1 260px;min-width:0}.pm-bulk-text{width:100%;min-height:260px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:13px;white-space:pre;overflow-wrap:normal;overflow-x:auto}.pm-bulk-help{padding:10px 12px;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-sm);font-size:12.5px}.pm-bulk-help h4{margin:0 0 6px;font-size:13px}.pm-bulk-help ol{margin:0 0 8px;padding-left:18px}.pm-bulk-help li{margin-bottom:4px}.pm-preview{margin-top:12px}.pm-preview .pm-table-scroll{max-height:360px}.pm-preview-table td{vertical-align:top}@media(max-width:1100px){.pm-body.with-panel{grid-template-columns:minmax(0,1fr)}.pm-panel{position:static;max-height:none}.pm-bulk{grid-template-columns:minmax(0,1fr)}}@media(max-width:640px){.pm-toolbar input[type=search]{min-width:0;flex:1 1 100%}.pm-head-props{gap:4px 14px}}.pm-menu{position:fixed;z-index:60;min-width:200px;padding:4px;background:var(--surface, #fff);border:1px solid var(--border);border-radius:8px;box-shadow:0 6px 24px #00000024;display:flex;flex-direction:column}.pm-menu-head{padding:4px 10px 6px;font-size:12px;color:var(--ink-2);border-bottom:1px solid var(--border);margin-bottom:4px}.pm-menu-item{text-align:left;background:none;border:0;padding:6px 10px;border-radius:6px;cursor:pointer;color:inherit;font:inherit}.pm-menu-item:hover:not([disabled]),.pm-menu-item:focus-visible{background:var(--hover, rgba(0, 0, 0, .06));outline:none}.pm-menu-item[disabled]{opacity:.5;cursor:not-allowed}.plan-page{display:flex;flex-direction:column;gap:14px}.plan-bar{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.plan-bar-label{font-weight:600;color:var(--ink-2)}.plan-bar select{min-width:240px}.plan-ctx{padding:8px 12px;border:1px solid var(--border);border-radius:8px;background:var(--surface-2, transparent);row-gap:6px}.plan-ctx-sep{color:var(--ink-3, var(--ink-2))}.plan-ctx-item{color:var(--ink-2);font-size:13px}.plan-ctx-action{margin-left:auto;display:flex;gap:8px}.plan-filters{display:flex;flex-wrap:wrap;gap:8px 12px;align-items:flex-end;margin:6px 0 10px}.plan-filters label{display:flex;flex-direction:column;gap:3px}.plan-filters select{min-width:150px}.plan-history-cells>td{background:var(--surface-2, transparent)}.plan-legend{display:flex;flex-wrap:wrap;gap:6px 16px;margin:6px 0 0;padding:0;list-style:none;font-size:12px;color:var(--ink-2)}.plan-legend li{display:flex;align-items:center;gap:6px}.plan-legend .plan-swatch{display:inline-flex;align-items:center;justify-content:center;min-width:28px;height:18px;padding:0 4px;border:1px solid var(--border);border-radius:3px;font-size:11px}.plan-col-grip{position:absolute;top:0;right:-3px;width:7px;height:100%;cursor:col-resize;z-index:4}.plan-col-grip:hover,.plan-col-grip:focus-visible{background:var(--accent, #3b82f6);opacity:.35;outline:none}.plan-glance{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:8px 16px;margin:0 0 14px;padding:10px 12px;border:1px solid var(--border);border-radius:8px}.plan-glance dt{font-size:12px;color:var(--ink-2)}.plan-glance dd{margin:2px 0 0}.plan-fieldset-plain{border:0;padding:0;margin:0;min-width:0}.plan-vlist{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.plan-vlist li{display:grid;grid-template-columns:auto 1fr;gap:2px 10px;align-items:baseline;padding:6px 10px;border-radius:6px;border:1px solid var(--border)}.plan-vlist .plan-vlist-fix{grid-column:2;color:var(--ink-2);font-size:13px}.plan-vlist-head{font-weight:600;margin:0 0 6px}.plan-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.plan-actions input[type=search]{min-width:220px}.plan-form{max-width:760px}.plan-check{display:flex;align-items:center;gap:8px;margin:8px 0}.plan-tag{margin-left:8px;padding:1px 7px;border-radius:999px;font-size:12px;color:var(--ink-2);border:1px solid var(--border)}.plan-page .conn-table td.num,.plan-page .conn-table th.num,.sk-drawer .conn-table td.num,.sk-drawer .conn-table th.num{text-align:right;font-variant-numeric:tabular-nums}.plan-studio{align-items:stretch}.plan-grid-wrap{display:flex;flex-direction:column;gap:10px;min-width:0}.plan-grid-scroll{overflow:auto;max-height:calc(100vh - 330px);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--canvas, #fff)}.plan-grid{border-collapse:separate;border-spacing:0;width:max-content;min-width:100%;font-variant-numeric:tabular-nums;outline:none}.plan-grid th,.plan-grid td{border-right:1px solid var(--border);border-bottom:1px solid var(--border);padding:0 8px;height:30px;white-space:nowrap}.plan-grid thead th{position:sticky;top:0;z-index:2;background:var(--gray-soft, #f4f5f8);font-weight:600;text-align:right;min-width:92px}.plan-grid thead th.plan-grid-corner{left:0;z-index:3;text-align:left;min-width:220px}.plan-grid tbody th{position:sticky;left:0;z-index:1;background:var(--canvas, #fff);text-align:left;font-weight:500;max-width:320px;overflow:hidden;text-overflow:ellipsis}.plan-grid .plan-grid-total,.plan-grid-total-row th,.plan-grid-total-row td{font-weight:600}.plan-grid th.plan-grid-closed{color:var(--text-muted, #667)}.plan-grid-closed-mark{font-size:.75em;font-weight:600}.plan-grid-total-row th,.plan-grid-total-row td{background:var(--gray-soft, #f4f5f8)}.plan-cell{position:relative;text-align:right;cursor:cell;-webkit-user-select:none;user-select:none}.plan-cell.is-read{color:var(--ink-2);background:var(--gray-soft, #f7f8fa)}.plan-cell.is-pending{background:var(--amber-soft, #fff4d6)}.plan-cell.is-conflict{box-shadow:inset 0 0 0 2px var(--red, #c62828)}.plan-cell.is-selected{background:var(--accent-soft, #e8efff)}.plan-cell.is-active{box-shadow:inset 0 0 0 2px var(--brand, #2f5bea)}.plan-cell-input{width:100%;min-width:80px;height:26px;border:0;outline:none;text-align:right;font:inherit;background:transparent}.plan-src{position:absolute;top:1px;left:3px;font-size:9px;line-height:1;color:var(--muted, #888)}.plan-src-forecast,.plan-src-optimiser,.plan-src-agent{color:var(--accent, #2f5bea)}.plan-src-calc{color:var(--green, #2e7d32)}.plan-cell-panel dl.plan-facts{display:grid;grid-template-columns:max-content 1fr;gap:4px 12px;margin:8px 0}.plan-cell-panel dt{color:var(--ink-2)}.plan-cell-panel dd{margin:0}.plan-sub{margin:14px 0 6px;font-size:13px}.plan-history{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.plan-history li{display:flex;flex-direction:column;gap:2px;padding-bottom:8px;border-bottom:1px solid var(--border)}.plan-context{border:1px solid var(--border);border-left:3px solid var(--brand, #2f5bea);background:var(--surface-2, #f6f7f9);border-radius:var(--radius-sm);padding:6px 10px}.plan-context-line{display:flex;align-items:center;gap:6px 16px;flex-wrap:wrap;font-size:13px}.plan-context-line select{height:26px;padding:0 6px}.plan-context-scope{margin-left:auto;font-weight:600}.plan-context-scope-list{display:grid;grid-template-columns:max-content 1fr;gap:3px 14px;margin:8px 0 2px;font-size:13px}.plan-context-scope-list dt{color:var(--ink-2)}.plan-context-scope-list dd{margin:0}.plan-status{display:flex;align-items:center;gap:6px 18px;flex-wrap:wrap;font-size:13px;border:1px solid var(--border);border-radius:var(--radius-sm);padding:5px 10px}.plan-more{position:relative}.plan-more>summary{list-style:none;cursor:pointer}.plan-more>summary::-webkit-details-marker{display:none}.plan-more-menu{position:absolute;z-index:20;top:calc(100% + 4px);left:0;display:flex;flex-direction:column;align-items:stretch;gap:2px;min-width:200px;padding:6px;background:var(--canvas, #fff);border:1px solid var(--border);border-radius:var(--radius-sm);box-shadow:0 6px 20px #0000001f}.plan-more-menu .btn{justify-content:flex-start;text-align:left}.plan-cell.is-issue{box-shadow:inset 0 0 0 2px var(--amber, #c98a00)}.plan-src-pending{color:var(--amber, #c98a00);font-size:12px}.plan-checklist{list-style:none;margin:8px 0;padding:0;display:flex;flex-direction:column;gap:8px}.plan-checklist li{display:grid;grid-template-columns:18px 1fr;gap:0 6px}.plan-checklist li .muted{grid-column:2}.plan-checklist li.is-done>span:nth-child(2){color:var(--ink-2)}.plan-check-mark{font-weight:700;color:var(--ink-2)}.plan-checklist li.is-done .plan-check-mark{color:var(--green, #2e7d32)}.plan-explain-sentence{margin:8px 0;line-height:1.45}.plan-explain-part{margin:10px 0}.plan-explain-part>summary{cursor:pointer;font-weight:600;font-size:13px;margin-bottom:6px}.plan-parts{width:100%;border-collapse:collapse;font-size:13px;font-variant-numeric:tabular-nums}.plan-parts td{padding:2px 0;border-bottom:1px solid var(--border)}.plan-parts td.num{text-align:right}.plan-conflict{border:1px solid var(--red, #c62828);background:var(--red-soft, #fdecec);border-radius:var(--radius-sm);padding:8px 10px;margin:8px 0}.plan-paste-table tr.is-not-taken td{color:var(--ink-2)}.plan-issues{margin:6px 0;padding-left:18px;font-size:13px}.plan-studio .field-label{display:block;font-weight:600;font-size:13px;margin-bottom:4px}.plan-page .sr-only,.plan-studio .sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.plan-sep{flex:0 0 1px;align-self:stretch;background:var(--border);margin:0 4px}.plan-row-bad td{background:var(--red-soft, #fdecec)}.plan-formula code,.plan-formula-input{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.plan-formula-input{width:100%}.plan-subhead{font-size:.95rem;font-weight:600;margin:14px 0 4px}.plan-whatif-row{border-left:3px solid var(--border, #e3e5ea);padding-left:10px;margin-bottom:6px}.plan-pct input{width:90px}.plan-keep-name{min-width:260px}.plan-row-base td{font-weight:600}.plan-effect{position:relative;height:10px;min-width:140px;background:linear-gradient(to right,transparent calc(50% - 1px),var(--border, #d5d8de) calc(50% - 1px),var(--border, #d5d8de) calc(50% + 1px),transparent calc(50% + 1px))}.plan-effect span{position:absolute;top:0;height:100%;border-radius:2px}.plan-effect .up{left:50%;background:var(--accent, #3b6fd8)}.plan-effect .down{right:50%;background:var(--accent, #3b6fd8)}.plan-compare-pick{display:flex;flex-wrap:wrap;gap:0 18px}.plan-reason{max-width:360px}.plan-reason-lead{font-size:1rem;margin:0 0 6px}.plan-proposal-lines td.num,.plan-proposal-lines th.num{text-align:right;font-variant-numeric:tabular-nums}.plan-agent{display:flex;flex-direction:column;gap:14px}.plan-agent-sec{border-top:1px solid var(--border);padding-top:10px}.plan-agent-sec:first-child{border-top:0;padding-top:0}.plan-agent-sec p{margin:2px 0}.plan-agent-ask{display:flex;gap:6px}.plan-agent-ask input{flex:1;min-width:0}.plan-agent-suggest{list-style:none;margin:8px 0 0;padding:0;display:flex;flex-direction:column;gap:4px}.plan-agent-suggest .link-btn{text-align:left;white-space:normal;font-size:12.5px}.plan-agent-list,.plan-agent-props{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.plan-agent-list li{display:flex;align-items:center;justify-content:space-between;gap:8px}.plan-agent-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.plan-agent-run{margin-top:8px;padding:8px;border:1px solid var(--border);border-radius:6px}.plan-agent-prop{padding:8px;border:1px solid var(--border);border-radius:6px}.plan-agent-reason{font-size:13px}.plan-agent-reject textarea{width:100%}.plan-cell.is-flash{background:var(--green-soft, #e6f4ea);box-shadow:inset 0 0 0 1px var(--green, #2e7d32)}.plan-levels{margin:0;padding-left:18px;font-size:12.5px}.plan-levels li{margin:2px 0}.plan-levels li.is-now{font-weight:600}.plan-level-row{border:1px solid var(--border);border-radius:6px;padding:8px;margin-bottom:8px;display:flex;flex-direction:column;gap:6px}.plan-level-head,.plan-level-who{display:flex;gap:6px;align-items:center}.plan-level-head input,.plan-level-who input{flex:1;min-width:0}.plan-owners input{width:100%}.plan-inbox{margin-bottom:16px}.plan-days{width:52px}.plan-overview-list{margin:0 0 8px;padding-left:18px}.plan-delegations{margin-top:18px}.plan-delegate-form{flex-wrap:wrap;gap:8px}.plan-delegate-form input[type=date]{margin-left:4px}.plan-delegate-to{flex:1 1 260px;min-width:240px;max-width:360px}.plan-cycle-bar{display:inline-flex;width:120px;height:8px;border-radius:4px;overflow:hidden;background:var(--border, #e3e5ea);vertical-align:middle}.plan-cycle-bar .approved{background:var(--green, #2e7d32)}.plan-cycle-bar .submitted{background:var(--amber, #c98a00)}.plan-cycle-detail{display:grid;grid-template-columns:minmax(220px,1fr) 2fr;gap:18px}.plan-cycle-units{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px;font-size:13px}.plan-task-form{flex-wrap:wrap;gap:6px;margin-top:8px;align-items:flex-start}.plan-task-form>.ss{flex:1 1 260px;min-width:220px}.plan-task-form>input:first-child{flex:2 1 280px;min-width:220px}.plan-agenda{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.plan-agenda>li{display:grid;grid-template-columns:120px 1fr;gap:10px;border-bottom:1px solid var(--border);padding-bottom:6px}.plan-agenda ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:3px;font-size:13px}.plan-agenda-date{font-weight:600;font-size:13px}.plan-calendar{margin-top:18px}.plan-statement td.num,.plan-statement th.num{text-align:right;font-variant-numeric:tabular-nums}.plan-statement tr.plan-st-group th{text-align:left;font-weight:600;background:var(--surface-2, #f6f7f9)}.plan-statement tr.plan-st-subtotal td{font-weight:600;border-top:1px solid var(--border)}.plan-statement tr.plan-st-total td{font-weight:700;border-top:2px solid var(--ink-2, #444)}.plan-statement tr.plan-st-spacer td{height:10px;border:0}.plan-statement tr.plan-st-bold td{font-weight:600}.plan-statement td.tone-bad{color:var(--red, #c62828);background:var(--red-soft, #fdecec)}.plan-statement td.tone-good{color:var(--green, #2e7d32);background:var(--green-soft, #e6f4ea)}.plan-statement td.tone-warn{color:#8a5a00;background:var(--amber-soft, #fff4d6)}.plan-st-editor input{width:100%}.plan-col-ref{width:90px!important}select.plan-col-ref{width:150px!important}.plan-pack-units{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px}.plan-st-editor .check{display:flex;gap:4px;align-items:center;white-space:nowrap}.plan-st-editor td:first-child select{min-width:110px}.plan-st-editor td:nth-child(2) input{min-width:180px}.plan-starters tbody tr{cursor:pointer}.plan-starters tbody tr.selected td{background:var(--surface-2, rgba(127,127,127,.08))}.plan-starters td:first-child{width:28px;vertical-align:top}.plan-starters td{vertical-align:top}.sk-drawer .plan-starters .field.inline{display:flex;flex-direction:row;gap:8px;align-items:center;margin:6px 0 0}.sk-drawer .plan-starters .field.inline select{width:auto;min-width:160px}.plan-starters .field.inline label{margin:0}.plan-masked{color:var(--ink-2);letter-spacing:1px;cursor:help}.plan-consol-jobs{border:1px solid var(--border);border-radius:8px;padding:8px 12px 12px;margin:0 0 16px}.plan-consol-jobs legend{padding:0 6px;font-weight:600}.plan-consol-jobs td:first-child{width:40%}.plan-ownership input[type=number]{width:90px}.plan-consol-result{border:1px solid var(--border);border-radius:8px;padding:8px 12px;margin:12px 0;background:var(--surface-2)}.plan-consol-result p{margin:4px 0}.plan-match{padding:1px 8px;border-radius:999px;font-size:12px;white-space:nowrap}.plan-match-matched{background:var(--green-soft);color:var(--green)}.plan-match-mismatch{background:var(--red-soft);color:var(--red)}.plan-match-one_sided,.plan-journal-submitted{background:var(--amber-soft);color:var(--amber)}.plan-journal-posted{background:var(--green-soft);color:var(--green)}.plan-journal-draft,.plan-journal-recalled{background:var(--gray-soft);color:var(--ink-2)}.plan-journal-returned{background:var(--red-soft);color:var(--red)}.plan-journal-lines{overflow-x:auto}.plan-journal-lines input[type=number]{width:110px}.plan-journal-history{margin:0;padding-left:18px}.plan-journal-history li{margin:2px 0}.plan-step-done{background:var(--green-soft);color:var(--green)}.plan-step-attention{background:var(--amber-soft);color:var(--amber)}.plan-step-stale{background:var(--red-soft);color:var(--red)}.plan-step-todo{background:var(--gray-soft);color:var(--ink-2)}.plan-indent{padding-left:18px;display:inline-block}.plan-bridge-main td{border-top:1px solid var(--border)}.plan-load-result{border:1px solid var(--border);border-radius:8px;padding:12px 14px;margin:14px 0;background:var(--surface-2, var(--bg))}.plan-load-result .plan-actions{justify-content:space-between}.plan-unmapped select,.plan-load-dims select{min-width:200px;max-width:100%}.plan-insights-head{justify-content:space-between;align-items:center}.plan-insights-head .plan-subhead{margin:0}.plan-insight-body{white-space:pre-wrap;margin:4px 0 10px;max-width:900px}.plan-insight-facts{font-size:12px;width:auto;min-width:360px}.plan-promote-sum{margin:4px 0 8px}.plan-promote-blocked{color:var(--red)}.plan-promote-h{margin:14px 0 6px;font-size:13px}.plan-promote-members{width:auto;min-width:520px}.plan-promote-same{display:inline-flex;gap:6px;align-items:center;margin-top:6px}.plan-feed{margin:14px 0 4px;padding:10px 12px;border:1px solid var(--border);border-radius:8px;max-width:900px}.plan-feed-head{font-weight:600;font-size:13px;margin-bottom:2px}.plan-feed code{word-break:break-all}.plan-mywork-title{margin:0;font-size:18px}.plan-review-scope{margin:4px 0 10px;padding:8px 10px;border-left:3px solid var(--brand, #2f5bea);background:var(--surface-2, #f6f7f9)}.plan-review-facts{display:grid;grid-template-columns:max-content 1fr;gap:4px 12px;margin:8px 0 12px}.plan-review-facts dt{color:var(--ink-2)}.plan-review-facts dd{margin:0}.plan-row-toggle{border:0;background:none;padding:0 4px 0 0;margin-left:-16px;width:16px;cursor:pointer;color:var(--ink-2);font-size:13px}.plan-comment-mark{position:absolute;top:0;right:0;width:0;height:0;border-style:solid;border-width:0 7px 7px 0;border-color:transparent var(--amber, #c98a00) transparent transparent}.plan-threads{list-style:none;margin:0 0 8px;padding:0;display:flex;flex-direction:column;gap:10px}.plan-threads>li{border-left:3px solid var(--amber, #c98a00);padding-left:8px}.plan-threads>li.is-resolved{border-left-color:var(--border);opacity:.8}.plan-comment{display:flex;flex-direction:column;gap:2px}.plan-reply{margin:6px 0 0 12px}.plan-comment-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-top:4px}.plan-comment-actions textarea,.plan-comment-new textarea{width:100%}.plan-comment-new{display:flex;flex-direction:column;gap:6px;align-items:flex-start}.plan-dist-totals{display:grid;grid-template-columns:max-content 1fr;gap:4px 14px;margin:10px 0;padding:8px 10px;border-left:3px solid var(--brand, #2f5bea);background:var(--surface-2, #f6f7f9)}.plan-dist-totals dt{color:var(--ink-2)}.plan-dist-totals dd{margin:0}.plan-steps{display:flex;gap:6px;list-style:none;counter-reset:step;margin:0 0 6px;padding:0;flex-wrap:wrap;font-size:13px}.plan-steps li{counter-increment:step;padding:4px 10px;border:1px solid var(--border);border-radius:999px;color:var(--ink-2)}.plan-steps li:before{content:counter(step) ". ";font-weight:600}.plan-steps li.is-now{border-color:var(--brand, #2f5bea);color:var(--ink, inherit);font-weight:600}.plan-attention{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}.plan-attention li{display:flex;flex-direction:column;gap:2px;padding-bottom:8px;border-bottom:1px solid var(--border)}.plan-drivers .plan-driver-input{display:inline-flex;gap:6px;align-items:baseline;margin-right:12px;white-space:nowrap}.plan-assumptions{margin:10px 0 14px}.plan-assume-changes{margin:0;padding-left:16px;display:flex;flex-direction:column;gap:3px}.plan-fc-months{max-width:520px;margin:6px 0}.plan-welcome{border:1px solid var(--border);border-left:3px solid var(--green, #2e7d32);background:var(--surface-2, #f6f7f9);border-radius:var(--radius-sm);padding:8px 12px;font-size:13px;display:flex;flex-direction:column;gap:6px;align-items:flex-start}.plan-welcome ol{margin:0;padding-left:20px;display:flex;flex-direction:column;gap:2px}.plan-cmp{display:flex;flex-direction:column;gap:14px}.plan-cmp-head{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.plan-cmp-head h3{margin:0;font-size:1.15rem}.plan-cmp-out{margin-left:auto}.plan-cmp-bar{display:flex;flex-wrap:wrap;gap:12px 18px;align-items:flex-end;padding:14px 16px;border:1px solid var(--border);border-radius:var(--radius-sm, 8px);background:var(--surface-2, transparent)}.plan-cmp-bar .field{margin:0;min-width:200px}.plan-cmp-bar .field.grow{flex:1 1 320px}.plan-cmp-chips{display:flex;flex-wrap:wrap;gap:8px}.plan-cmp-chip{border:1px solid var(--border);background:var(--surface, #fff);color:inherit;border-radius:999px;padding:6px 12px;cursor:pointer;font:inherit;font-size:.9rem}.plan-cmp-chip.on{border-color:var(--brand, #2f5bea);background:var(--accent-soft, #e8eefc);font-weight:600}.plan-cmp-chip:disabled{opacity:.45;cursor:not-allowed}.plan-cmp-chip:focus-visible{outline:2px solid var(--brand, #2f5bea);outline-offset:2px}.plan-cmp-warn{padding:10px 14px;border-radius:var(--radius-sm, 8px);background:var(--amber-soft, #fff4dc);border:1px solid var(--amber, #c98a00)}.plan-cmp-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}.plan-cmp-card{display:flex;flex-direction:column;gap:3px;padding:14px 16px;border:1px solid var(--border);border-radius:var(--radius-sm, 8px);background:var(--surface, #fff);min-width:0}.plan-cmp-card.is-base{background:var(--surface-2, transparent)}.plan-cmp-card strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.plan-cmp-k{font-size:.72rem;text-transform:uppercase;letter-spacing:.06em;color:var(--ink-2, #5b6475);font-weight:600}.plan-cmp-big{font-size:1.5rem;font-weight:600;font-variant-numeric:tabular-nums;margin-top:4px}.plan-cmp-big.up,.plan-cmp-delta.up{color:var(--green, #1f7a3d)}.plan-cmp-big.down,.plan-cmp-delta.down{color:var(--red, #b42318)}.plan-cmp-tools{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.plan-cmp-tools input[type=search]{flex:0 1 320px;min-width:200px}.plan-cmp-tools .btn{margin-left:auto}.plan-cmp-scroll{overflow:auto;max-height:calc(100vh - 220px);border:1px solid var(--border);border-radius:var(--radius-sm, 8px)}.plan-cmp-scroll .conn-table{margin:0}.plan-cmp-scroll thead th{position:sticky;top:0;z-index:1;background:var(--surface, #fff)}.plan-cmp-table td.num,.plan-cmp-table th.num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.plan-cmp-code{font-weight:600}.plan-cmp-gap{display:flex;align-items:center;gap:8px;min-width:180px}.plan-cmp-track{flex:1;height:8px;border-radius:4px;background:var(--gray-soft, #eef0f3);overflow:hidden}.plan-cmp-track span{display:block;height:100%;border-radius:4px;background:var(--accent, #3b6fd8)}.plan-cmp-assume th[scope=row]{white-space:nowrap;width:1%}.plan-cmp-assume td{vertical-align:top;min-width:220px}.plan-cmp-assume tr.is-differ th,.plan-cmp-assume tr.is-differ td{background:var(--amber-soft, #fff4dc)}.btn-link{background:none;border:0;padding:0;color:var(--brand, #2f5bea);cursor:pointer;font:inherit;text-decoration:underline}.plan-fav{font-size:11px;margin-left:4px}.plan-quick{display:flex;flex-wrap:wrap;gap:8px}.plan-health-items{display:flex;flex-wrap:wrap;gap:6px}.plan-health-items a{text-decoration:none}.plan-cmp-delta.is-good,.plan-cmp-delta.is-good.up,.plan-cmp-delta.is-good.down{color:var(--green, #2e7d32)}.plan-cmp-delta.is-bad,.plan-cmp-delta.is-bad.up,.plan-cmp-delta.is-bad.down{color:var(--red, #c62828)}.plan-cmp-delta .plan-fav{color:inherit}.plan-calc-order{margin-top:12px;border:1px solid var(--border);border-radius:8px;padding:8px 12px}.plan-calc-order summary{cursor:pointer;font-weight:600}.plan-calc-steps{margin:8px 0;padding-left:22px;display:flex;flex-direction:column;gap:4px}:root{--banner-bg: radial-gradient(520px 280px at 95% -10%, rgba(214, 43, 51, .3), transparent 60%), radial-gradient(720px 400px at 5% 130%, rgba(74, 120, 255, .55), transparent 65%), linear-gradient(135deg, #0a1437 0%, #10256b 48%, #1f4fd6 100%)}.sh-app{display:flex;flex-direction:column;height:100vh;background:var(--canvas)}.sh-body{flex:1;min-height:0;display:flex}.sh-app .content{flex:1;min-width:0;overflow-y:auto;overflow-x:hidden;background:var(--canvas)}.sh-topbar{flex:none;height:var(--topbar-h);display:grid;grid-template-columns:minmax(200px,1fr) minmax(280px,560px) minmax(200px,1fr);align-items:center;gap:16px;padding:0 16px 0 12px;background:var(--surface);border-bottom:1px solid var(--border);position:relative;z-index:40}.sh-topbar:after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:2px;pointer-events:none;background:linear-gradient(90deg,#0b1640,#1f4fd6 55%,#6f8dff 78%,#d62b33)}.sh-topbar-left{display:flex;align-items:center;gap:8px;min-width:0}.sh-topbar-center{display:flex;justify-content:center;min-width:0}.sh-topbar-right{display:flex;align-items:center;justify-content:flex-end;gap:6px}.sh-brand{display:flex;align-items:center;text-decoration:none;border-radius:var(--radius-sm);padding:2px 4px}.sh-brand .brand{padding:0;gap:9px}.sh-brand .brand-name{height:14px;margin:0}.sh-icon-btn{width:36px;height:36px;display:inline-grid;place-items:center;flex:none;border:1px solid transparent;border-radius:var(--radius-sm);background:none;color:var(--ink-2);cursor:pointer;transition:background .12s,color .12s}.sh-icon-btn:hover,.sh-icon-btn.is-open{background:var(--surface-2);color:var(--ink)}.sh-search{width:100%;height:36px;display:flex;align-items:center;gap:10px;padding:0 8px 0 12px;border:1px solid var(--border);border-radius:10px;background:var(--surface-2);color:var(--muted);font-size:13.5px;cursor:text;transition:border-color .12s,background .12s,box-shadow .12s}.sh-search:hover{border-color:var(--brand-line);background:var(--surface)}.sh-search-text{flex:1;text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sh-kbd{font-family:inherit;font-size:11px;font-weight:600;color:var(--ink-2);background:var(--surface);border:1px solid var(--border);border-bottom-width:2px;border-radius:5px;padding:1px 6px;white-space:nowrap;line-height:1.5}.sh-avatar-btn{border:0;background:none;padding:2px;border-radius:50%;cursor:pointer;margin-left:4px}.sh-avatar-btn:hover .sh-avatar,.sh-avatar-btn.is-open .sh-avatar{box-shadow:0 0 0 3px var(--brand-soft)}.sh-avatar{width:32px;height:32px;border-radius:50%;display:inline-grid;place-items:center;flex:none;background:var(--brand-gradient);color:#fff;font-size:12.5px;font-weight:700;letter-spacing:.02em;transition:box-shadow .12s}.sh-avatar-lg{width:40px;height:40px;font-size:14px}.sh-menu{position:relative}.sh-menu-pop{position:absolute;top:calc(100% + 8px);min-width:250px;z-index:60;background:var(--surface);border:1px solid var(--border);border-radius:12px;box-shadow:0 12px 32px #0b164024,0 2px 6px #0b16400f;padding:6px;animation:sh-pop .12s ease-out}.sh-menu-right{right:0}.sh-menu-left{left:0}@keyframes sh-pop{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}.sh-menu-heading{font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);padding:8px 10px 4px}.sh-menu-item{display:flex;align-items:center;gap:10px;width:100%;text-align:left;border:0;background:none;border-radius:8px;padding:8px 10px;font-size:13.5px;color:var(--ink);cursor:pointer}.sh-menu-item svg{color:var(--ink-2);flex:none}.sh-menu-item:hover{background:var(--surface-2)}.sh-menu-item.is-danger{color:var(--red)}.sh-menu-item:disabled{color:var(--muted);cursor:not-allowed;background:none}.sh-menu-item:disabled svg{color:var(--muted)}.sh-menu-item:focus-visible{outline:2px solid var(--brand);outline-offset:-2px}.sh-menu-at{position:fixed;top:auto;min-width:200px;z-index:80}.sh-menu-text{flex:1}.sh-menu-divider{height:1px;background:var(--border);margin:6px 4px}.sh-menu-static{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:5px 10px;font-size:12.5px;color:var(--ink-2)}.sh-menu-account{display:flex;gap:12px;align-items:center;padding:10px 10px 8px}.sh-menu-account>div{display:flex;flex-direction:column;min-width:0}.sh-menu-account b{font-size:14px;color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sh-menu-account span{font-size:12.5px;color:var(--ink-2);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sh-menu-account .sh-menu-tenant{color:var(--muted);font-size:12px;margin-top:2px}.sh-rail{flex:none;width:224px;display:flex;flex-direction:column;background:var(--surface);border-right:1px solid var(--border);transition:width .18s ease;overflow:hidden}.sh-rail-nav{flex:1;overflow-y:auto;overflow-x:hidden;padding:8px 8px 10px;display:flex;flex-direction:column;gap:1px;scrollbar-width:thin}.sh-rail-section{display:flex;flex-direction:column;gap:1px;margin-top:8px}.sh-rail-label{height:18px;display:flex;align-items:center;padding:0 10px;font-size:10.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#99a2b4;white-space:nowrap}.sh-rail-link{position:relative;display:flex;align-items:center;gap:10px;height:30px;padding:0 10px;border-radius:7px;color:var(--ink-2);text-decoration:none;font-size:13px;font-weight:500;white-space:nowrap;transition:background .12s,color .12s}.sh-rail-icon{width:18px;display:grid;place-items:center;flex:none;color:#8a93a8;transition:color .12s}.sh-rail-icon svg{flex:none}.sh-rail-link:hover{background:#f2f4f8;color:var(--ink)}.sh-rail-link:hover .sh-rail-icon{color:var(--ink-2)}.sh-rail-link:focus-visible{outline:none;box-shadow:var(--focus-ring)}.sh-rail-link.is-active{background:var(--brand-soft);color:var(--brand-strong);font-weight:600}.sh-rail-link.is-active .sh-rail-icon{color:var(--brand)}.sh-rail-link.is-active:before{content:"";position:absolute;left:-8px;top:7px;bottom:7px;width:3px;border-radius:0 3px 3px 0;background:var(--brand)}.sh-rail-text{flex:1;overflow:hidden;text-overflow:ellipsis}.sh-rail-dot{width:7px;height:7px;border-radius:50%;flex:none}.sh-rail-dot.is-offline{background:var(--red)}.sh-rail-dot.is-degraded{background:var(--amber)}.sh-rail.is-collapsed{width:56px}.sh-rail.is-collapsed .sh-rail-text,.sh-rail.is-collapsed .sh-rail-label{display:none}.sh-rail.is-collapsed .sh-rail-section{margin-top:6px;padding-top:6px;border-top:1px solid var(--border)}.sh-rail.is-collapsed .sh-rail-link{justify-content:center;padding:0}.sh-rail.is-collapsed .sh-rail-dot{position:absolute;top:5px;right:7px}@media(max-height:760px){.sh-rail-link{height:28px}.sh-rail-section{margin-top:6px}.sh-rail-label{height:16px}}@media(max-height:640px){.sh-rail-link{height:26px;font-size:12.5px}.sh-rail-section{margin-top:4px}}.sh-icon-btn.is-current{color:var(--brand);background:var(--brand-soft)}.sh-palette-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;background:#0b164052;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:flex;justify-content:center;align-items:flex-start;padding:10vh 16px 16px;animation:sh-fade .12s ease-out}@keyframes sh-fade{0%{opacity:0}to{opacity:1}}.sh-palette{width:100%;max-width:640px;max-height:70vh;display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--border);border-radius:14px;overflow:hidden;box-shadow:0 24px 64px #0b164047,0 2px 8px #0b164014}.sh-palette-input{display:flex;align-items:center;gap:12px;padding:0 16px;border-bottom:1px solid var(--border);color:var(--muted)}.sh-palette-input input{flex:1;border:0;outline:none;height:56px;font-size:16px;color:var(--ink);background:transparent}.sh-palette-input input:focus-visible{outline:none;box-shadow:none}.sh-palette-list{overflow-y:auto;padding:6px 8px 10px}.sh-palette-group{padding-top:6px}.sh-palette-group-label{font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);padding:8px 10px 4px}.sh-cmd{display:flex;align-items:center;gap:12px;width:100%;text-align:left;border:0;background:none;border-radius:8px;padding:8px 10px;font-size:14px;color:var(--ink);cursor:pointer}.sh-cmd-icon{width:28px;height:28px;border-radius:7px;display:grid;place-items:center;flex:none;background:var(--surface-2);color:var(--ink-2);border:1px solid var(--border)}.sh-cmd-label{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sh-cmd-hint{font-size:12px;color:var(--muted);white-space:nowrap}.sh-cmd-go{color:var(--brand);opacity:0;flex:none}.sh-cmd.is-selected{background:var(--brand-soft)}.sh-cmd.is-selected .sh-cmd-icon{background:var(--surface);color:var(--brand);border-color:var(--brand-line)}.sh-cmd.is-selected .sh-cmd-go{opacity:1}.sh-cmd.is-ask .sh-cmd-icon{background:var(--brand-gradient);color:#fff;border-color:transparent}.sh-palette-empty{display:flex;flex-direction:column;gap:4px;align-items:center;text-align:center;padding:28px 16px;font-size:13px;color:var(--ink-2)}.sh-palette-empty b{color:var(--ink);font-size:14px}.sh-palette-note{font-size:12px;color:var(--muted);padding:8px 12px 0}.sh-palette-foot{display:flex;gap:18px;padding:9px 16px;border-top:1px solid var(--border);background:var(--surface-2);font-size:12px;color:var(--muted)}.sh-palette-foot span{display:inline-flex;align-items:center;gap:6px}.home{max-width:1240px}.content .page.home{padding:20px 28px 16px}.home-hero{position:relative;overflow:hidden;border-radius:18px;padding:26px 32px 22px;margin-bottom:16px;background:var(--banner-bg);color:#fff;box-shadow:0 18px 44px #0b16403d,inset 0 1px #ffffff14}.home-hero-art{position:absolute;right:-30px;top:-40px;width:280px;height:280px;pointer-events:none;opacity:.55;mix-blend-mode:screen;filter:saturate(1.25) brightness(1.35)}.home-hero:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;opacity:.08;background-image:linear-gradient(#fff 1px,transparent 1px),linear-gradient(90deg,#fff 1px,transparent 1px);background-size:32px 32px;mask-image:linear-gradient(90deg,transparent,#000 60%);-webkit-mask-image:linear-gradient(90deg,transparent,#000 60%)}.home-hero>*:not(.home-hero-art){position:relative;z-index:1}.home .home-hero h1{margin:0;font-size:28px;font-weight:750;letter-spacing:-.025em;line-height:1.2;color:#fff}.home-hero-name{color:#fff}@supports ((-webkit-background-clip: text) or (background-clip: text)){.home-hero-name{background:linear-gradient(90deg,#fff,#c7d6ff);-webkit-background-clip:text;background-clip:text;color:transparent}}.home .home-hero .home-sub{margin:4px 0 0;font-size:14px;color:#ecf1ffdb}.home-ask{display:flex;align-items:center;gap:10px;margin-top:16px;max-width:720px;background:#fffffffa;border-radius:14px;padding:6px 6px 6px 16px;box-shadow:0 12px 32px #03081e59,0 0 0 1px #fff6}.home-ask-icon{color:var(--brand);flex:none}.home-ask input{flex:1;min-width:0;border:0;outline:none;height:38px;font-size:14.5px;color:var(--ink);background:transparent}.home-ask input:focus-visible{box-shadow:none}.home-ask .btn{height:38px;padding:0 18px}.home-suggest{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.home-chip{display:inline-flex;align-items:center;gap:6px;border:1px solid rgba(255,255,255,.22);background:#ffffff17;color:#fff;border-radius:999px;padding:7px 13px;font-size:12.5px;font-weight:500;cursor:pointer;transition:background .15s,border-color .15s;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.home-chip:hover{background:#ffffff2e;border-color:#fff6}.home-chip-ghost{background:none;border-style:dashed}.home-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;align-items:start}.content .home-grid>.panel{padding:16px 18px;min-width:0}.home-panel-head{display:flex;justify-content:space-between;align-items:center;min-height:24px;margin-bottom:8px}.home-panel-head .link-btn{margin:0}.home-h2{display:flex;align-items:center;gap:8px;margin:0;font-size:14.5px;font-weight:650;color:var(--ink);letter-spacing:-.01em}.home-h2 svg{color:var(--brand)}.home-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:2px}.home-row{display:flex;align-items:center;gap:12px;min-width:0;padding:7px 8px;margin:0 -8px;border-radius:8px;text-decoration:none;color:inherit;transition:background .12s}.home-row:hover{background:var(--surface-2)}.home-row-icon{width:32px;height:32px;border-radius:8px;display:grid;place-items:center;flex:none;background:var(--brand-soft);color:var(--brand)}.home-row-icon.is-quiet{background:var(--surface-2);color:var(--ink-2);border:1px solid var(--border)}.home-row-text{flex:1;min-width:0;display:flex;flex-direction:column}.home-row-text b{font-size:13.5px;font-weight:600;color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.home-row-text small{font-size:12px;color:var(--ink-2);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.home-row-go{flex:none;color:var(--muted);opacity:0;transition:opacity .12s}.home-row:hover .home-row-go{opacity:1;color:var(--brand)}.home-row-when{flex:none;font-size:12px;color:var(--muted);white-space:nowrap}.home-areas{display:flex;flex-direction:column;gap:10px}.home-area-label{margin-bottom:5px;font-size:10.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#99a2b4}.home-pills{display:flex;flex-wrap:wrap;gap:6px}.home-pill{display:inline-flex;align-items:center;gap:6px;height:28px;padding:0 10px;border-radius:7px;border:1px solid var(--border);background:var(--surface);color:var(--ink);text-decoration:none;font-size:12.5px;font-weight:500;white-space:nowrap;transition:border-color .12s,background .12s,color .12s}.home-pill svg{color:var(--muted)}.home-pill:hover{border-color:var(--brand-line);background:var(--brand-soft);color:var(--brand-strong)}.home-pill:hover svg{color:var(--brand)}.home-dot{width:7px;height:7px;border-radius:50%;background:var(--border)}.home-dot.is-degraded{background:var(--amber)}.home-dot.is-offline{background:var(--red)}.home-area-skeleton{height:58px;border-radius:8px;background:linear-gradient(90deg,var(--surface) 0%,var(--surface-2) 50%,var(--surface) 100%);background-size:200% 100%;animation:sh-shimmer 1.2s ease-in-out infinite}.home-empty{display:flex;flex-direction:column;align-items:center;gap:8px;text-align:center;padding:22px 12px;color:var(--muted)}.home-empty p{margin:0;max-width:300px;font-size:13px;color:var(--ink-2)}@media(max-height:700px){.home-hero{padding:20px 28px 18px;margin-bottom:12px}.home .home-hero .home-sub{display:none}.home-ask{margin-top:12px}.home-row{padding:5px 8px}.home-row-icon{width:28px;height:28px}.content .home-grid>.panel{padding:12px 16px}}@media(max-height:620px){.home-suggest{display:none}.home-areas{gap:8px}.home-pill{height:26px}}@keyframes sh-shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}.badge{white-space:nowrap}.content .st-hero,.content .aiadm-hero{position:relative;overflow:hidden;isolation:isolate;background:var(--banner-bg);color:#fff;box-shadow:0 18px 44px #0b16403d,inset 0 1px #ffffff14}.content .st-hero:after,.content .aiadm-hero:after{content:"";position:absolute;z-index:-1;right:-40px;top:-46px;width:300px;height:300px;pointer-events:none;background:url(/brand/vepict-mark.svg) center / contain no-repeat;opacity:.55;mix-blend-mode:screen;filter:saturate(1.25) brightness(1.35)}.content .page-head{position:relative;isolation:isolate}.content .page-head:after{content:"";position:absolute;z-index:-1;top:-10px;bottom:-10px;right:-12px;width:220px;pointer-events:none;background:url(/brand/vepict-mark.svg) right center / contain no-repeat;opacity:.07}@media(max-width:1000px){.sh-topbar{grid-template-columns:auto minmax(0,1fr) auto}.sh-search-text{display:none}.sh-search{width:40px;padding:0;justify-content:center;margin-left:auto}.sh-search .sh-kbd{display:none}.home-grid{grid-template-columns:1fr}}@media(max-width:860px){.sh-rail{width:56px}.sh-rail .sh-rail-text,.sh-rail .sh-rail-label{display:none}.sh-rail .sh-rail-link{justify-content:center;padding:0}.sh-brand .brand-text{display:none}.home-hero{padding:26px 22px}.home-hero-art{width:220px;height:220px;right:-50px;top:-40px;opacity:.35}.home .home-hero h1{font-size:24px}}@media(max-width:1000px)and (min-width:721px){.content .page,.content .page-wide{padding:24px 24px 64px}}@media(max-width:720px){.sh-topbar{gap:8px;padding:0 8px 0 4px}.sh-topbar-right{gap:2px}.sh-focus-btn,.sh-brand .brand-text{display:none}.sh-rail,.sh-rail.is-collapsed{position:fixed;z-index:45;left:0;top:var(--topbar-h);bottom:0;width:min(280px,84vw);transform:translate(-100%);visibility:hidden;transition:transform .2s ease,visibility 0s linear .2s;box-shadow:12px 0 32px #0b16402e}.sh-app.drawer-open .sh-rail{transform:none;visibility:visible;transition:transform .2s ease}.sh-rail .sh-rail-text,.sh-rail .sh-rail-label{display:flex}.sh-rail .sh-rail-link{justify-content:flex-start;padding:0 10px;height:40px;font-size:14px}.sh-rail .sh-rail-dot{position:static}.sh-drawer-back{position:fixed;inset:var(--topbar-h) 0 0 0;z-index:44;background:#0b164052}.content .page,.content .page-wide,.sh-app.focus-mode .content .page,.sh-app.focus-mode .content .page-wide,.content .page.home{padding:16px 16px 88px}.home-hero{padding:20px 18px;border-radius:14px}.home-ask .btn{padding:0 12px}.content .page-head{flex-wrap:wrap;gap:10px;margin-bottom:14px}.content .page-head h1{font-size:20px}.module-head .card-icon.big,.module-head .cap-tags{display:none}.content .module-head p.muted{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-size:13px}.module-head .title-with-icon{min-width:0;flex:1 1 100%}.content .page-head:after{display:none}.content .tabs{margin:-4px -16px 16px;padding:0 12px;scrollbar-width:none}.content .tabs::-webkit-scrollbar{display:none}.content .tab{padding:10px 12px}.content .panel{padding:16px}.content input:not([type=checkbox]):not([type=radio]),.content select,.content textarea{font-size:16px}}@media(prefers-reduced-motion:reduce){.sh-rail,.home-row,.home-pill{transition:none}.sh-menu-pop,.sh-palette-backdrop,.home-area-skeleton{animation:none}}.panes{position:relative}.panes-grid.pane-left-off>:first-child,.panes-grid.pane-right-off>:last-child{display:none!important}.panes-grid.pane-left-off,.panes-grid.pane-right-off{grid-template-columns:minmax(0,1fr)}.fl-body{--pane-l: 186px;--pane-r: 330px}.in-body{--pane-l: 190px;--pane-r: 340px}.vd-editor{--pane-l: 150px;--pane-r: 300px}@media(max-width:1280px){.vd-editor{--pane-l: 130px;--pane-r: 260px}}.panes-grid.panes-3.pane-left-off{grid-template-columns:minmax(0,1fr) var(--pane-r)}.panes-grid.panes-3.pane-right-off{grid-template-columns:var(--pane-l) minmax(0,1fr)}.panes-grid.panes-3.pane-left-off.pane-right-off{grid-template-columns:minmax(0,1fr)}.panes-handles{position:sticky;top:10px;height:0;z-index:6}.pane-handle{position:absolute;top:8px;display:inline-flex;align-items:center;justify-content:center;gap:6px;width:24px;height:24px;padding:0;border:1px solid var(--border);border-radius:999px;background:var(--surface, #fff);color:var(--ink-2, #4b5563);box-shadow:0 1px 3px #0f172a1f;cursor:pointer;opacity:.75;transition:opacity .12s ease,color .12s ease,border-color .12s ease}.pane-handle:hover,.pane-handle:focus-visible{opacity:1;color:var(--brand, #1f4fd6);border-color:var(--brand, #1f4fd6)}.pane-handle-left{left:-12px}.pane-handle-right{right:-12px}.pane-handle.is-off{width:26px;height:auto;min-height:96px;padding:10px 0;flex-direction:column;border-radius:8px;opacity:1}.pane-handle-left.is-off{left:-32px}.pane-handle-right.is-off{right:-32px}.pane-handle-text{writing-mode:vertical-rl;transform:rotate(180deg);font-size:12px;font-weight:600;letter-spacing:.02em;white-space:nowrap}.pane-handle-right .pane-handle-text{transform:none}.sh-app.focus-mode .sh-rail{display:none}.sh-app.focus-mode .content .page,.sh-app.focus-mode .content .page-wide{max-width:none;padding:18px 40px 40px}.sh-app.focus-mode .content .module-head{display:none}.sh-rail-fold{display:flex;align-items:center;gap:10px;width:100%;margin-top:auto;padding:8px 12px;border:0;border-top:1px solid var(--border);background:transparent;color:var(--ink-2, #4b5563);font:inherit;font-size:13px;cursor:pointer}.sh-rail-fold:hover{color:var(--brand, #1f4fd6);background:var(--surface-2, #f3f4f6)}.sh-rail.is-collapsed .sh-rail-fold{justify-content:center;padding:10px 0}.sh-rail.is-collapsed .sh-rail-fold span{display:none}@media print{.panes-handles,.sh-rail-fold{display:none}}.pane-resize{position:absolute;z-index:5;width:12px;margin-left:-6px;cursor:col-resize;touch-action:none}.pane-resize:after{content:"";position:absolute;left:5px;top:0;bottom:0;width:2px;border-radius:2px;background:transparent;transition:background .12s ease}.pane-resize:hover:after,.pane-resize:focus-visible:after{background:var(--brand-line, #d5e0fb)}.pane-resize:focus-visible{outline:none}.pane-resize:focus-visible:after,body.pane-resizing .pane-resize:after{background:var(--brand, #1f4fd6)}body.pane-resizing{cursor:col-resize;-webkit-user-select:none;user-select:none}@media print{.pane-resize{display:none}}.aiadm-eyebrow{font-size:12px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--brand);margin-bottom:6px}.aiadm-lede{margin:0;max-width:640px;line-height:1.5}.aiadm-notice{margin:-10px 0 18px;padding:10px 14px;border-radius:10px;font-size:13px;border:1px solid var(--green-soft);background:var(--green-soft);color:var(--green)}.aiadm-notice.err{background:var(--red-soft);border-color:var(--red-soft);color:var(--red)}.aiadm-hero{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:24px;padding:24px 28px;border-radius:var(--radius);background:var(--brand-gradient);color:#fff;box-shadow:var(--shadow-hover);margin-bottom:18px}.aiadm-hero-main{display:flex;align-items:center;gap:18px;min-width:0}.aiadm-hero-label{font-size:12px;text-transform:uppercase;letter-spacing:.06em;opacity:.75}.aiadm-hero-title{font-size:22px;font-weight:700;margin:2px 0 4px;letter-spacing:-.01em}.aiadm-hero-sub{font-size:13px;opacity:.9}.aiadm-hero-sub .mono{background:#ffffff24;padding:1px 6px;border-radius:5px}.aiadm-hero-warn{color:#ffd7a8;font-weight:600}.aiadm-hero-stats{display:flex;flex-wrap:wrap;gap:10px}.aiadm-hero-stats>div{display:flex;flex-direction:column;gap:2px;min-width:120px;padding:12px 16px;border-radius:10px;background:#ffffff1a;border:1px solid rgba(255,255,255,.16)}.aiadm-hero-stats b{font-size:20px;font-weight:700}.aiadm-hero-stats b span{font-size:13px;opacity:.7;font-weight:500}.aiadm-hero-stats>div>span{font-size:12px;opacity:.8}.aiadm-hero .aiadm-mono.big{box-shadow:0 0 0 3px #ffffff40}.aiadm-callout{display:flex;gap:14px;padding:16px 18px;margin-bottom:28px;border-radius:var(--radius);background:var(--brand-soft);border:1px solid var(--brand-line)}.aiadm-callout.warn{background:var(--amber-soft);border-color:#f3dcb4}.aiadm-callout-icon{flex-shrink:0;width:26px;height:26px;border-radius:50%;display:grid;place-items:center;font-weight:700;font-size:14px;background:var(--brand);color:#fff;font-family:Georgia,serif}.aiadm-callout.warn .aiadm-callout-icon{background:var(--amber);font-family:inherit}.aiadm-callout-body b{font-size:14px}.aiadm-callout-body p{margin:6px 0 0;font-size:13px;line-height:1.55;color:var(--ink-2)}.aiadm-callout-body .btn{margin-top:12px}.aiadm-section-head{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:12px}.aiadm-section-head h2{font-size:16px;margin:0}.aiadm-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,360px),1fr));gap:10px;margin-bottom:24px}.aiadm-card{display:flex;flex-direction:column;padding:14px 16px;border-radius:10px;min-width:0;background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow);transition:box-shadow .15s ease,border-color .15s ease}.aiadm-card:hover{border-color:var(--brand-line)}.aiadm-card.is-default{border-color:var(--brand-line);box-shadow:0 0 0 1px var(--brand-line),var(--shadow)}.aiadm-card-head{display:flex;align-items:center;gap:10px}.aiadm-card-title{flex:1;min-width:0}.aiadm-card-title h3{margin:0 0 2px;font-size:14px}.aiadm-card-title a{color:var(--brand);text-decoration:none}.aiadm-card-title a:hover{text-decoration:underline}.aiadm-card .field{margin-top:10px}.aiadm-card .field select{width:100%}.aiadm-inline{display:flex;gap:10px;align-items:center}.aiadm-inline input{flex:1}.aiadm-card-foot{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:12px;padding-top:10px;border-top:1px solid var(--border)}.aiadm-spacer{flex:1}.aiadm-danger{color:var(--red)!important}.aiadm-err{margin-top:12px;font-size:13px;line-height:1.45;word-break:break-word}.aiadm-card-policy{display:flex;flex-wrap:wrap;gap:6px 10px;align-items:center;justify-content:space-between;margin-top:14px;padding:8px 12px;border-radius:8px;background:var(--amber-soft);color:var(--ink-2);font-size:12px}.aiadm-mono{flex-shrink:0;width:40px;height:40px;border-radius:10px;display:grid;place-items:center;font-weight:700;font-size:15px;letter-spacing:-.02em;color:#fff;background:var(--brand-deep)}.aiadm-mono.big{width:56px;height:56px;border-radius:14px;font-size:20px}.aiadm-mono-anthropic{background:linear-gradient(135deg,#b4532a,#d97757)}.aiadm-mono-openai{background:linear-gradient(135deg,#0b1640,#2c3a5e)}.aiadm-mono-gemini{background:linear-gradient(135deg,#1f4fd6,#7a5af5)}.aiadm-mono-mistral{background:linear-gradient(135deg,#e2531f,#f59e0b)}.aiadm-mono-groq{background:linear-gradient(135deg,#b91c1c,#d62b33)}.aiadm-mono-deepseek{background:linear-gradient(135deg,#173db0,#3b82f6)}.aiadm-mono-deepinfra{background:linear-gradient(135deg,#0f766e,#14b8a6)}.aiadm-pills{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin-top:10px;min-height:24px}.aiadm-pill{display:inline-flex;align-items:center;max-width:100%;padding:3px 9px;border-radius:999px;font-size:12px;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;background:var(--gray-soft);color:var(--ink-2)}.aiadm-pill.brand{background:var(--brand);color:#fff}.aiadm-pill.green{background:var(--green-soft);color:var(--green)}.aiadm-pill.red{background:var(--red-soft);color:var(--red)}.aiadm-pill.amber{background:var(--amber-soft);color:var(--amber)}.aiadm-switch{position:relative;display:inline-flex;cursor:pointer}.aiadm-switch input{position:absolute;opacity:0;width:0;height:0}.aiadm-switch-track{width:38px;height:22px;border-radius:999px;background:var(--border);position:relative;transition:background .15s ease}.aiadm-switch-track>span{position:absolute;top:3px;left:3px;width:16px;height:16px;border-radius:50%;background:#fff;box-shadow:var(--shadow);transition:transform .15s ease}.aiadm-switch input:checked+.aiadm-switch-track{background:var(--brand)}.aiadm-switch input:checked+.aiadm-switch-track>span{transform:translate(16px)}.aiadm-switch input:focus-visible+.aiadm-switch-track{box-shadow:0 0 0 3px var(--brand-soft)}.aiadm .sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.aiadm-usage .console-head p{margin:4px 0 0}.aiadm-usage-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;margin-top:14px}.aiadm-usage-stats>div{display:flex;flex-wrap:wrap;align-items:baseline;column-gap:10px;row-gap:2px;min-width:0;padding:11px 16px;border-radius:10px;background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow)}.aiadm-usage-stats b{font-size:20px;line-height:1.2;letter-spacing:-.01em}.aiadm-usage-stats span{font-size:12.5px;color:var(--muted)}.aiadm-bars{display:flex;align-items:flex-end;gap:3px;height:90px;margin-top:22px;padding-bottom:2px;border-bottom:1px solid var(--border)}.aiadm-bar{flex:1;height:100%;display:flex;align-items:flex-end}.aiadm-bar span{display:block;width:100%;border-radius:3px 3px 0 0;background:var(--brand);opacity:.85}.aiadm-bar:hover span{opacity:1}.aiadm-bars-axis{display:flex;justify-content:space-between;margin-top:6px}.aiadm-usage-tables{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,340px),1fr));gap:20px;margin-top:22px}.aiadm-table-wrap{overflow-x:auto}.aiadm-table-wrap h3{font-size:13px;margin:0 0 8px;color:var(--ink-2)}.aiadm-table{width:100%}.aiadm-table .num{text-align:right;font-variant-numeric:tabular-nums}.aiadm-err-num{color:var(--red);font-weight:600}.aiadm-empty{text-align:center;padding:40px 20px}.aiadm-empty-inline{margin-top:16px;padding:22px;border:1px dashed var(--border);border-radius:10px;text-align:center;color:var(--muted);font-size:13px}.aiadm-skeleton{display:grid;gap:16px}.aiadm-skeleton>div{height:110px;border-radius:var(--radius);background:linear-gradient(90deg,var(--surface-2),#eef2f8,var(--surface-2));background-size:200% 100%;animation:aiadm-shimmer 1.2s ease-in-out infinite}.aiadm-skeleton>div:first-child{height:120px}@keyframes aiadm-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@media(max-width:640px){.aiadm-hero{padding:20px}.aiadm-hero-stats>div{min-width:calc(50% - 5px);flex:1}}.st-page{--st-data: #1f4fd6;--st-transform: #0e7490;--st-predictive: #7c3aed;--st-prescriptive: #15803d;--st-ai: #c026d3;--st-actions: #c2410c;--st-control: #475569;--st-left-w: 272px;--st-right-w: 368px;padding:24px 28px 40px;min-width:0}.st-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:18px;flex-wrap:wrap}.st-head-title{display:flex;align-items:center;gap:14px}.st-head h1{font-size:22px;margin:0 0 2px;letter-spacing:-.01em}.st-head p{margin:0;font-size:13.5px}.st-logo{width:40px;height:40px;border-radius:11px;display:grid;place-items:center;background:var(--brand-gradient);color:#fff;box-shadow:0 6px 16px #173db047}.st-ai{display:inline-flex;align-items:center;gap:8px;font-size:12.5px;font-weight:500;padding:7px 12px;border-radius:999px;border:1px solid var(--border);background:var(--surface)}.st-ai .st-dot{width:8px;height:8px}.st-ai-on{color:var(--ink-2)}.st-ai-on .st-dot{background:var(--green);box-shadow:0 0 0 3px var(--green-soft)}.st-ai-off{color:var(--amber);border-color:#f3d9ad;background:var(--amber-soft)}.st-ai-off .st-dot{background:var(--amber)}.st-ai a{color:var(--brand);font-weight:600;margin-left:4px}.st-error{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;background:var(--red-soft);color:#991b1b;border:1px solid #f5c2c2;border-radius:10px;padding:10px 14px;margin-bottom:14px;font-size:13.5px}.st-error ul{margin:6px 0 0;padding-left:18px}.st-toast{position:fixed;bottom:24px;left:50%;transform:translate(-50%);z-index:60;background:var(--brand-deep);color:#fff;padding:10px 18px;border-radius:10px;box-shadow:0 10px 30px #0b16404d;font-size:13.5px;animation:st-rise .18s ease-out}@keyframes st-rise{0%{opacity:0;transform:translate(-50%,8px)}to{opacity:1;transform:translate(-50%)}}.st-loading{padding:48px;text-align:center;color:var(--muted)}.st-pad{padding:12px 14px}.st-shell{display:grid;gap:16px;align-items:start;grid-template-columns:var(--st-left-w) minmax(0,1fr) var(--st-right-w)}.st-shell-2{grid-template-columns:var(--st-left-w) minmax(0,1fr)}.st-left,.st-props,.st-main>.st-console,.st-history{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow)}.st-main{min-width:0}.st-left{position:sticky;top:16px;display:flex;flex-direction:column;max-height:calc(100vh - 32px);overflow:hidden}.st-left-head{display:flex;align-items:center;justify-content:space-between;padding:14px 14px 10px}.st-left-head h2{margin:0;font-size:15px}.st-left .st-search{margin:0 14px 10px;width:auto;align-self:stretch}.st-template-link{display:flex;gap:10px;align-items:center;text-align:left;margin:0 14px 10px;padding:10px 12px;border:1px dashed var(--brand-line);border-radius:10px;background:var(--brand-soft);color:var(--ink);cursor:pointer}.st-template-link:hover{border-color:var(--brand)}.st-template-link span:last-child{display:flex;flex-direction:column;font-size:13px}.st-template-link-icon{color:var(--brand);font-size:16px}.st-agent-scroll{overflow-y:auto;padding:0 8px 10px}.st-agent-group ul{list-style:none;margin:0;padding:0}.st-agent-group-label{font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);padding:10px 8px 6px;font-weight:600}.st-agent-item{width:100%;display:flex;flex-direction:column;gap:3px;text-align:left;border:1px solid transparent;background:none;border-radius:9px;padding:9px 10px;cursor:pointer;color:var(--ink);font:inherit}.st-agent-item:hover{background:var(--surface-2)}.st-agent-on{background:var(--brand-soft);border-color:var(--brand-line)}.st-agent-top{display:flex;align-items:center;justify-content:space-between;gap:8px}.st-agent-name{font-weight:600;font-size:13.5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.st-agent-desc{font-size:12.5px;color:var(--ink-2);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.st-agent-meta{display:flex;flex-wrap:wrap;gap:4px 10px;font-size:11.5px;color:var(--muted)}.st-landing{display:flex;flex-direction:column;gap:18px}.st-hero{position:relative;overflow:hidden;border-radius:16px;padding:30px 32px;color:#fff;background:radial-gradient(1200px 300px at 110% -20%,rgba(255,255,255,.14),transparent 60%),var(--brand-gradient);box-shadow:0 14px 34px #0b164038}.st-hero .st-eyebrow{color:#ffffffbf}.st-hero h2{font-size:26px;margin:6px 0 10px;letter-spacing:-.015em}.st-hero p{max-width:720px;margin:0 0 16px;color:#ffffffe0;line-height:1.55}.st-hero-points{list-style:none;padding:0;margin:0 0 20px;display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}.st-hero-points li{background:#ffffff1a;border:1px solid rgba(255,255,255,.16);border-radius:10px;padding:10px 12px;font-size:13px;color:#ffffffe6}.st-hero-points b{display:block;color:#fff;margin-bottom:2px}.st-hero .btn.primary{background:#fff;color:var(--brand-strong)}.st-section-title{margin:6px 0 0;font-size:15px}.st-gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:14px}.st-tpl{display:flex;flex-direction:column;min-width:0;background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:12px 14px;box-shadow:var(--shadow);transition:box-shadow .15s,border-color .15s}.st-tpl:hover{border-color:var(--brand-line)}.st-tpl-head{display:flex;justify-content:space-between;align-items:center}.st-tpl-cat{font-size:11px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--brand)}.st-tpl h3{font-size:15.5px;margin:8px 0 6px}.st-tpl-desc{font-size:13px;color:var(--ink-2);line-height:1.5;margin:0 0 10px;flex:1}.st-tpl-req{font-size:12px;color:var(--muted);margin:0 0 12px}.st-tpl-req span{font-weight:600;color:var(--ink-2);margin-right:4px}.st-tpl-foot{display:flex;justify-content:space-between;align-items:center;gap:8px;border-top:1px solid var(--border);padding-top:12px}.st-tpl-blocks{display:flex;gap:4px;flex-wrap:wrap}.st-agentbar{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;flex-wrap:wrap;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:14px 16px}.st-agentbar-main{min-width:0;flex:1}.st-title-input{width:100%;font:inherit;font-size:19px;font-weight:650;letter-spacing:-.01em;color:var(--ink);border:1px solid transparent;border-radius:8px;padding:3px 6px;margin-left:-6px;background:transparent}.st-title-input:hover:not(:disabled){border-color:var(--border)}.st-title-input:focus{outline:none;border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-soft)}.st-agentbar-meta{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin-top:6px}.st-unsaved{font-size:12px;color:var(--amber);font-weight:600}.st-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.st-btn-danger{background:var(--red)!important}.st-tabs{display:flex;gap:2px;margin:14px 0 12px;border-bottom:1px solid var(--border)}.st-tab{display:inline-flex;align-items:center;gap:8px;border:0;background:none;cursor:pointer;font:inherit;padding:9px 14px;color:var(--ink-2);font-weight:550;font-size:13.5px;border-bottom:2px solid transparent;margin-bottom:-1px}.st-tab:hover:not(:disabled){color:var(--ink)}.st-tab:disabled{opacity:.45;cursor:default}.st-tab-on{color:var(--brand);border-bottom-color:var(--brand)}.st-design{display:flex;flex-direction:column;gap:12px}.st-goal{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:12px 16px 10px;display:flex;flex-direction:column;gap:4px}.st-goal-label{font-size:10.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--brand)}.st-goal-input,.st-desc-input{font:inherit;border:1px solid transparent;border-radius:8px;padding:4px 6px;margin-left:-6px;resize:vertical;background:transparent;color:var(--ink);width:100%}.st-goal-input{font-size:15px;line-height:1.45}.st-desc-input{font-size:13px;color:var(--ink-2)}.st-goal-input:hover:not(:disabled),.st-desc-input:hover:not(:disabled){border-color:var(--border)}.st-goal-input:focus,.st-desc-input:focus{outline:none;border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-soft)}.st-canvas{border:1px solid var(--border);border-radius:var(--radius);padding:22px 24px 26px;background:radial-gradient(circle,#d9e0ec 1px,transparent 1.2px) 0 0 / 18px 18px,var(--surface-2);min-height:420px}.st-terminal{display:flex;align-items:center;gap:10px;max-width:640px;margin:0 auto;cursor:pointer;background:var(--surface);border:1px solid var(--border);border-radius:999px;padding:8px 16px;font-size:13px;box-shadow:var(--shadow)}.st-terminal-dot{width:10px;height:10px;border-radius:50%;background:var(--brand);box-shadow:0 0 0 4px var(--brand-soft);flex-shrink:0}.st-terminal-end .st-terminal-dot{background:var(--brand-deep)}.st-canvas-empty{max-width:640px;margin:18px auto;text-align:center;padding:30px;background:var(--surface);border:1px dashed var(--brand-line);border-radius:var(--radius)}.st-canvas-empty p{margin:4px 0}.st-canvas-empty .btn{margin-top:12px}.st-list{max-width:640px;margin:0 auto}.st-conn{position:relative;height:34px;display:flex;align-items:center;justify-content:center}.st-conn-line{position:absolute;top:0;bottom:0;left:50%;width:2px;transform:translate(-1px);background:var(--brand-line)}.st-conn-add{position:relative;width:24px;height:24px;border-radius:50%;border:1px solid var(--brand-line);background:var(--surface);color:var(--brand);font-size:16px;line-height:1;cursor:pointer;opacity:0;transition:opacity .12s,transform .12s,background .12s}.st-conn:hover .st-conn-add,.st-conn-add:focus-visible{opacity:1}.st-conn-add:hover{background:var(--brand);color:#fff;transform:scale(1.1)}.st-list>.st-conn:only-child .st-conn-add{opacity:1}.st-conn-drag .st-conn-line{background:repeating-linear-gradient(to bottom,var(--brand) 0 4px,transparent 4px 8px)}.st-conn-over{height:46px}.st-conn-over:after{content:"";position:absolute;left:12%;right:12%;top:50%;height:4px;transform:translateY(-2px);border-radius:4px;background:var(--brand);box-shadow:0 0 0 4px var(--brand-soft)}.st-card,.st-group-head{position:relative;display:flex;align-items:center;gap:12px;background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:12px 14px 12px 16px;box-shadow:var(--shadow);cursor:pointer;transition:box-shadow .12s,border-color .12s}.st-card:before,.st-group-head:before{content:"";position:absolute;left:-1px;top:10px;bottom:10px;width:3px;border-radius:0 3px 3px 0;background:var(--st-control)}.st-cat-edge-data:before{background:var(--st-data)}.st-cat-edge-transform:before{background:var(--st-transform)}.st-cat-edge-predictive:before{background:var(--st-predictive)}.st-cat-edge-prescriptive:before{background:var(--st-prescriptive)}.st-cat-edge-ai:before{background:var(--st-ai)}.st-cat-edge-actions:before{background:var(--st-actions)}.st-card:hover,.st-group-head:hover{box-shadow:var(--shadow-hover)}.st-card:focus-visible,.st-group-head:focus-visible{outline:none;border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-soft)}.st-card-on,.st-group-on>.st-group-head{border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-soft),var(--shadow)}.st-card-off{opacity:.55}.st-card-missing{border-color:#f5c2c2;background:var(--red-soft)}.st-card[draggable=true]{cursor:grab}.st-card-num{font-size:11px;font-weight:600;color:var(--muted);min-width:18px;font-variant-numeric:tabular-nums}.st-card-body{min-width:0;flex:1}.st-card-title{display:flex;align-items:center;gap:6px;flex-wrap:wrap;font-weight:600;font-size:14px}.st-card-sub{font-size:12.5px;color:var(--muted);margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.st-card-type{color:var(--ink-2)}.st-mono-ish{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12px;white-space:normal}.st-card-run{display:flex;align-items:center;gap:6px;flex-shrink:0}.st-card-tools{display:flex;gap:2px;opacity:0;transition:opacity .12s}.st-card:hover .st-card-tools,.st-group-head:hover .st-card-tools,.st-card-on .st-card-tools,.st-group-on .st-card-tools{opacity:1}.st-iter{font-size:11px;font-weight:600;color:var(--brand-strong);background:var(--brand-soft);border-radius:999px;padding:2px 8px;white-space:nowrap}.st-group{border-radius:14px;border:1.5px solid var(--border);background:#ffffff8c;padding:6px}.st-group-loop{border-color:#c9d6f7;background:linear-gradient(180deg,#ecf1fecc,#ecf1fe59)}.st-group-if{border-color:#d7dde6;border-style:dashed}.st-group-head:before{background:var(--st-control)}.st-group-loop>.st-group-head:before{background:var(--brand)}.st-group-body{padding:0 10px 0 22px;position:relative}.st-group-body:before{content:"";position:absolute;left:10px;top:0;bottom:0;width:2px;border-radius:2px;background:var(--brand-line)}.st-group-body .st-list{max-width:none}.st-group-empty{text-align:center;font-size:12.5px;color:var(--muted);padding:10px 0 0}.st-group-foot{font-size:11.5px;color:var(--muted);text-align:center;padding:2px 0 4px}.st-group-loop>.st-group-foot{color:var(--brand-strong)}.st-pill{display:inline-flex;align-items:center;gap:4px;font-size:11px;font-weight:550;line-height:1.4;padding:2px 8px;border-radius:999px;background:var(--surface-2);color:var(--ink-2);border:1px solid var(--border);white-space:nowrap}.st-pill-amber{background:var(--amber-soft);color:#9a5a05;border-color:#f3d9ad}.st-pill-green{background:var(--green-soft);color:var(--green);border-color:#bfe5cd}.st-pill-red{background:var(--red-soft);color:var(--red);border-color:#f5c2c2}.st-pill-btn{cursor:pointer;font:inherit;font-size:11px}.st-bicon{width:30px;height:30px;border-radius:8px;display:inline-grid;place-items:center;flex-shrink:0;color:var(--st-control);background:color-mix(in srgb,var(--st-control) 11%,white)}.st-bicon.st-cat-data{color:var(--st-data);background:color-mix(in srgb,var(--st-data) 11%,white)}.st-bicon.st-cat-transform{color:var(--st-transform);background:color-mix(in srgb,var(--st-transform) 11%,white)}.st-bicon.st-cat-predictive{color:var(--st-predictive);background:color-mix(in srgb,var(--st-predictive) 11%,white)}.st-bicon.st-cat-prescriptive{color:var(--st-prescriptive);background:color-mix(in srgb,var(--st-prescriptive) 11%,white)}.st-bicon.st-cat-ai{color:var(--st-ai);background:color-mix(in srgb,var(--st-ai) 11%,white)}.st-bicon.st-cat-actions{color:var(--st-actions);background:color-mix(in srgb,var(--st-actions) 11%,white)}.st-chip .st-bicon,.st-tpl-blocks .st-bicon{width:22px;height:22px;border-radius:6px}.st-status{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:600;white-space:nowrap}.st-dot{width:8px;height:8px;border-radius:50%;display:inline-block;background:var(--muted);flex-shrink:0}.st-status-ok{color:var(--green)}.st-status-ok .st-dot{background:var(--green)}.st-status-bad{color:var(--red)}.st-status-bad .st-dot{background:var(--red)}.st-status-wait{color:var(--amber)}.st-status-wait .st-dot{background:var(--amber);box-shadow:0 0 0 3px var(--amber-soft)}.st-status-run{color:var(--brand)}.st-status-run .st-dot{background:var(--brand);animation:st-pulse 1.2s ease-in-out infinite}.st-status-off{color:var(--muted)}.st-status-compact .st-dot{width:9px;height:9px}@keyframes st-pulse{0%,to{box-shadow:0 0 #1f4fd673}50%{box-shadow:0 0 0 5px #1f4fd600}}.st-icon-btn{border:0;background:none;cursor:pointer;color:var(--muted);font-size:15px;line-height:1;width:26px;height:26px;border-radius:7px;display:inline-grid;place-items:center;flex-shrink:0}.st-icon-btn:hover{background:var(--surface-2);color:var(--ink)}.st-icon-btn.st-danger:hover{background:var(--red-soft);color:var(--red)}.st-modal-back{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;display:grid;place-items:center;padding:24px;background:#0b164061;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);animation:st-fade .12s ease-out}@keyframes st-fade{0%{opacity:0}to{opacity:1}}.st-modal{width:min(560px,100%);max-height:calc(100vh - 48px);display:flex;flex-direction:column;background:var(--surface);border-radius:14px;box-shadow:0 24px 64px #0b16404d;overflow:hidden}.st-modal-wide{width:min(1080px,100%)}.st-modal-head{display:flex;justify-content:space-between;gap:12px;padding:18px 20px 12px;border-bottom:1px solid var(--border)}.st-modal-head h2{margin:0;font-size:17px}.st-modal-head p{margin:4px 0 0}.st-modal-body{padding:16px 20px;overflow-y:auto}.st-modal-foot{display:flex;justify-content:flex-end;gap:8px;padding:12px 20px;border-top:1px solid var(--border);background:var(--surface-2)}.st-palette{width:min(860px,100%);height:min(720px,calc(100vh - 48px))}.st-palette-head{display:flex;justify-content:space-between;padding:18px 20px 6px}.st-palette-head h2{margin:0;font-size:17px}.st-palette-head p{margin:2px 0 0}.st-palette-search{padding:8px 20px}.st-palette-search .st-input{font-size:14px;padding:10px 12px}.st-palette-cats{display:flex;gap:6px;flex-wrap:wrap;padding:4px 20px 12px;border-bottom:1px solid var(--border)}.st-chip{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--border);background:var(--surface);color:var(--ink-2);border-radius:999px;padding:4px 11px 4px 6px;font:inherit;font-size:12.5px;cursor:pointer}.st-chip:first-child{padding-left:11px}.st-chip:hover{background:var(--surface-2)}.st-chip-on{background:var(--brand-soft);border-color:var(--brand);color:var(--brand-strong)}.st-palette-body{overflow-y:auto;padding:8px 20px 20px}.st-palette-group{margin-top:12px}.st-palette-group-head{display:flex;align-items:baseline;gap:10px;margin-bottom:8px;font-size:13px}.st-palette-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:8px}.st-block-tile{display:flex;gap:11px;align-items:flex-start;text-align:left;font:inherit;color:var(--ink);cursor:pointer;border:1px solid var(--border);background:var(--surface);border-radius:10px;padding:10px 12px;transition:border-color .12s,box-shadow .12s}.st-block-tile:hover,.st-block-tile:focus-visible{outline:none;border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-soft)}.st-block-text{display:flex;flex-direction:column;gap:3px;min-width:0}.st-block-name{display:flex;gap:6px;align-items:center;flex-wrap:wrap;font-weight:600;font-size:13.5px}.st-block-desc{font-size:12.5px;color:var(--ink-2);line-height:1.45}.st-props{position:sticky;top:16px;max-height:calc(100vh - 32px);display:flex;flex-direction:column;overflow:hidden}.st-props-head{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;padding:14px 16px 12px;border-bottom:1px solid var(--border)}.st-props-head h2{margin:2px 0 0;font-size:15px;word-break:break-word}.st-eyebrow{font-size:10.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.st-props-body{overflow-y:auto;padding:14px 16px 20px;display:flex;flex-direction:column;gap:14px}.st-props-block{display:flex;gap:11px;align-items:flex-start}.st-props-block-name{font-weight:600;font-size:13.5px}.st-props-section{display:flex;flex-direction:column;gap:8px;padding-bottom:14px;border-bottom:1px solid var(--border)}.st-props-section:last-child{border-bottom:0}.st-props-section h3{font-size:13px;margin:0}.st-props-section p{margin:0}.st-props-meta{flex-direction:row;justify-content:space-between;gap:8px}.st-props-meta div{display:flex;flex-direction:column;font-size:12.5px}.st-field{display:flex;flex-direction:column;gap:5px}.st-field-label{display:flex;justify-content:space-between;gap:8px;font-size:12.5px;font-weight:600;color:var(--ink-2)}.st-req{color:var(--accent);margin-left:3px}.st-field-hint{font-size:11.5px;color:var(--muted);line-height:1.4}.st-field-err{font-size:11.5px;color:var(--red)}.st-field-warn .st-input{border-color:#f3d9ad}.st-input{width:100%;font:inherit;font-size:13px;color:var(--ink);background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:7px 10px;transition:border-color .12s,box-shadow .12s}.st-input:focus{outline:none;border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-soft)}.st-input:disabled{background:var(--surface-2);color:var(--ink-2)}.st-input-bad{border-color:var(--red)!important}.st-area{resize:vertical;line-height:1.45}.st-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12.5px}.st-expr{position:relative}.st-expr-fx{position:absolute;left:9px;top:50%;transform:translateY(-50%);font-style:italic;font-weight:600;color:var(--brand);font-size:12.5px;pointer-events:none}.st-expr .st-input{padding-left:30px}.st-tags{display:flex;flex-wrap:wrap;gap:5px;align-items:center;min-height:34px;border:1px solid var(--border);border-radius:8px;padding:4px 6px;background:var(--surface)}.st-tags:focus-within{border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-soft)}.st-tags-off{background:var(--surface-2)}.st-tag{display:inline-flex;align-items:center;gap:4px;background:var(--brand-soft);color:var(--brand-strong);border-radius:6px;padding:2px 4px 2px 8px;font-size:12.5px}.st-tag button{border:0;background:none;color:inherit;cursor:pointer;font-size:13px;padding:0 3px;border-radius:4px}.st-tag button:hover{background:#1f4fd61f}.st-tags-input{flex:1;min-width:90px;border:0;outline:none;font:inherit;font-size:13px;padding:3px 4px;background:transparent}.st-tags-template{display:flex;flex-direction:column;gap:4px;align-items:flex-start}.st-rows{display:flex;flex-direction:column;gap:8px;align-items:flex-start}.st-rows-grid{display:grid;gap:6px;width:100%;align-items:start}.st-rows-head{font-size:11px;font-weight:600;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}.st-switch{display:inline-flex;align-items:center;gap:8px;cursor:pointer}.st-switch input{position:absolute;opacity:0;width:0;height:0}.st-switch-track{width:34px;height:20px;border-radius:999px;background:#cdd4e1;position:relative;transition:background .15s;flex-shrink:0}.st-switch-track span{position:absolute;top:2px;left:2px;width:16px;height:16px;border-radius:50%;background:#fff;box-shadow:0 1px 2px #0003;transition:transform .15s}.st-switch input:checked+.st-switch-track{background:var(--brand)}.st-switch input:checked+.st-switch-track span{transform:translate(14px)}.st-switch input:focus-visible+.st-switch-track{box-shadow:0 0 0 3px var(--brand-soft)}.st-advanced{border-top:1px solid var(--border);padding-top:10px}.st-advanced summary{cursor:pointer;font-size:12.5px;font-weight:600;color:var(--ink-2);margin-bottom:10px}.st-advanced[open]{display:flex;flex-direction:column;gap:12px}.st-callout{font-size:12.5px;line-height:1.45;border-radius:9px;padding:9px 12px;background:var(--brand-soft);color:var(--brand-deep);border:1px solid var(--brand-line)}.st-callout-amber{background:var(--amber-soft);color:#7c4a06;border-color:#f3d9ad}.st-callout-red{background:var(--red-soft);color:#991b1b;border-color:#f5c2c2}.st-inputs{display:flex;flex-direction:column;gap:10px;align-items:stretch}.st-inputs>.btn{align-self:flex-start}.st-input-row{display:flex;flex-direction:column;gap:5px;padding:10px;border:1px solid var(--border);border-radius:10px;background:var(--surface-2)}.st-input-row-top{display:grid;grid-template-columns:1fr 96px 26px;gap:6px;align-items:center}.st-console{padding:16px 18px 20px}.st-console-empty{text-align:center;padding:48px 24px}.st-console-empty p{max-width:520px;margin:6px auto 16px}.st-empty-art{width:52px;height:52px;margin:0 auto 10px;border-radius:14px;display:grid;place-items:center;color:var(--brand);background:var(--brand-soft);font-size:20px}.st-console-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;flex-wrap:wrap;padding-bottom:12px;border-bottom:1px solid var(--border);margin-bottom:14px}.st-console-title{display:flex;align-items:center;gap:10px}.st-console-title h3{margin:0;font-size:16px}.st-console-meta{margin-top:4px}.st-run-inputs{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 12px}.st-kv{display:inline-flex;gap:6px;font-size:12px;background:var(--surface-2);border:1px solid var(--border);border-radius:7px;padding:3px 8px;max-width:100%}.st-kv span{color:var(--muted);font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.st-kv b{font-weight:550;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:320px}.st-approval{border:1px solid #f0c98a;background:linear-gradient(180deg,#fffaf1,#fff 70%);border-radius:12px;padding:16px 18px;margin-bottom:16px;box-shadow:0 6px 20px #d977061a}.st-approval-head{display:flex;gap:12px;align-items:flex-start}.st-approval-head h3{margin:2px 0;font-size:16px}.st-approval-head .st-eyebrow{color:#b45309}.st-approval-icon{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:var(--amber);color:#fff;font-weight:800;flex-shrink:0}.st-approval-summary{margin:12px 0 0;font-size:13.5px;color:var(--ink-2)}.st-reasoning{margin:12px 0 0;padding:8px 12px;border-left:3px solid var(--st-ai);background:color-mix(in srgb,var(--st-ai) 6%,white);font-size:13px;color:var(--ink-2);border-radius:0 8px 8px 0}.st-change{margin-top:12px;border:1px solid var(--border);border-radius:10px;overflow:hidden;background:var(--surface)}.st-change-head{font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);padding:8px 12px 0}.st-change-line{display:flex;align-items:center;gap:8px;padding:8px 12px;flex-wrap:wrap;word-break:break-all}.st-change-body{margin:0;padding:10px 12px;background:var(--surface-2);border-top:1px solid var(--border);font-size:12px;max-height:240px;overflow:auto}.st-method{font-size:10.5px;font-weight:700;letter-spacing:.04em;padding:2px 7px;border-radius:5px;background:var(--brand-soft);color:var(--brand-strong)}.st-method-POST,.st-method-PUT,.st-method-PATCH{background:var(--amber-soft);color:#9a5a05}.st-method-DELETE{background:var(--red-soft);color:var(--red)}.st-method-GET{background:var(--green-soft);color:var(--green)}.st-approval-actions{display:flex;gap:8px;align-items:center;margin-top:14px}.st-approval-actions .st-input{flex:1}.st-approval>textarea{margin-top:12px}.st-timeline{list-style:none;margin:0;padding:0;position:relative}.st-timeline:before{content:"";position:absolute;left:17px;top:8px;bottom:8px;width:2px;background:var(--border)}.st-tl-item{position:relative;margin-bottom:6px}.st-tl-head{width:100%;display:flex;align-items:center;gap:10px;text-align:left;font:inherit;color:var(--ink);background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:8px 12px 8px 10px;cursor:pointer}.st-tl-head:hover{border-color:var(--brand-line);background:#fbfcff}.st-tl-marker{width:16px;display:grid;place-items:center;background:var(--surface);position:relative;z-index:1}.st-tl-name{font-weight:600;font-size:13.5px;white-space:nowrap}.st-tl-summary{flex:1;min-width:0;font-size:12.5px;color:var(--ink-2);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.st-tl-ms{font-size:11.5px;color:var(--muted);font-variant-numeric:tabular-nums;white-space:nowrap}.st-tl-body{margin:6px 0 10px 34px;padding:12px 14px;border:1px solid var(--border);border-radius:10px;background:var(--surface);display:flex;flex-direction:column;gap:10px}.st-tl-failed>.st-tl-head{border-color:#f5c2c2}.st-tl-awaiting_approval>.st-tl-head{border-color:#f0c98a;background:#fffaf1}.st-tl-pending{display:flex;align-items:center;gap:10px;padding:8px 10px}.st-text-red{color:var(--red)}.st-spinner{width:16px;height:16px;border-radius:50%;border:2px solid var(--brand-line);border-top-color:var(--brand);animation:st-spin .8s linear infinite;position:relative;z-index:1;background:var(--surface)}@keyframes st-spin{to{transform:rotate(360deg)}}.st-output{display:flex;flex-direction:column;gap:10px;min-width:0}.st-output-text{font-size:13.5px;line-height:1.55;white-space:pre-wrap;color:var(--ink)}.st-output-chart{border:1px solid var(--border);border-radius:10px;padding:8px}.st-metrics{display:flex;flex-direction:column;gap:10px}.st-metric-row{display:flex;flex-wrap:wrap;gap:8px}.st-metric{display:flex;flex-direction:column;gap:2px;padding:8px 12px;border-radius:9px;background:var(--surface-2);border:1px solid var(--border);min-width:84px}.st-metric span{font-size:11px;color:var(--muted)}.st-metric b{font-size:15px;font-variant-numeric:tabular-nums}.st-metric-note b{font-size:12.5px;font-weight:550}.st-bars{display:flex;flex-direction:column;gap:5px}.st-bar{display:grid;grid-template-columns:minmax(90px,180px) 1fr 70px;gap:8px;align-items:center;font-size:12px}.st-bar-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--ink-2)}.st-bar-track{height:8px;border-radius:4px;background:var(--surface-2);overflow:hidden}.st-bar-track span{display:block;height:100%;background:var(--st-predictive);border-radius:4px}.st-bar-track span.st-bar-neg{background:var(--accent)}.st-bar-value{text-align:right;font-variant-numeric:tabular-nums}.st-calls{margin:0;padding-left:20px;display:flex;flex-direction:column;gap:5px;font-size:12.5px}.st-calls li{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.st-links{display:flex;gap:6px;flex-wrap:wrap}.st-raw summary{cursor:pointer;font-size:12px;color:var(--muted)}.st-raw pre{margin:8px 0 0;padding:10px;background:var(--surface-2);border-radius:8px;font-size:11.5px;max-height:320px;overflow:auto}.st-table-wrap{overflow-x:auto;border:1px solid var(--border);border-radius:10px}.st-table{width:100%;border-collapse:collapse;font-size:12.5px}.st-table th{text-align:left;font-weight:600;color:var(--ink-2);background:var(--surface-2);padding:7px 10px;border-bottom:1px solid var(--border);white-space:nowrap;position:sticky;top:0}.st-table td{padding:6px 10px;border-bottom:1px solid var(--border);white-space:nowrap;max-width:320px;overflow:hidden;text-overflow:ellipsis}.st-table tr:last-child td{border-bottom:0}.st-table .st-num{text-align:right;font-variant-numeric:tabular-nums}.st-table-foot{padding:6px 10px;border-top:1px solid var(--border);background:var(--surface-2)}.st-result{margin-top:16px;padding-top:14px;border-top:1px solid var(--border);display:flex;flex-direction:column;gap:8px}.st-result h4{margin:0;font-size:13px}.st-note{font-size:13px;color:var(--ink-2);padding:7px 10px;border-radius:8px;background:var(--surface-2)}.st-notif{border:1px solid var(--border);border-radius:10px;padding:10px 12px;background:var(--surface)}.st-notif-head{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;font-size:13px}.st-notif p{margin:6px 0 4px;font-size:13px;white-space:pre-wrap;color:var(--ink-2)}.st-history{padding:12px 14px 16px}.st-history-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.st-history-table tbody tr{cursor:pointer}.st-history-table tbody tr:hover td{background:#fbfcff}.st-row-on td{background:var(--brand-soft)!important}.st-form{display:flex;flex-direction:column;gap:14px}.st-form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}@media(max-width:1320px){.st-page{--st-right-w: 330px;--st-left-w: 240px}}@media(max-width:1160px){.st-shell{grid-template-columns:var(--st-left-w) minmax(0,1fr)}.st-props{grid-column:2;position:static;max-height:none}}@media(max-width:860px){.st-page{padding:16px 16px 32px}.st-shell,.st-shell-2{grid-template-columns:minmax(0,1fr)}.st-props{grid-column:auto}.st-left{position:static;max-height:320px}.st-canvas{padding:14px 10px}.st-card-tools,.st-conn-add{opacity:1}.st-form-row{grid-template-columns:1fr}.st-bar{grid-template-columns:90px 1fr 56px}}.st-tpl-filter{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 14px}.st-tpl-tab{border:1px solid var(--border);background:var(--surface);color:var(--ink-2);border-radius:999px;padding:4px 11px;font-size:12.5px;cursor:pointer}.st-tpl-tab:hover{border-color:var(--brand-line)}.st-tpl-tab-on{background:var(--brand);border-color:var(--brand);color:#fff}.st-tpl-btns{display:flex;gap:6px}:root{--bg: #ffffff;--surface: #ffffff;--surface-2: #f5f7fb;--border: #e3e8f1;--ink: #0e1a3a;--ink-2: #4a5572;--muted: #6b7590;--brand: #1f4fd6;--brand-strong: #173db0;--brand-deep: #0b1640;--brand-soft: #ecf1fe;--brand-line: #d5e0fb;--brand-gradient: linear-gradient(135deg, #0b1640 0%, #173db0 55%, #1f4fd6 100%);--accent: #d62b33;--accent-soft: #fdeced;--green: #16a34a;--green-soft: #e9f7ef;--red: #dc2626;--red-soft: #fdecec;--amber: #d97706;--amber-soft: #fdf3e3;--gray-soft: #eef0f3;--radius: 12px;--radius-sm: 8px;--radius-lg: 16px;--shadow: 0 1px 2px rgba(11, 22, 64, .05), 0 1px 3px rgba(11, 22, 64, .07);--shadow-hover: 0 8px 24px rgba(11, 22, 64, .1);--canvas: #f7f8fb;--topbar-h: 56px;--rail-w: 248px;--rail-w-collapsed: 64px;--focus-ring: 0 0 0 3px rgba(31, 79, 214, .22);--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 24px;--space-6: 32px;--space-7: 48px;font-family:Inter,Segoe UI Variable Text,Segoe UI,-apple-system,BlinkMacSystemFont,Roboto,Helvetica Neue,Arial,sans-serif;font-size:14px;line-height:1.45}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background:var(--bg);color:var(--ink);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}button,input,select,textarea{font-family:inherit}h1,h2,h3,h4{color:inherit}:where(a,button,[role=button],[tabindex],summary):focus-visible{outline:none;box-shadow:var(--focus-ring);border-radius:6px}::selection{background:#1f4fd62e}.layout{display:flex;min-height:100vh;background:var(--bg)}.sidebar{width:256px;flex-shrink:0;background:linear-gradient(90deg,var(--brand-deep),var(--brand)) top / 100% 3px no-repeat,var(--surface);border-right:1px solid var(--border);display:flex;flex-direction:column;padding:20px 14px;position:sticky;top:0;height:100vh}div.brand{display:flex;align-items:center;gap:11px;padding:4px 6px 22px}.brand-logo{display:block;flex-shrink:0}.brand-name{display:block;height:15px;width:auto;margin:2px 0 6px}.brand-sub{font-size:10.5px;font-weight:600;color:var(--muted);letter-spacing:.14em;text-transform:uppercase}nav{display:flex;flex-direction:column;gap:2px;flex:1;overflow-y:auto}.nav-group-label{font-size:11px;text-transform:uppercase;letter-spacing:.07em;color:var(--muted);padding:16px 10px 6px}.nav-item{display:flex;align-items:center;gap:11px;padding:9px 10px;border-radius:9px;color:var(--ink-2);text-decoration:none;font-size:14px;font-weight:500;transition:background .12s,color .12s;position:relative}.nav-item span:first-of-type{flex:1}.nav-item:hover{background:var(--surface-2);color:var(--ink)}.nav-item.active{background:var(--brand-soft);color:var(--brand-strong)}.nav-item.active:before{content:"";position:absolute;left:0;top:9px;bottom:9px;width:3px;border-radius:3px;background:var(--brand-gradient)}.nav-dot{width:7px;height:7px;border-radius:50%;background:var(--muted)}.nav-dot-online{background:var(--green)}.nav-dot-offline{background:var(--red)}.nav-dot-degraded{background:var(--amber)}.nav-dot-disabled{background:var(--border)}.sidebar-foot{font-size:11px;color:var(--muted);padding:14px 10px 2px;border-top:1px solid var(--border)}.content{flex:1;min-width:0;background:var(--bg)}.page{max-width:1240px;margin:0 auto;padding:28px 40px 64px}.page-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:24px}.page-head h1{font-size:24px;font-weight:700;margin:0 0 4px;letter-spacing:-.02em;line-height:1.25}.page-head p.muted{font-size:14px;max-width:72ch;line-height:1.5}.muted{color:var(--ink-2);margin:0}.muted.small{font-size:13px;margin-bottom:14px}.title-with-icon{display:flex;gap:16px;align-items:flex-start}.page-eyebrow{display:flex;align-items:center;flex-wrap:wrap;gap:6px;margin-bottom:6px;font-size:12.5px;font-weight:500;color:var(--muted)}.page-eyebrow a{color:var(--ink-2);text-decoration:none}.page-eyebrow a:hover{color:var(--brand);text-decoration:underline}.page-eyebrow-here{color:var(--ink-2);font-weight:600}.module-head{margin-bottom:20px}.module-head .card-icon.big{margin-top:4px;box-shadow:inset 0 0 0 1px var(--brand-line)}.state-panel{max-width:560px}.state-panel h2{font-size:16px!important;margin-bottom:6px!important}.module-skeleton{display:flex;gap:16px;align-items:flex-start;margin-bottom:28px}.sk-lines{flex:1;display:flex;flex-direction:column;gap:10px;padding-top:6px}.sk{border-radius:6px;background:linear-gradient(90deg,var(--gray-soft) 0%,var(--surface-2) 50%,var(--gray-soft) 100%);background-size:200% 100%;animation:sk-shimmer 1.2s ease-in-out infinite}.sk-icon{width:56px;height:56px;border-radius:14px;flex:none}.sk-line{height:12px}.sk-line.w30{width:30%}.sk-line.w50{width:50%;height:20px}.sk-line.w70{width:70%}@keyframes sk-shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}@media(prefers-reduced-motion:reduce){.sk{animation:none}}.stat-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;margin-bottom:18px}a.stat-link{text-decoration:none;color:inherit}a.stat-link:hover{border-color:var(--accent, var(--border))}.stat{display:flex;align-items:baseline;gap:10px;min-width:0;background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:11px 16px;box-shadow:var(--shadow)}.stat-value{font-size:20px;font-weight:700;line-height:1.2;letter-spacing:-.01em}.stat-label{font-size:12.5px;color:var(--muted);margin-top:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.stat-green .stat-value{color:var(--green)}.stat-red .stat-value{color:var(--red)}.stat-amber .stat-value{color:var(--amber)}.stat-ink .stat-value{color:var(--ink)}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:10px}.card{background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:12px 14px;cursor:pointer;min-width:0;box-shadow:var(--shadow);transition:box-shadow .15s,border-color .15s;display:flex;flex-direction:column}.card:hover{border-color:var(--brand-line)}.card-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.card-icon{width:36px;height:36px;border-radius:9px;background:var(--brand-soft);color:var(--brand);display:grid;place-items:center}.card-icon.big{width:56px;height:56px;border-radius:14px}.card h3{margin:0 0 4px;font-size:14px}.tag{display:inline-block;font-size:11px;font-weight:600;color:var(--ink-2);background:var(--gray-soft);padding:3px 9px;border-radius:20px;margin-bottom:10px;width:fit-content}.card-desc{font-size:13px;color:var(--ink-2);line-height:1.5;margin:0 0 16px;flex:1}.card-foot{display:flex;justify-content:flex-end;align-items:center;border-top:1px solid var(--border);padding-top:12px}.chev{font-size:12px;font-weight:600;color:var(--brand)}.badge{display:inline-flex;align-items:center;gap:7px;font-size:12px;font-weight:600;padding:5px 11px;border-radius:20px}.badge .dot{width:7px;height:7px;border-radius:50%;background:currentColor}.badge .latency{font-weight:500;opacity:.7}.badge-online{color:var(--green);background:var(--green-soft)}.badge-offline{color:var(--red);background:var(--red-soft)}.badge-degraded{color:var(--amber);background:var(--amber-soft)}.badge-disabled,.badge-unknown{color:var(--muted);background:var(--gray-soft)}.panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:24px;box-shadow:var(--shadow)}.panel h2{font-size:15px;font-weight:650;margin:0 0 4px;letter-spacing:-.005em}.panel h2.mt{margin-top:24px}.field-row{display:flex;gap:14px;margin-top:16px}.field{display:flex;flex-direction:column;gap:6px;margin-top:16px}.field.grow{flex:1}.field-row .field{margin-top:0}.field label{font-size:12.5px;font-weight:600;color:var(--ink-2)}.field input,.field select{border:1px solid var(--border);border-radius:8px;padding:9px 11px;font-size:14px;color:var(--ink);background:var(--surface);outline:none;transition:border-color .12s,box-shadow .12s}.field input:hover,.field select:hover{border-color:#cfd6e4}.field input:focus,.field select:focus{border-color:var(--brand);box-shadow:var(--focus-ring)}.field input::placeholder,.field textarea::placeholder{color:var(--muted)}.field input:disabled{background:var(--surface-2);color:var(--muted)}.field.checkbox{flex-direction:row;align-items:center}.field.checkbox label{display:flex;align-items:center;gap:8px;font-weight:500;color:var(--ink);cursor:pointer}input[type=checkbox],input[type=radio]{accent-color:var(--brand)}.actions{display:flex;gap:12px;margin-top:22px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;border:1px solid var(--border);border-radius:8px;padding:9px 16px;min-height:36px;background:var(--surface);color:var(--ink);line-height:1.2;white-space:nowrap;font-size:13.5px;font-weight:600;cursor:pointer;transition:background .12s,border-color .12s,box-shadow .12s,color .12s}.btn:hover{background:var(--surface-2)}.btn.primary{background:var(--brand);border-color:var(--brand);color:#fff;box-shadow:0 1px 2px #0b164033,inset 0 1px #ffffff1f}.btn.primary:hover{background:var(--brand-strong);border-color:var(--brand-strong)}.btn.ghost{background:var(--surface);color:var(--ink);border-color:var(--border)}.btn.ghost:hover{background:var(--surface-2);border-color:#cfd6e4}.btn.danger:not(.ghost){background:var(--red);border-color:var(--red);color:#fff}.btn.danger:not(.ghost):hover{background:#b91c1c;border-color:#b91c1c}.btn:disabled,.btn:disabled:hover{opacity:.55;cursor:default}.btn.primary:disabled:hover{background:var(--brand)}.test-result{margin-top:16px;display:flex;align-items:center;gap:14px;padding:11px 14px;border-radius:8px;font-size:13px}.test-result strong{letter-spacing:.03em}.test-online{background:var(--green-soft);color:var(--green)}.test-offline{background:var(--red-soft);color:var(--red)}.test-degraded{background:var(--amber-soft);color:var(--amber)}@media(max-width:860px){.stat-row{grid-template-columns:repeat(2,1fr)}.sidebar{width:72px}.brand-name,.brand-sub,.nav-item span,.nav-group-label,.sidebar-foot{display:none}}.head-actions,.foot-actions{display:flex;align-items:center;gap:14px}a.btn{text-decoration:none;display:inline-flex;align-items:center}.btn.sm{padding:5px 11px;font-size:12.5px;min-height:30px}.console-panel{margin-bottom:22px}.console-head{display:flex;justify-content:space-between;align-items:center}.embed-frame{margin-top:14px;border:1px solid var(--border);border-radius:10px;overflow:hidden;background:var(--surface-2);height:560px}.embed-frame iframe{width:100%;height:100%;border:0;display:block;background:#fff}.back-link{background:none;border:0;padding:0;cursor:pointer;font-size:13px;font-weight:600;color:var(--brand);margin-bottom:18px}.back-link:hover{text-decoration:underline}.filter-bar{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin-bottom:14px}.search-wrap{display:flex;align-items:center;gap:9px;flex:1;min-width:260px;background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:0 12px;color:var(--muted)}.search-wrap:focus-within{border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-soft)}.search-wrap input{flex:1;border:0;outline:none;padding:8px 0;font-size:13.5px;color:var(--ink);background:transparent}.chips{display:flex;gap:6px}.chip{border:1px solid var(--border);background:var(--surface);color:var(--ink-2);border-radius:999px;padding:5px 12px;font-size:12.5px;font-weight:600;cursor:pointer}.chip:hover{background:var(--surface-2)}.chip-on{background:var(--brand-soft);border-color:var(--brand);color:var(--brand)}.cat-select{border:1px solid var(--border);border-radius:10px;padding:8px 10px;font-size:13px;color:var(--ink);background:var(--surface);max-width:240px}.result-count{margin:0 0 12px}.conn-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:10px}.conn-card{background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:11px 14px;cursor:pointer;display:flex;flex-direction:column;gap:3px;min-width:0;transition:box-shadow .15s,border-color .15s,background .15s}.conn-card:hover{box-shadow:var(--shadow);border-color:var(--brand-line);background:#fbfcff}.conn-card-head{display:flex;align-items:center;gap:8px;min-width:0}.conn-card h3{flex:1;min-width:0;margin:0;font-size:13.5px;font-weight:600;line-height:1.35;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.conn-card-go{flex:none;color:var(--brand);opacity:0;transition:opacity .15s}.conn-card:hover .conn-card-go{opacity:1}.conn-card-meta{display:flex;align-items:center;gap:6px;min-width:0;font-size:12px;color:var(--ink-2);white-space:nowrap;overflow:hidden}.conn-card-meta>span{overflow:hidden;text-overflow:ellipsis}.conn-card-meta .sep{color:var(--border);flex:none}.conn-card-top{display:flex;justify-content:space-between;align-items:center}.conn-count{font-size:11px;font-weight:600;color:var(--green);flex:none}.conn-card-foot{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--border);padding-top:10px;margin-top:auto}.auth-hint{font-size:12px;color:var(--muted);text-transform:capitalize}.dir-tag{display:inline-block;font-size:10.5px;font-weight:700;letter-spacing:.03em;border-radius:5px;padding:2px 7px;margin-right:6px}.conn-card-head .dir-tag{margin-right:0;flex:none}.dir-source{background:var(--brand-soft);color:var(--brand)}.dir-destination{background:var(--green-soft);color:var(--green)}.dir-agent{background:var(--amber-soft);color:var(--amber)}.load-more{display:flex;justify-content:center;margin-top:26px}.empty-note{text-align:center;padding:40px 0}.conn-name{font-weight:600}.conn-table{width:100%;border-collapse:collapse;margin-top:12px;font-size:13px}.conn-table th{text-align:left;font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-weight:700;padding:0 10px 10px 0;border-bottom:1px solid var(--border);white-space:nowrap}.conn-table td{padding:12px 10px 12px 0;border-bottom:1px solid var(--border);vertical-align:middle;color:var(--ink)}.conn-table tr:last-child td{border-bottom:none}.conn-table tbody tr{transition:background .1s}.conn-table tbody tr:hover>td{background:#fafbfd}.row-actions{display:flex;gap:6px;justify-content:flex-end}.nowrap{white-space:nowrap}.table-scroll{overflow-x:auto}.clamp-2{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.or-wf-search{max-width:420px}.or-wf-table .tag{margin:0}.or-wf-table .or-wf-kind{margin-left:8px;vertical-align:1px}.or-wf-table td:first-child{min-width:220px}.or-wf-sched{min-width:150px}@media(max-width:900px){.or-wf-table thead{display:none}.or-wf-table{margin-top:0}.or-wf-table tr:first-child{padding-top:0}.or-wf-table tr{display:block;padding:12px 0;border-bottom:1px solid var(--border)}.or-wf-table tr:last-child{border-bottom:none}.or-wf-table td{display:block;padding:3px 0;border:none}.or-wf-table td:first-child{min-width:0}.or-wf-table .row-actions{justify-content:flex-start;margin-top:6px}}.or-wf-table td:first-child .small{margin-top:2px;max-width:640px}.or-wf-more{min-width:34px;font-weight:700;letter-spacing:.08em}.off-tag{margin-left:8px;background:var(--gray-soft);color:var(--muted)}.link-btn{background:none;border:0;padding:0;cursor:pointer;font-size:13px;font-weight:600;color:var(--brand);margin-right:8px}.link-btn:hover{text-decoration:underline}.btn.ghost.danger{color:var(--red)}.btn.ghost.danger:hover{background:var(--red-soft);border-color:var(--red)}.form-panel{margin-bottom:22px;border-color:var(--brand)}.mt-panel{margin-top:22px}.field textarea{border:1px solid var(--border);border-radius:9px;padding:10px 12px;font-size:13px;color:var(--ink);background:var(--surface);font-family:ui-monospace,SF Mono,Menlo,monospace;resize:vertical;outline:none}.field textarea:focus{border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-soft)}.picker{display:flex;flex-direction:column;gap:6px}.picker select[multiple]{padding:4px;min-height:96px}.picker select[multiple] option{padding:4px 7px;border-radius:5px}.picker-add{display:flex;gap:6px;align-items:center}.picker-add input{flex:1;min-width:0}.picker-add .btn{white-space:nowrap}.field-msg{font-size:11px;color:var(--muted)}.field-msg.err{color:var(--red)}.field-error input,.field-error select,.field-error textarea{border-color:var(--red)}.inline-check{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--ink);cursor:pointer}.test-result.test-unknown{background:var(--gray-soft);color:var(--ink-2)}@media(max-width:900px){.conn-grid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr))}.filter-bar{flex-direction:column;align-items:stretch}.cat-select{max-width:none}}.tabs{display:flex;gap:4px;border-bottom:1px solid var(--border);margin:-6px 0 24px;flex-direction:row;flex:none;overflow-x:auto}.tab{background:none;border:0;border-bottom:2px solid transparent;padding:10px 14px;margin-bottom:-1px;cursor:pointer;white-space:nowrap;font-size:13.5px;font-weight:600;color:var(--ink-2);border-radius:6px 6px 0 0;transition:color .12s,background .12s,border-color .12s}.tab:hover{color:var(--ink);background:#0b164008}.tab-on,.tab-on:hover{color:var(--brand-strong);border-bottom-color:var(--brand);background:none}.alias-line{font-size:11px;color:var(--muted);font-style:italic}.alias-note{margin-top:6px;font-size:12px}.wb{display:grid;grid-template-columns:260px 1fr;gap:18px;align-items:start}@media(max-width:1100px){.wb{grid-template-columns:1fr}}.wb-banner{margin-bottom:16px}.wb-browser{position:sticky;top:16px;max-height:calc(100vh - 140px);overflow-y:auto}.wb-browse-err{color:var(--red)}.wb-reconnect{margin-top:6px;align-self:flex-start}.wb-tables{margin-top:10px;border-top:1px solid var(--border);padding-top:8px}.wb-table{position:relative}.wb-table-name{background:none;border:0;padding:5px 22px 5px 0;width:100%;text-align:left;cursor:pointer;font-size:13px;color:var(--ink);display:flex;gap:6px;align-items:center;-webkit-user-select:none;user-select:none;min-width:0}.wb-table-name:hover{color:var(--brand)}.wb-table-name:focus-visible{outline:2px solid var(--brand);outline-offset:1px;border-radius:4px}.wb-table-name[draggable],.wb-cols li[draggable]{cursor:grab}.wb-table-name[draggable]:active,.wb-cols li[draggable]:active{cursor:grabbing}.wb-obj-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.wb-find{display:flex;gap:6px;margin-top:4px}.wb-find input{flex:1;min-width:0;padding:6px 8px;font-size:12.5px}.wb-find select{padding:6px;font-size:12px;max-width:110px}.wb-hit{background:var(--amber-soft);color:inherit;border-radius:2px;padding:0}.wb-group+.wb-group{margin-top:8px}.wb-group-head{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);padding:4px 0 2px}.wb-group-head span{font-weight:400;margin-left:4px}.wb-kind{flex:none;width:16px;height:16px;border-radius:4px;font-size:10px;font-weight:700;display:inline-flex;align-items:center;justify-content:center}.wb-kind-table{background:var(--brand-soft);color:var(--brand)}.wb-kind-view{background:var(--amber-soft);color:var(--amber)}.wb-kind-virtual{background:var(--green-soft);color:var(--green)}.wb-cols li.picked{background:var(--brand-soft)}.wb-cols li.picked .wb-col-name{color:var(--brand);font-weight:600}.wb-cols li.wb-cols-note{cursor:default;color:var(--muted)}.wb-hint{margin-top:12px}.wb-caret{display:inline-block;transition:transform .12s;font-size:10px;color:var(--muted)}.wb-caret.open{transform:rotate(90deg)}.wb-insert{position:absolute;right:0;top:3px;border:0;background:none;cursor:pointer;color:var(--muted);font-size:15px;line-height:1;padding:2px 4px}.wb-insert:hover{color:var(--brand)}.wb-cols{list-style:none;margin:2px 0 8px 16px;padding:0;border-left:1px solid var(--border)}.wb-cols li{display:flex;justify-content:space-between;gap:8px;padding:3px 8px;font-size:12px;cursor:pointer}.wb-cols li:hover{background:var(--surface-2)}.wb-col-name{color:var(--ink)}.wb-col-type{color:var(--muted);font-size:11px;font-weight:400;margin-left:6px}.wb-main{display:flex;flex-direction:column;gap:16px;min-width:0}.wb-actions{display:flex;align-items:center;gap:10px}.wb-limit{font-size:12px;color:var(--ink-2);display:flex;align-items:center;gap:6px}.wb-limit select{padding:4px 6px;font-size:12px}.wb-editor{width:100%;min-height:170px;resize:vertical;padding:12px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:13px;line-height:1.55;border:1px solid var(--border);border-radius:6px;background:var(--surface-2);color:var(--ink)}.wb-editor:focus{outline:none;border-color:var(--brand);background:#fff}.wb-editor.dropping{border-color:var(--brand);background:var(--brand-soft);box-shadow:0 0 0 3px var(--brand-soft)}.wb-ctx-chip{font-size:11.5px;color:var(--ink-2);background:var(--surface-2);border:1px solid var(--border);border-radius:999px;padding:2px 10px;cursor:help;max-width:280px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.wb-editor-panel .console-head>.wb-actions:first-child{min-width:0}.wb-ctx-chip code{font-size:11.5px;color:var(--ink)}.wb-error strong{color:var(--red);display:block;margin-bottom:4px}.wb-err-pos{font-size:12px;color:var(--muted);margin-left:8px}.wb-error pre{margin:8px 0 0;padding:10px;background:var(--surface-2);border-radius:6px;font-size:12px;white-space:pre-wrap;word-break:break-word;color:var(--ink-2)}.wb-trunc{margin:0 0 10px}.wb-grid-wrap{overflow:auto;max-height:52vh;border:1px solid var(--border);border-radius:6px}.wb-grid{border-collapse:collapse;width:100%;font-size:12.5px}.wb-grid th,.wb-grid td{border-bottom:1px solid var(--border);border-right:1px solid var(--border);padding:6px 10px;text-align:left;white-space:nowrap}.wb-grid thead th{position:sticky;top:0;background:var(--surface-2);z-index:1;font-weight:600;color:var(--ink)}.wb-grid tbody tr:hover{background:var(--surface-2)}.wb-rownum{color:var(--muted);text-align:right;font-variant-numeric:tabular-nums}.wb-null{color:var(--muted);font-style:italic}.gv-type{display:inline-block;font-size:10.5px;font-weight:700;letter-spacing:.03em;border-radius:5px;padding:2px 7px;white-space:nowrap;vertical-align:middle}.gv-type-data{background:var(--brand-soft);color:var(--brand)}.gv-type-process{background:var(--amber-soft);color:var(--amber)}.gv-type-container{background:var(--gray-soft);color:var(--ink-2)}.gv-type-column,.gv-type-other{background:var(--surface-2);color:var(--muted);border:1px solid var(--border)}.gv-chips{display:flex;flex-wrap:wrap;gap:5px;align-items:center}.gv-chip{display:inline-flex;align-items:center;gap:3px;font-size:11.5px;font-weight:600;border-radius:999px;padding:2px 9px;border:1px solid transparent;white-space:nowrap}.gv-chip-sensitive{background:var(--red-soft);color:var(--red)}.gv-chip-safe{background:var(--green-soft);color:var(--green)}.gv-chip-term{background:var(--brand-soft);color:var(--brand)}.gv-chip-suggested{border-style:dashed;border-color:currentColor}.gv-chip-column{background:transparent;border-color:currentColor;opacity:.85}.gv-chip-inherited{background:transparent;border-color:currentColor;border-style:dotted}.gv-chip-label{background:none;border:0;padding:0;font:inherit;color:inherit;cursor:pointer}.gv-chip-label:hover{text-decoration:underline}.gv-chip-x{background:none;border:0;padding:0 0 0 3px;cursor:pointer;font-size:14px;line-height:1;color:inherit;opacity:.55}.gv-chip-x:hover{opacity:1}.gv-small-tag{margin:0 0 0 6px;font-size:10px;padding:1px 7px}.gv-qn{display:block;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:11.5px;color:var(--muted);word-break:break-all}.gv-qn-big{font-size:12.5px;margin:6px 0 4px}.gv-msg{margin-bottom:12px}.gv-deleted,.gv-muted-row{opacity:.55}.gv-warn{color:var(--amber);font-weight:600}.gv-count{color:var(--muted);font-size:12px;font-variant-numeric:tabular-nums}.gv-subhead{font-size:12px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);margin:14px 0 6px}.gv-table-wrap{overflow-x:auto}.gv-grid2{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:18px}.gv-grid2>.panel{min-width:0}.gv-section-band{border-top:1px solid var(--border);padding-top:14px}.gv-section-band h2{margin:0 0 4px}.gv-section-band+.gv-grid2{margin-top:10px}@media(max-width:900px){.gv-grid2{grid-template-columns:1fr}}.gv-inline-form{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-top:12px}.gv-inline-form select,.gv-inline-form input,.gv-filter,.gv-mini-select,.gv-lineage-controls select,.gv-kv-edit input,.gv-kv-edit select,.gv-picker input{border:1px solid var(--border);border-radius:8px;padding:7px 10px;font-size:13px;color:var(--ink);background:var(--surface);outline:none}.gv-inline-form select:focus,.gv-inline-form input:focus,.gv-filter:focus,.gv-picker input:focus{border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-soft)}.gv-inline-form input{min-width:0;flex:1}.gv-attr-input{max-width:140px}.gv-mini-select{padding:3px 6px;font-size:12px;color:var(--ink-2)}.gv-filter{width:220px}.gv-picker{position:relative;flex:1;min-width:220px}.gv-picker input{width:100%}.gv-picker-list{position:absolute;z-index:20;left:0;right:0;top:calc(100% + 4px);margin:0;padding:4px;list-style:none;background:var(--surface);border:1px solid var(--border);border-radius:10px;box-shadow:var(--shadow-hover);max-height:320px;overflow-y:auto}.gv-picker-list button{display:block;width:100%;text-align:left;background:none;border:0;border-radius:7px;padding:7px 9px;cursor:pointer;font-size:13px;color:var(--ink)}.gv-picker-list button:hover{background:var(--surface-2)}.gv-picker-list.inline{position:static;margin-top:6px;box-shadow:none}.gv-groups{margin-bottom:14px;flex-wrap:wrap}.gv-active-filters{display:flex;gap:6px;margin-bottom:12px;flex-wrap:wrap}.gv-empty-panel{margin-bottom:20px;border-color:var(--brand)}.gv-empty-panel .btn{margin-top:4px}.gv-layout{display:grid;grid-template-columns:220px 1fr;gap:22px;align-items:start}@media(max-width:900px){.gv-layout{grid-template-columns:1fr}}.gv-facets{position:sticky;top:16px}.gv-facet{margin-bottom:18px}.gv-facet h4{margin:0 0 6px;font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}.gv-facet ul{list-style:none;margin:0;padding:0}.gv-facet button:not(.link-btn){display:flex;justify-content:space-between;gap:8px;width:100%;background:none;border:0;border-radius:7px;padding:5px 8px;cursor:pointer;font-size:13px;color:var(--ink-2);text-align:left}.gv-facet button:not(.link-btn):hover{background:var(--surface-2);color:var(--ink)}.gv-facet button.on{background:var(--brand-soft);color:var(--brand);font-weight:600}.gv-results{min-width:0}.gv-result-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.gv-result{display:block;width:100%;text-align:left;cursor:pointer;font:inherit;color:inherit;background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:12px 14px;transition:border-color .12s,box-shadow .12s}.gv-result:hover{border-color:#d7dae0;box-shadow:var(--shadow-hover)}.gv-result-top{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:3px}.gv-result-name{font-size:14.5px}.gv-result-desc{margin:6px 0 0;font-size:13px;color:var(--ink-2);line-height:1.45}.gv-result-meta{display:flex;flex-wrap:wrap;gap:6px 10px;align-items:center;margin-top:8px}.gv-result-meta .muted.small{margin:0}.gv-entity .back-link{margin-bottom:10px}.gv-crumbs{display:flex;flex-wrap:wrap;gap:6px;align-items:center;font-size:13px;margin-bottom:12px}.gv-crumbs{flex-direction:row;flex:none;overflow:visible}.gv-crumbs .link-btn{margin:0}.gv-entity-title{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.gv-entity-title h2{margin:0;font-size:18px}.gv-source-line{margin-bottom:8px}.gv-about{display:grid;grid-template-columns:110px 1fr;gap:8px 14px;margin:14px 0 0;font-size:14px}.gv-about dt{color:var(--muted);font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;padding-top:2px}.gv-about dd{margin:0;line-height:1.5;white-space:pre-wrap}.gv-dismissed{margin:12px 0 0}.gv-columns td{vertical-align:top}.gv-dtype{font-size:12px;color:var(--ink-2)}.gv-list{list-style:none;margin:0;padding:0}.gv-list li{display:flex;align-items:center;gap:8px;padding:6px 0;border-bottom:1px solid var(--border);font-size:13px}.gv-list li:last-child{border-bottom:0}.gv-list .link-btn{margin:0}.gv-links h4{margin:0 0 6px;font-size:12px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted)}.gv-link-grid{margin-top:14px}.gv-process-editor{margin-top:20px;border-top:1px solid var(--border);padding-top:16px}.gv-process-editor h3{margin:0 0 4px;font-size:14px}.gv-process-editor .btn{margin-top:14px}.gv-kv{width:100%;border-collapse:collapse;font-size:13px}.gv-kv th{text-align:left;color:var(--muted);font-weight:600;padding:5px 12px 5px 0;width:38%;vertical-align:top}.gv-kv td{padding:5px 0;word-break:break-word}.gv-kv-edit{display:flex;gap:8px;align-items:center;margin-bottom:8px}.gv-kv-edit input{flex:1;min-width:0}.gv-kv-edit input:disabled{background:var(--surface-2);color:var(--ink-2)}.gv-graph-wrap{overflow:auto;border:1px solid var(--border);border-radius:10px;background:var(--surface-2);margin-top:14px}.gv-graph{display:block}.gv-edge{fill:none;stroke:#b8bdc7;stroke-width:1.4}.gv-edge-on{stroke:var(--brand);stroke-width:2}.gv-arrow{fill:#b8bdc7}.gv-node{cursor:pointer;outline:none}.gv-node-box{fill:var(--surface);stroke:var(--border);stroke-width:1.2}.gv-node-process .gv-node-box{fill:var(--amber-soft);stroke:#f0d3a8}.gv-node:hover .gv-node-box,.gv-node:focus-visible .gv-node-box{stroke:var(--brand)}.gv-node-selected .gv-node-box{stroke:var(--brand);stroke-width:2}.gv-node-focus .gv-node-box{stroke:var(--brand);stroke-width:2.5;fill:var(--brand-soft)}.gv-node-stripe{fill:var(--red)}.gv-node-deleted{opacity:.5}.gv-node-deleted .gv-node-box{stroke-dasharray:4 3}.gv-node-name{font-size:12.5px;font-weight:600;fill:var(--ink)}.gv-node-meta{font-size:11px;fill:var(--muted)}.gv-legend{display:flex;flex-wrap:wrap;gap:6px 16px;margin:10px 0 0;align-items:center}.gv-legend i{display:inline-block;width:16px;height:11px;border-radius:3px;vertical-align:-1px;margin-right:4px;border:1px solid var(--border)}.gv-legend-data{background:var(--surface)}.gv-legend-process{background:var(--amber-soft);border-radius:6px!important}.gv-legend-sensitive{background:var(--surface);border-left:4px solid var(--red)!important}.gv-legend-deleted{background:var(--surface);border-style:dashed!important;opacity:.6}.gv-lineage-controls{gap:8px}.gv-lineage-pick{display:flex;margin-top:12px}.gv-starts{margin-top:16px}.gv-node-labels{margin:10px 0}.gv-split{display:grid;grid-template-columns:260px 1fr;gap:18px;align-items:start}@media(max-width:900px){.gv-split{grid-template-columns:1fr}}.gv-glossary-list{list-style:none;margin:12px 0 0;padding:0}.gv-glossary-list button{display:flex;justify-content:space-between;width:100%;background:none;border:0;border-radius:8px;padding:8px 10px;cursor:pointer;font-size:14px;color:var(--ink-2);text-align:left}.gv-glossary-list button:hover{background:var(--surface-2);color:var(--ink)}.gv-glossary-list button.on{background:var(--brand-soft);color:var(--brand);font-weight:600}.gv-glossary-head{margin-bottom:4px}.gv-term-row{cursor:pointer}.gv-term-row:hover td{background:var(--surface-2)}.gv-term-detail{background:var(--surface-2);padding:14px 16px!important}.gv-term-detail p{margin:0 0 8px;font-size:14px;line-height:1.5}.gv-term-status{font-size:11px;font-weight:700;border-radius:5px;padding:2px 8px;text-transform:capitalize}.gv-term-draft{background:var(--gray-soft);color:var(--ink-2)}.gv-term-approved{background:var(--green-soft);color:var(--green)}.gv-term-deprecated{background:var(--red-soft);color:var(--red)}.gv-new{margin-top:20px;border-top:1px solid var(--border);padding-top:16px}.gv-new h3{margin:0;font-size:14px}.gv-pattern{font-size:12px;color:var(--ink-2);word-break:break-all}.gv-policies{list-style:none;margin:12px 0 0;padding:0}.gv-policies>li{border-top:1px solid var(--border);padding:14px 0}.gv-policy-head{display:flex;gap:14px;align-items:flex-start}.gv-policy-text{flex:1;min-width:0}.gv-policy-text .muted.small{margin:3px 0 0}.gv-policy-actions{display:flex;align-items:center;gap:14px;white-space:nowrap}.gv-sev{font-size:10.5px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;border-radius:5px;padding:3px 8px;margin-top:2px;min-width:62px;text-align:center}.gv-sev-high{background:var(--red-soft);color:var(--red)}.gv-sev-medium{background:var(--amber-soft);color:var(--amber)}.gv-sev-low{background:var(--gray-soft);color:var(--ink-2)}.gv-violation-count{color:var(--red);margin:0}.gv-pass{color:var(--green);font-size:13px;font-weight:600}.gv-violations{margin-top:10px}button.stat-link{font:inherit;color:inherit;text-align:left;cursor:pointer}button.stat-link:hover{border-color:var(--brand)}.gv-owners .gv-kv th{width:30%}.gv-owners .gv-inline-form select{flex:0 0 auto}.gv-new-control{border-top:1px dashed var(--border);padding:8px 0}.gv-new-control .gv-chips{gap:4px 14px}.gv-workflow>p{margin:0 0 8px;font-size:14px;line-height:1.5}.gv-workflow .gv-list li{align-items:baseline}.gv-recent{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin-bottom:14px}.gv-recent .chip{text-decoration:none;color:inherit}.gv-compare{margin-top:12px;padding:12px 14px;border:1px solid var(--border);border-radius:10px;background:var(--surface-2)}.gv-compare h4{margin:12px 0 6px;font-size:13px}.gv-run{font-size:11px;font-weight:700;border-radius:5px;padding:2px 7px}.gv-run-ok{background:var(--green-soft);color:var(--green)}.gv-run-partial{background:var(--amber-soft);color:var(--amber)}.gv-run-failed{background:var(--red-soft);color:var(--red)}.gv-sources{list-style:none;margin:8px 0 0;padding:0}.gv-sources>li{border-top:1px solid var(--border);padding:12px 0}.gv-source-head{display:flex;gap:12px;align-items:flex-start}.gv-source-text{flex:1;min-width:0}.gv-source-text .muted.small{margin:2px 0 0}.gv-source-run{margin:6px 0 0}.gv-errors{margin:8px 0 0;padding-left:18px;font-size:12.5px;color:var(--red)}.gv-errors code{color:var(--ink-2);margin-right:6px}.gv-query-catalogs{margin-top:8px}.gv-query-catalogs .gv-chips{margin:8px 0}.gv-query-catalogs .chip,.qh-row{cursor:pointer}.qh-row:hover{background:var(--surface-2)}.qh-sql{font-size:12px;color:var(--ink-2)}.qh-full{margin:0 0 8px;padding:10px;background:var(--surface-2);border-radius:6px;font-size:12px;white-space:pre-wrap;word-break:break-word}.run-steps{padding:6px 0 4px}.run-log{margin-top:12px}.run-log pre{margin:0;padding:12px;background:var(--surface-2);border-radius:6px;font-size:11.5px;line-height:1.5;max-height:340px;overflow:auto;white-space:pre-wrap;word-break:break-word;color:var(--ink-2)}.bucket-on{color:var(--brand);font-weight:600}.st-endpoint{margin-top:12px;border-top:1px solid var(--border);padding-top:10px}.st-crumbs{display:flex;align-items:center;flex-wrap:wrap;gap:2px;font-size:15px}.st-crumbs .link-btn{font-size:15px}.st-folder{font-weight:600}.console-down{border:1px dashed var(--border);border-radius:6px;padding:18px 20px;background:var(--surface-2);margin-top:10px}.console-down p{margin:0 0 8px}.console-down p:last-child{margin-bottom:0}.attach-btn{display:block;width:100%;text-align:left;margin-bottom:4px}.pick-or-type{display:flex;gap:8px;align-items:center}.pick-or-type input{flex:1;min-width:0}.pick-or-type .btn{flex:none;white-space:nowrap}.column-pick{display:flex;flex-direction:column;gap:6px}.column-pick textarea{width:100%;box-sizing:border-box;resize:vertical;font-family:var(--mono, ui-monospace, monospace);font-size:12.5px}.page-wide{max-width:1600px}.fl-shell{display:flex;flex-direction:column;gap:12px}.fl-toolbar{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:10px 12px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow)}.fl-toolbar .cat-select{max-width:280px}.fl-spacer{flex:1}.fl-zoom{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--ink-2)}.fl-zoom b{font-variant-numeric:tabular-nums;min-width:38px;text-align:center}.fl-error{margin:0}.fl-body{display:grid;grid-template-columns:186px minmax(0,1fr) 330px;gap:12px;align-items:stretch;min-height:560px}.fl-palette{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:4px 10px 14px;box-shadow:var(--shadow);overflow-y:auto;max-height:72vh}.fl-palette-group .nav-group-label{padding:14px 4px 6px}.fl-palette-item{display:flex;align-items:center;gap:9px;width:100%;text-align:left;background:none;border:1px solid transparent;border-radius:8px;padding:7px 8px;font-size:13px;color:var(--ink-2);cursor:grab}.fl-palette-item:hover{background:var(--surface-2);color:var(--ink);border-color:var(--border)}.fl-palette-item:active{cursor:grabbing}.fl-palette-item:disabled{opacity:.45;cursor:not-allowed;background:none;border-color:transparent}.fl-canvas-wrap{position:relative;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden;min-height:560px}.fl-canvas{width:100%;height:100%;min-height:560px;display:block;touch-action:none;cursor:grab}.fl-canvas:active{cursor:grabbing}.fl-grid-dot{fill:#dfe3ea}.fl-node{cursor:move}.fl-node-box{fill:var(--surface);stroke:var(--border);stroke-width:1.5;filter:drop-shadow(0 1px 2px rgba(16,24,40,.06))}.fl-node-stripe{fill:var(--muted)}.fl-node-name{font-size:13px;font-weight:700;fill:var(--ink)}.fl-node-type{font-size:10.5px;fill:var(--muted)}.fl-node-rel{font-size:10.5px;fill:var(--ink-2)}.fl-node-stat{font-size:10.5px;font-weight:700;fill:var(--brand)}.fl-node-flag{fill:var(--red)}.fl-node-on .fl-node-box{stroke:var(--brand);stroke-width:2}.fl-node-bad .fl-node-box{stroke:var(--red)}.fl-node-source .fl-node-stripe{fill:var(--brand)}.fl-node-transform .fl-node-stripe{fill:#7c3aed}.fl-node-route .fl-node-stripe{fill:var(--amber)}.fl-node-sink .fl-node-stripe{fill:var(--green)}.fl-port{fill:var(--surface);stroke:var(--ink-2);stroke-width:1.5}.fl-port-out{cursor:crosshair}.fl-port-out:hover{fill:var(--brand);stroke:var(--brand);r:6}.fl-port-in{fill:var(--surface-2)}.fl-edge{cursor:pointer}.fl-edge-hit{stroke:transparent;stroke-width:14;fill:none}.fl-edge-line{stroke:#b9c0cc;stroke-width:2;fill:none}.fl-edge-label{font-size:10px;fill:var(--muted);text-anchor:middle;pointer-events:none}.fl-edge:hover .fl-edge-line,.fl-edge-on .fl-edge-line{stroke:var(--brand)}.fl-edge-on .fl-edge-label{fill:var(--brand);font-weight:700}.fl-edge-preview{stroke:var(--brand);stroke-dasharray:5 4;pointer-events:none}.fl-arrow{fill:#b9c0cc}.fl-empty{position:absolute;inset:auto 0 auto 0;top:50%;transform:translateY(-50%);text-align:center;padding:0 40px;pointer-events:none}.fl-empty h3{margin:0 0 6px;font-size:16px}.fl-empty p{max-width:420px;margin:0 auto 14px;font-size:13px}.fl-empty .btn{pointer-events:auto}.fl-props{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:18px 18px 24px;box-shadow:var(--shadow);overflow-y:auto;max-height:72vh}.fl-panel-head{display:flex;justify-content:space-between;align-items:flex-start;gap:10px}.fl-panel-head h3{margin:6px 0 0;font-size:15px}.fl-cat{display:inline-block;font-size:10px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--ink-2);background:var(--gray-soft);padding:3px 8px;border-radius:20px}.fl-cat-source{background:var(--brand-soft);color:var(--brand)}.fl-cat-transform{background:#f1ebff;color:#7c3aed}.fl-cat-route{background:var(--amber-soft);color:var(--amber)}.fl-cat-sink{background:var(--green-soft);color:var(--green)}.fl-mono{font-family:ui-monospace,SF Mono,Menlo,Consolas,monospace;font-size:12.5px}.fl-list{display:flex;flex-direction:column;gap:10px}.fl-list-row{border:1px solid var(--border);border-radius:9px;padding:10px;background:var(--surface-2);display:flex;flex-direction:column;gap:8px}.fl-list-cell{display:flex;flex-direction:column;gap:4px}.fl-list-cell>span{font-size:11px;font-weight:600;color:var(--ink-2)}.fl-list-cell input,.fl-list-cell select{border:1px solid var(--border);border-radius:7px;padding:7px 9px;font-size:13px;background:var(--surface);color:var(--ink);outline:none}.fl-list-cell input:focus,.fl-list-cell select:focus{border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-soft)}.fl-list-actions{display:flex;gap:4px;justify-content:flex-end}.fl-checklist{display:flex;flex-direction:column;gap:8px}.fl-checklist-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.fl-checklist-head .field{margin:0}.fl-checklist-rows{list-style:none;margin:0;padding:4px;max-height:360px;overflow:auto;border:1px solid var(--border);border-radius:9px;background:var(--surface-2)}.fl-checklist-row{display:grid;grid-template-columns:auto minmax(0,1fr) minmax(0,1fr) auto;align-items:center;gap:8px;padding:4px 6px;border-radius:6px}.fl-checklist-row:not(.is-kept){grid-template-columns:auto minmax(0,1fr)}.fl-checklist-row.is-kept{background:var(--surface)}.fl-checklist-row .input{padding:4px 8px;font-size:12.5px}.fl-checklist-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12.5px}.fl-list-actions .link-btn{margin:0;padding:0 4px}.link-btn.danger{color:var(--red)}.link-btn:disabled{color:var(--border);cursor:default;text-decoration:none}.fl-problems,.fl-warnings ul{list-style:none;padding:0;margin:16px 0 0}.fl-problems li{font-size:12px;color:var(--red);background:var(--red-soft);border-radius:7px;padding:8px 10px;margin-bottom:6px}.fl-warnings{margin-top:20px;border-top:1px solid var(--border);padding-top:14px}.fl-warnings h4,.fl-stats h4{margin:0 0 8px;font-size:12px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted)}.fl-warnings li{font-size:12px;color:var(--ink-2);padding:5px 0}.fl-stats{margin-top:20px;border-top:1px solid var(--border);padding-top:14px}.fl-stats dl{margin:0;display:flex;flex-direction:column;gap:6px}.fl-stats dl>div{display:flex;justify-content:space-between;font-size:12.5px}.fl-stats dt{color:var(--ink-2)}.fl-stats dd{margin:0;font-weight:600;font-variant-numeric:tabular-nums}.fl-rel-counts{list-style:none;padding:0;margin:10px 0 0}.fl-rel-counts li{display:flex;justify-content:space-between;font-size:12px;padding:4px 0;border-bottom:1px solid var(--border)}.fl-rel-counts li:last-child{border-bottom:none}.fl-bad{color:var(--red)}.fl-run{background:var(--surface);border:1px solid var(--border);border-left:4px solid var(--green);border-radius:var(--radius);padding:14px 18px 18px;box-shadow:var(--shadow)}.fl-run-failed{border-left-color:var(--red)}.fl-run-head{display:flex;align-items:center;gap:16px;font-size:13px;color:var(--ink-2)}.fl-run-head strong{color:var(--ink)}.fl-run-error{color:var(--red);font-size:13px;margin:10px 0 0}.fl-run-warn{color:var(--amber);font-size:13px;margin:10px 0 0}.fl-previews{display:flex;flex-direction:column;gap:14px;margin-top:14px}.fl-preview h4{margin:0 0 6px;font-size:13px}.fl-preview h4 .muted{font-weight:400;font-size:12px}.fl-events{margin-top:12px;font-size:12px}.fl-events summary{cursor:pointer;color:var(--brand);font-weight:600}.fl-events ul{list-style:none;padding:0;margin:8px 0 0}.fl-ev{padding:4px 0;color:var(--ink-2);border-bottom:1px solid var(--border)}.fl-ev:last-child{border-bottom:none}.fl-ev-warn{color:var(--amber)}.fl-ev-error{color:var(--red)}.fl-writes{list-style:none;padding:0;margin:0 0 12px;font-size:13px}.fl-writes li{padding:5px 0;border-bottom:1px solid var(--border)}.fl-writes li:last-child{border-bottom:none}.fl-writes code{font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:12px}@media(max-width:1200px){.fl-body{grid-template-columns:160px minmax(0,1fr)}.fl-props{grid-column:1 / -1;max-height:none}}.cmp-card{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-2);padding:4px 16px 18px;margin-top:16px}.cmp-card .field-row:first-child{margin-top:14px}.ds-row-on{background:var(--brand-soft)}.ds-build-bar{display:flex;align-items:flex-end;gap:12px;flex-wrap:wrap;padding:14px 0 4px;border-top:1px solid var(--border);margin-top:14px}.ds-build-bar .field{min-width:320px;margin:0}.ds-build{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-2);padding:12px 16px;margin-top:12px}.ds-build-head{display:flex;align-items:center;gap:10px;margin-bottom:6px}.ds-step{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:7px 0;border-top:1px solid var(--border)}.ds-step:first-child{border-top:0}.ds-step-name{font-weight:600;font-size:13px}.ds-step-skipped{opacity:.55}.ds-step-error{color:var(--red);font-size:12px}.ds-design-bar{display:flex;align-items:center;gap:10px;padding:10px 16px}.ds-diff{margin:8px 0 0;padding:10px 12px;border:1px solid var(--border);border-radius:8px;background:var(--surface-2);font-size:12px;line-height:1.45;overflow:auto;max-height:420px}.ds-diff>div{white-space:pre}.ds-diff-del{background:#dc26261a;color:#991b1b}.ds-diff-add{background:#16a34a1f;color:#166534}.ds-diff-fold{color:var(--muted);font-style:italic}.ds-choices{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:12px}.ds-choice{text-align:left;cursor:pointer;padding:16px 18px;border:1px solid var(--border);border-radius:12px;background:var(--surface, #fff);font:inherit;color:inherit}.ds-choice:hover{border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-soft)}.ds-choice h3{margin:0 0 6px;font-size:17px}.ds-choice p{margin:0;color:var(--muted);font-size:13px;line-height:1.5}.ds-choices-2{grid-template-columns:repeat(2,1fr);margin-top:4px;gap:10px}.ds-choices-2 .ds-choice{padding:12px 14px}.ds-choices-2 .ds-choice h3{font-size:15px}.ds-choice-on{border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-soft)}.ds-choice:disabled{cursor:not-allowed;opacity:.55;box-shadow:none;border-color:var(--border)}@media(max-width:640px){.ds-choices{grid-template-columns:1fr}}.dsc-review{margin-top:14px;padding:14px 16px;border:1px solid var(--border);border-radius:10px;background:var(--surface-2)}.dsc-review h3{margin:0 0 6px;font-size:15px}.dsc-review p{margin:6px 0}.dsc-assume{margin:10px 0;padding:10px 12px;border-left:3px solid var(--amber);background:var(--amber-soft);border-radius:6px;font-size:13px}.dsc-assume ul{margin:6px 0 0 18px;padding:0}.dsc-assume li{margin-bottom:3px}.fw-shell{display:flex;flex-direction:column;gap:12px}.fw-toolbar{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:10px 14px}.fw-fieldset{border:0;margin:0;padding:0;min-width:0}.fw-body{--pane-l: 250px;--pane-r: 340px;display:grid;grid-template-columns:var(--pane-l) minmax(0,1fr) var(--pane-r);gap:12px;align-items:start}.fw-pane,.fw-centre>.fw-section{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow)}.fw-pane{padding:10px 12px 14px;max-height:78vh;overflow-y:auto;position:sticky;top:10px}.fw-pane .fw-section{padding:0;margin:0 0 14px}.fw-pane-title{margin:2px 0;font-size:13px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.fw-pane-note{margin:0 0 8px}.fw-centre{display:flex;flex-direction:column;gap:12px;min-width:0}.fw-centre>.fw-section{padding:12px 16px 16px}.fw-section h2{font-size:15px;margin:0 0 6px}.fw-right .field-row{flex-wrap:wrap;gap:10px}.fw-right .field-row .field{min-width:0;flex:1 1 140px}.fw-centre .field-row{flex-wrap:wrap;gap:10px 14px}.fw-centre .field-row .field{min-width:0;flex:1 1 170px}.fw-body .field input,.fw-body .field select{max-width:100%}.fw-more summary{cursor:pointer;font-size:13px;font-weight:600;color:var(--ink-2);padding:4px 0}.fw-more .fw-section h2{display:none}.fw-flash{outline:2px solid var(--brand);outline-offset:3px;transition:outline-color 1s}.fw-dock{border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow)}.fw-dock .qp-panel-body{overflow:auto;padding:12px}.fw-problems{margin:0;padding-left:18px;font-size:13px}.fw-problems li{margin-bottom:6px}.fw-problems .link-btn{margin-left:8px}@media(max-width:1100px){.fw-body,.panes-3.fw-body.pane-left-off,.panes-3.fw-body.pane-right-off{grid-template-columns:minmax(0,1fr)}.fw-pane{position:static;max-height:none}}.fw-sources{display:flex;flex-direction:column;gap:4px;font-size:13px}.fw-filter{width:100%;margin-bottom:6px;padding:6px 9px;font:inherit;font-size:13px;color:inherit;border:1px solid var(--border);border-radius:8px;background:var(--surface)}.fw-filter:focus{outline:none;border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-soft)}.fw-group-head,.fw-node-head,.fw-leaf{display:flex;align-items:center;gap:6px;width:100%;text-align:left;font:inherit;color:inherit;background:none;border:0;border-radius:6px;padding:4px 6px;cursor:pointer}.fw-group-head{font-weight:600}.fw-group-head:hover,.fw-node-head:hover:not(:disabled),.fw-leaf:hover:not(:disabled){background:var(--surface-2)}.fw-group-body,.fw-node-body{padding-left:14px}.fw-caret{width:10px;color:var(--muted);font-size:10px;flex:none}.fw-leaf-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.fw-hint{margin-left:auto;color:var(--muted);font-size:11px;flex:none}.fw-leaf:disabled{cursor:default;opacity:.5}.fw-leaf.fw-on{opacity:1;color:var(--brand-strong, var(--brand))}.fw-blocked>.fw-group-head{color:var(--muted)}.fw-why{padding:0 6px 4px 22px;line-height:1.4}.ds-drawer{position:fixed;top:64px;right:0;bottom:0;width:min(640px,100vw);z-index:40;display:flex;flex-direction:column;background:var(--surface);border-left:1px solid var(--border);box-shadow:-8px 0 24px #0f172a1f}.ds-drawer-head{display:flex;align-items:flex-start;gap:12px;padding:14px 16px 8px}.ds-drawer-head>div:first-child{flex:1;min-width:0}.ds-drawer-actions{display:flex;gap:8px;padding:0 16px 8px}.ds-drawer-body{flex:1;overflow:auto;padding:12px 16px 20px}.ds-handover td{background:var(--surface-2);font-style:italic}.sm-split{display:grid;grid-template-columns:260px minmax(0,1fr);gap:20px;align-items:start}.sm-list{border-right:1px solid var(--border);padding-right:16px;position:sticky;top:10px}.sm-table td,.sm-table th{padding-left:6px;padding-right:6px}.sm-table tr.sm-on td{background:var(--brand-soft)}.sm-table tr.sm-on .conn-name{color:var(--brand-strong)}.sm-model{min-width:0}.sm-model>.console-head:first-child{margin-top:0}@media(max-width:1100px){.sm-split{grid-template-columns:minmax(0,1fr)}.sm-list{border-right:0;padding-right:0;position:static;border-bottom:1px solid var(--border);padding-bottom:12px}}.ds-stages{display:flex;flex-direction:row;flex:none;flex-wrap:wrap;gap:0;margin:10px 0 2px;overflow:visible}.ds-stage{display:inline-flex;align-items:center;gap:6px;font:inherit;font-size:13px;color:var(--ink-2);background:none;border:1px solid var(--border);border-left-width:0;padding:5px 12px;cursor:pointer}.ds-stage:first-child{border-left-width:1px;border-radius:8px 0 0 8px}.ds-stage:last-child{border-radius:0 8px 8px 0}.ds-stage:hover{background:var(--surface-2);color:var(--ink)}.ds-stage-mark{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:999px;border:1px solid var(--border);font-size:11px;color:var(--muted)}.ds-stage-done .ds-stage-mark{background:var(--green);border-color:var(--green);color:#fff}.ds-stage-on{background:var(--brand-soft);color:var(--brand-strong, var(--brand))}.ds-stages .sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.ds-convert-sql{margin:8px 0;padding:10px 12px;border:1px solid var(--border);border-radius:8px;background:var(--surface-2);font-size:12px;line-height:1.45;white-space:pre-wrap;overflow:auto;max-height:360px}.ds-kv{display:grid;grid-template-columns:140px 1fr;gap:8px 16px;margin:14px 0 0}.ds-kv dt{color:var(--muted);font-size:13px}.ds-kv dd{margin:0}@media(max-width:640px){.ds-kv{grid-template-columns:1fr;gap:2px}.ds-kv dd{margin-bottom:8px}}.ds-lineage{display:grid;grid-template-columns:1fr 1fr 1fr;gap:18px;margin-top:14px}.ds-lineage-col h3{font-size:12px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);margin:0 0 10px}.ds-node{display:block;width:100%;text-align:left;cursor:pointer;border:1px solid var(--border);border-radius:10px;background:var(--surface);padding:10px 12px;margin-bottom:8px;font:inherit;color:inherit}.ds-node:hover{border-color:var(--brand);box-shadow:var(--shadow)}.ds-node-self{background:var(--brand-soft);border-color:var(--brand);cursor:default}.ds-node-self:hover{box-shadow:none}.ds-node-name{font-weight:600;font-size:13px;margin-bottom:6px}.sem-pick{display:grid;grid-template-columns:1fr 1fr 1.2fr;gap:18px;margin-top:8px}.sem-pick-col h3{font-size:12px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);margin:0 0 10px}.sem-item{display:flex;align-items:baseline;gap:8px;padding:6px 8px;border-radius:8px;cursor:pointer}.sem-item:hover{background:var(--surface-2)}.sem-item input{margin:0}.sem-item-label{font-size:13px;flex:1}.sem-filter{display:flex;align-items:center;gap:6px;margin-bottom:8px;flex-wrap:wrap}.sem-filter select,.sem-filter input{font-size:12.5px;padding:6px 8px}.sem-filter input{flex:1;min-width:120px}@media(max-width:1100px){.ds-lineage,.sem-pick{grid-template-columns:1fr}}.sem-model-bar .qp-filters{margin:0 0 0 4px}.sem-model-bar .cat-select{max-width:280px}.sem-model-pick{display:inline-flex;align-items:center;gap:8px}.sem-label{font-size:12.5px;font-weight:600;color:var(--ink-2)}.sem-model-bar .sem-said{margin:0}.fw-group-head .muted.small{margin:0 0 0 4px}.sem-outline .sdd{display:flex;min-width:0;margin-bottom:8px}.sem-outline .sdd input{width:100%;padding:6px 9px;font-size:13px;border:1px solid var(--border);border-radius:8px}.sem-sections .fw-leaf.fw-on,.sem-field.fw-on{background:var(--brand-soft);color:var(--brand-strong);font-weight:600}.sem-dot{width:7px;height:7px;border-radius:50%;background:var(--red);flex:none;margin-left:auto}.sem-dot+.fw-hint{margin-left:6px}.sem-subhead{font-size:12px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);margin:14px 0 6px}.sem-sentence{font-size:14px;line-height:1.5;margin:8px 0}.sem-kv{grid-template-columns:100px 1fr;gap:4px 10px;font-size:13px;margin-top:8px}.sem-complete{list-style:none;margin:0;padding:0;font-size:13px}.sem-complete li{display:flex;justify-content:space-between;padding:4px 0;border-bottom:1px solid var(--border)}.sem-complete li:last-child{border-bottom:0}.sem-sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.sem-rows{display:grid;grid-template-columns:56px minmax(0,1fr);gap:10px;align-items:center;margin-top:12px}.sem-chip-label{border:0;background:none;padding:0;font:inherit;color:inherit;cursor:pointer}.qb-chip .rg-alias-x{padding:0 0 0 2px}.sem-chip-picked{box-shadow:0 0 0 3px var(--brand-soft)}.sem-chip-open{border-style:dashed;color:var(--ink-2)}.sem-add .sdd{min-width:180px}.sem-add .sdd input{padding:4px 26px 4px 10px;font-size:12.5px;border:1px dashed var(--border);border-radius:999px;background:var(--surface)}.sem-grain{padding:4px 8px;font-size:12.5px;border:1px solid var(--border);border-radius:999px;background:var(--surface);color:var(--ink)}.sem-tick{width:12px;flex:none;color:var(--brand);font-weight:700}.sem-charts{display:flex;flex-direction:column;gap:14px}.sem-chart{margin:0;min-width:0}.sem-chart .rg-chart-title{display:block;margin-bottom:4px}.sem-answer-bad{color:var(--red);font-size:13px}.sem-ask{margin-bottom:4px}.sem-values{display:flex;flex-direction:column;gap:2px;max-height:320px;overflow-y:auto;margin-top:6px}.sem-value{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:4px 6px;border-radius:6px;font-size:13px;cursor:pointer}.sem-value:hover{background:var(--surface-2)}.sem-value input{margin:0 6px 0 0}.sem-table-head{gap:10px;margin-bottom:4px}.sem-table-head .fw-filter{max-width:320px;margin:0}.sem-fields td{padding-top:8px;padding-bottom:8px}.sem-fields td.mono{font-size:12px;color:var(--ink-2);min-width:120px;max-width:240px;overflow-wrap:break-word}.sem-dot-inline{display:inline-block;margin:0 0 1px 6px;vertical-align:middle}.sem-inspector .fw-fieldset>.console-head,.sem-inspector .fw-fieldset>p.muted{display:none}.sem-inspector .cmp-card{margin-top:8px;padding:0 12px 14px}.sem-badge-draft{color:var(--brand);background:var(--brand-soft)}.sem-readby{list-style:none;margin:0;padding:0;display:grid;gap:4px;font-size:13px}.sem-readby li{overflow-wrap:anywhere}.sem-readby-kind{display:inline-block;min-width:0;font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.03em;margin-right:4px}.sem-row-warnings{margin:8px 0 0;padding:6px 8px 6px 22px;border-left:3px solid var(--amber);background:var(--amber-soft);font-size:13px;border-radius:4px}.sem-row-warnings li+li{margin-top:4px}.sem-check-error{color:var(--red)}.sem-check-table{margin-top:6px;width:100%;font-size:13px}.sem-check-table caption{caption-side:bottom;text-align:left;padding-top:4px}.sem-check-table .num{text-align:right;font-variant-numeric:tabular-nums}.sem-answer-tag{margin-left:8px;vertical-align:middle;font-size:11px}.sem-preview-switch{white-space:nowrap}.sem-preview-off{color:var(--muted);cursor:help}.sem-bad{color:var(--red)}.sem-col-used{border-color:var(--brand-line);background:var(--brand-soft)}.sem-col-free{border-style:dashed}.sem-map{display:flex;flex-wrap:wrap;gap:16px;align-items:flex-start;margin-top:10px}.sem-map-self{flex:1 1 240px;max-width:340px;margin:0;cursor:default}.sem-map-links{list-style:none;margin:0;padding:0;flex:1 1 260px;display:flex;flex-direction:column;gap:8px}.sem-map-links li{display:flex;align-items:center;gap:8px}.sem-map-edge{width:28px;height:2px;background:var(--brand-line);flex:none}.sem-map-node{margin:0;flex:1}.sem-map-none{flex:1 1 260px;margin:0;align-self:center}.cap-tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.cap-tags .tag{margin:0}.in-body{display:grid;grid-template-columns:190px minmax(0,1fr) 340px;gap:14px;align-items:start}.in-canvas{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius);padding:16px;min-height:560px;max-height:74vh;overflow-y:auto}.in-step{background:var(--surface);border:1px solid var(--border);border-left:4px solid var(--muted);border-radius:10px;box-shadow:var(--shadow)}.in-step-on{border-color:var(--brand);border-left-color:var(--brand);box-shadow:0 0 0 3px var(--brand-soft)}.in-step-bad{border-color:var(--red)}.in-step-head{display:flex;align-items:center;gap:9px;padding:10px 12px;cursor:pointer;font-size:13px}.in-step-head:hover{background:var(--surface-2);border-radius:6px}.in-step-icon{display:flex;color:var(--ink-2)}.in-step-name{font-weight:700}.in-step-type{color:var(--muted);font-size:12px}.in-spacer{flex:1}.in-step-stat{font-size:11.5px;font-weight:700;color:var(--brand);font-variant-numeric:tabular-nums}.in-step-flag{width:16px;height:16px;border-radius:50%;background:var(--red);color:#fff;font-size:11px;font-weight:700;display:flex;align-items:center;justify-content:center}.in-step-actions{display:flex;gap:2px;opacity:0}.in-step-head:hover .in-step-actions,.in-step-on .in-step-actions{opacity:1}.in-step-actions .link-btn{padding:0 4px;margin:0}.in-step-consumer{border-left-color:var(--brand);background:var(--brand-soft);margin-bottom:4px}.in-consumer-pick{font-size:12px;padding:5px 8px;border:1px solid var(--border);border-radius:7px;background:var(--surface)}.in-endpoints{padding:0 12px 10px;display:flex;flex-wrap:wrap;gap:8px}.in-endpoints code{font-family:ui-monospace,SF Mono,Menlo,Consolas,monospace;font-size:11.5px;background:var(--surface);border:1px solid var(--border);border-radius:6px;padding:3px 7px}.in-step-connect{border-left-color:var(--brand)}.in-step-ai{border-left-color:#7c3aed}.in-step-transform{border-left-color:#0891b2}.in-step-route{border-left-color:var(--amber)}.in-step-handle{border-left-color:var(--green)}.in-cat-connect{background:var(--brand-soft);color:var(--brand)}.in-cat-ai{background:#f1ebff;color:#7c3aed}.in-cat-transform{background:#e6f6fa;color:#0891b2}.in-cat-route{background:var(--amber-soft);color:var(--amber)}.in-cat-handle{background:var(--green-soft);color:var(--green)}.in-cat-consumer{background:var(--brand-soft);color:var(--brand)}.in-pipeline{display:flex;flex-direction:column}.in-gap{display:flex;align-items:center;gap:8px;height:22px;position:relative}.in-gap:before{content:"";position:absolute;left:15px;top:0;bottom:0;border-left:2px dotted var(--border)}.in-gap-btn{position:relative;width:20px;height:20px;margin-left:6px;padding:0;border:1px dashed var(--border);border-radius:50%;background:var(--surface);color:var(--muted);font-size:13px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center}.in-gap:hover .in-gap-btn{border-color:var(--brand);color:var(--brand)}.in-gap-on .in-gap-btn{width:auto;border-radius:20px;padding:0 10px;font-size:11px;font-weight:700;border-style:solid;border-color:var(--brand);color:var(--brand);background:var(--brand-soft)}.in-gap-hint{font-size:11.5px;color:var(--muted)}.in-region{margin:0 12px 8px 26px;border-left:2px solid var(--border);padding-left:12px}.in-region-head{display:flex;align-items:center;gap:6px;padding:4px 0;flex-wrap:wrap}.in-region-label{font-size:10.5px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--muted)}.in-branch-cond,.in-branch-label{border:1px solid var(--border);border-radius:7px;padding:4px 8px;font-size:12.5px;background:var(--surface);color:var(--ink);outline:none}.in-branch-cond{flex:1;min-width:140px}.in-branch-label{width:130px}.in-branch-cond:focus,.in-branch-label:focus{border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-soft)}.in-region-body{padding-bottom:4px}.in-region-add{display:flex;align-items:center;gap:10px;padding:0 12px 12px 26px}.in-empty{text-align:center;padding:30px 40px 10px}.in-empty h3{margin:0 0 6px;font-size:16px}.in-empty p{max-width:460px;margin:0 auto 14px;font-size:13px}.in-insert-note{font-size:11.5px;color:var(--brand);background:var(--brand-soft);border-radius:7px;padding:7px 9px;margin-bottom:8px}.in-reply{margin-top:14px}.in-reply h4,.in-trace h4{margin:0 0 8px;font-size:12px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted)}.in-reply pre,.in-trace-detail pre{margin:0;padding:10px 12px;background:var(--surface-2);border:1px solid var(--border);border-radius:8px;font-size:12px;max-height:240px;overflow:auto;white-space:pre-wrap;word-break:break-word}.in-trace{margin-top:16px}.in-trace .wb-grid{border:1px solid var(--border);border-radius:6px}.in-trace-bad td{background:var(--red-soft)}.in-trace-detail{display:grid;grid-template-columns:1fr 1fr;gap:14px;padding:10px 4px}.in-trace-detail h5{margin:0 0 6px;font-size:11px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted)}.in-headers{list-style:none;padding:0;margin:8px 0 0}.in-headers li{display:flex;justify-content:space-between;gap:12px;font-size:11.5px;padding:3px 0;border-bottom:1px solid var(--border)}.in-headers li:last-child{border-bottom:none}.in-headers span{color:var(--muted)}.in-headers b{font-weight:600;word-break:break-all;text-align:right}@media(max-width:1200px){.in-body{grid-template-columns:170px minmax(0,1fr)}.fl-props{grid-column:1 / -1;max-height:none}.in-trace-detail{grid-template-columns:1fr}}.pl-node-data .fl-node-stripe{fill:var(--brand)}.pl-node-train .fl-node-stripe{fill:#7c3aed}.pl-node-evaluate .fl-node-stripe{fill:var(--amber)}.pl-node-ship .fl-node-stripe{fill:var(--green)}.pl-palette-sub{margin:0 0 4px}.pl-palette-sub>summary{list-style:none;cursor:pointer;-webkit-user-select:none;user-select:none;display:flex;align-items:center;gap:6px;padding:6px 4px 4px;font-size:11.5px;font-weight:600;color:#7c3aed}.pl-palette-sub>summary::-webkit-details-marker{display:none}.pl-palette-sub>summary:before{content:"▸";font-size:10px;color:var(--muted);transition:transform .15s}.pl-palette-sub[open]>summary:before{transform:rotate(90deg)}.pl-palette-sub .fl-palette-item{padding-left:16px}.pl-cat-data{background:var(--brand-soft);color:var(--brand)}.pl-cat-train{background:#f1ebff;color:#7c3aed}.pl-cat-evaluate{background:var(--amber-soft);color:var(--amber)}.pl-cat-ship{background:var(--green-soft);color:var(--green)}.fl-port.pl-a-dataset{stroke:var(--brand)}.fl-port.pl-a-model{stroke:#7c3aed}.fl-port.pl-a-metrics{stroke:var(--amber)}.fl-port.pl-a-predictions{stroke:var(--green)}.fl-port-out.pl-a-dataset:hover{fill:var(--brand)}.fl-port-out.pl-a-model:hover{fill:#7c3aed}.fl-port-out.pl-a-metrics:hover{fill:var(--amber)}.fl-port-out.pl-a-predictions:hover{fill:var(--green)}.fl-edge.pl-a-dataset .fl-edge-line{stroke:#9db4ff}.fl-edge.pl-a-model .fl-edge-line{stroke:#c4b0f5}.fl-edge.pl-a-metrics .fl-edge-line{stroke:#f0c98a}.fl-edge.pl-a-predictions .fl-edge-line{stroke:#94d6ae}.fl-edge.fl-edge:hover .fl-edge-line,.fl-edge.fl-edge-on .fl-edge-line{stroke:var(--brand);stroke-width:3}.pl-port-label{font-size:10px;fill:var(--ink-2);pointer-events:none}.pl-state-succeeded{fill:var(--green)}.pl-state-failed{fill:var(--red)}.pl-state-skipped{fill:var(--muted)}.pl-feature{gap:6px}.pl-feature-head{display:flex;align-items:baseline;gap:8px;font-size:13px}.pl-feature-opts{display:flex;gap:8px}.pl-feature-opts .fl-list-cell{flex:1}.pl-add-features{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin-top:8px}.pl-add-features input{border:1px solid var(--border);border-radius:7px;padding:6px 9px;font-size:13px;background:var(--surface);color:var(--ink);outline:none}.pl-chip{border:1px solid var(--border);border-radius:20px;background:var(--surface);padding:4px 10px;font-size:12px;color:var(--ink-2);cursor:pointer}.pl-chip:hover{border-color:var(--brand);color:var(--brand);background:var(--brand-soft)}.pl-read-columns{display:flex;align-items:center;gap:10px;margin-top:16px;flex-wrap:wrap}.pl-columns{margin-top:14px}.pl-columns h4,.pl-parameters h4,.pl-comparison h4{margin:0 0 8px;font-size:12px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted)}.pl-columns .wb-grid{font-size:12px}.pl-parameters{margin-top:22px;border-top:1px solid var(--border);padding-top:16px}.pl-param-row{display:flex;gap:8px;align-items:flex-end}.pl-param-row .fl-list-cell{flex:1}.pl-param-row .link-btn{padding-bottom:8px}.pl-artifact{margin-top:12px;border-top:1px solid var(--border);padding-top:10px}.pl-artifact h5{margin:0 0 4px;font-size:12px;color:var(--ink-2)}.pl-fingerprint{display:flex;flex-wrap:wrap;gap:6px 16px;margin-top:12px;font-size:11.5px;color:var(--ink-2)}.pl-fingerprint b{color:var(--muted);font-weight:600}.pl-fingerprint code{font-family:ui-monospace,SF Mono,Menlo,Consolas,monospace;background:var(--surface-2);border-radius:5px;padding:1px 5px}.pl-metrics{display:flex;flex-wrap:wrap;gap:14px;margin-top:14px}.pl-metric-card{flex:1 1 260px;border:1px solid var(--border);border-radius:10px;background:var(--surface-2);padding:12px 14px}.pl-metric-card h4{margin:0 0 4px;font-size:13px}.pl-metric-card .wb-grid-wrap{margin-top:10px;max-height:none}.pl-diagonal{background:var(--green-soft);font-weight:700}.pl-verdict{margin-top:12px;padding:10px 12px;border-radius:8px;font-size:13px}.pl-verdict-ok{background:var(--green-soft);color:var(--green)}.pl-verdict-note{background:var(--amber-soft);color:var(--amber)}.pl-comparison{margin-top:18px;border-top:1px solid var(--border);padding-top:14px}.pl-comparison .wb-grid{margin-top:12px}.pl-moved td{background:var(--amber-soft)}.pl-version{margin-top:18px;border-top:1px solid var(--border);padding-top:14px}.pl-version h3{margin:0 0 4px;font-size:15px}.pl-curl{margin:10px 0 14px;padding:10px 12px;background:var(--surface-2);border:1px solid var(--border);border-radius:8px;font-size:11.5px;overflow-x:auto;white-space:pre}.pl-predict-form{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:12px;margin:12px 0 16px}.pl-predict-form .field{margin-top:0}.pl-predict-form .field>span{font-size:12px;font-weight:600;color:var(--ink-2)}.pl-predict-form select,.pl-predict-form input{border:1px solid var(--border);border-radius:8px;padding:9px 11px;font-size:14px;background:var(--surface);color:var(--ink);outline:none}.pl-answer{margin-top:14px;padding:14px 16px;border-radius:10px;background:var(--brand-soft);border:1px solid var(--border)}.pl-answer h4{margin:0 0 2px;font-size:15px;font-weight:500}.pl-answer h4 b{font-weight:700}.pl-answer .fl-rel-counts{margin-top:10px}.st-node-source .fl-node-stripe{fill:var(--brand)}.st-node-transform .fl-node-stripe{fill:#0891b2}.st-node-join .fl-node-stripe{fill:#7c3aed}.st-node-aggregate .fl-node-stripe{fill:var(--amber)}.st-node-route .fl-node-stripe{fill:#d946ef}.st-node-target .fl-node-stripe{fill:var(--green)}.st-cat-source{background:var(--brand-soft);color:var(--brand)}.st-cat-transform{background:#e6f6fa;color:#0891b2}.st-cat-join{background:#f1ebff;color:#7c3aed}.st-cat-aggregate{background:var(--amber-soft);color:var(--amber)}.st-cat-route{background:#fbeafd;color:#a21caf}.st-cat-target{background:var(--green-soft);color:var(--green)}.st-live{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--ink-2);font-variant-numeric:tabular-nums}.st-pulse{width:8px;height:8px;border-radius:50%;background:var(--green);animation:st-pulse 2s ease-in-out infinite}@keyframes st-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.4;transform:scale(.8)}}@media(prefers-reduced-motion:reduce){.st-pulse{animation:none}}.st-headline{display:flex;flex-wrap:wrap;gap:28px;margin:16px 0 8px}.st-stat{display:flex;flex-direction:column;gap:2px}.st-stat-value{font-size:20px;font-weight:700;line-height:1.2;color:var(--ink);font-variant-numeric:tabular-nums}.st-stat-value.st-stat-small{font-size:14px;font-weight:600}.st-stat-label{font-size:11.5px;color:var(--muted)}.st-stat-warn .st-stat-value{color:var(--amber)}.st-sample{margin-top:14px}.st-sample h4{margin:0 0 6px;font-size:13px}.st-event{font-family:ui-monospace,SF Mono,Menlo,Consolas,monospace;font-size:11.5px;color:var(--ink-2);display:block;max-width:640px;overflow-x:auto;white-space:nowrap}.st-note{margin-top:22px;border-top:1px solid var(--border);padding-top:14px}.st-note h4{margin:0 0 6px;font-size:12px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted)}.fl-props-body{display:flex;flex-direction:column;gap:14px}.fl-ok{color:var(--green)}.fl-status{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:600;white-space:nowrap}.fl-status .dot{width:7px;height:7px;border-radius:50%;background:currentColor}.fl-notice{font-size:12px;color:var(--ink-2);background:var(--brand-soft);border:1px solid var(--brand-line);border-radius:8px;padding:7px 11px}.fl-problems-warn li{color:var(--amber)}.tag-ok{background:var(--green-soft);color:var(--green)}.tag-bad{background:var(--red-soft);color:var(--red)}.field-req,.field-bad{color:var(--red)}.input-bad{border-color:var(--red)!important}.input.mono,.mono{font-family:ui-monospace,SF Mono,Menlo,Consolas,monospace;font-size:12px}.input.sm{padding:5px 8px;font-size:12px}.qp-shell{display:flex;flex-direction:column;min-height:0}.qp-shell .fl-body{min-height:380px}.qp-palette-icon{display:inline-block;width:16px;text-align:center;color:var(--muted);font-size:13px}.qp-stripe-input{fill:var(--brand)}.qp-stripe-transformation{fill:#7c3aed}.qp-stripe-output{fill:var(--green)}.qp-flag-warn{fill:var(--amber)}.qp-columns{display:flex;flex-direction:column;gap:6px}.qp-column-chip{display:flex;align-items:center;gap:6px;border:1px solid var(--border);border-radius:8px;padding:4px 6px 4px 10px;font-size:12px;background:var(--surface-2)}.qp-column-chip .link-btn{margin:0;padding:0 3px}.qp-column-add{display:flex;gap:6px}.qp-column-add .input{flex:1;min-width:0;padding:5px 8px;font-size:12px}.qp-schema{border-top:1px solid var(--border);padding-top:10px}.qp-schema summary{font-size:12px;font-weight:600;cursor:pointer;color:var(--ink-2)}.qp-schema-list{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.qp-schema-col{display:flex;align-items:baseline;gap:5px;background:var(--surface-2);border:1px solid var(--border);border-radius:6px;padding:2px 7px}.qp-schema-col code{font-size:11px}.qp-lower{border-top:1px solid var(--border);background:var(--surface);display:flex;flex-direction:column;min-height:220px;max-height:46vh}.qp-tabs{margin:0;padding:0 12px;border-bottom:1px solid var(--border);flex:none}.qp-lower>*:not(.qp-tabs){overflow:auto;padding:12px}.qp-panel-empty{display:flex;flex-direction:column;align-items:flex-start;gap:10px}.qp-panel-empty p{margin:0;font-size:13px;max-width:60ch}.qp-rows-head{display:flex;align-items:center;gap:10px;margin-bottom:10px;flex-wrap:wrap}.qp-inline-field{display:flex;align-items:center;gap:6px}.qp-code{margin:0;padding:12px;background:var(--surface-2);border:1px solid var(--border);border-radius:8px;font-family:ui-monospace,SF Mono,Menlo,Consolas,monospace;font-size:12px;line-height:1.55;white-space:pre;overflow-x:auto}.qp-verify{display:flex;flex-direction:column;gap:12px}.qp-verdict{display:flex;flex-direction:column;gap:3px;border-radius:8px;padding:10px 12px;border:1px solid var(--border)}.qp-verdict-ok{background:var(--green-soft);border-color:#c9e9d5}.qp-verdict-ok b{color:var(--green)}.qp-verdict-bad{background:var(--red-soft);border-color:#f6cfcf}.qp-verdict-bad b{color:var(--red)}.qp-problems{display:flex;flex-direction:column;gap:6px}.qp-problem{display:flex;gap:10px;align-items:baseline;text-align:left;border:1px solid var(--border);border-left-width:3px;border-radius:8px;padding:7px 11px;background:var(--surface);font-size:12px;color:var(--ink-2);cursor:pointer;font:inherit}.qp-problem:hover{background:var(--surface-2)}.qp-problem-error{border-left-color:var(--red)}.qp-problem-warn{border-left-color:var(--amber)}.qp-problem-where{font-family:ui-monospace,SF Mono,Menlo,Consolas,monospace;font-size:11px;color:var(--muted);white-space:nowrap;flex:none}.qp-row-actions{white-space:nowrap}.qp-row-actions .link-btn{margin-right:8px}.qp-run-detail{background:var(--surface-2)}.qp-run-body{display:flex;flex-direction:column;gap:10px}.qp-filters{display:flex;flex-wrap:wrap;gap:6px;margin:12px 0 4px}.qp-filter{display:inline-flex;align-items:center;gap:7px;border:1px solid var(--border);background:var(--surface);border-radius:20px;padding:4px 12px;font-size:12px;font-weight:600;color:var(--ink-2);cursor:pointer}.qp-filter:hover{background:var(--surface-2)}.qp-filter-on{border-color:var(--brand);color:var(--brand);background:var(--brand-soft)}.qp-filter-count{font-variant-numeric:tabular-nums;font-weight:500;color:var(--muted);background:var(--gray-soft);border-radius:10px;padding:0 6px;min-width:18px;text-align:center}.qp-filter-on .qp-filter-count{background:#fff;color:var(--brand)}.qp-kind-model{background:#f1ebff;color:#7c3aed;margin-bottom:0}.qp-kind-sql{background:var(--brand-soft);color:var(--brand);margin-bottom:0}.qb{display:grid;grid-template-columns:minmax(0,1fr) 420px;gap:18px;align-items:start}.qb-edit{min-width:0;display:flex;flex-direction:column;gap:18px}.qb-edit>.panel{margin:0}.qb-side{position:sticky;top:16px}.qb-side>.panel{margin:0}.qb-results{grid-column:1 / -1;min-width:0}.qb-step{display:inline-grid;place-items:center;width:20px;height:20px;margin-right:8px;border-radius:50%;background:var(--brand-soft);color:var(--brand);font-size:11.5px;vertical-align:1px}.qb-nomargin{margin:0!important}.qb-picker{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.qb-picker select,.qb-cond select,.qb-join-head select,.qb-select select,.qb-input{padding:6px 8px;font-size:13px;border:1px solid var(--border);border-radius:8px;background:var(--surface);color:var(--ink);min-width:0}.qb-picker select{flex:1;min-width:150px}.qb-picker select:focus,.qb-cond select:focus,.qb-input:focus,.qb-alias:focus,.qb-join-head select:focus,.qb-select select:focus{outline:none;border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-soft)}.qb-tablepick{margin-top:10px;padding:10px;border:1px solid var(--border);border-radius:10px}.qb-tablepick-head{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-bottom:10px}.qb-tablepick-head .qb-input{flex:1;min-width:160px}.qb-tablepick-add{margin-left:auto}.qb-tablepick-list{max-height:196px;overflow-y:auto}.qb-tablepick-msg{margin-top:10px}.qb-chip-order{display:inline-grid;place-items:center;min-width:16px;height:16px;padding:0 4px;border-radius:999px;font-size:10.5px;font-weight:700;background:var(--brand);color:#fff}.qb-notice{margin-top:12px}.qb-empty{margin-top:14px;display:flex;gap:12px;align-items:center;flex-wrap:wrap}.qb-empty .muted{margin:0}.qb-diagram{overflow-x:auto;margin:16px 0 6px;padding-bottom:4px}.qb-diagram svg{display:block}.qb-node rect{fill:var(--surface);stroke:var(--border);stroke-width:1.2}.qb-node-alias{font-size:13px;font-weight:700;fill:var(--brand)}.qb-node-table{font-size:11.5px;fill:var(--ink-2)}.qb-edge path{stroke:var(--brand);stroke-width:2}.qb-edge text{font-size:11px;fill:var(--ink-2)}.qb-edge-left path,.qb-edge-right path,.qb-edge-full path{stroke-dasharray:6 3}.qb-edge-cross path{stroke:var(--muted);stroke-dasharray:2 3}.qb-edge-open path{stroke:var(--red);stroke-dasharray:4 4}.qb-edge-open text{fill:var(--red)}.qb-tables{display:flex;flex-wrap:wrap;gap:10px;margin-top:8px}.qb-table{border:1px solid var(--border);border-radius:10px;padding:8px 10px;min-width:210px;flex:0 1 260px}.qb-table-head{display:flex;align-items:center;gap:8px}.qb-alias{width:56px;padding:3px 6px;font-weight:700;color:var(--brand);font-size:13px;border:1px solid var(--border);border-radius:6px;background:var(--brand-soft)}.qb-table-name{font-size:13px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.qb-table-name .muted{font-weight:400;font-size:11.5px}.qb-table-foot{display:flex;justify-content:space-between;align-items:center;margin-top:6px;gap:8px}.qb-table-actions{display:flex;gap:8px;font-size:12px}.qb-join{border:1px solid var(--border);border-radius:10px;padding:10px 12px;margin-top:10px}.qb-join-open{border-color:var(--red);background:var(--red-soft)}.qb-join-head{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.qb-join-target{color:var(--brand);font-size:14px}.qb-cond{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin-top:8px}.qb-cond select{max-width:220px}.qb-cond-word{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);min-width:38px}.qb-op{min-width:64px}.qb-add{display:inline-block;margin-top:10px;font-size:13px}.qb-input{width:170px}.qb-num{width:80px;margin:0 6px}.qb-colgroups{display:flex;flex-direction:column;gap:12px}.qb-colgroup-head{font-size:13px;margin-bottom:6px}.qb-colgroup-head b{color:var(--brand)}.qb-chips{display:flex;flex-wrap:wrap;gap:6px}.qb-chip{display:inline-flex;align-items:center;gap:5px;padding:4px 10px;font-size:12.5px;cursor:pointer;border:1px solid var(--border);border-radius:999px;background:var(--surface);-webkit-user-select:none;user-select:none}.qb-chip input{margin:0}.qb-chip:hover{background:var(--surface-2)}.qb-chip-on{background:var(--brand-soft);border-color:var(--brand);color:var(--brand)}.qb-all{margin-top:12px}.qb-select{margin-top:14px}.qb-select td{padding-top:6px;padding-bottom:6px}.qb-move{white-space:nowrap;width:44px}.qb-remove-cell{text-align:right}.qb-table-foot{flex-wrap:wrap}.qb-move .link-btn{margin-right:4px}.qb-limit-row{display:flex;gap:24px;flex-wrap:wrap;margin-top:16px;padding-top:12px;border-top:1px solid var(--border)}.qb-check{display:inline-flex;align-items:center;gap:6px;font-size:13px;color:var(--ink-2)}.qb-sql{margin:10px 0 0;padding:12px 14px;background:var(--surface-2);border:1px solid var(--border);border-radius:8px;white-space:pre;overflow:auto;max-height:46vh;font-size:12.5px;line-height:1.55}.qb-problems,.qb-warnings{margin:10px 0 0;padding:0 0 0 18px;font-size:12.5px}.qb-problems li{color:var(--red);margin-bottom:4px}.qb-warnings li{color:var(--amber);margin-bottom:4px}.qb-run{display:flex;justify-content:space-between;align-items:center;margin-top:14px;gap:10px}.qb-handoff{width:100%;margin-top:10px}@media(max-width:1100px){.qb{grid-template-columns:1fr}.qb-side{position:static}}:root{--series-1: #2a78d6;--series-2: #eb6834;--series-3: #1baf7a;--series-4: #eda100;--series-5: #e87ba4;--series-6: #008300;--series-7: #4a3aa7;--series-8: #e34948;--chart-grid: #e1e0d9;--chart-axis: #c3c2b7;--chart-muted: #898781}.rg-layout{display:grid;grid-template-columns:260px minmax(0,1fr);gap:18px;align-items:start}.rg-side{position:sticky;top:16px;max-height:calc(100vh - 32px);overflow-y:auto}.rg-main{min-width:0}.rg-main>.panel:first-child{margin-top:0}.rg-search{width:100%;margin:10px 0;padding:7px 10px;font-size:13px;border:1px solid var(--border);border-radius:8px;background:var(--surface);color:var(--ink)}.rg-search:focus,.rg-filter input:focus,.rg-tag-add input:focus,.rg-textarea:focus{outline:none;border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-soft)}.rg-seg{display:flex;gap:6px;margin-bottom:10px;flex-wrap:wrap}.rg-exp-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:2px}.rg-exp{width:100%;text-align:left;border:0;background:none;cursor:pointer;padding:8px 10px;border-radius:8px;display:flex;flex-direction:column;gap:2px;color:var(--ink)}.rg-exp:hover{background:var(--surface-2)}.rg-exp-on,.rg-exp-on:hover{background:var(--brand-soft)}.rg-exp-name{font-size:13.5px;font-weight:600;word-break:break-word}.rg-exp-on .rg-exp-name{color:var(--brand)}.rg-exp-meta{font-size:11.5px;color:var(--muted)}.rg-trash{margin-top:14px;padding-top:12px;border-top:1px solid var(--border)}.rg-title{font-size:18px!important;margin:0 0 2px!important;word-break:break-word}.rg-nomargin{margin:0!important}.rg-sub{margin-top:2px!important}.rg-back{font-size:13px;margin-bottom:10px}.rg-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.rg-desc{white-space:pre-wrap;font-size:13.5px;color:var(--ink);margin:12px 0 0}.rg-desc-row{display:flex;align-items:baseline;gap:12px;margin-top:12px}.rg-desc-row .rg-desc{margin:0}.rg-small-link{font-size:12px}.rg-break{word-break:break-all}.rg-mt{margin-top:12px}.rg-inline-form{display:inline-flex}.rg-inline-form input{font-size:16px;font-weight:600;padding:4px 8px;border:1px solid var(--brand);border-radius:6px}.rg-run-title{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.rg-filter{display:flex;gap:8px;align-items:center}.rg-filter input{flex:1;min-width:0;padding:8px 12px;border:1px solid var(--border);border-radius:8px;background:var(--surface);color:var(--ink)}.rg-hint{margin-top:8px}.rg-example{margin:0 4px;font-size:12px}.rg-table-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:6px;flex-wrap:wrap}.rg-scroll{overflow-x:auto}.rg-runs th{white-space:nowrap}.rg-runs td:nth-child(2){white-space:nowrap;min-width:150px}.rg-runs td{padding-top:9px;padding-bottom:9px}.rg-check{width:28px}.rg-num,.conn-table th.rg-num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.rg-param-col{max-width:160px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rg-sort{border:0;background:none;padding:0;font:inherit;color:inherit;cursor:pointer;text-transform:inherit;letter-spacing:inherit}.rg-sort:hover{color:var(--brand)}.th-sort{border:0;background:none;padding:0;margin:0;font:inherit;color:inherit;cursor:pointer;text-transform:inherit;letter-spacing:inherit;text-align:inherit;display:inline-flex;align-items:center;gap:5px;white-space:inherit}.th-sort:hover,.th-sort:focus-visible{color:var(--brand)}.th-sort-mark{font-size:12px;line-height:1;opacity:.75}.th-sort:hover .th-sort-mark,.th-sort:focus-visible .th-sort-mark{opacity:1}.th-sortable.is-sorted .th-sort{color:var(--ink)}.th-sortable.is-sorted .th-sort-mark{opacity:1;color:var(--brand)}.rg-child{font-size:11px}.rg-more{margin-top:12px}.rg-picker{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:12px 0;padding:12px 14px;background:var(--surface-2);border:1px solid var(--border);border-radius:10px}.rg-picker h4{margin:0 0 6px;font-size:12px;color:var(--ink-2)}.rg-picker-list{display:flex;flex-wrap:wrap;gap:4px 14px;max-height:160px;overflow-y:auto}.rg-picker-item{font-size:12.5px;display:flex;align-items:center;gap:5px;cursor:pointer}.rg-facts{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px 20px;margin:14px 0 0}.rg-facts dt{font-size:11px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted)}.rg-facts dd{margin:3px 0 0;font-size:13px}.rg-copy{font-size:11px;margin-left:4px}.rg-two{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:18px}.rg-two>.panel{margin-top:0}.rg-kv td{padding-top:7px;padding-bottom:7px}.rg-kv-key{font-weight:600;white-space:nowrap;padding-right:16px!important;vertical-align:top!important}.rg-kv-val{word-break:break-word;font-family:ui-monospace,SF Mono,Menlo,Consolas,monospace;font-size:12.5px}.rg-tag-add{display:flex;gap:8px;margin-top:12px;flex-wrap:wrap}.rg-tag-add input{flex:1;min-width:120px;padding:6px 10px;font-size:13px;border:1px solid var(--border);border-radius:8px;background:var(--surface);color:var(--ink)}.rg-metrics{display:grid;grid-template-columns:minmax(220px,300px) minmax(0,1fr);gap:20px;align-items:start}.rg-metric-table{margin-top:4px}.rg-metric-chart{min-width:0}.rg-chart-controls{display:flex;gap:14px;align-items:center;justify-content:flex-end;min-height:26px}.rg-check-label{display:inline-flex;align-items:center;gap:5px;font-size:12.5px;color:var(--ink-2);cursor:pointer}.rg-inline-metrics{display:flex;flex-wrap:wrap;gap:4px 20px}.rg-inline-metrics li{min-width:140px}.rg-chart{width:100%}.rg-chart-head{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin-bottom:4px}.rg-chart-title{font-size:13px;font-weight:600;color:var(--ink)}.rg-legend{display:flex;flex-wrap:wrap;gap:4px 14px;list-style:none;padding:0;margin:0;flex:1}.rg-legend li{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--ink-2)}.rg-chart-head .rg-small-link{margin-left:auto}.rg-key{display:inline-block;width:14px;height:2px;border-radius:2px;vertical-align:middle;margin-right:6px}.rg-legend .rg-key{margin-right:0}.rg-chart-plot{position:relative}.rg-chart-plot svg{display:block;outline:none}.rg-chart-plot svg:focus-visible{box-shadow:0 0 0 3px var(--brand-soft);border-radius:6px}.rg-grid{stroke:var(--chart-grid);stroke-width:1}.rg-axis{stroke:var(--chart-axis);stroke-width:1}.rg-tick{fill:var(--chart-muted);font-size:11px;font-variant-numeric:tabular-nums}.rg-endlabel{fill:var(--ink-2);font-size:11.5px}.rg-marker{stroke:var(--surface);stroke-width:2}.rg-crosshair{stroke:var(--chart-axis);stroke-width:1}.rg-tip{position:absolute;pointer-events:none;min-width:150px;max-width:240px;z-index:5;background:var(--surface);border:1px solid var(--border);border-radius:8px;box-shadow:var(--shadow-hover);padding:8px 10px;font-size:12px}.rg-tip-head{color:var(--muted);margin-bottom:4px;font-variant-numeric:tabular-nums}.rg-tip-row{display:flex;align-items:center;gap:8px;padding:1px 0}.rg-tip-row b{font-variant-numeric:tabular-nums;color:var(--ink)}.rg-tip-key{width:12px;height:2px;border-radius:2px;flex-shrink:0}.rg-tip-label{color:var(--ink-2);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rg-chart-table{max-height:320px;overflow:auto}.rg-lm{border:1px solid var(--border);border-radius:10px;padding:12px 14px;margin-top:12px}.rg-lm-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;flex-wrap:wrap}.rg-register{border-color:var(--brand)}.rg-files{display:grid;grid-template-columns:minmax(220px,320px) minmax(0,1fr);gap:18px;margin-top:10px}.rg-tree{list-style:none;margin:0;padding:0;font-size:13px;max-height:480px;overflow:auto}.rg-tree li{padding:1px 0}.rg-tree-item{border:0;background:none;cursor:pointer;padding:4px 6px;border-radius:6px;color:var(--ink);display:flex;align-items:center;gap:4px;width:100%;text-align:left;font-size:13px}.rg-tree-item:hover{background:var(--surface-2)}.rg-tree-on,.rg-tree-on:hover{background:var(--brand-soft);color:var(--brand)}.rg-tree-caret{width:12px;color:var(--muted);flex-shrink:0}.rg-tree-size{margin-left:auto;font-size:11px;padding-left:8px}.rg-tree-reg{margin-left:22px}.rg-preview{min-width:0;border-left:1px solid var(--border);padding-left:18px}.rg-preview-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:10px;font-size:12.5px}.rg-preview-text{background:var(--surface-2);border:1px solid var(--border);border-radius:8px;padding:10px 12px;max-height:460px;overflow:auto;white-space:pre;margin:0}.rg-preview-img{max-width:100%;max-height:460px;border:1px solid var(--border);border-radius:8px}.rg-diff td{background:var(--amber-soft)}.rg-diff-note{display:inline-block;margin-left:8px;font-size:10.5px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--amber)}.rg-cmp-col{white-space:nowrap}.rg-alias{display:inline-flex;align-items:center;gap:2px;padding:2px 8px;margin:1px 4px 1px 0;border-radius:999px;background:var(--brand-soft);color:var(--brand);font-size:12px;font-weight:600}.rg-alias-x{border:0;background:none;color:inherit;cursor:pointer;font-size:14px;line-height:1;padding:0 0 0 4px}.rg-alias-row{display:flex;flex-wrap:wrap;gap:8px 16px;align-items:center}.rg-alias-inline{display:inline-flex;align-items:center;gap:2px;font-size:12.5px;color:var(--ink-2);margin-right:8px}.rg-stage-menu{display:inline-flex;gap:6px;align-items:center;flex-wrap:wrap;justify-content:flex-end}.rg-version-detail>td{background:var(--surface-2)}.rg-vdetail h4{font-size:12px;margin:12px 0 6px;color:var(--ink-2)}.rg-vdetail h4:first-child{margin-top:0}.rg-uris{list-style:none;padding:0;margin:0;font-size:12.5px}.rg-uris li{padding:2px 0}.rg-facts{display:grid;grid-template-columns:max-content 1fr;gap:3px 12px;margin:0;font-size:12.5px}.rg-facts dt{color:var(--ink-2)}.rg-facts dd{margin:0;min-width:0}.rg-origin{display:inline-flex;gap:4px;flex-wrap:wrap;vertical-align:middle}.rg-textarea{width:100%;border:1px solid var(--border);border-radius:8px;padding:8px 10px;font:inherit;font-size:13px;margin-bottom:8px;background:var(--surface);color:var(--ink)}.rg-history{list-style:none;padding:0;margin:8px 0 0;font-size:13px;max-height:360px;overflow-y:auto}.rg-history li{display:flex;gap:12px;padding:6px 0;border-bottom:1px solid var(--border)}.rg-history li:last-child{border-bottom:0}.rg-history-when{color:var(--muted);font-size:12px;min-width:76px;flex-shrink:0}.rg-create{margin:12px 0;padding:12px 14px;background:var(--surface-2);border-radius:10px}.rg-address{margin:10px 0 14px;padding:12px 14px;background:var(--surface-2);border:1px solid var(--border);border-radius:8px;font-size:13px}.rg-address code{font-size:13px;word-break:break-all}.rg-stats{margin-bottom:18px}@media(max-width:980px){.rg-layout,.rg-metrics,.rg-files{grid-template-columns:1fr}.rg-side{position:static;max-height:none}.rg-preview{border-left:0;padding-left:0}}.login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px;background:radial-gradient(900px 520px at 0% 0%,rgba(31,79,214,.1),transparent 60%),radial-gradient(700px 420px at 100% 100%,rgba(214,43,51,.06),transparent 60%),var(--canvas)}.login-loading{flex-direction:column;gap:14px}.login-pulse{animation:login-pulse 1.4s ease-in-out infinite}@keyframes login-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.55;transform:scale(.94)}}@media(prefers-reduced-motion:reduce){.login-pulse{animation:none}}.login-shell{width:100%;max-width:920px;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);background:var(--surface);border:1px solid var(--border);border-radius:18px;overflow:hidden;box-shadow:0 1px 2px #0b16400a,0 24px 60px #0b164024}.login-aside{position:relative;display:flex;flex-direction:column;gap:22px;padding:40px 40px 32px;color:#fff;background:radial-gradient(520px 300px at 100% 0%,rgba(214,43,51,.18),transparent 60%),radial-gradient(600px 360px at 0% 100%,rgba(31,79,214,.45),transparent 65%),var(--brand-gradient)}.login-aside-brand{display:flex;align-items:center;gap:10px;font-size:18px;font-weight:800;letter-spacing:.12em}.login-aside-brand .brand-logo{background:#fff;border-radius:50%;padding:3px}.login-aside h2{margin:12px 0 0;font-size:24px;line-height:1.3;font-weight:700;letter-spacing:-.015em;color:#fff}.login-points{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:14px}.login-points li{display:flex;align-items:center;gap:12px;font-size:14px;color:#ffffffe0}.login-points svg{flex:none;color:#9db4ff}.login-aside-foot{margin:auto 0 0;display:flex;align-items:center;gap:7px;font-size:12.5px;color:#ffffffa6}.login-card{width:100%;background:var(--surface);padding:36px 36px 28px;display:flex;flex-direction:column;gap:12px}.login-brand{display:flex;flex-direction:column;align-items:flex-start;gap:2px;padding-bottom:4px}.login-brand .brand-full{display:block;height:auto}.login-card h1{font-size:22px;font-weight:700;margin:4px 0 0;letter-spacing:-.015em}.login-lede{margin:-6px 0 4px;font-size:13.5px;color:var(--ink-2)}.login-card .field{margin-top:4px}.login-card .btn{width:100%;justify-content:center;min-height:40px;margin-top:6px}.login-hint{margin:6px 0 0!important;font-size:12px!important;color:var(--muted);line-height:1.5}@media(max-width:760px){.login-shell{grid-template-columns:1fr;max-width:420px}.login-aside{display:none}}.sidebar-foot .sidebar-user{display:flex;flex-direction:column;gap:2px;margin-bottom:6px;overflow:hidden;text-overflow:ellipsis}textarea.mono,pre.mono{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12px}pre.mono{white-space:pre-wrap;background:var(--surface-2, #f6f7f9);padding:8px;border-radius:6px}.role-editor{margin:14px 0 18px;padding:16px 18px;border:1px solid var(--brand-line, var(--border));border-radius:12px;background:var(--surface-2);scroll-margin-top:80px}.role-editor h3{margin:0 0 4px;font-size:15px}.role-modules{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:12px;margin-top:14px;max-height:60vh;overflow-y:auto;padding-right:4px}.role-module{margin:0;padding:8px 12px 10px;border:1px solid var(--border);border-radius:10px;background:var(--surface);min-width:0}.role-module legend{padding:0 4px;text-transform:capitalize}.role-action{display:flex;align-items:flex-start;gap:8px;padding:4px 0;font-size:13px;cursor:pointer;line-height:1.4}.role-action input{margin-top:3px;flex-shrink:0}.role-action code{font-size:12px}.role-action.is-locked{opacity:.5;cursor:not-allowed}.conn-table tr.row-on td{background:var(--brand-soft, var(--surface-2))}@media(max-width:560px){.role-modules{grid-template-columns:1fr}}.am-cols{display:grid;grid-template-columns:minmax(0,1fr) 92px minmax(0,1fr) 92px minmax(0,1fr);gap:8px;margin-top:8px}.am-row{display:flex;align-items:flex-start;gap:2px;border:1px solid transparent;border-radius:6px}.am-row .am-item{flex:1;min-width:0;border:0}.am-row.am-on .am-item,.am-row.am-rel .am-item{background:none}.am-row.am-ticked{box-shadow:inset 3px 0 0 var(--brand)}.am-row.am-ticked.am-dim{opacity:1}.am-tick{margin:10px 0 0 6px;flex-shrink:0;cursor:pointer}.am-col-head .am-tick{margin:0 2px 0 0;align-self:center}.am-col-head b{margin-right:auto}.am-gutter{display:flex;flex-direction:column;justify-content:center;align-items:stretch;gap:8px}.am-arrow{display:flex;flex-direction:column;align-items:center;gap:2px;padding:8px 4px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);color:var(--muted);font:inherit;font-size:11.5px;cursor:pointer}.am-arrow-glyph{font-size:20px;line-height:1;display:inline-block}.am-arrow:disabled{cursor:not-allowed;opacity:.5}.am-arrow-ready{border-color:var(--brand);color:var(--brand);background:var(--brand-soft);font-weight:600}.am-arrow-ready:hover:not(:disabled){background:var(--brand);color:#fff}.am-arrow:focus-visible{outline:none;box-shadow:var(--focus-ring)}.am-gutter-what{text-align:center;overflow-wrap:anywhere;margin:0}@media(max-width:900px){.am-gutter{flex-direction:row;justify-content:center;flex-wrap:wrap}.am-arrow{flex-direction:row;gap:6px;padding:6px 12px}.am-arrow-glyph{transform:rotate(90deg)}.am-gutter-what{flex-basis:100%}}.am-col{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);min-width:0;display:flex;flex-direction:column}.am-col-head{display:flex;justify-content:space-between;align-items:baseline;gap:8px;padding:10px 12px;border-bottom:1px solid var(--border)}.am-list{max-height:460px;overflow-y:auto;padding:6px;display:flex;flex-direction:column;gap:2px}.am-item{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;width:100%;text-align:left;padding:7px 9px;border:1px solid transparent;border-radius:6px;background:none;color:var(--ink);font:inherit;cursor:pointer}.am-item:hover{background:var(--surface-2, var(--gray-soft))}.am-item:focus-visible{outline:none;box-shadow:var(--focus-ring)}.am-item-main{display:flex;flex-direction:column;min-width:0}.am-item-title{font-weight:600;font-size:13.5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.am-item-meta{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.am-count{flex-shrink:0;font-size:11.5px;color:var(--muted)}.am-tag{align-self:flex-start;margin-top:3px;padding:1px 7px;border-radius:999px;background:var(--brand);color:#fff;font-size:11px;font-weight:600}.am-on{background:var(--brand-soft);border-color:var(--brand)}.am-on:hover{background:var(--brand-soft)}.am-rel{background:var(--brand-soft);border-color:var(--brand-line)}.am-dim{opacity:.45}.am-dim:hover{opacity:.8}.am-empty{padding:8px}.am-matrix-wrap{overflow:auto;max-height:70vh;margin-top:8px;border:1px solid var(--border);border-radius:var(--radius-sm)}.am-matrix{border-collapse:separate;border-spacing:0;font-size:13px}.am-matrix th,.am-matrix td{padding:6px 8px;border-bottom:1px solid var(--border);text-align:center;white-space:nowrap;background:var(--surface)}.am-matrix thead th{position:sticky;top:0;z-index:1;font-weight:600}.am-matrix thead tr:nth-child(2) th{top:31px}.am-matrix .am-sticky{position:sticky;left:0;z-index:2;text-align:left;border-right:1px solid var(--border)}.am-matrix thead .am-sticky{z-index:3}.am-matrix .am-band{color:var(--muted);font-size:11.5px;text-transform:uppercase;letter-spacing:.04em}.am-matrix .am-sep{border-left:2px solid var(--border)}.am-matrix .am-colhead .link-btn{max-width:130px;overflow:hidden;text-overflow:ellipsis;display:inline-block;vertical-align:bottom}.am-matrix td.am-c-direct,.am-matrix td.am-c-both{color:var(--brand);font-weight:700}.am-matrix td.am-c-group{color:var(--brand-strong)}.am-matrix tbody tr:hover td,.am-matrix tbody tr:hover th{background:var(--brand-soft)}.am-row-off th,.am-row-off td{opacity:.55}@media(max-width:900px){.am-cols{grid-template-columns:1fr}.am-list{max-height:280px}}@media(max-width:900px){.am-toolbar{flex-wrap:wrap}.am-toolbar .field{min-width:0}}.am-item .muted.small,.am-col-head .muted.small,.am-matrix .muted.small{margin:0}.am-item .am-count,.am-item .off-tag{margin-top:2px}.am-matrix th.am-sticky .muted.small{font-weight:400}.am-matrix td{font-size:16px;line-height:1}.am-head .chip{white-space:nowrap}@media(max-width:900px){.am-head{flex-wrap:wrap;gap:8px}.am-toolbar .field.grow{flex:1 1 100%}}.ds-sub{margin:18px 0 6px;font-size:14px}.ds-levels input{width:100%;min-width:0}.ds-members{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:14px;align-items:start}.ds-members textarea{width:100%;box-sizing:border-box;resize:vertical}.ds-member-bar{display:flex;flex-wrap:wrap;gap:10px;align-items:flex-end;margin:8px 0 4px}.ds-member-bar .field{margin:0;min-width:0}.ds-member-bar .field.grow{flex:1 1 200px}.ds-member-bar .field>input,.ds-member-bar .field>select{width:100%}.ds-member-bar .btn{white-space:nowrap}.ds-counts{margin:0 0 8px}.ds-member-list{border:1px solid var(--border);border-radius:var(--radius-sm);max-height:420px;overflow:auto}.ds-member-table{table-layout:fixed;margin:0}.ds-member-table thead th{position:sticky;top:0;z-index:1;background:var(--surface)}.ds-member-table td{vertical-align:top}.ds-member-table input,.ds-member-table select{width:100%;min-width:0}.ds-member-table .field-msg{margin:3px 0 0}.ds-member-table .link-btn+.link-btn{margin-left:10px}.ds-c-level{width:15%}.ds-c-value{width:19%}.ds-c-label{width:21%}.ds-c-parent{width:22%}.ds-c-act{width:23%}.ds-member-act{white-space:nowrap}.ds-member-act .link-btn{display:inline-block}.ds-bulk{border:1px solid var(--border);border-radius:var(--radius-sm);padding:10px 12px}.ds-bulk .actions{margin-top:10px}.dsc-pick{display:block;width:100%;text-align:left;background:none;border:0;padding:1px 4px;border-radius:var(--radius-sm);color:inherit;cursor:pointer;font:inherit}.dsc-pick:hover{background:var(--brand-soft)}.ds-tree{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);padding:8px 10px;max-height:320px;overflow-y:auto}.ds-tree-list,.ds-tree-list ul{list-style:none;margin:0;padding-left:0}.ds-tree-list ul{padding-left:18px;border-left:1px dashed var(--border);margin-left:6px}.ds-tree-list li{padding:2px 0}.dsc-node{font-size:13px}.ds-level{display:inline-block;min-width:76px;padding:0 6px;margin-right:4px;border-radius:999px;background:var(--brand-soft);color:var(--brand);font-size:11px;font-weight:600;text-align:center}.ds-summary{display:flex;flex-wrap:wrap;gap:10px;margin:4px 0 12px}.ds-stat{padding:6px 12px;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--surface);font-size:13px}.ds-stat b{font-size:16px;margin-right:4px}.ds-stat.warn{border-color:var(--amber);background:var(--amber-soft)}.ds-chip{display:inline-flex;gap:4px;align-items:baseline;margin:2px 6px 2px 0;cursor:default}.ds-picker{border:1px solid var(--brand-line);border-radius:var(--radius-sm);background:var(--surface);padding:10px 12px;margin:8px 0}.ds-picked{margin-bottom:8px;font-size:13px;display:flex;gap:10px;align-items:baseline;flex-wrap:wrap}.ds-find{width:100%;box-sizing:border-box;margin-bottom:8px}.ds-pick-dim{border:none;padding:0;margin:0 0 8px;max-height:300px;overflow-y:auto}.ds-pick-dim legend{font-weight:600;font-size:13px;padding:0;margin-bottom:4px}.ds-pick{font-size:13px}.ds-grant-pick{margin:4px 0 10px}.ds-reach{display:inline-block;padding:1px 8px;border-radius:999px;background:var(--brand-soft);color:var(--brand);font-weight:600}.ds-explain{margin:8px 0;padding:8px 10px;border-radius:var(--radius-sm);background:var(--surface);border:1px solid var(--border)}@media(max-width:1100px){.ds-members{grid-template-columns:1fr}.ds-member-list{max-height:340px}}.support-tag{display:inline-block;font-size:10.5px;font-weight:700;letter-spacing:.03em;border-radius:5px;padding:1px 6px;flex:none}.page-head .support-tag{margin-left:6px;font-size:11px;padding:3px 8px}.support-certified{background:var(--green-soft);color:var(--green)}.support-enterprise{background:var(--brand-soft);color:var(--brand)}.support-marketplace{background:var(--amber-soft);color:var(--amber)}.support-custom{background:var(--gray-soft);color:var(--ink-2)}.support-note{margin-top:6px;max-width:72ch}.chain-steps{list-style:none;margin:8px 0 10px;padding:0;display:flex;flex-direction:column;gap:4px}.chain-step{align-items:flex-start;padding:8px 0;border-bottom:1px solid var(--border)}.chain-step:last-child{border-bottom:0}.chain-step-actions .wb-actions{flex-wrap:nowrap}.console-head-wrap{flex-wrap:wrap;gap:10px}.console-head-wrap .wb-actions{flex-wrap:wrap}.ds-table .ds-qname{overflow-wrap:anywhere;max-width:340px}.ds-table td:nth-child(2){min-width:180px}.ds-table .ds-actions{width:1%;text-align:right}.ds-table .ds-more{min-width:34px;padding-left:8px;padding-right:8px;font-size:16px;line-height:1}.ds-table .ds-open{color:var(--ink);text-align:left;margin:0;font-size:inherit}.ds-table .ds-open:focus-visible{outline:2px solid var(--brand);outline-offset:2px;border-radius:3px}.sdd{position:relative;display:inline-flex;align-items:center;min-width:260px}.sdd input{width:100%;padding-right:26px}.sdd-caret{position:absolute;right:4px;border:none;background:none;color:var(--muted);cursor:pointer;font-size:12px;padding:4px}.sdd-menu{position:absolute;top:calc(100% + 4px);left:0;right:0;z-index:40;margin:0;padding:4px 0;list-style:none;background:var(--surface, #fff);border:1px solid var(--border);border-radius:8px;box-shadow:0 8px 24px #0f172a1f;max-height:320px;overflow-y:auto}.sdd-menu li{display:flex;justify-content:space-between;gap:10px;padding:7px 12px;cursor:pointer;font-size:13px}.sdd-menu li.sdd-on{background:var(--brand-soft, var(--surface-2))}.sdd-menu li.sdd-none{cursor:default}.sdd-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.add-conn .sdd{flex:1;min-width:280px}.field .sdd{display:flex;width:100%;min-width:0}.ss{position:relative;min-width:0}.ss-box{display:flex;align-items:center;gap:8px;width:100%;min-height:36px;padding:6px 10px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);color:var(--ink);font:inherit;font-size:13.5px;text-align:left;cursor:pointer}.ss-box:hover{border-color:#cfd6e4}.ss-box:focus-visible,.ss.is-open .ss-box{outline:none;border-color:var(--brand);box-shadow:var(--focus-ring)}.ss-box:disabled{background:var(--surface-2);color:var(--ink-2);cursor:not-allowed}.ss-box.is-missing .ss-label{text-decoration:line-through;color:var(--ink-2)}.ss-label{font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ss-tech{font-family:ui-monospace,Consolas,monospace;font-size:12px;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ss-type{margin-left:auto;font-size:12px;color:var(--ink-2);white-space:nowrap}.ss-placeholder{color:var(--muted);flex:1}.ss-caret{margin-left:auto;color:var(--muted);font-size:11px}.ss-type+.ss-caret,.ss-why+.ss-caret{margin-left:4px}.ss-why{margin-left:auto;font-size:12px;color:var(--red);white-space:nowrap}.ss-multi{display:flex;flex-direction:column;gap:6px}.ss-chips{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:6px}.ss-chip{display:inline-flex;align-items:center;gap:2px;padding:2px 4px 2px 10px;border-radius:999px;background:var(--brand-soft);border:1px solid var(--brand-line);color:var(--brand-strong);font-size:12.5px;font-weight:600}.ss-chip button{border:0;background:none;color:inherit;cursor:pointer;padding:0 4px;font-size:12px;line-height:20px;border-radius:999px}.ss-chip button:hover:not(:disabled){background:#1f4fd61f}.ss-chip button:disabled{opacity:.35;cursor:default}.ss-chip.is-missing{background:var(--red-soft);border-color:var(--red-soft);color:var(--red);text-decoration:line-through}.ss-add{min-height:32px}.ss-pop{position:fixed;z-index:1200;background:var(--surface);border:1px solid var(--border);border-radius:10px;box-shadow:var(--shadow-hover);display:flex;flex-direction:column;overflow:hidden}.ss-top{display:flex;flex-direction:column;gap:8px;padding:10px 10px 8px;border-bottom:1px solid var(--border)}.ss-search{width:100%;padding:7px 10px;border:1px solid var(--brand);border-radius:var(--radius-sm);font:inherit;font-size:13.5px;color:var(--ink);background:var(--surface);box-shadow:var(--focus-ring);outline:none}.ss-scopes{display:flex;gap:6px;flex-wrap:wrap}.ss-scopes .chip{padding:2px 10px;font-size:12px}.ss-list{list-style:none;margin:0;padding:4px;overflow-y:auto}.ss-group{display:flex;align-items:center;gap:6px;height:34px;padding:10px 8px 0;box-sizing:border-box;font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}.ss-opt{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:8px;height:34px;padding:0 6px 0 8px;border-radius:7px;cursor:pointer;font-size:13px;box-sizing:border-box}.ss-opt:not(:has(.ss-check)){grid-template-columns:minmax(0,1fr) auto auto}.ss-opt.is-hi{background:var(--brand-soft)}.ss-opt.is-off{cursor:not-allowed;color:var(--muted)}.ss-opt.is-off .ss-label{font-weight:500}.ss-check{width:16px;height:16px;border:1.5px solid var(--border);border-radius:4px;display:inline-flex;align-items:center;justify-content:center;font-size:11px;color:#fff}.ss-opt.is-on .ss-check{background:var(--brand);border-color:var(--brand)}.ss-name{display:flex;align-items:baseline;gap:8px;min-width:0;overflow:hidden;white-space:nowrap}.ss-name>*{min-width:0}.ss-name .ss-label{flex:0 0 auto;max-width:70%}.ss-name .ss-tech{flex:0 2 auto}.ss-desc,.ss-also{flex:0 20 auto;font-size:12px;color:var(--muted);overflow:hidden;text-overflow:ellipsis}.ss-also{color:var(--ink-2);font-style:italic}.ss-name mark{background:none;color:var(--brand-strong);font-weight:700;padding:0}.ss-meta{font-size:11.5px;color:var(--ink-2);white-space:nowrap}.ss-star{border:0;background:none;cursor:pointer;color:var(--muted);font-size:14px;padding:0 4px;line-height:1;opacity:0}.ss-opt:hover .ss-star,.ss-opt.is-hi .ss-star,.ss-star.is-on{opacity:1}.ss-star.is-on{color:var(--amber)}.ss-empty{padding:16px 10px;text-align:center;color:var(--muted);font-size:13px}.ss-foot{display:flex;align-items:center;gap:8px;padding:6px 10px;border-top:1px solid var(--border);background:var(--surface-2);min-height:40px}.ss-plain input{width:100%}.state-block{display:flex;flex-direction:column;gap:4px;padding:14px 4px;font-size:13px}.state-compact{padding:0}.state-title{color:var(--ink-2);font-weight:600}.state-why{color:var(--muted);max-width:70ch}.state-error .state-title{color:var(--red)}.state-denied .state-title:before{content:"🔒︎ ";font-weight:400}.state-act{display:flex;gap:8px;margin-top:6px;flex-wrap:wrap}.state-bars{display:grid;gap:6px;margin-bottom:4px}.state-bars i{display:block;height:9px;border-radius:4px;background:var(--gray-soft)}.state-bars i:nth-child(1){width:80%}.state-bars i:nth-child(2){width:58%}.state-bars i:nth-child(3){width:68%}@media(prefers-reduced-motion:no-preference){.state-bars i{animation:state-pulse 1.2s ease-in-out infinite alternate}}@keyframes state-pulse{0%{opacity:1}to{opacity:.45}}.confirm-body p{margin:0 0 8px}.confirm-body ul{margin:4px 0 0 18px;padding:0}.ss{container-type:inline-size}@container (max-width: 230px){.ss-box .ss-type,.ss-box .ss-tech{display:none}}.ds-commands{align-items:center;flex-wrap:wrap;gap:8px}.split-btn{display:inline-flex;align-items:stretch}.split-btn>.btn{border-top-right-radius:0;border-bottom-right-radius:0}.split-btn .sh-menu>.split-caret{border-top-left-radius:0;border-bottom-left-radius:0;padding:5px 8px;height:100%;border-left:1px solid rgba(255,255,255,.35)}.split-btn:has(>.sh-menu)>.btn{border-right:0}.ds-commands .sh-menu-pop{min-width:300px}.menu-indent{padding-left:24px}.fl-body.fl-forge{--pane-l: 250px;--pane-r: 330px;grid-template-columns:var(--pane-l) minmax(0,1fr) var(--pane-r)}.fl-sources{border-bottom:1px solid var(--border);padding-bottom:8px}.fl-sources .fw-sources{font-size:12.5px}.fl-toolbar-bridged{gap:10px}.fl-toolbar-bridged .chips{margin:0}@media(max-width:1200px){.fl-body.fl-forge{grid-template-columns:var(--pane-l) minmax(0,1fr)}}.sqx{position:relative}.sqx-pop{position:absolute;z-index:30;min-width:280px;max-width:460px;max-height:280px;overflow-y:auto;margin:0;padding:4px;list-style:none;background:var(--surface);border:1px solid var(--border);border-radius:8px;box-shadow:var(--shadow-hover);font-size:13px}.sqx-opt{display:grid;grid-template-columns:10px minmax(0,1fr) auto auto;align-items:center;gap:8px;padding:5px 8px;border-radius:6px;cursor:pointer}.sqx-opt.is-hi{background:var(--brand-soft)}.sqx-value{font-family:ui-monospace,Consolas,monospace;font-size:12.5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sqx-of{font-size:11.5px;color:var(--ink-2)}.sqx-type{font-size:11px;color:var(--muted)}.sqx-kind{width:8px;height:8px;border-radius:50%;background:var(--gray-soft)}.sqx-column{background:var(--green)}.sqx-input{background:var(--brand);border-radius:2px}.sqx-keyword{background:var(--muted)}.sqx-help{padding:5px 8px 2px;font-size:11px;color:var(--muted);border-top:1px solid var(--border);margin-top:4px}.sqx-code{display:flex;align-items:stretch}.sqx-gutter{flex:none;min-width:34px;padding:13px 6px 13px 0;overflow:hidden;text-align:right;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:13px;line-height:1.55;color:var(--muted);-webkit-user-select:none;user-select:none;border-right:1px solid var(--border);margin-right:6px}.sqx-gutter .is-err{color:#fff;background:var(--red);border-radius:3px;padding-right:3px;cursor:help}.sqx-area{position:relative;flex:1;min-width:0}.sqx-area .sqx-layer,.sqx-area .sqx-text{padding:12px;border-width:1px;margin:0;box-sizing:border-box;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:13px;line-height:1.55;white-space:pre;-moz-tab-size:4;tab-size:4;letter-spacing:normal}.sqx-area .sqx-layer{position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden;pointer-events:none;min-height:0;resize:none}.sqx-area .sqx-text{position:relative;display:block;width:100%;overflow:auto;background:transparent;color:transparent;caret-color:var(--ink);-webkit-text-fill-color:transparent}.sqx-area .sqx-text:focus{background:transparent}.sqx-area .sqx-text::placeholder{color:var(--muted);-webkit-text-fill-color:var(--muted)}.sqx-area:focus-within .sqx-layer{border-color:var(--brand);background:#fff}.sqx-area .sqx-text::selection{background:#2563eb40}.sqx-errline{position:absolute;left:0;right:0;height:1.55em;top:calc(13px + (var(--l) - 1) * 1.55em);background:#dc26261f;border-left:3px solid var(--red)}.hl-kw{color:#7c3aed;font-weight:600}.hl-fn{color:#0369a1}.hl-str{color:#047857}.hl-com{color:#6b7280;font-style:italic}.hl-num{color:#b45309}.hl-param{color:#be185d;font-weight:600}.qb-switch{display:inline-flex;border:1px solid var(--border);border-radius:var(--radius-sm);overflow:hidden;margin:0 0 10px}.qb-switch button{border:0;background:var(--surface);padding:5px 14px;font-family:inherit;font-weight:600;font-size:12.5px;line-height:1.4;color:var(--ink-2);cursor:pointer}.qb-switch button+button{border-left:1px solid var(--border)}.qb-switch button[aria-pressed=true]{background:var(--brand-soft);color:var(--brand-strong)}.qb-panel{display:flex;flex-direction:column;gap:10px}.qb-sec{border:1px solid var(--border);border-radius:10px;padding:10px 12px 8px;background:var(--surface)}.qb-h{display:flex;align-items:baseline;gap:8px;margin-bottom:8px}.qb-kw{font-size:11px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--brand-strong)}.qb-line{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:6px}.qb-line>.ss{flex:1 1 180px}.qb-line>input{flex:0 1 150px;min-width:90px}.qb-line>select{flex:0 0 auto}.qb-row.is-gone .ss-box,.qb-row.is-gone input,.qb-row.is-gone select{text-decoration:line-through;color:var(--ink-2);border-color:var(--red)}.qb-note{flex-basis:100%;font-size:12px;color:var(--red)}.qb-src{display:inline-flex;align-items:baseline;gap:6px;padding:4px 10px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-2);font-size:13px}.qb-join{border-top:1px dashed var(--border);padding-top:8px;margin-top:4px}.qb-cond>.ss{flex:1 1 160px}.qb-add{border:1px dashed var(--brand-line);background:none;color:var(--brand);border-radius:var(--radius-sm);padding:3px 10px;font-family:inherit;font-weight:600;font-size:12px;line-height:1.6;cursor:pointer}.qb-x{border:0;background:none;color:var(--muted);font-size:17px;line-height:1;width:26px;height:26px;border-radius:6px;cursor:pointer}.qb-x:hover{background:var(--red-soft);color:var(--red)}.qb-check{display:inline-flex;align-items:center;gap:6px;font-size:13px;margin-left:10px}.qb-auto{margin:0 0 8px;font-size:13px;color:var(--ink-2)}.qb-limit{width:80px}.qb-problems{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px;font-size:13px}.qb-sql summary{cursor:pointer;font-size:12.5px;font-weight:600;color:var(--ink-2)}.qb-refused{border:1px solid var(--amber);background:var(--amber-soft);border-radius:10px;padding:12px 14px;gap:6px}.qb-refused p{margin:0}.ds-where{max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ds-progress{display:inline-flex;align-items:center;gap:7px;padding:3px 10px;min-height:28px;border:1px solid var(--border);border-radius:8px;background:var(--surface);font-family:inherit;font-weight:600;font-size:12.5px;line-height:1;color:var(--ink-2);cursor:pointer}.ds-progress:hover,.ds-progress.is-open{border-color:var(--brand);color:var(--brand-strong)}.ds-progress-bars{display:inline-flex;gap:3px}.ds-progress-bars i{width:14px;height:4px;border-radius:2px;background:var(--border)}.ds-progress-bars i.on{background:var(--green)}.ds-tabs{display:flex;align-items:flex-end;gap:2px;margin-top:10px;border-bottom:1px solid var(--border);overflow-x:auto;scrollbar-width:thin}.ds-tab{border:0;border-bottom:2px solid transparent;background:none;padding:8px 11px;white-space:nowrap;font-family:inherit;font-weight:600;font-size:13px;line-height:1.3;color:var(--ink-2);cursor:pointer}.ds-tab:hover{color:var(--ink)}.ds-tab.is-on{color:var(--brand-strong);border-bottom-color:var(--brand)}.ds-tab:focus-visible{outline:none;box-shadow:var(--focus-ring);border-radius:6px 6px 0 0}.ds-tab-count{margin-left:5px;font-weight:500;color:var(--muted)}.ds-tab-group{align-self:center;flex:none;width:1px;height:18px;margin:0 6px;background:var(--border)}.ds-description{margin:0 0 14px;color:var(--ink-2);max-width:90ch}.ds-filter{min-width:280px}.ds-star-col{width:34px;padding-right:0!important}.ds-star{border:0;background:none;cursor:pointer;font-size:16px;line-height:1;color:var(--muted);padding:2px 4px;border-radius:6px}.ds-star:hover,.ds-star.is-on{color:var(--amber)}.ds-star:focus-visible{outline:none;box-shadow:var(--focus-ring)}nav.ds-tabs{flex-direction:row;flex:none;overflow-y:hidden}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.ds-filter{padding:6px 10px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);font:inherit;font-size:13.5px;color:var(--ink);min-height:32px}.ds-filter:focus{outline:none;border-color:var(--brand);box-shadow:var(--focus-ring)}.ds-tab{padding:8px}.sem-suggest{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin-top:6px}.sem-suggest-chip{border-style:dashed;color:var(--brand);padding:2px 10px;font-size:12px}.column-pick{display:flex;flex-direction:column;gap:4px;align-items:flex-start}.column-pick>.ss,.column-pick>textarea{width:100%}.help-tip{position:relative;display:inline-flex;vertical-align:middle;margin-left:6px}.help-tip-btn{width:18px;height:18px;border-radius:50%;border:1px solid var(--border);background:var(--surface);color:var(--ink-2);font:700 11px/1 Georgia,Times New Roman,serif;font-style:italic;cursor:help;padding:0;text-transform:none;letter-spacing:0}.help-tip-btn:hover,.help-tip-btn[aria-expanded=true]{border-color:var(--brand);color:var(--brand)}.help-tip-btn:focus-visible{outline:none;box-shadow:var(--focus-ring)}.help-tip-text{position:fixed;left:0;top:0;z-index:1300;width:300px;max-width:92vw;padding:10px 12px;border-radius:8px;background:var(--brand-deep);color:#fff;font-family:inherit;font-weight:400;font-size:12.5px;line-height:1.45;text-transform:none;letter-spacing:0;box-shadow:var(--shadow-hover);visibility:hidden;opacity:0;transition:opacity .12s ease}.help-tip-text.is-open{visibility:visible;opacity:1}@media(prefers-reduced-motion:reduce){.help-tip-text{transition:none}}.studio-help{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.4fr);gap:24px}@media(max-width:760px){.studio-help{grid-template-columns:minmax(0,1fr)}}.studio-help h3{margin:0 0 8px;font-size:14px}.studio-keys,.studio-parts{display:grid;grid-template-columns:auto minmax(0,1fr);gap:6px 14px;margin:0;font-size:13px}.studio-keys dt,.studio-parts dt{font-weight:600;white-space:nowrap}.studio-keys dd,.studio-parts dd{margin:0;color:var(--ink-2)}.field-rename{font:inherit;font-size:12px;padding:2px 6px;border:1px solid var(--brand);border-radius:5px;min-width:0;width:160px;background:var(--surface);color:var(--ink)}.field-rename-btn{border:none;background:none;color:var(--muted);font-size:12px;line-height:1;cursor:pointer;padding:2px 3px;border-radius:4px}.field-rename-btn:hover{color:var(--brand);background:var(--brand-soft, transparent)}.dl-cols{display:flex;flex-wrap:wrap;gap:6px 16px;max-height:240px;overflow:auto;padding:4px 0}.dl-cols .qb-check{margin-left:0}.fw-cols{margin-top:8px}.fw-cols summary{cursor:pointer}.fw-cols-row{display:flex;flex-wrap:wrap;gap:4px 8px;align-items:baseline;margin-top:6px}.fw-cols-alias{font-weight:600;margin-right:4px}
