/* Scoped rules isolate the dialog from branded login and Bootstrap styles. */
.turnstile-login-dialog { position:fixed; inset:0; z-index:2147483000; display:flex; align-items:center; justify-content:center; padding:12px; box-sizing:border-box; background:rgba(15,35,55,.48); font-family:Arial,sans-serif; text-align:left; }
.turnstile-login-dialog .turnstile-login-card { width:380px; max-width:100%; max-height:calc(100vh - 24px); overflow:auto; box-sizing:border-box; padding:20px 16px 16px; border-radius:16px; background:#fff; color:#25364a; box-shadow:0 18px 64px rgba(10,30,50,.24); outline:none; }
.turnstile-login-dialog .turnstile-login-header { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-bottom:12px; }
.turnstile-login-dialog .turnstile-login-title { margin:0; font:600 20px/1.35 Arial,sans-serif; color:#25364a; }
.turnstile-login-dialog .turnstile-login-description { margin:0 0 20px; font:14px/1.6 Arial,sans-serif; color:#647489; }
.turnstile-login-dialog .turnstile-login-widget { display:flex; justify-content:center; min-height:65px; }
.turnstile-login-dialog .turnstile-login-message { margin-top:12px; font:13px/1.5 Arial,sans-serif; color:#a12622; overflow-wrap:anywhere; }
.turnstile-login-dialog .turnstile-login-message:empty { display:none; }
.turnstile-login-dialog .turnstile-login-footer { display:flex; justify-content:flex-end; gap:10px; margin-top:20px; }
.turnstile-login-dialog button { cursor:pointer; font:14px/1.4 Arial,sans-serif; text-transform:none; letter-spacing:normal; border-radius:8px; box-shadow:none; width:auto; height:auto; }
.turnstile-login-dialog .turnstile-login-close { flex:none; padding:0; width:32px; height:32px; border:0; background:transparent; color:#647489; font-size:26px; }
.turnstile-login-dialog .turnstile-login-cancel { padding:9px 16px; border:1px solid #dbe3eb; background:#fff; color:#42546b; }
.turnstile-login-dialog .turnstile-login-retry { padding:9px 16px; border:1px solid #2485db; background:#2485db; color:#fff; }
.turnstile-login-dialog button:focus-visible { outline:2px solid #2485db; outline-offset:3px; }
.turnstile-reset { margin-top: 16px; max-width: 100%; } .turnstile-reset-widget { min-height: 65px; } .turnstile-reset-message { margin-top: 8px; overflow-wrap: anywhere; } .turnstile-reset-retry { margin-top: 8px; }
