.account-connection{background:#fff;padding:28px 32px;margin-bottom:24px;border-radius:12px;color:#26313b}
.connection-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}
.connection-heading h2{font-size:21px;line-height:1.3;margin:0 0 8px;font-weight:600}
.connection-heading p,.connection-field small,.connection-automatic p{color:#6c7781;line-height:1.5;margin:0}
.connection-heading .btn{white-space:nowrap;padding-right:0}
.connection-steps{display:flex;list-style:none;padding:20px 0;margin:0 0 22px;gap:28px;border-bottom:1px solid #e9ecef}
.connection-steps li{display:flex;align-items:center;gap:9px;color:#73808c;font-size:13px;transition:color .18s ease}
.connection-steps li>span{display:grid;place-items:center;width:25px;height:25px;border-radius:50%;background:#eef1f4;font-size:12px}
.connection-steps li.is-current{color:#26313b;font-weight:600}.connection-steps li.is-current>span{background:#26313b;color:#fff}
.connection-steps li.is-complete>span{background:#e7f4ee;color:#21724f}
.connection-status{padding:18px 20px;margin-bottom:24px;background:#f5f7f8;border-left:3px solid #a6b0b8;border-radius:0 6px 6px 0;transition:background .2s ease}
.connection-status[data-state=connected]{background:#f0f8f4;border-color:#39805f}
.connection-status[data-state=error],.connection-status[data-state=verification]{background:#fff8ed;border-color:#c28527}
.connection-status>strong{font-size:15px}.connection-status p{margin:5px 0 0;line-height:1.5}
.connection-meta{display:flex;flex-wrap:wrap;gap:6px 24px;font-size:12px;color:#73808c;margin-top:12px}.connection-meta b{font-weight:500;color:#47525e}
.connection-status progress{display:block;width:100%;height:6px;margin:14px 0;accent-color:#435c74}
.connection-error-details{margin-top:14px;font-size:12px;color:#596570}.connection-error-details>summary{cursor:pointer}.connection-error-details code{overflow-wrap:anywhere;color:inherit}
.connection-form-grid,.connection-extra-fields{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:20px 24px}
.connection-wide{grid-column:1/-1}.connection-extra-fields:empty{display:none}
.connection-field label,.connection-verification>label{display:block;font-weight:500;font-size:13px;margin-bottom:7px}
.account-connection .form-control,.account-connection .form-select{width:100%;max-width:none!important;min-height:42px;border-color:#dce1e5;border-radius:6px;box-shadow:none}
.account-connection .form-control:focus,.account-connection .form-select:focus{border-color:#728497;box-shadow:0 0 0 3px #72849720}
.connection-field small{display:block;font-size:12px;margin-top:6px}.connection-field input[readonly]{background:#f5f7f8;color:#6b7580}
.connection-automatic{padding:22px 0 0;margin-top:24px;border-top:1px solid #e9ecef}
.connection-automatic label{display:flex;align-items:center;gap:9px;font-weight:500;font-size:14px;margin-bottom:5px}.connection-automatic p{font-size:12px;margin-left:24px}
.connection-actions{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-top:22px}.connection-actions .btn{min-height:42px}.connection-actions .btn-primary{background:#293845;border-color:#293845}.connection-actions .btn-primary:hover{background:#405364;border-color:#405364}
.connection-actions button:disabled{opacity:.55;cursor:wait}.connection-feedback{display:block;font-size:12px;margin:8px 0 0 24px;color:#866324}
.connection-advanced{border-top:1px solid #e9ecef;margin-top:28px;padding-top:17px}.connection-advanced>summary,.connection-help>summary{cursor:pointer;color:#5f6a75;font-size:13px}.connection-advanced[open]>.connection-form-grid{margin-top:20px}
.connection-proxy-required{margin-top:12px;font-size:12px!important;font-weight:400!important}
.connection-verification{padding:22px;background:#fff8ed;margin-top:24px;border-radius:8px}.connection-verification h3{font-size:17px;margin:0 0 10px}.connection-verification p{font-size:13px;line-height:1.6}.connection-help{margin:18px 0}.connection-help li{margin:10px 0;font-size:13px;line-height:1.6}
.connection-banner{display:flex;justify-content:space-between;gap:24px;align-items:center;background:#fff;padding:20px 24px;border-radius:10px;margin:0 0 24px;border-left:3px solid #a6b0b8}.connection-banner p{margin:5px 0 0;font-size:13px;color:#6c7781}.connection-banner .btn{flex-shrink:0}
.account-connection [hidden]{display:none!important}
@media(max-width:700px){.account-connection{padding:20px 18px}.connection-heading{display:block}.connection-heading .btn{padding-left:0;font-size:13px}.connection-form-grid,.connection-extra-fields{grid-template-columns:minmax(0,1fr);gap:18px}.connection-steps{gap:12px;justify-content:space-between}.connection-steps li{font-size:11px;gap:6px;align-items:flex-start;flex-direction:column;max-width:100px}.connection-status{padding:14px}.connection-meta{display:grid}.connection-actions{align-items:stretch;flex-direction:column}.connection-actions>button{width:100%}.connection-banner{align-items:flex-start;flex-direction:column;gap:12px}}
@media(prefers-reduced-motion:reduce){.account-connection *{transition:none!important}}
