/* Reuse native theme surfaces and controls; keep the embedded form compact. */
.login-popup { font-size:15px; }
.login-popup-content { padding:4px 2px 12px; }
.login-popup-intro { margin:0 0 18px; line-height:1.5; opacity:.85; }
.login-providers { display:grid; grid-template-columns:1fr; gap:8px; }
.login-providers .btn { display:flex; align-items:center; justify-content:center; min-height:44px; border-radius:4px; white-space:normal; font-weight:600; }
.login-providers small { margin-left:3px; font-weight:normal; }
.login-popup .form-control { min-height:44px; border-radius:4px; font-size:16px; }
.login-popup .form-group { margin-bottom:14px; }
.login-popup label { margin-bottom:6px; font-weight:600; }
.login-popup .checkbox label { display:flex; align-items:center; gap:8px; padding-left:0; font-weight:normal; }
.login-popup .checkbox input[type=checkbox] { position:static; float:none; flex:0 0 16px; min-width:16px; max-width:16px; width:16px!important; height:16px; margin:0; }
.login-popup #login > .btn-group { display:block; margin:4px 0 14px; }
.login-popup #login > .btn-group a { float:none; border:0; background:transparent; padding:5px 0; white-space:normal; text-align:left; }
.login-popup button[type=submit] { float:none!important; width:100%; min-height:44px; margin:8px 0 0; border-radius:4px; font-weight:600; font-size:16px; }
.login-popup-status { margin:12px 0 0; line-height:1.5; font-size:14px; }
.login-popup-status:empty, .login-popup #error:empty { display:none; }
.login-popup #error { margin:12px 0 0; }
.login-popup .addacc { padding:14px 0 0; }
.login-popup .addacc .input-group { margin-bottom:12px; }
.login-popup [hidden] { display:none!important; }
.login-popup .login-providers[hidden] { display:none!important; }
@media(max-width:360px) { .login-providers { grid-template-columns:1fr; } }

/* Authentication shares the site's modal palette and fits narrow phone screens. */
.chat-login-modal .modal-dialog { width:440px; max-width:calc(100% - 24px); margin:24px auto; }
.chat-login-modal .modal-content { border-radius:4px; overflow:hidden; }
.chat-login-modal .modal-header { padding:18px 20px 14px; }
.chat-login-modal .modal-title { font-size:20px; font-weight:600; }
.chat-login-modal .close { color:inherit; opacity:.65; }
.chat-login-modal .modal-body { padding:14px 20px 18px; max-height:calc(100dvh - 145px); overflow:auto; }
.chat-login-frame { display:block; width:100%; height:450px; border:0; }
