
.login-experience[data-v-61cff41a]{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);min-height:100vh;min-height:100svh;background:#f7f9fc;color:#20324b;font-family:system-ui,-apple-system,"PingFang SC","Microsoft YaHei",sans-serif;line-height:1.5}
.login-experience[data-v-61cff41a] *{box-sizing:border-box}.login-story[data-v-61cff41a]{position:relative;isolation:isolate;display:flex;flex-direction:column;justify-content:space-between;overflow:hidden;padding:clamp(32px,5vw,80px);color:#fff;background:radial-gradient(ellipse at 85% 25%,#235370 0,transparent 60%),linear-gradient(145deg,#0e223b,#17334d)}
.login-background[data-v-61cff41a]{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-3;opacity:.35}.login-story[data-v-61cff41a]:after{position:absolute;inset:0;z-index:-1;content:"";background:linear-gradient(130deg,rgba(10,27,47,.15),rgba(10,27,47,.65))}.login-story-grid[data-v-61cff41a]{position:absolute;inset:0;z-index:-2;background-image:linear-gradient(#c2e2ff0b 1px,transparent 1px),linear-gradient(90deg,#c2e2ff0b 1px,transparent 1px);background-size:56px 56px;mask-image:linear-gradient(120deg,transparent,#000)}
.login-story-brand[data-v-61cff41a]{display:flex;align-items:center;gap:14px;font-size:10px;font-weight:650;letter-spacing:.18em;color:#c7d8e8}.login-brand-symbol[data-v-61cff41a]{flex-shrink:0;display:grid;place-items:center;width:44px;height:44px;border-radius:13px;color:#fff;background:linear-gradient(145deg,#3f91e9,#2862b4);font-size:14px;font-weight:750;letter-spacing:.06em;box-shadow:0 6px 18px #0c1f3626}.login-story-copy[data-v-61cff41a]{margin:70px 0;max-width:520px}.login-eyebrow[data-v-61cff41a]{font-size:11px;font-weight:650;letter-spacing:.12em;color:#5278a0}.login-story .login-eyebrow[data-v-61cff41a]{color:#93c4e8}.login-story h1[data-v-61cff41a]{font-size:clamp(30px,3.5vw,52px);font-weight:650;line-height:1.3;letter-spacing:-.035em;white-space:pre-line;margin:22px 0;overflow-wrap:anywhere}.login-story-copy>p[data-v-61cff41a]{max-width:400px;font-size:15px;line-height:1.9;color:#c1d1e1;margin:0}.login-story-note[data-v-61cff41a]{display:flex;align-items:center;gap:10px;color:#a9c0d5;font-size:12px;margin-top:40px}.login-story-note>span[data-v-61cff41a]{height:1px;width:26px;background:#6dbbb9}.login-story-foot[data-v-61cff41a]{font-size:11px;color:#92abc2;letter-spacing:.08em}
.login-form-region[data-v-61cff41a]{display:grid;place-items:center;padding:48px 32px}.login-form-card[data-v-61cff41a]{width:100%;max-width:390px;min-width:0}.login-company[data-v-61cff41a]{display:flex;align-items:center;gap:13px;margin-bottom:48px}.login-company-logo[data-v-61cff41a]{width:48px;height:48px;object-fit:contain;flex-shrink:0}.login-company>div[data-v-61cff41a]{min-width:0}.login-company strong[data-v-61cff41a]{display:block;font-size:16px;color:var(--card-title,#182c44);overflow-wrap:anywhere}.login-company small[data-v-61cff41a]{display:block;font-size:11px;color:#748398;margin-top:4px;overflow-wrap:anywhere}.login-heading h2[data-v-61cff41a]{font-size:30px;font-weight:650;letter-spacing:-.03em;margin:9px 0 7px;line-height:1.3}.login-heading>p[data-v-61cff41a]{font-size:13px;color:#718198;margin:0 0 28px}
.login-form[data-v-61cff41a]{display:grid;gap:19px}.login-field[data-v-61cff41a]{display:grid;gap:8px;min-width:0}.login-field label[data-v-61cff41a]{font-size:13px;font-weight:600;color:#40536b}.login-field input[data-v-61cff41a]{width:100%;min-width:0;min-height:48px;border:1px solid #d9e1ea;border-radius:9px;background:white;padding:12px 14px;color:#20324b;font:inherit;font-size:14px;outline:none;transition:border-color .15s,box-shadow .15s}.login-field input[data-v-61cff41a]::placeholder{color:#8d9bac}.login-field input[data-v-61cff41a]:focus{border-color:var(--primary,#2874dc);box-shadow:0 0 0 3px #2874dc18}.login-field input[data-v-61cff41a]:disabled{background:#edf1f6;color:#7b8a9a}.login-field-heading[data-v-61cff41a]{display:flex;align-items:center;justify-content:space-between;gap:12px}.login-refresh[data-v-61cff41a]{border:0;padding:4px 0;background:transparent;color:var(--link,#2563c4);font:inherit;font-size:12px;min-height:30px}.login-refresh[data-v-61cff41a]:focus-visible,.login-submit[data-v-61cff41a]:focus-visible{outline:3px solid #6ba9ef;outline-offset:3px}.login-challenge-row[data-v-61cff41a]{display:grid;grid-template-columns:minmax(0,1fr) 146px;gap:12px}.login-challenge-image[data-v-61cff41a]{display:grid;place-items:center;min-height:48px;overflow:hidden;border:1px solid #dce5ee;border-radius:9px;background:#f3f7fb}.login-challenge-image img[data-v-61cff41a]{display:block;width:100%;height:46px;object-fit:contain}.login-challenge-image>span[data-v-61cff41a]{color:#748398;font-size:12px}.login-challenge-help[data-v-61cff41a]{margin:0;color:#718198;font-size:11px;line-height:1.6;font-variant-numeric:tabular-nums}.login-challenge-help.is-expired[data-v-61cff41a]{color:#a34b20}.login-session-notice[data-v-61cff41a],.login-error[data-v-61cff41a]{margin:0;padding:11px 13px;border-radius:8px;font-size:12px;line-height:1.7;overflow-wrap:anywhere}.login-session-notice[data-v-61cff41a]{background:#eaf2fd;border:1px solid #d3e3f7;color:#385e89}.login-error[data-v-61cff41a]{background:#fff0f0;border:1px solid #f4d7d7;color:#ad303d}.login-submit[data-v-61cff41a]{display:flex;justify-content:center;align-items:center;gap:14px;min-height:48px;width:100%;border:0;border-radius:9px;color:white;background:var(--button,#2874dc);font:inherit;font-size:14px;font-weight:650;box-shadow:0 6px 16px #2874dc20}.login-submit[data-v-61cff41a]:not(:disabled):hover{filter:brightness(.94)}.login-experience button[data-v-61cff41a]:disabled{cursor:not-allowed;opacity:.55}.login-access-note[data-v-61cff41a]{display:flex;align-items:center;justify-content:center;gap:7px;color:#7d8da0;font-size:11px;margin:23px 0 0}.login-access-note svg[data-v-61cff41a]{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.4;stroke-linejoin:round;stroke-linecap:round}.login-copyright[data-v-61cff41a]{text-align:center;font-size:11px;color:#8796a8;line-height:1.7;margin-top:38px;overflow-wrap:anywhere}
@media(min-width:1500px){.login-form-region[data-v-61cff41a]{padding:64px}.login-form-card[data-v-61cff41a]{max-width:410px}}
@media(max-width:820px){.login-experience[data-v-61cff41a]{grid-template-columns:1fr}.login-story[data-v-61cff41a]{padding:24px 28px 30px}.login-story-brand[data-v-61cff41a]{font-size:9px}.login-story-brand .login-brand-symbol[data-v-61cff41a]{width:32px;height:32px;border-radius:9px;font-size:11px}.login-story-copy[data-v-61cff41a]{margin:27px 0 0;max-width:580px}.login-story h1[data-v-61cff41a]{font-size:28px;white-space:normal;margin:12px 0}.login-story-copy>p[data-v-61cff41a]{font-size:12px;max-width:540px}.login-story-note[data-v-61cff41a],.login-story-foot[data-v-61cff41a]{display:none}.login-form-region[data-v-61cff41a]{padding:32px 24px 28px}.login-company[data-v-61cff41a]{margin-bottom:28px}.login-heading h2[data-v-61cff41a]{font-size:26px}.login-copyright[data-v-61cff41a]{margin-top:28px}}
@media(max-width:360px){.login-story[data-v-61cff41a]{padding:22px 20px}.login-form-region[data-v-61cff41a]{padding:28px 20px}.login-challenge-row[data-v-61cff41a]{grid-template-columns:minmax(0,1fr) 126px;gap:8px}.login-story-brand[data-v-61cff41a]{letter-spacing:.1em}}
@media(prefers-reduced-motion:reduce){.login-field input[data-v-61cff41a]{transition:none}}


.mg-remote[data-v-79f1cae2]{position:relative;border:1px solid #dfe5ee;border-radius:8px;padding:10px;min-width:0;font-weight:400}.mg-search[data-v-79f1cae2],.mg-chips[data-v-79f1cae2]{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.mg-search[data-v-79f1cae2]{flex-wrap:nowrap;margin:8px 0}.mg-search input[data-v-79f1cae2]{width:100%;min-width:50px;border:1px solid #dce3ed;border-radius:7px;padding:9px 11px;font:inherit}.mg-options[data-v-79f1cae2]{display:flex;flex-direction:column;max-height:220px;overflow:auto;gap:3px}.mg-options>button[data-v-79f1cae2]{border:0;text-align:left;display:flex;gap:8px;align-items:center;justify-content:space-between;padding:8px;background:#f7f9fc;border-radius:5px;cursor:pointer;color:inherit}.mg-options>button.selected[data-v-79f1cae2]{background:#e9f0ff;color:#285abb}.mg-options small[data-v-79f1cae2]{font-size:11px;color:#75839a}.mg-chip[data-v-79f1cae2]{border:1px solid #c9d9f7;background:#edf3ff;border-radius:5px;color:#315eac;padding:4px 7px;font:inherit}.mg-remote[data-v-79f1cae2] .pagination{padding:9px 0 0;gap:6px;flex-wrap:wrap;font-size:11px}.selection-validation[data-v-79f1cae2]{position:absolute;opacity:0;width:1px;height:1px;bottom:0;left:0;pointer-events:none}button[data-v-79f1cae2]:disabled{opacity:.55;cursor:not-allowed}


.business-progress[data-v-5dc6d9dc]{margin-bottom:24px;padding:18px;border:1px solid #dce4ef;border-radius:12px;background:#f8fafc}ol[data-v-5dc6d9dc]{display:flex;flex-wrap:wrap;gap:8px;list-style:none;padding:0;margin:0 0 16px}li button[data-v-5dc6d9dc]{display:flex;align-items:center;gap:7px;border:0;background:transparent;color:#64748b;padding:8px;border-radius:6px;cursor:pointer}li.current button[data-v-5dc6d9dc]{background:#e0ecff;color:#1d4ed8;font-weight:700}li span[data-v-5dc6d9dc]{display:grid;place-items:center;width:22px;height:22px;border:1px solid currentColor;border-radius:50%;font-size:12px}small[data-v-5dc6d9dc]{font-size:11px}.next-step[data-v-5dc6d9dc]{display:flex;align-items:center;justify-content:space-between;gap:16px}.next-step strong[data-v-5dc6d9dc]{display:block;margin-top:5px;font-size:16px}.next-step p[data-v-5dc6d9dc]{margin:8px 0 0;color:#526175;font-size:13px}.next-step button[data-v-5dc6d9dc]{flex-shrink:0}@media(max-width:650px){.next-step[data-v-5dc6d9dc]{align-items:flex-start;flex-direction:column}ol[data-v-5dc6d9dc]{gap:2px}li button[data-v-5dc6d9dc]{font-size:12px}}


.attachment-toolbar[data-v-0c6608fb]{display:flex;align-items:end;gap:12px;flex-wrap:wrap;margin:16px 0}.attachment-toolbar label[data-v-0c6608fb]{display:grid;gap:7px;font-size:13px}.attachment-toolbar select[data-v-0c6608fb]{padding:9px;border:1px solid var(--line);border-radius:6px;background:var(--surface)}.attachment-list[data-v-0c6608fb]{padding:0;list-style:none}.attachment-list li[data-v-0c6608fb]{display:flex;justify-content:space-between;gap:14px;border-bottom:1px solid var(--line);padding:15px 0;overflow-wrap:anywhere}.attachment-list p[data-v-0c6608fb]{margin:6px 0}.attachment-list small[data-v-0c6608fb]{color:var(--muted)}@media(max-width:780px){.attachment-list li[data-v-0c6608fb]{flex-direction:column;align-items:flex-start}}


.project-filter[data-v-56f58192]{position:relative;min-width:170px;max-width:340px}.project-filter summary[data-v-56f58192]{cursor:pointer;padding:8px 10px;border:1px solid var(--line);border-radius:6px;font-size:13px}.project-filter[open][data-v-56f58192]{flex-basis:100%;max-width:600px}.record-id[data-v-56f58192]{font-size:12px}.permission-note[data-v-56f58192]{font-size:13px;color:var(--muted);margin-bottom:14px}.success-feedback[data-v-56f58192]{padding:12px 14px;margin-bottom:14px;border:1px solid #b9d8c7;border-radius:6px;background:#edf6f0;color:#215c40;font-size:13px}.approval-tag[data-v-56f58192]{color:#765b24;max-width:240px}.business-detail-workspace[data-v-56f58192]:focus{outline:none}.detail-toolbar[data-v-56f58192]{display:flex;align-items:center;gap:16px;margin-bottom:16px;color:var(--muted);font-size:13px}.record-heading[data-v-56f58192]{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:18px}.record-heading h1[data-v-56f58192]{font-size:22px;line-height:1.45;margin:0 0 8px;overflow-wrap:anywhere}.record-heading p[data-v-56f58192]{display:flex;flex-wrap:wrap;gap:8px 14px;color:var(--muted);font-size:12px;margin:0}.record-heading-actions[data-v-56f58192]{display:flex;align-items:center;gap:12px;flex-shrink:0}.business-detail-body[data-v-56f58192],.create-surface[data-v-56f58192]{padding:22px}.business-detail[data-v-56f58192] h3{font-size:15px;margin:24px 0 12px;scroll-margin-top:110px}.business-detail[data-v-56f58192] h3:first-child{margin-top:0}.business-detail[data-v-56f58192] .key-grid{margin-bottom:18px}.business-detail[data-v-56f58192] .action-row{display:flex;flex-wrap:wrap;gap:9px;margin:18px 0}.business-detail[data-v-56f58192] .domain-block{margin:18px 0}.business-detail[data-v-56f58192] .field{margin-bottom:12px}.business-detail[data-v-56f58192] .data-table{margin-bottom:18px}.business-detail[data-v-56f58192] .result-fields{margin-bottom:15px}.business-detail[data-v-56f58192] .data-table{display:block;max-width:100%;overflow-x:auto}.create-surface[data-v-56f58192]{max-width:1120px}.create-surface[data-v-56f58192] h3{margin:4px 0 0;font-size:15px}.create-surface[data-v-56f58192] .form-actions{padding:16px 0 0}@media(max-width:780px){.record-heading[data-v-56f58192]{flex-direction:column;gap:12px}.record-heading h1[data-v-56f58192]{font-size:20px}.record-heading-actions[data-v-56f58192]{width:100%;justify-content:space-between}.business-detail-body[data-v-56f58192],.create-surface[data-v-56f58192]{padding:16px}.detail-toolbar[data-v-56f58192]{margin-bottom:12px}}
.business-detail-body[hidden][data-v-56f58192]{display:none!important}.business-action-rail[data-v-56f58192] .approval-panel{flex-direction:column;align-items:stretch;padding:12px;gap:12px}.business-action-rail[data-v-56f58192] .approval-panel button{width:100%}.record-provenance[data-v-56f58192]{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px;font-size:12px;color:var(--muted);margin:0 0 14px;overflow-wrap:anywhere}.business-detail-layout[data-v-56f58192]{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:20px;align-items:start}.business-detail-layout[data-v-56f58192]>*{min-width:0}.detail-tabs[data-v-56f58192]{display:flex;overflow-x:auto;border-bottom:1px solid var(--line);padding:0 18px;gap:20px;scrollbar-width:thin}.detail-tabs button[data-v-56f58192]{border:0;border-bottom:3px solid transparent;background:transparent;padding:15px 0 12px;white-space:nowrap;font:inherit;font-size:14px;color:var(--muted);cursor:pointer}.detail-tabs button[aria-selected=true][data-v-56f58192]{color:var(--primary);border-bottom-color:var(--primary);font-weight:600}.business-action-rail[data-v-56f58192]{scroll-margin-top:112px;position:sticky;top:76px;max-height:calc(100dvh - 96px);overflow-y:auto;padding:18px;overflow-wrap:anywhere}.business-action-rail h2[data-v-56f58192]{font-size:16px;margin:0 0 12px}.business-action-rail>strong[data-v-56f58192]{display:block;line-height:1.6}.business-action-rail p[data-v-56f58192]{font-size:13px;line-height:1.7}.business-action-rail[data-v-56f58192] .action-row{display:flex;flex-direction:column;align-items:stretch;gap:10px;margin:16px 0}.business-action-rail[data-v-56f58192] .button{white-space:normal;min-height:40px}.business-action-rail[data-v-56f58192] h3{font-size:14px;margin:20px 0 10px}.business-action-rail[data-v-56f58192] .section-note{font-size:12px;line-height:1.7}.business-action-rail[data-v-56f58192] input,.business-action-rail[data-v-56f58192] textarea{max-width:100%;width:100%}.action-boundary[data-v-56f58192]{border-top:1px solid var(--line);padding-top:14px;margin-bottom:0;color:var(--muted)}.business-detail[data-v-56f58192] [role=tabpanel]:focus-visible{outline-offset:-3px}.business-create[data-v-56f58192]:focus-visible,.business-action-rail[data-v-56f58192]:focus-visible,.business-detail-workspace[data-v-56f58192]:focus-visible{outline:2px solid var(--primary);outline-offset:3px}@media(max-width:1100px){.business-detail-layout[data-v-56f58192]{grid-template-columns:minmax(0,1fr) 270px;gap:14px}.business-detail-body[data-v-56f58192]{padding:16px}.detail-tabs[data-v-56f58192]{gap:15px;padding:0 14px}}@media(max-width:900px){.business-detail-layout[data-v-56f58192]{grid-template-columns:1fr}.business-action-rail[data-v-56f58192]{position:static;max-height:none;grid-row:1}.business-action-rail[data-v-56f58192] .action-row{flex-direction:row;flex-wrap:wrap}.business-action-rail[data-v-56f58192] .button{flex:1 1 150px}.business-action-rail[data-v-56f58192] h3{margin-top:12px}.detail-tabs[data-v-56f58192]{gap:18px}.detail-tabs button[data-v-56f58192]{font-size:13px}}


.execution-state[data-v-031a84b4]{border-top:1px solid #e2e8f0;padding-top:18px}.execution-state header[data-v-031a84b4]{display:flex;align-items:center;justify-content:space-between;gap:15px}.execution-state h3[data-v-031a84b4]{margin:0}.execution-state header p[data-v-031a84b4]{margin:9px 0}.source-note[data-v-031a84b4]{font-size:12px;color:#64748b}.execution-steps[data-v-031a84b4]{display:flex;flex-wrap:wrap;list-style:none;gap:10px;padding:0}.execution-steps li[data-v-031a84b4]{padding:8px 11px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:7px;font-size:12px}summary[data-v-031a84b4]{cursor:pointer;font-size:13px;padding:10px 0}@media(max-width:650px){.execution-state header[data-v-031a84b4]{align-items:flex-start;flex-direction:column}}


.model-analysis[data-v-09198253] { margin: 22px 0; padding: 16px; border: 1px solid var(--line); border-left: 3px solid var(--warn); border-radius: 7px; background: var(--surface); font-size: 12px; line-height: 1.7; overflow-wrap: anywhere;
}
.model-analysis-badges[data-v-09198253] { display: flex; flex-wrap: wrap; gap: 8px;
}
.model-analysis-badge[data-v-09198253] { padding: 4px 8px; border-radius: 5px; background: #fff6e3; color: #815710; font-weight: 600;
}
.model-analysis-boundary[data-v-09198253] { color: #45617c;
}
.model-analysis-provenance[data-v-09198253] { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; margin: 16px 0;
}
.model-analysis-provenance dt[data-v-09198253] { color: #53657a; font-size: 11px;
}
.model-analysis-provenance dd[data-v-09198253] { margin: 3px 0 0; white-space: pre-wrap;
}
.model-analysis-hash[data-v-09198253] { grid-column: 1 / -1;
}
.model-analysis h4[data-v-09198253] { margin: 16px 0 8px; font-size: 12px;
}
.model-analysis-text[data-v-09198253], .model-analysis li[data-v-09198253] { white-space: pre-wrap;
}
.model-analysis ul[data-v-09198253], .model-analysis ol[data-v-09198253] { padding-left: 22px;
}
.model-analysis li + li[data-v-09198253] { margin-top: 6px;
}
@media (max-width: 780px) {
.model-analysis-provenance[data-v-09198253] { grid-template-columns: minmax(0, 1fr);
}
}


.approval-panel[data-v-2c53b027]{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px;border:1px solid #d6dfea;border-left:4px solid #7386a6;border-radius:9px;background:#f9fbfd;margin:18px 0}.approval-panel h3[data-v-2c53b027]{margin:5px 0!important}.approval-panel p[data-v-2c53b027]{font-size:12px;color:#64748b;margin:8px 0}.approval-panel .approval-reason[data-v-2c53b027]{color:#855318}.approval-panel button[data-v-2c53b027]{flex-shrink:0}@media(max-width:650px){.approval-panel[data-v-2c53b027]{flex-direction:column;align-items:flex-start}}


.company-settings[data-v-7033fc9c] { padding: 24px;
}
.section-heading[data-v-7033fc9c] { display: flex; justify-content: space-between; gap: 16px; align-items: flex-start;
}
fieldset[data-v-7033fc9c] { border: 1px solid var(--border, #dce3eb); padding: 18px; margin: 20px 0; border-radius: 8px; min-width: 0;
}
legend[data-v-7033fc9c] { font-weight: 600; padding: 0 6px;
}
.company-fields[data-v-7033fc9c] { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px;
}
label[data-v-7033fc9c] { display: flex; flex-direction: column; gap: 8px;
}
.company-colors[data-v-7033fc9c] { display: grid; grid-template-columns: repeat(auto-fit, minmax(140px, 1fr)); gap: 16px;
}
input[data-v-7033fc9c], textarea[data-v-7033fc9c] { max-width: 100%;
}
input[type=color][data-v-7033fc9c] { width: 64px; height: 36px;
}
p[data-v-7033fc9c] { color: var(--muted, #526579); line-height: 1.6;
}
@media (max-width: 700px) {
.company-fields[data-v-7033fc9c] { grid-template-columns: 1fr;
}
.company-settings[data-v-7033fc9c] { padding: 16px;
}
}

.storage-panel[data-v-60b3a9e9]{padding:22px}.storage-panel>label[data-v-60b3a9e9],.cleanup>label[data-v-60b3a9e9]{display:flex;flex-direction:column;gap:8px;margin:15px 0;font-size:13px;max-width:650px}.storage-panel p[data-v-60b3a9e9]{font-size:13px;line-height:1.7}.storage-policy[data-v-60b3a9e9]{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:16px}.storage-policy dt[data-v-60b3a9e9]{font-size:12px;color:#68778b}.storage-policy dd[data-v-60b3a9e9]{margin:6px 0;font-size:13px}.cleanup[data-v-60b3a9e9]{margin:24px 0;border-top:1px solid #dfe5ee;padding-top:12px}.cleanup input[type=number][data-v-60b3a9e9]{max-width:140px;padding:8px}.cleanup label.confirmation[data-v-60b3a9e9]{flex-direction:row;align-items:flex-start}.confirmation input[data-v-60b3a9e9]{margin-top:3px}
.capture-panel[data-v-42462e2e]{margin-top:24px;border-top:1px solid #dfe5ee;padding-top:16px}.capture-panel p[data-v-42462e2e]{line-height:1.7;font-size:13px}.local-preview[data-v-42462e2e]{padding:16px;background:#f5f7fb;border-radius:8px;margin-top:16px}.local-preview img[data-v-42462e2e],.local-preview video[data-v-42462e2e]{display:block;max-width:100%;max-height:400px;margin:12px 0}.local-preview label[data-v-42462e2e]{display:flex;align-items:center;gap:8px;font-size:13px;margin:14px 0}
/* Management uses the shell's semantic tokens; fallbacks keep dialogs portable. */
.management-workspace,
.mg-form,
.mg-details,
.mg-run-detail,
.mg-block-editor,
.mg-account {
  --mg-ink: var(--ink, #25334a);
  --mg-muted: var(--muted, #68778b);
  --mg-line: var(--line, #dce3ed);
  --mg-surface: var(--surface, #fff);
  --mg-subtle: var(--surface-subtle, #f5f7fa);
  --mg-accent: var(--accent, #285abb);
  --mg-danger: var(--danger, #b42318);
  --mg-success: var(--success, #176745);
  --mg-warning: var(--warning, #895800);
  color: var(--mg-ink);
  min-width: 0;
}

/* Page purpose and local navigation */
.mg-page-heading {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 20px;
  margin-bottom: 20px;
}
.mg-page-heading h2 { margin: 0 0 8px; font-size: 21px; font-weight: 650; }
.mg-page-heading p { margin: 0; max-width: 80ch; color: var(--mg-muted); font-size: 14px; line-height: 1.7; }
.mg-tabs,
.mg-actions,
.mg-search,
.mg-chips { display: flex; align-items: center; gap: 9px; flex-wrap: wrap; }
.mg-tabs { margin-bottom: 18px; padding-bottom: 12px; border-bottom: 1px solid var(--mg-line); }
.mg-tabs .button[aria-current=page] { font-weight: 650; }
.mg-actions { min-width: 115px; }
.mg-error,
.mg-notice,
.mg-description { padding: 12px 18px; margin: 0; border-bottom: 1px solid var(--mg-line); line-height: 1.7; }
.mg-error { color: var(--mg-danger); background: var(--danger-surface, #fff4f2); white-space: pre-wrap; }
.mg-notice { color: var(--mg-success); background: var(--success-surface, #f0faf4); }
.mg-description { font-size: 13px; color: var(--mg-muted); }
.management-workspace .empty-mini { color: var(--mg-muted); line-height: 1.7; }

/* Forms, tables, and controlled selectors */
.management-workspace .business-form label,
.mg-form label,
.mg-account label { display: flex; flex-direction: column; gap: 8px; font-size: 13px; font-weight: 600; color: var(--mg-ink); }
.management-workspace input:not([type=checkbox]),
.management-workspace textarea,
.management-workspace select,
.mg-form input:not([type=checkbox]),
.mg-form textarea,
.mg-form select {
  max-width: 100%;
  border: 1px solid var(--mg-line);
  border-radius: 6px;
  padding: 9px 11px;
  background: var(--mg-surface);
  color: inherit;
  font: inherit;
}
.management-workspace input[type=checkbox],
.mg-form input[type=checkbox] { width: 18px; height: 18px; align-self: flex-start; }
.mg-field-wide { grid-column: 1 / -1; }
.management-workspace .filter-bar > input { min-width: 180px; flex: 1; }
.mg-table-scroll { overflow-x: auto; }
.mg-table-scroll .data-table td { max-width: 320px; overflow-wrap: anywhere; }
.management-workspace .data-table td { vertical-align: top; }
.management-workspace button:disabled { opacity: .55; cursor: not-allowed; }
.management-workspace a.text-button { text-decoration: none; }
.mg-account { max-width: 680px; padding: 24px; }
.mg-account .business-form { margin-top: 20px; display: flex; flex-direction: column; gap: 16px; }
.mg-selector-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); gap: 18px; margin-top: 20px; }
.mg-remote { border: 1px solid var(--mg-line); border-radius: 6px; padding: 10px; min-width: 0; font-weight: 400; }
.mg-search { flex-wrap: nowrap; margin: 8px 0; }
.mg-search input { width: 100%; min-width: 50px; }
.mg-options { display: flex; flex-direction: column; max-height: 220px; overflow: auto; gap: 3px; }
.mg-options > button { border: 0; text-align: left; display: flex; gap: 8px; align-items: center; justify-content: space-between; padding: 8px; background: var(--mg-subtle); border-radius: 4px; cursor: pointer; color: inherit; }
.mg-options > button.selected { background: var(--accent-surface, #e9f0ff); color: var(--mg-accent); }
.mg-options small { font-size: 11px; color: var(--mg-muted); }
.mg-chip { border: 1px solid var(--mg-line); background: var(--mg-subtle); border-radius: 4px; color: var(--mg-accent); padding: 4px 7px; font: inherit; }
.mg-remote .pagination { padding: 9px 0 0; gap: 6px; flex-wrap: wrap; font-size: 11px; }
.mg-remote .page-controls { gap: 5px; }
.mg-remote .pagination select { padding: 4px; font-size: 11px; }

/* Safe, grouped record projection */
.mg-details { display: flex; flex-direction: column; gap: 18px; padding: 18px; }
.mg-detail-section { min-width: 0; }
.mg-detail-section > h3,
.mg-template-preview > h3 { font-size: 14px; margin: 0 0 12px; color: var(--mg-ink); }
.mg-value-fields { display: grid; grid-template-columns: repeat(auto-fit, minmax(230px, 1fr)); gap: 12px 22px; margin: 0; }
.mg-value-fields > div { min-width: 0; }
.mg-value-fields dt { font-size: 12px; color: var(--mg-muted); margin-bottom: 5px; font-weight: 500; }
.mg-value-fields dd { margin: 0; font-size: 13px; color: var(--mg-ink); overflow-wrap: anywhere; }
.mg-value-fields .mg-value-fields { grid-template-columns: 1fr; padding-left: 10px; border-left: 2px solid var(--mg-line); }
.mg-value-text { white-space: pre-wrap; overflow-wrap: anywhere; line-height: 1.65; }
.mg-value-list { display: flex; flex-direction: column; gap: 7px; }
.mg-value-item { min-width: 0; }
.mg-value-list > .mg-value-item:has(.mg-value-fields) { border-bottom: 1px solid var(--mg-line); padding: 8px 0; }
.mg-technical { padding-top: 14px; border-top: 1px solid var(--mg-line); }
.mg-technical > summary { cursor: pointer; font-size: 13px; color: var(--mg-muted); }
.mg-technical[open] > summary { margin-bottom: 14px; }
.mg-table-scroll .mg-value-fields { grid-template-columns: 1fr; max-width: 300px; }

/* Template editing: separated rows rather than nested cards */
.mg-block-editor { width: 100%; font-weight: 400; display: flex; flex-direction: column; gap: 16px; }
.mg-block-list { padding: 0; list-style: none; margin: 0; display: flex; flex-direction: column; gap: 12px; }
.mg-block { padding: 14px 0; border-bottom: 1px solid var(--mg-line); display: flex; flex-direction: column; gap: 10px; }
.mg-block textarea { width: 100%; box-sizing: border-box; }
.mg-block .mg-actions > b { margin-right: auto; }
.mg-template-preview { padding: 20px 0; border-top: 1px solid var(--mg-line); background: var(--mg-surface); }
.mg-template-preview h4 { font-size: 18px; margin: 16px 0 12px; }
.mg-template-preview p { line-height: 1.7; }
.mg-preview-placeholder { padding: 12px; background: var(--mg-subtle); border-left: 3px solid var(--mg-line); font-size: 13px; color: var(--mg-muted); }

/* Run status and detail layout */
.mg-run-detail { padding: 18px; display: flex; flex-direction: column; gap: 18px; }
.mg-run-detail > .mg-details { padding: 0; }
.mg-detail-heading { display: flex; align-items: center; justify-content: space-between; gap: 12px; flex-wrap: wrap; }
.mg-detail-heading h3 { margin: 0 0 8px; font-size: 18px; }
.mg-status { display: inline-flex; padding: 4px 10px; border-radius: 4px; background: var(--mg-subtle); color: var(--mg-ink); font-size: 12px; }
.mg-status[data-status=FAILED] { background: var(--danger-surface, #fff1ee); color: var(--mg-danger); }
.mg-status[data-status=SUCCEEDED] { background: var(--success-surface, #eaf7ef); color: var(--mg-success); }
.mg-status[data-status=UNKNOWN] { background: var(--warning-surface, #fff5da); color: var(--mg-warning); }
.mg-warning-text { font-size: 13px; line-height: 1.7; color: var(--mg-warning); background: var(--warning-surface, #fff8e6); padding: 8px 12px; border-radius: 4px; }
.mg-run-step { border-top: 1px solid var(--mg-line); margin: 10px 0; }
.mg-run-workspace .mg-actions { align-items: center; }

/* Keyboard focus and narrow layouts */
.management-workspace :is(input, textarea, select, button, a):focus-visible,
.mg-form :is(input, textarea, select, button):focus-visible,
.mg-technical > summary:focus-visible { outline: 2px solid var(--mg-accent); outline-offset: 2px; }
@media (max-width: 700px) {
  .mg-selector-grid { grid-template-columns: 1fr; }
  .management-workspace .form-grid { grid-template-columns: 1fr; }
  .mg-tabs .button { font-size: 12px; padding: 8px; }
  .mg-page-heading { flex-direction: column; gap: 12px; }
  .mg-account { padding: 16px; }
  .mg-value-fields { grid-template-columns: 1fr; }
}


.scope-context-note[data-v-069d127b]{font-size:12px;color:var(--muted);margin:0 0 16px}
.company-logo[data-v-069d127b]{width:36px;height:36px;object-fit:contain}

:root {
  --primary: #2456c4;
  --button: #2456c4;
  --link: #2456c4;
  --sidebar: #183149;
  --sidebar-active: #284b68;
  --ink: #263445;
  --card-title: #182a3c;
  --muted: #65758a;
  --line: #dce3eb;
  --table-head: #f4f6f8;
  --surface: #fff;
  --bg: #f5f7f9;
  --danger: #a83b43;
  --warn: #805515;
  --success: #256c51;
  --shadow: 0 1px 2px rgba(22,34,55,.045);
  --space-1: 4px;
  --space-2: 8px;
  --space-3: 12px;
  --space-4: 16px;
  --space-6: 24px;
  --space-8: 32px;
}
* {
  box-sizing: border-box;
}
html,body,#app {
  margin: 0;
  min-height: 100%;
  font-family: -apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Microsoft YaHei",sans-serif;
  color: var(--ink);
  background: var(--bg);
}
body {
  line-height: 1.5;
}
button,input,select,textarea {
  font: inherit;
}
button {
  cursor: pointer;
}
button:disabled {
  cursor: not-allowed;
  opacity: .55;
}
button,a,input,select,textarea,summary {
  touch-action: manipulation;
}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible {
  outline: 2px solid #315f9e;
  outline-offset: 2px;
}
a {
  color: var(--link);
}
.boot {
  min-height: 100vh;
  display: grid;
  place-content: center;
  gap: 14px;
  justify-items: center;
  color: var(--muted);
}
.brand-mark {
  display: grid;
  place-items: center;
  width: 38px;
  height: 38px;
  border-radius: 8px;
  background: var(--primary);
  color: white;
  font-size: 13px;
  font-weight: 700;
}
.login-page {
  min-height: 100vh;
  display: grid;
  grid-template-columns: minmax(400px,1.05fr) minmax(400px,.95fr);
  background: #f8fafc;
}
.login-art {
  position: relative;
  display: flex;
  align-items: center;
  padding: clamp(44px,7vw,104px);
  overflow: hidden;
  background: #183149;
  color: #fff;
}
.art-grid {
  position: absolute;
  inset: 0;
  opacity: .1;
  background-image: linear-gradient(rgba(200,218,237,.2) 1px,transparent 1px),linear-gradient(90deg,rgba(200,218,237,.2) 1px,transparent 1px);
  background-size: 48px 48px;
}
.art-grid:after {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(120deg,transparent 65%,rgba(28,117,112,.12));
}
.art-copy {
  position: relative;
  max-width: 560px;
}
.eyebrow {
  font-size: 12px;
  color: #c1d0de;
  font-weight: 600;
}
.art-copy h1 {
  font-size: 42px;
  line-height: 1.2;
  margin: 24px 0 16px;
  letter-spacing: 0;
}
.art-copy p {
  max-width: 440px;
  color: #d1dbe5;
  line-height: 1.8;
  font-size: 15px;
}
.art-line {
  width: 52px;
  height: 2px;
  background: #5a9c98;
  margin: 30px 0 14px;
}
.art-copy small {
  color: #d1dbe5;
}
.login-panel {
  display: grid;
  place-items: center;
  padding: 40px;
}
.login-card {
  width: min(390px,100%);
}
.login-logo {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 54px;
}
.login-logo strong {
  display: block;
  color: var(--card-title);
  font-size: 15px;
}
.login-logo small {
  display: block;
  color: var(--muted);
  margin-top: 3px;
}
.login-card h2 {
  font-size: 27px;
  letter-spacing: 0;
  margin: 0 0 8px;
}
.login-card>.muted {
  margin: 0 0 26px;
}
.login-card form {
  display: grid;
  gap: 16px;
}
.login-card label,.field label {
  display: grid;
  gap: 8px;
  font-size: 13px;
  font-weight: 600;
  color: #34465a;
}
.login-card input,.field input,.field select,.field textarea,.search-box input,.filter-bar select {
  width: 100%;
  border: 1px solid #cbd5df;
  border-radius: 6px;
  background: #fff;
  padding: 10px 12px;
  color: var(--ink);
  outline: none;
  transition: border-color .15s,box-shadow .15s;
}
.login-card input:focus,.field input:focus,.field select:focus,.field textarea:focus,.search-box input:focus {
  border-color: var(--primary);
  box-shadow: 0 0 0 2px rgba(36,86,196,.16);
}
.challenge-row {
  display: grid;
  grid-template-columns: minmax(0,1fr) 150px;
  gap: 8px;
}
.challenge-image {
  min-width: 150px;
  min-height: 44px;
  padding: 0;
  border: 1px solid #cbd5df;
  border-radius: 6px;
  background: #f1f5f8;
  overflow: hidden;
  display: grid;
  place-items: center;
}
.challenge-image img {
  display: block;
  width: 100%;
  height: auto;
  max-height: 44px;
  object-fit: contain;
}
.challenge-image span {
  font-size: 12px;
  color: var(--muted);
}
.button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-height: 38px;
  padding: 8px 14px;
  border: 1px solid transparent;
  border-radius: 6px;
  font-weight: 600;
  font-size: 13px;
  transition: background-color .15s,border-color .15s,box-shadow .15s;
}
.button.primary {
  background: var(--button);
  color: white;
  box-shadow: 0 1px 2px rgba(30,64,100,.14);
}
.button.primary:hover {
  background: #1c478f;
}
.button.secondary {
  background: white;
  border-color: #cbd5df;
  color: #34465a;
}
.button.secondary:hover {
  border-color: #8799ab;
  background: #f7f9fb;
}
.button:not(:disabled):active,.icon-button:not(:disabled):active {
  transform: translateY(1px);
}
.full {
  width: 100%;
  padding: 12px;
}
.form-error {
  color: var(--danger);
  font-size: 13px;
  margin: 0;
}
.login-card footer {
  text-align: center;
  margin-top: 48px;
  color: var(--muted);
  font-size: 12px;
}
.app-shell {
  display: flex;
  min-height: 100vh;
  padding-top: 56px;
}
.global-header {
  position: fixed;
  inset: 0 0 auto 0;
  height: 56px;
  z-index: 30;
  display: flex;
  align-items: center;
  gap: 22px;
  padding: 0 16px;
  background: #fff;
  border-bottom: 1px solid var(--line);
}
.app-brand {
  display: flex;
  align-items: center;
  gap: 9px;
  flex: 0 0 200px;
  border: 0;
  background: none;
  color: var(--card-title);
  font-size: 14px;
  text-align: left;
}
.app-brand .brand-mark {
  width: 30px;
  height: 30px;
  font-size: 12px;
}
.app-brand strong {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.domain-navigation {
  display: flex;
  align-items: stretch;
  align-self: stretch;
  gap: 4px;
  min-width: 0;
  flex: 1;
  overflow-x: auto;
  scrollbar-width: none;
}
.domain-navigation::-webkit-scrollbar {
  display: none;
}
.domain-navigation button {
  position: relative;
  flex: 0 0 auto;
  border: 0;
  border-bottom: 2px solid transparent;
  background: transparent;
  padding: 0 12px;
  color: #465a6e;
  font-size: 13px;
  font-weight: 500;
  white-space: nowrap;
}
.domain-navigation button:hover {
  color: var(--primary);
  background: #f7f9fb;
}
.domain-navigation button.active {
  color: #1e4f87;
  border-bottom-color: var(--primary);
  font-weight: 600;
}
.global-header>.top-actions {
  flex: 0 0 auto;
}
.sidebar {
  position: fixed;
  inset: 56px auto 0 0;
  width: 224px;
  background: var(--sidebar);
  color: #d8e1e9;
  display: flex;
  flex-direction: column;
  z-index: 20;
  overflow-y: auto;
  scrollbar-width: thin;
}
.sidebar-head {
  display: flex;
  align-items: center;
  gap: 11px;
  padding: 18px 16px 20px;
  color: #fff;
}
.sidebar-head strong {
  display: block;
  font-size: 14px;
}
.mobile-domain-list { padding: 0 10px 14px; }
.mobile-domain-group { border-bottom: 1px solid rgba(255,255,255,.14); }
.mobile-domain-group h2 { margin: 0; font-size: 14px; }
.mobile-domain-group h2 > button { display: flex; align-items: center; width: 100%; min-height: 48px; gap: 10px; padding: 12px 8px; border: 0; background: transparent; color: #edf3f9; text-align: left; font: inherit; cursor: pointer; }
.mobile-domain-group h2 > button span { flex: 1; }
.mobile-domain-group h2 > button small { font-size: 12px; color: #c6d2dc; }
.mobile-domain-group h2 > button::after { content: '+'; font-size: 18px; width: 18px; text-align: center; }
.mobile-domain-group.expanded h2 > button { color: #fff; font-weight: 600; }
.mobile-domain-group.expanded h2 > button::after { content: '−'; }
.mobile-domain-items { padding-bottom: 10px; }
.mobile-domain-items[hidden] { display: none !important; }
.mobile-domain-items .nav-item { width: 100%; margin: 3px 0; min-height: 42px; padding-left: 14px; }
.mobile-domain-items .nav-title { margin-left: 12px; }
.sidebar-head .mobile-only { margin-left: auto; color: #edf3f9; flex-shrink: 0; }

.sidebar-head small {
  display: block;
  font-size: 12px;
  color: #c6d2dc;
  margin-top: 3px;
}
.company-logo {
  height: 34px;
  width: 34px;
  object-fit: contain;
  border-radius: 6px;
}
.sidebar .brand-mark {
  width: 34px;
  height: 34px;
}
.nav-home,.domain-button,.nav-item {
  display: flex;
  align-items: center;
  gap: 10px;
  width: calc(100% - 20px);
  min-height: 38px;
  margin: 2px 10px;
  padding: 8px 10px;
  border: 0;
  border-radius: 6px;
  background: transparent;
  color: #d5e0e9;
  text-align: left;
  font-size: 13px;
}
.nav-home:hover,.domain-button:hover,.nav-item:hover {
  background: rgba(255,255,255,.08);
  color: #fff;
}
.nav-home.active,.domain-button.active {
  background: rgba(255,255,255,.12);
  color: #fff;
  font-weight: 600;
}
.nav-home svg,.domain-button svg,.nav-item svg {
  flex-shrink: 0;
  opacity: .9;
}
.nav-section-label {
  margin: 18px 18px 6px;
  color: #cad5df;
  font-size: 12px;
  font-weight: 600;
}
.domain-list {
  display: flex;
  flex-direction: column;
  padding-bottom: 10px;
  border-bottom: 1px solid rgba(255,255,255,.15);
}
.domain-button span:nth-child(2),.nav-item span {
  min-width: 0;
  flex: 1;
}
.domain-count {
  font-size: 12px;
  color: #d2dbe3;
  font-variant-numeric: tabular-nums;
}
.nav-search {
  display: flex;
  align-items: center;
  gap: 8px;
  margin: 14px 12px 12px;
  padding: 8px 10px;
  border: 1px solid #718394;
  border-radius: 6px;
  color: #e0e6ec;
}
.nav-search input {
  width: 100%;
  min-width: 0;
  background: transparent;
  color: white;
  border: 0;
  outline: none;
  font-size: 13px;
}
.nav-search input::placeholder {
  color: #d0d9e1;
}
.nav-group {
  padding: 0 0 6px;
  margin: 0 0 6px;
}
.nav-title {
  display: block;
  color: #d2dce5;
  font-size: 12px;
  font-weight: 600;
  padding: 5px 18px;
}
.nav-item {
  min-height: 36px;
  font-size: 13px;
  color: #dbe3ea;
  margin: 1px 10px;
  padding: 7px 10px;
}
.nav-item.active {
  background: #fff;
  color: #183149;
  font-weight: 600;
  box-shadow: none;
}
.nav-empty {
  padding: 14px 18px;
  color: #e0e6ec;
  font-size: 13px;
}
.sidebar-foot {
  margin-top: auto;
  padding: 14px 18px;
  color: #d0dae3;
  border-top: 1px solid rgba(255,255,255,.15);
  font-size: 12px;
}
.secure-dot {
  display: inline-block;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: #72c4a0;
  margin-right: 7px;
  vertical-align: 1px;
}
.main-wrap {
  margin-left: 224px;
  min-width: 0;
  flex: 1;
}
.topbar {
  height: 52px;
  background: #fff;
  border-bottom: 1px solid var(--line);
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 24px;
  gap: 12px;
}
.crumb {
  display: flex;
  align-items: center;
  gap: 7px;
  min-width: 0;
  color: var(--muted);
  font-size: 12px;
}
.crumb button {
  border: 0;
  background: none;
  color: #43586e;
  padding: 5px;
}
.crumb span {
  color: #8997a6;
}
.crumb strong {
  font-weight: 600;
  color: #304459;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.top-actions {
  display: flex;
  align-items: center;
  gap: 10px;
}
.account-button {
  color: #34465a;
  font-size: 13px;
}
.icon-button {
  display: inline-grid;
  place-items: center;
  min-width: 34px;
  min-height: 34px;
  border: 0;
  background: transparent;
  color: #5b6c7d;
  padding: 5px;
  border-radius: 6px;
}
.icon-button:hover {
  background: #edf1f4;
  color: var(--ink);
}
.content {
  max-width: 1680px;
  min-width: 0;
  margin: 0 auto;
  padding: 24px 28px 48px;
}
.content:focus {
  outline: none;
}
.page-heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 20px;
  gap: 16px;
}
.page-heading > .button {
  flex-shrink: 0;
  white-space: nowrap;
}
.page-heading h1 {
  font-size: 22px;
  margin: 0 0 6px;
  letter-spacing: 0;
  color: var(--card-title);
}
.page-heading p {
  font-size: 13px;
  color: #536578;
  margin: 0;
  max-width: 740px;
  line-height: 1.6;
}
.eyebrow {
  font-size: 12px;
  font-weight: 500;
  color: #52677b;
}
.toast,.inline-error {
  position: fixed;
  top: 72px;
  right: 24px;
  z-index: 50;
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 10px 14px;
  border-radius: 6px;
  background: #eaf5ef;
  color: #205f46;
  box-shadow: var(--shadow);
  font-size: 12px;
}
.inline-error {
  position: relative;
  top: auto;
  right: auto;
  margin-bottom: 14px;
  background: #fff2f1;
  color: var(--danger);
  justify-content: space-between;
  border: 1px solid #ebc7c5;
  line-height: 1.55;
}
.inline-error button {
  border: 0;
  background: transparent;
  color: inherit;
  font-size: 18px;
}
.form-error {
  font-size: 13px;
  line-height: 1.55;
}
.metric-grid {
  display: grid;
  grid-template-columns: repeat(4,minmax(0,1fr));
  gap: 12px;
}
.metric-card {
  background: #fff;
  border: 1px solid var(--line);
  border-radius: 6px;
  padding: 16px;
  box-shadow: none;
}
.metric-card span,.metric-card small {
  display: block;
  color: var(--muted);
  font-size: 12px;
}
.metric-card strong {
  font-size: 25px;
  color: var(--card-title);
  display: block;
  margin: 8px 0 4px;
}
.panel {
  min-width: 0;
  background: #fff;
  border: 1px solid var(--line);
  border-radius: 6px;
  box-shadow: none;
}
.panel-head {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  padding: 16px 18px;
  border-bottom: 1px solid var(--line);
  gap: 14px;
}
.panel-head h2 {
  font-size: 16px;
  margin: 0;
  color: var(--card-title);
}
.panel-head p {
  color: #536578;
  font-size: 12px;
  margin: 4px 0 0;
}
.text-button {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  color: var(--link);
  border: 0;
  background: transparent;
  padding: 5px 4px;
  font-size: 13px;
}
.filter-bar {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 13px 16px;
  border-bottom: 1px solid var(--line);
  flex-wrap: wrap;
}
.search-box {
  display: flex;
  align-items: center;
  gap: 8px;
  background: #fff;
  border: 1px solid #cbd5df;
  border-radius: 6px;
  padding: 0 10px;
  width: min(320px,100%);
  min-height: 38px;
}
.search-box input {
  border: 0;
  padding: 8px 0;
  background: transparent;
  box-shadow: none;
  min-height: 36px;
}
.search-box svg {
  color: #687a8d;
  flex-shrink: 0;
}
.filter-bar select {
  width: auto;
  min-height: 38px;
  max-width: 220px;
}
.table-panel {
  overflow: hidden;
}
.data-table {
  width: 100%;
  border-collapse: collapse;
}
.data-table th,.data-table td {
  text-align: left;
  padding: 13px 14px;
  border-bottom: 1px solid #e9eef2;
  font-size: 13px;
  vertical-align: middle;
}
.data-table th {
  background: var(--table-head);
  font-size: 12px;
  color: #465a6e;
  font-weight: 600;
}
.data-table tbody tr {
  transition: background-color .12s;
}
.data-table tbody tr:hover {
  background: #f5f8fa;
}
.data-table td b,.data-table td small {
  display: block;
}
.data-table td small {
  font-size: 12px;
  color: #5b6d80;
  margin-top: 4px;
}
.data-table td b {
  font-weight: 600;
}
.business-table-scroll,.mg-table-scroll {
  max-width: 100%;
  overflow-x: auto;
}
.business-table-scroll > .data-table {
  min-width: 900px;
}
.business-table-scroll > .data-table th,
.business-table-scroll > .data-table td:last-child {
  white-space: nowrap;
}
.table-state {
  padding: 52px;
  text-align: center;
  color: var(--muted);
  font-size: 13px;
}
.empty-state {
  display: grid;
  justify-items: center;
  gap: 10px;
  padding: 42px 20px;
  color: #536578;
}
.empty-state strong {
  color: #354a5e;
  font-size: 15px;
}
.empty-state span {
  font-size: 13px;
  max-width: 480px;
  text-align: center;
  line-height: 1.6;
}
.empty-state svg {
  color: #73879a;
}
.empty-state .button {
  margin-top: 6px;
}
.pagination {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 12px 16px;
  color: #536578;
  font-size: 12px;
  gap: 12px;
  flex-wrap: wrap;
}
.pagination b {
  color: var(--ink);
}
.page-controls {
  display: flex;
  align-items: center;
  gap: 8px;
}
.page-controls select {
  border: 1px solid #cbd5df;
  background: #fff;
  border-radius: 5px;
  padding: 5px 8px;
  font-size: 12px;
  color: #34465a;
  min-height: 32px;
}
.page-button {
  width: 32px;
  height: 32px;
  border: 1px solid #cbd5df;
  background: #fff;
  border-radius: 5px;
  color: #34465a;
}
.status-badge {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  border-radius: 5px;
  padding: 3px 8px;
  font-size: 12px;
  font-weight: 600;
  white-space: nowrap;
  background: #edf1f4;
  color: #43566a;
}
.status-badge i {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: currentColor;
}
.status-badge.success {
  background: #eaf4ee;
  color: #205c43;
}
.status-badge.info {
  background: #eaf0f8;
  color: #315b85;
}
.status-badge.warning {
  background: #f7f0e2;
  color: #745312;
}
.status-badge.danger {
  background: #f8eaea;
  color: #87343a;
}
.state-panel {
  display: grid;
  justify-items: center;
  gap: 9px;
  padding: 38px;
  text-align: center;
  color: #536578;
}
.state-panel p {
  margin: 0;
  font-size: 13px;
}
.spinner {
  width: 22px;
  height: 22px;
  border: 2px solid #d7e0e8;
  border-top-color: var(--primary);
  border-radius: 50%;
  animation: spin .8s linear infinite;
}
@keyframes spin {
  to {
    transform: rotate(360deg);
  }
}
.modal-backdrop {
  position: fixed;
  z-index: 100;
  inset: 0;
  background: rgba(19,35,52,.45);
  display: grid;
  place-items: center;
  padding: 24px;
}
.modal {
  width: min(560px,100%);
  max-height: calc(100vh - 48px);
  overflow: auto;
  background: white;
  border: 1px solid var(--line);
  border-radius: 7px;
  box-shadow: 0 14px 38px rgba(20,35,52,.18);
}
.modal.wide {
  width: min(900px,100%);
}
.modal-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 16px 20px;
  border-bottom: 1px solid var(--line);
}
.modal-header h2 {
  font-size: 17px;
  margin: 0;
  color: var(--card-title);
}
.modal-body {
  padding: 20px;
}
.modal-footer,.form-actions {
  display: flex;
  justify-content: flex-end;
  gap: 8px;
  padding: 14px 20px;
  border-top: 1px solid var(--line);
}
.business-form {
  display: grid;
  gap: 18px;
}
.form-grid {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 16px;
}
.field {
  display: grid;
  gap: 7px;
}
.field-wide {
  grid-column: 1/-1;
}
.field label {
  display: grid;
  gap: 7px;
  font-size: 13px;
  font-weight: 600;
  color: #34465a;
}
.field input,.field select,.field textarea {
  font-size: 14px;
  min-height: 39px;
  padding: 8px 10px;
  border-color: #cbd5df;
}
.field textarea {
  resize: vertical;
  min-height: 82px;
}
.field small {
  font-size: 12px;
  color: #536578;
}
.required {
  color: var(--danger);
  margin-left: 4px;
}
.section-note {
  display: flex;
  flex-direction: column;
  gap: 4px;
  padding: 12px 14px;
  border: 1px solid #d9e3eb;
  border-radius: 6px;
  background: #f5f8fa;
  color: #3e566b;
  font-size: 13px;
  line-height: 1.6;
}
.section-note span {
  color: #536578;
}
.detail-layout {
  display: grid;
  grid-template-columns: minmax(0,1.35fr) minmax(230px,.65fr);
  gap: 22px;
}
.detail-main h3,.detail-side h3 {
  font-size: 14px;
  color: var(--card-title);
  margin: 0 0 12px;
}
.detail-main h3:not(:first-child) {
  border-top: 1px solid #e3e9ee;
  padding-top: 18px;
  margin-top: 18px;
}
.detail-meta {
  display: flex;
  gap: 9px;
  align-items: center;
  margin-bottom: 16px;
  color: #536578;
  font-size: 12px;
}
.key-grid {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  border: 1px solid #dfe6ec;
  border-radius: 6px;
  overflow: hidden;
}
.key-grid>div {
  padding: 11px 12px;
  border-bottom: 1px solid #e9eef2;
}
.key-grid>div:nth-child(odd) {
  border-right: 1px solid #e9eef2;
}
.key-grid span,.key-grid b {
  display: block;
}
.key-grid span {
  color: #536578;
  font-size: 12px;
  margin-bottom: 5px;
}
.key-grid b {
  font-size: 13px;
  font-weight: 500;
  word-break: break-word;
}
.detail-side {
  padding-left: 20px;
  border-left: 1px solid var(--line);
}
.action-button {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  padding: 10px 11px;
  background: #fff;
  border: 1px solid #cbd5df;
  border-radius: 5px;
  margin-bottom: 7px;
  text-align: left;
  color: #34465a;
  font-size: 13px;
}
.action-button:not(:disabled):hover {
  border-color: #7890a6;
  color: var(--primary);
  background: #f6f8fa;
}
.action-fields {
  margin-top: 16px;
}
.result-fields {
  display: grid;
  border: 1px solid #dfe6ec;
  border-radius: 6px;
  overflow: hidden;
  margin: 0;
}
.result-fields>div {
  display: grid;
  grid-template-columns: minmax(130px,24%) minmax(0,1fr);
  border-bottom: 1px solid #e9eef2;
  padding: 9px 11px;
}
.result-fields>div:last-child {
  border-bottom: 0;
}
.result-fields dt {
  color: #536578;
  font-size: 12px;
}
.result-fields dd {
  margin: 0;
  font-size: 13px;
  word-break: break-word;
}
.muted {
  color: #536578;
  font-size: 13px;
}
.result-array {
  display: grid;
  gap: 7px;
}
.result-item {
  display: flex;
  gap: 8px;
  align-items: flex-start;
}
.item-index {
  font-size: 12px;
  color: #536578;
  background: #edf1f4;
  border-radius: 4px;
  padding: 3px 5px;
}
.nested-result {
  margin-top: 4px;
}
.role-list {
  font-size: 12px;
  color: #496176;
}
.skip-link {
  position: fixed;
  top: -80px;
  left: 16px;
  padding: 10px;
  background: #fff;
  z-index: 1000;
}
.skip-link:focus {
  top: 8px;
}
.mobile-only {
  display: none;
}
.nav-scrim {
  position: fixed;
  inset: 0;
  background: rgba(19,35,52,.42);
  border: 0;
  z-index: 19;
}
.nav-group {
  padding: 0;
  margin: 0 0 6px;
}
.nav-title {
  font-size: 12px;
  color: #d2dce5;
  letter-spacing: 0;
  padding: 4px 18px;
}
.nav-home,.domain-button,.nav-item {
  min-height: 38px;
  border-radius: 6px;
}
.nav-home.active,.domain-button.active {
  background: rgba(255,255,255,.12);
  color: #fff;
}
.nav-item.active {
  background: #fff;
  color: #183149;
  font-weight: 600;
}
.domain-count {
  margin-left: auto;
  flex-shrink: 0;
}
.panel-head {
  padding: 15px 18px;
}
.panel-head h2 {
  line-height: 1.45;
}
.management-workspace input:not([type=checkbox]),.management-workspace textarea,.management-workspace select,.mg-form input:not([type=checkbox]),.mg-form textarea,.mg-form select {
  border-radius: 6px;
  border-color: #cbd5df;
  padding: 8px 10px;
}
.mg-tabs,.mg-actions,.mg-search,.mg-chips {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
}
.mg-tabs {
  margin-bottom: 14px;
}
.mg-json {
  border: 1px solid var(--line);
  border-radius: 6px;
  background: #f4f6f8;
  color: #263445;
}
.mg-technical,.mg-block,.mg-template-preview,.mg-remote {
  border-radius: 6px;
}
.workbench-heading {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 18px;
}
.welcome-date {
  font-size: 12px;
  color: #536578;
}
.workbench-heading h1 {
  font-size: 24px;
  margin: 4px 0 6px;
  letter-spacing: 0;
  color: var(--card-title);
}
.workbench-heading p {
  font-size: 13px;
  color: #536578;
  margin: 0;
}
.workbench-project {
  margin: 0 0 14px;
  max-width: 640px;
}
.workbench-project>summary {
  cursor: pointer;
  font-size: 13px;
  color: #3f566b;
  padding: 7px 0;
}
.workbench-metrics {
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: 10px;
  margin-bottom: 14px;
}
.workbench-metric {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 13px 14px;
  text-align: left;
  color: var(--ink);
  text-decoration: none;
  min-width: 0;
  border: 1px solid var(--line);
  border-radius: 6px;
  background: #fff;
}
.workbench-metric>div {
  flex: 1;
  min-width: 0;
}
.workbench-metric>div>span {
  font-size: 12px;
  color: #536578;
}
.workbench-metric strong {
  display: block;
  font-size: 22px;
  line-height: 1.4;
  color: #263c52;
  font-weight: 650;
  font-variant-numeric: tabular-nums;
}
.workbench-metric small {
  display: block;
  font-size: 12px;
  color: #536578;
  line-height: 1.4;
}
.metric-icon {
  width: 34px;
  height: 34px;
  border-radius: 6px;
  background: #edf2f7;
  color: #315d8a;
  display: grid;
  place-items: center;
  flex-shrink: 0;
}
.attention .metric-icon {
  background: #f6f0e4;
  color: #725718;
}
.workbench-metric:hover:not(:disabled) {
  border-color: #9eacb9;
  background: #fafbfc;
}
.workbench-columns {
  display: grid;
  grid-template-columns: minmax(0,1fr) 255px;
  gap: 16px;
  align-items: start;
}
.workbench-aside {
  display: grid;
  gap: 14px;
}
.queue-tabs {
  display: flex;
  gap: 18px;
  padding: 0 18px;
  border-bottom: 1px solid var(--line);
  overflow-x: auto;
}
.queue-tabs button {
  flex: 0 0 auto;
  border: 0;
  border-bottom: 2px solid transparent;
  background: none;
  padding: 12px 0;
  color: #536578;
  font-size: 13px;
  font-weight: 500;
  white-space: nowrap;
}
.queue-tabs button[aria-pressed=true] {
  border-bottom-color: var(--primary);
  color: var(--primary);
  font-weight: 600;
}
.queue-list {
  padding: 0 18px;
}
.queue-item {
  display: flex;
  align-items: center;
  gap: 14px;
  border-bottom: 1px solid #e9eef2;
  padding: 16px 0;
}
.queue-item:last-child {
  border-bottom: 0;
}
.queue-item-main {
  flex: 1;
  min-width: 0;
}
.queue-item-heading {
  display: flex;
  gap: 9px;
  align-items: center;
  flex-wrap: wrap;
}
.record-link {
  border: 0;
  background: none;
  padding: 0;
  color: #293f54;
  font-weight: 600;
  font-size: 14px;
  text-align: left;
  overflow-wrap: anywhere;
}
.record-link:hover {
  color: var(--primary);
  text-decoration: underline;
}
.queue-item p {
  font-size: 12px;
  color: #43596e;
  margin: 6px 0 4px;
}
.queue-item p span {
  color: #536578;
  margin-left: 10px;
}
.queue-item small {
  font-size: 12px;
  color: #536578;
}
.shortcut-grid {
  display: grid;
  grid-template-columns: 1fr;
  padding: 6px 14px;
}
.shortcut-grid a {
  display: flex;
  align-items: center;
  gap: 10px;
  text-decoration: none;
  padding: 9px 4px;
  color: #344b60;
  font-size: 13px;
  border-bottom: 1px solid #e9eef2;
}
.shortcut-grid a:last-child {
  border-bottom: 0;
}
.shortcut-grid a:hover {
  color: var(--primary);
}
.shortcut-grid svg {
  color: #506a83;
}
.workbench-note {
  padding: 15px;
}
.workbench-note h2 {
  font-size: 14px;
  margin: 0 0 9px;
}
.workbench-note p {
  font-size: 12px;
  color: #43596e;
  margin: 8px 0;
  line-height: 1.65;
}
.workbench-note small {
  font-size: 12px;
  color: #536578;
}
.workbench-queue {
  border: 1px solid var(--line);
  border-radius: 6px;
  background: #fff;
}
.workbench-queue>.panel-head {
  padding: 15px 18px 11px;
  border-bottom: 0;
}
.workbench-queue>.panel-head p {
  max-width: 620px;
  line-height: 1.5;
}
.table-panel {
  border-radius: 6px;
}
.business-detail {
  border-radius: 6px;
}
.business-detail>.panel-head {
  gap: 12px;
  align-items: center;
}
.business-detail>.panel-head>div:last-child {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
}
.business-detail .modal-body {
  padding: 18px;
}
.business-detail :is(h2,h3) {
  scroll-margin-top: 68px;
}
.data-table th {
  height: 44px;
}
.data-table td {
  min-height: 48px;
}
.mg-details {
  padding: 16px;
}
.mg-detail-section>h3,.mg-template-preview>h3 {
  font-size: 14px;
}
.mg-value-fields {
  gap: 12px 18px;
}
.mg-block {
  padding: 12px;
}
.mg-template-preview {
  padding: 16px;
}
.mg-run-detail {
  padding: 16px;
  gap: 14px;
}
@media(max-width:1120px) {
  .app-brand {
    flex-basis: 168px;
  }
  .domain-navigation button {
    padding: 0 8px;
    font-size: 12px;
  }
  .global-header {
    gap: 10px;
  }
  .workbench-columns {
    grid-template-columns: minmax(0,1fr) 220px;
  }
  .workbench-metrics {
    gap: 8px;
  }
  .workbench-metric {
    gap: 8px;
    padding: 11px;
  }
  .workbench-metric small {
    font-size: 12px;
  }
}
@media(max-width:920px) {
  .workbench-columns {
    grid-template-columns: 1fr;
  }
  .workbench-aside {
    grid-template-columns: repeat(2,minmax(0,1fr));
  }
}
@media(max-width:780px) {
  .global-header {
    height: 56px;
    gap: 8px;
    padding: 0 12px;
    flex-wrap: nowrap;
  }
  .app-shell {
    padding-top: 56px;
  }
  .global-header .app-brand {
    flex: 1;
    height: 32px;
  }
  .global-header>.top-actions {
    height: 32px;
  }
  .domain-navigation {
    display: none;
  }
  .sidebar {
    top: 56px;
  }
  .global-header .account-button span {
    max-width: 72px;
  }
  .nav-scrim {
    top: 56px;
  }
  .login-page {
    display: block;
  }
  .login-art {
    min-height: 230px;
    padding: 32px 24px;
  }
  .art-copy h1 {
    font-size: 30px;
    margin: 14px 0 9px;
  }
  .art-copy p {
    font-size: 13px;
    margin: 0;
  }
  .art-line,.art-copy small {
    display: none;
  }
  .login-panel {
    padding: 32px 22px;
  }
  .login-logo {
    margin-bottom: 36px;
  }
  .sidebar {
    transform: translateX(-100%);
    visibility: hidden;
    pointer-events: none;
    transition: transform .18s ease;
    width: min(340px, calc(100vw - 32px));
    box-shadow: none;
  }
  .sidebar.open {
    transform: translateX(0);
    visibility: visible;
    pointer-events: auto;
    box-shadow: 8px 0 24px rgba(0,0,0,.15);
  }
  .main-wrap {
    margin-left: 0;
  }
  .mobile-only {
    display: inline-grid;
  }
  .topbar {
    height: 56px;
    padding: 0 12px;
    gap: 6px;
  }
  .crumb {
    flex: 1;
    gap: 5px;
  }
  .crumb strong:first-of-type {
    display: none;
  }
  .crumb span:first-of-type {
    display: none;
  }
  .account-button span {
    max-width: 100px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
  .top-actions {
    gap: 4px;
  }
  .content {
    padding: 18px 14px 34px;
  }
  .page-heading {
    align-items: flex-start;
  }
  .page-heading h1 {
    font-size: 21px;
  }
  .workbench-heading {
    align-items: flex-start;
    gap: 12px;
    flex-direction: column;
  }
  .workbench-heading h1 {
    font-size: 22px;
  }
  .workbench-metrics {
    grid-template-columns: 1fr;
    gap: 7px;
    margin-bottom: 12px;
  }
  .workbench-metric {
    padding: 10px 12px;
  }
  .workbench-metric strong {
    font-size: 20px;
  }
  .workbench-aside {
    grid-template-columns: 1fr;
  }
  .workbench-columns {
    gap: 12px;
  }
  .queue-tabs {
    gap: 18px;
    padding: 0 12px;
  }
  .queue-list {
    padding: 0 12px;
  }
  .queue-item {
    align-items: flex-start;
    flex-direction: column;
    gap: 10px;
    padding: 13px 0;
  }
  .queue-item p span {
    display: block;
    margin: 5px 0 0;
  }
  .queue-item>.button {
    align-self: flex-end;
  }
  .filter-bar {
    padding: 12px;
    gap: 8px;
  }
  .filter-bar>* {
    max-width: 100%;
  }
  .search-box {
    width: 100%;
  }
  .business-table-scroll,.mg-table-scroll {
    max-width: calc(100vw - 30px);
    overflow-x: auto;
  }
  .data-table {
    min-width: 640px;
  }
  .pagination {
    align-items: flex-start;
    padding: 12px;
  }
  .page-heading {
    flex-wrap: wrap;
  }
  .form-grid,.detail-layout {
    grid-template-columns: 1fr;
  }
  .form-actions {
    padding: 14px 0;
    flex-wrap: wrap;
  }
  .result-fields>div {
    grid-template-columns: 1fr;
    gap: 5px;
  }
  .key-grid {
    grid-template-columns: 1fr;
  }
  .key-grid>div:nth-child(odd) {
    border-right: 0;
  }
  .business-detail>.panel-head {
    align-items: flex-start;
    flex-direction: column;
  }
  .business-detail>.panel-head>div:last-child {
    width: 100%;
    justify-content: flex-start;
  }
  .business-detail .modal-body {
    padding: 14px;
  }
  .modal-backdrop {
    padding: 10px;
  }
  .modal {
    max-height: calc(100vh - 20px);
  }
  .modal-body {
    padding: 16px;
  }
  .detail-side {
    padding: 16px 0 0;
    border-left: 0;
    border-top: 1px solid var(--line);
  }
  .mg-tabs {
    overflow-x: auto;
    flex-wrap: nowrap;
  }
  .mg-tabs>.button {
    flex: 0 0 auto;
  }
  .management-workspace .form-grid {
    grid-template-columns: 1fr;
  }
  .result-fields>div {
    grid-template-columns: 1fr;
  }
}
@media(prefers-reduced-motion:reduce) {
  *,*::before,*::after {
    animation: none!important;
    transition: none!important;
    scroll-behavior: auto!important;
  }
}

