/* Scoped to OTP views; field outlines stay on their borders. */
.bf-auth{width:100%;max-width:480px;margin:28px auto;padding:34px;background:var(--paper,#fffdfa);border:1px solid var(--line,#ded7ce);color:var(--ink,#24201f);text-align:right}
.bf-auth [hidden]{display:none!important}
.bf-auth h2{font-size:28px;margin:0 0 14px;letter-spacing:-.6px}
.bf-auth .eyebrow{font-size:9px;letter-spacing:2px;margin-bottom:12px}
.bf-auth-intro{font-size:13px;line-height:2.1;margin-bottom:27px}
.bf-auth-form label{display:block;font-size:13px;margin-bottom:8px;color:var(--ink,#24201f)}
.bf-auth .input-text{display:block;box-sizing:border-box;width:100%;min-height:52px;padding:11px 14px;border:1px solid var(--line,#ded7ce);border-radius:0;background:#fff;color:var(--ink,#24201f);font:inherit;font-size:17px;box-shadow:none}
.bf-auth .input-text:focus{border-color:var(--deep,#951823);outline:2px solid var(--deep,#951823);outline-offset:-2px;box-shadow:none}
.bf-auth .input-text[aria-invalid=true]{border-color:var(--deep,#951823)}
.bf-auth .input-text:read-only{background:var(--cream,#f8f5f0)}
.bf-auth .bf-auth-phone{text-align:left;direction:ltr}
.bf-auth .bf-auth-code{text-align:center;font-size:26px;letter-spacing:.38em;padding-inline:12px;text-indent:.38em;font-variant-numeric:tabular-nums}
.bf-auth-help,.bf-auth-expiry{font-size:11px;line-height:2;margin:8px 0 18px;color:var(--muted,#716963)}
.bf-auth-recipient{font-size:13px;margin:0 0 18px}
.bf-auth-recipient bdi,.bf-auth-account bdi{font-variant-numeric:tabular-nums;white-space:nowrap}
.bf-auth .bf-auth-submit,.bf-auth .bf-auth-return{width:100%;min-height:50px;margin:7px 0 0;white-space:normal;font-size:13px;background:var(--deep,#951823);color:#fff;border:1px solid var(--deep,#951823)}
.bf-auth .bf-auth-submit:hover{background:var(--deep-hover,#71131b);color:#fff}
.bf-auth button:disabled{cursor:default;opacity:.55}
.bf-auth-actions{display:flex;justify-content:space-between;align-items:center;gap:14px;flex-wrap:wrap;margin-top:14px}
.bf-auth-text-button{min-height:44px;border:0;background:transparent;color:var(--deep,#951823);font:inherit;font-size:12px;padding:6px 0;text-decoration:underline;text-underline-offset:5px}
.bf-auth-message{font-size:12px;line-height:2;margin:16px 0;padding:10px 13px;background:var(--cream,#f8f5f0);border-inline-start:3px solid var(--deep,#951823);color:var(--ink,#24201f)}
.bf-auth-message.is-error{color:var(--deep,#951823)}
.bf-auth-message.is-success{border-color:#456447;color:#345438}
.bf-auth-footnote{font-size:11px;line-height:2.1;border-top:1px solid var(--line,#ded7ce);padding-top:18px;margin:22px 0 0}
.bf-auth-account{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:18px;margin-top:35px;padding-top:28px;border-top:1px solid var(--line,#ded7ce)}
.bf-auth-account h2{font-size:21px;margin-bottom:8px}
.bf-auth-account p{font-size:13px;margin:0}
.bf-auth-account .button{font-size:12px}
.bf-auth-dialog{width:min(480px,calc(100% - 32px));max-width:480px;max-height:calc(100dvh - 40px);padding:0;border:1px solid var(--line,#ded7ce);background:var(--paper,#fffdfa);color:var(--ink,#24201f);overflow-y:auto;overscroll-behavior:contain}
.bf-auth-dialog::backdrop{background:rgb(36 32 31 / 55%)}
.bf-auth-dialog .bf-auth{max-width:none;margin:0;border:0;padding-top:46px}
.bf-auth-close{position:absolute;inset-inline-end:10px;top:7px;width:38px;height:38px;padding:0;border:0;background:transparent;color:var(--ink,#24201f);font:inherit;font-size:27px;line-height:1}
@media(max-width:700px){.bf-auth{padding:26px 22px;margin:16px auto}.bf-auth h2{font-size:25px}.bf-auth-intro{font-size:12px}.bf-auth .input-text{font-size:16px}.bf-auth .bf-auth-code{font-size:25px}.bf-auth-account{align-items:start}.bf-auth-dialog .bf-auth{padding:44px 22px 25px}.bf-auth .bf-auth-submit{font-size:13px}}
