.integration-dialog { width:min(780px,calc(100vw - 32px)); }
.integration-dialog[open] { display:flex;flex-direction:column;max-height:calc(100dvh - 32px); }
.integration-dialog .dialog-body { flex:1 1 auto;min-height:0;max-height:none;overflow:auto;padding:24px; }
.integration-dialog .dialog-head,.integration-dialog .dialog-footer { flex:0 0 auto; }
.integration-provider { display:flex;align-items:center;gap:12px;margin-bottom:24px; }
.integration-provider-mark { display:grid;place-items:center;width:38px;height:38px;flex:0 0 38px;background:var(--primary-soft,#eef2ff);color:var(--primary,#4f46e5);border:1px solid var(--border,#e5e7eb);border-radius:9px;font-size:18px;font-weight:600; }
.integration-provider h3 { margin:0;font-size:15px;font-weight:600;color:var(--text,#374151); }
.integration-save-badge { display:inline-flex;align-items:center;margin-top:6px;padding:2px 7px;border-radius:3px;background:var(--primary-soft,#eef2ff);color:var(--primary,#4f46e5);font-size:12px;line-height:1.5; }
.integration-save-badge[data-state="pending"],.integration-save-badge[data-state="empty"] { background:var(--surface-muted,#f6f8fb);color:var(--ink-muted,#687890); }
.integration-provider p { margin:5px 0 0;font-size:12px;line-height:1.6;color:var(--muted,#6b7280); }
.integration-grid { display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:18px 20px; }
.integration-full { grid-column:1 / -1;min-width:0; }
.integration-form .form-field { display:flex;flex-direction:column;gap:7px;min-width:0;font-size:12px;line-height:1.5;color:var(--text,#374151); }
.integration-form input,.integration-form select,.integration-form textarea { width:100%;min-width:0;box-sizing:border-box; }
.integration-form .section-note { margin:0;font-size:12px;line-height:1.75;color:var(--muted,#6b7280); }
.integration-form .section-note span { display:block;overflow-wrap:anywhere; }
.integration-form .field-hint { margin:0;font-size:11px;color:var(--muted,#6b7280);line-height:1.6; }
.integration-secret-control { display:flex;align-items:stretch;position:relative; }
.integration-secret-control input { padding-right:42px; }
.integration-secret-toggle { position:absolute;right:1px;top:1px;bottom:1px;width:38px;display:grid;place-items:center;border:0;border-radius:5px;background:transparent;color:var(--muted,#6b7280);cursor:pointer; }
.integration-secret-toggle svg { width:18px;height:18px; }
.integration-secret-toggle:hover { color:var(--text,#374151);background:var(--bg,#f9fafb); }
.integration-secret-toggle:focus-visible { outline:2px solid var(--primary,#4f46e5);outline-offset:-3px; }
.integration-secret-toggle .integration-secret-slash { display:none; }
.integration-secret-toggle[aria-pressed=true] .integration-secret-slash { display:block; }
.integration-metadata { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:22px 0 0;padding-top:18px;border-top:1px solid var(--border,#e5e7eb); }
.integration-metadata div { min-width:0; }
.integration-metadata dt { font-size:11px;color:var(--muted,#6b7280);margin-bottom:5px; }
.integration-metadata dd { margin:0;font-size:12px;color:var(--text,#374151);overflow-wrap:anywhere;line-height:1.6; }
.integration-actions { gap:8px;flex-wrap:wrap; }
.integration-actions .integration-status { flex:0 0 100%;margin:0 0 4px;min-width:0;overflow-wrap:anywhere; }
.integration-actions [data-integration-cancel] { margin-right:auto; }
.integration-feedback:empty,.integration-status:empty { display:none; }
.integration-feedback { margin-bottom:18px;overflow-wrap:anywhere; }
.integration-status { margin-top:18px;font-size:12px;line-height:1.6;color:var(--text,#374151); }
.integration-test-name { font-size:14px;font-weight:600;overflow-wrap:anywhere; }
.integration-test-result { margin-top:14px;padding:16px;border:1px solid var(--border,#e5e7eb);border-radius:7px;background:var(--bg,#f9fafb);font-size:12px;line-height:1.75;color:var(--text,#374151);overflow-wrap:anywhere; }
.integration-test-result strong { font-size:13px;font-weight:600; }
.integration-test-result p { margin:7px 0 0; }
.integration-test-result.is-failure { border-color:#fecaca; }
.integration-dialog [data-integration-retry-test] { margin-top:18px; }
@media(max-width:600px) { .integration-dialog .dialog-body { padding:20px; }.integration-grid,.integration-metadata { grid-template-columns:minmax(0,1fr); }.integration-actions .btn { flex:1 1 auto; }.integration-actions [data-integration-cancel] { margin-right:0; } }
