.social-entry:empty { display:none; }
.social-auth { margin-bottom:24px; }
.social-auth-buttons { display:grid; grid-template-columns:minmax(0,1fr); gap:9px; }
.social-provider { position:relative; display:flex; align-items:center; justify-content:center; gap:8px; min-width:0; min-height:44px; padding:10px 48px; border:1px solid var(--account-line); border-radius:7px; background:var(--account-field); color:var(--account-ink); font:inherit; font-size:13px; font-weight:500; cursor:pointer; transition:background .15s,border-color .15s; }
.social-provider>svg { position:absolute; inset-inline-start:15px; }
.social-provider:hover { border-color:var(--account-muted); background:color-mix(in srgb,var(--account-muted) 8%,var(--account-field)); }
.social-provider:focus-visible { outline:2px solid var(--account-accent); outline-offset:3px; }
.social-provider:disabled { opacity:.55; cursor:wait; }
.social-provider svg,.social-identity svg,.settings-connection-provider svg { width:19px; height:19px; flex:none; }
.social-auth-separator { display:flex; align-items:center; gap:14px; margin:22px 0 0; color:var(--account-muted); font-size:11px; text-align:center; }
.social-auth-separator::before,.social-auth-separator::after { content:''; height:1px; flex:1; background:var(--account-line); }
.social-notice { margin:0 0 22px; padding:12px 14px; border-inline-start:2px solid var(--account-accent); background:var(--account-field); color:var(--account-ink); font-size:12px; line-height:1.85; }
.social-notice a { display:inline-block; margin-inline-start:6px; }
.social-identity { display:flex; align-items:center; flex-wrap:wrap; gap:10px; margin-bottom:22px; padding:13px 15px; border:1px solid var(--account-line); border-radius:7px; color:var(--account-ink); font-size:12px; }
.social-identity>span { flex:1; min-width:0; }
.social-identity button { border:0; padding:5px 0; background:none; color:var(--account-accent); font:inherit; font-size:11px; cursor:pointer; }
.social-identity button:focus-visible { outline:2px solid var(--account-accent); outline-offset:3px; }
.signup-page [data-social-entry] { margin-top:23px; }
.signup-page .social-auth { margin-bottom:26px; }
.settings-connections { margin-top:38px; }
.settings-connection-list { list-style:none; margin:0; padding:0; }
.settings-connection { display:flex; align-items:center; justify-content:space-between; gap:16px; padding:18px 0; border-bottom:1px solid var(--account-line); }
.settings-connection-provider { display:flex; align-items:center; gap:12px; min-width:0; }
.settings-connection-provider strong { display:block; font-size:13px; font-weight:500; }
.settings-connection-provider p { margin:3px 0 0; color:var(--account-muted); font-size:11px; line-height:1.7; overflow-wrap:anywhere; }
.settings-connection-action { flex:none; }
.settings-connection-form { max-width:440px; margin-top:22px; }
.settings-password-required { margin:0 0 24px; padding:15px 0; border-bottom:1px solid var(--account-line); }
.settings-password-required p { max-width:600px; margin:0 0 12px; color:var(--account-muted); font-size:12px; line-height:1.9; }
.social-entry [hidden],.settings-connections[hidden] { display:none!important; }
@media(max-width:420px) {
  .settings-connection { gap:12px; }
}
@media(prefers-reduced-motion:reduce) { .social-provider { transition:none; } }
