/* Account presentation only. Forms, Google sign-in and return navigation are owned by existing handlers. */
:is(#bt-auth-page.bt-auth-page[data-auth-page], #login-dialog.bt-auth-modal) {
    color: var(--odm-text) !important;
    font-family: inherit;
    font-size: 16px;
    line-height: 1.55;
    -webkit-font-smoothing: antialiased;
}
:is(#bt-auth-page.bt-auth-page[data-auth-page], #login-dialog.bt-auth-modal) * { box-sizing: border-box; }
#bt-auth-page.bt-auth-page[data-auth-page] {
    display: block !important;
    min-height: 0 !important;
    padding: clamp(20px, 4vw, 64px) 24px !important;
    background: var(--odm-page) !important;
    overflow: visible !important;
}
#bt-auth-page.bt-auth-page[data-auth-page] .bt-auth-page__inner { width: 100%; max-width: 1160px !important; margin: auto; }
#bt-auth-page.bt-auth-page[data-auth-page] .bt-auth-shell {
    display: grid !important; grid-template-columns: .94fr 1.06fr !important;
    width: 100%; border: 1px solid var(--odm-border) !important; border-radius: 24px !important;
    background: var(--odm-surface) !important; box-shadow: 0 16px 48px #1019250a !important;
    overflow: hidden; min-height: 690px;
}
#bt-auth-page.bt-auth-page[data-auth-page] .bt-auth-hero-panel {
    position: relative; display: flex !important; flex-direction: column; justify-content: space-between;
    padding: clamp(30px, 3.5vw, 52px); gap: 48px;
    background: var(--odm-hero-background) !important; color: var(--odm-hero-text) !important;
    isolation: isolate; overflow: hidden;
}
#bt-auth-page.bt-auth-page[data-auth-page] .bt-auth-hero-panel::before { content: none !important; }
:is(#bt-auth-page.bt-auth-page[data-auth-page], #login-dialog.bt-auth-modal) .bt-auth-wordmark {
    display: inline-flex; align-items: center; gap: 12px; width: fit-content;
    font-size: 15px; font-weight: 750; line-height: 1.3; color: inherit !important; text-decoration: none;
}
:is(#bt-auth-page.bt-auth-page[data-auth-page], #login-dialog.bt-auth-modal) .bt-auth-monogram {
    display: inline-grid; place-items: center; flex: 0 0 43px; width: 43px; height: 43px;
    border: 1px solid currentColor; border-radius: 13px; font: italic 26px Georgia, serif;
    background: transparent !important; color: inherit !important;
}
#bt-auth-page.bt-auth-page[data-auth-page] .bt-auth-wordmark small { display: block; margin-top: 5px; color: var(--odm-hero-muted); font-size: 11px; font-weight: 400; }
:is(#bt-auth-page.bt-auth-page[data-auth-page], #login-dialog.bt-auth-modal) .bt-auth-eyebrow {
    margin: 0 0 16px; font-size: 11px; letter-spacing: .13em; text-transform: uppercase; font-weight: 700;
    color: var(--odm-accent-text) !important;
}
#bt-auth-page.bt-auth-page[data-auth-page] .bt-auth-hero-panel .bt-auth-eyebrow { color: var(--odm-hero-accent) !important; }
#bt-auth-page.bt-auth-page[data-auth-page] .bt-auth-hero-headline {
    margin: 0 0 20px; max-width: 390px; color: var(--odm-hero-text) !important;
    font: 400 clamp(34px, 3.6vw, 49px)/1.1 Georgia, 'Times New Roman', serif; letter-spacing: -.035em;
}
#bt-auth-page.bt-auth-page[data-auth-page] .bt-auth-hero-lead { margin: 0; max-width: 380px; font-size: 14px; line-height: 1.8; color: var(--odm-hero-muted) !important; }
#bt-auth-page.bt-auth-page[data-auth-page] .bt-auth-hero-points { display: grid; gap: 21px; margin: 34px 0 0; }
#bt-auth-page.bt-auth-page[data-auth-page] .bt-hero-point { display: flex; gap: 16px; align-items: baseline; padding: 0 !important; background: none !important; border: 0 !important; }
#bt-auth-page.bt-auth-page[data-auth-page] .bt-hero-point > span { font-size: 11px; color: var(--odm-hero-accent); font-variant-numeric: tabular-nums; }
#bt-auth-page.bt-auth-page[data-auth-page] .bt-hero-point strong { display: block; font-size: 14px; font-weight: 600; color: var(--odm-hero-text) !important; }
#bt-auth-page.bt-auth-page[data-auth-page] .bt-hero-point small { display: block; margin-top: 4px; font-size: 12px; line-height: 1.7; color: var(--odm-hero-muted) !important; }
#bt-auth-page.bt-auth-page[data-auth-page] .bt-auth-hero-foot { display: flex; align-items: center; gap: 20px; padding-top: 25px; border-top: 1px solid var(--odm-hero-line); }
#bt-auth-page.bt-auth-page[data-auth-page] .bt-auth-hero-foot p { margin: 0; color: var(--odm-hero-muted); font-size: 12px; max-width: 265px; }
.bt-auth-art { position: relative; display: block; width: 60px; height: 56px; flex: 0 0 60px; }
.bt-auth-art i { position: absolute; inset: 3px 15px; border: 1px solid var(--odm-hero-accent); border-radius: 50%; transform: rotate(-35deg); }
.bt-auth-art i:nth-child(2) { transform: rotate(35deg); }.bt-auth-art i:nth-child(3) { transform: rotate(90deg); }
#bt-auth-page.bt-auth-page[data-auth-page] .bt-auth-form-panel { padding: clamp(28px, 4vw, 56px) !important; border-radius: 0 !important; background: var(--odm-surface) !important; display: flex; align-items: center; }
#bt-auth-page.bt-auth-page[data-auth-page] .bt-auth-form-panel__inner { width: 100%; max-width: 440px; margin: auto; }
#bt-auth-page.bt-auth-page[data-auth-page] .bt-auth-mobile-header { display: none !important; }
:is(#bt-auth-page.bt-auth-page[data-auth-page], #login-dialog.bt-auth-modal) :is(.bt-auth-tab-switch,.bt-auth-tabs) {
    display: flex; gap: 24px; padding: 0 !important; margin: 0 0 30px;
    border: 0 !important; border-bottom: 1px solid var(--odm-border) !important; border-radius: 0 !important;
    background: transparent !important;
}
:is(#bt-auth-page.bt-auth-page[data-auth-page], #login-dialog.bt-auth-modal) :is(.bt-auth-switch-btn,.bt-auth-tab) {
    display: inline-flex; align-items: center; justify-content: center; flex: 0 1 auto; width: auto;
    min-height: 46px; padding: 8px 0 13px; margin-bottom: -1px;
    font-family: inherit; line-height: 1.4; font-size: 14px; font-weight: 600;
    color: var(--odm-muted) !important; background: transparent !important; border: 0 !important;
    border-bottom: 2px solid transparent !important; border-radius: 0 !important; box-shadow: none !important;
    text-decoration: none !important; cursor: pointer;
}
:is(#bt-auth-page.bt-auth-page[data-auth-page], #login-dialog.bt-auth-modal) :is(.bt-auth-switch-btn,.bt-auth-tab).is-active {
    color: var(--odm-accent-text) !important; border-bottom-color: var(--odm-focus) !important; background: transparent !important;
}
:is(#bt-auth-page.bt-auth-page[data-auth-page], #login-dialog.bt-auth-modal) :is(.bt-auth-switch-btn,.bt-auth-tab):hover { color: var(--odm-text) !important; }
#bt-auth-page.bt-auth-page[data-auth-page] .bt-auth-heading { margin-bottom: 25px; }
#bt-auth-page.bt-auth-page[data-auth-page] .bt-auth-heading .bt-auth-eyebrow { margin-bottom: 10px; }
#bt-auth-page.bt-auth-page[data-auth-page] .bt-auth-heading h1 { margin: 0 0 12px; color: var(--odm-text) !important; font: 400 clamp(30px, 3vw, 38px)/1.15 Georgia, serif; letter-spacing: -.03em; font-weight: 400 !important; }
:is(#bt-auth-page.bt-auth-page[data-auth-page], #login-dialog.bt-auth-modal) :is(.bt-auth-heading > p:not(.bt-auth-eyebrow), .bt-auth-recovery-copy p) { margin: 0; font-size: 14px; font-weight: 400 !important; line-height: 1.7; color: var(--odm-muted) !important; }
:is(#bt-auth-page.bt-auth-page[data-auth-page], #login-dialog.bt-auth-modal) .bt-auth-form { display: grid; gap: 18px; margin: 0; }
:is(#bt-auth-page.bt-auth-page[data-auth-page], #login-dialog.bt-auth-modal) .bt-auth-field { margin: 0; min-width: 0; }
:is(#bt-auth-page.bt-auth-page[data-auth-page], #login-dialog.bt-auth-modal) .bt-auth-field label { display: block; margin: 0 0 7px; color: var(--odm-text) !important; font-size: 13px !important; font-weight: 600 !important; text-transform: none !important; letter-spacing: 0 !important; }
:is(#bt-auth-page.bt-auth-page[data-auth-page], #login-dialog.bt-auth-modal) .bt-auth-label-row { display: flex; align-items: baseline; flex-wrap: wrap; justify-content: space-between; gap: 4px 10px; }
:is(#bt-auth-page.bt-auth-page[data-auth-page], #login-dialog.bt-auth-modal) .bt-auth-input {
    display: block; width: 100%; height: 49px !important; min-width: 0; padding: 11px 14px !important;
    font-family: inherit; line-height: 1.5; font-size: 16px !important; font-weight: 400 !important;
    color: var(--odm-text) !important; background: var(--odm-surface) !important;
    border: 1px solid var(--odm-border) !important; border-radius: 8px !important; box-shadow: none !important;
}
:is(#bt-auth-page.bt-auth-page[data-auth-page], #login-dialog.bt-auth-modal) .bt-auth-input:focus { border-color: var(--odm-focus) !important; outline: 2px solid var(--odm-focus) !important; outline-offset: 2px; }
:is(#bt-auth-page.bt-auth-page[data-auth-page], #login-dialog.bt-auth-modal) .bt-auth-input.is-invalid { border-color: var(--odm-danger-text) !important; }
:is(#bt-auth-page.bt-auth-page[data-auth-page], #login-dialog.bt-auth-modal) .bt-auth-password-wrap { position: relative; }
:is(#bt-auth-page.bt-auth-page[data-auth-page], #login-dialog.bt-auth-modal) .bt-auth-password-wrap .bt-auth-input { padding-inline-end: 65px !important; }
:is(#bt-auth-page.bt-auth-page[data-auth-page], #login-dialog.bt-auth-modal) .bt-auth-password-toggle {
    position: absolute; inset-inline-end: 3px; top: 3px; bottom: auto; transform: none; width: 58px; height: 43px; min-width: 0;
    padding: 0 7px; border: 0; border-radius: 5px; font: inherit; font-size: 12px; font-weight: 600;
    color: var(--odm-accent-text) !important; background: var(--odm-surface) !important; cursor: pointer;
}
:is(#bt-auth-page.bt-auth-page[data-auth-page], #login-dialog.bt-auth-modal) .bt-auth-form-grid { display: grid; grid-template-columns: 1fr 1fr !important; gap: 16px; }
:is(#bt-auth-page.bt-auth-page[data-auth-page], #login-dialog.bt-auth-modal) :is(.bt-auth-hint,.bt-auth-switch,.bt-auth-check) { color: var(--odm-muted) !important; font-size: 12px !important; font-weight: 400 !important; line-height: 1.7; }
:is(#bt-auth-page.bt-auth-page[data-auth-page], #login-dialog.bt-auth-modal) .bt-auth-hint { display: block; margin-top: 6px; }
:is(#bt-auth-page.bt-auth-page[data-auth-page], #login-dialog.bt-auth-modal) .bt-auth-check { display: flex; align-items: flex-start; gap: 10px; margin: 0; min-height: 28px; cursor: pointer; }
:is(#bt-auth-page.bt-auth-page[data-auth-page], #login-dialog.bt-auth-modal) .bt-auth-check input { flex: 0 0 18px; width: 18px; height: 18px; margin: 2px 0; accent-color: var(--odm-primary); }
:is(#bt-auth-page.bt-auth-page[data-auth-page], #login-dialog.bt-auth-modal) :is(.bt-auth-text-button,.bt-auth-label-row a,.bt-auth-check a,.bt-auth-switch a) { color: var(--odm-accent-text) !important; font-family: inherit; font-size: 12px !important; font-weight: 600 !important; background: none !important; border: 0; padding: 0; text-decoration: underline !important; text-underline-offset: 3px; cursor: pointer; }
:is(#bt-auth-page.bt-auth-page[data-auth-page], #login-dialog.bt-auth-modal) .bt-auth-label-row :is(a,button) { min-height: 28px; }
:is(#bt-auth-page.bt-auth-page[data-auth-page], #login-dialog.bt-auth-modal) .bt-auth-submit {
    display: flex; align-items: center; justify-content: center; gap: 10px;
    width: 100%; min-height: 49px; height: auto !important; padding: 13px 18px !important;
    border: 1px solid transparent !important; border-radius: 8px !important;
    background: var(--odm-action-background) !important; color: var(--odm-action-text) !important;
    font-family: inherit; font-size: 14px !important; font-weight: 650 !important; line-height: 1.5;
    box-shadow: none !important; cursor: pointer; transform: none !important;
}
:is(#bt-auth-page.bt-auth-page[data-auth-page], #login-dialog.bt-auth-modal) .bt-auth-submit:hover { filter: brightness(.96); background: var(--odm-action-background) !important; }
:is(#bt-auth-page.bt-auth-page[data-auth-page], #login-dialog.bt-auth-modal) .bt-auth-submit:disabled { opacity: .75; cursor: wait; }
:is(#bt-auth-page.bt-auth-page[data-auth-page], #login-dialog.bt-auth-modal) .bt-auth-submit__arrow { display: none; }
:is(#bt-auth-page.bt-auth-page[data-auth-page], #login-dialog.bt-auth-modal) .bt-auth-submit__spinner { width: 16px; height: 16px; border: 2px solid currentColor; border-inline-end-color: transparent; border-radius: 50%; animation: bt-account-spin .8s linear infinite; }
:is(#bt-auth-page.bt-auth-page[data-auth-page], #login-dialog.bt-auth-modal) .bt-auth-switch { margin: 0; text-align: center; }
:is(#bt-auth-page.bt-auth-page[data-auth-page], #login-dialog.bt-auth-modal) .bt-auth-social { margin: 0; }
:is(#bt-auth-page.bt-auth-page[data-auth-page], #login-dialog.bt-auth-modal) .bt-auth-social__buttons { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); grid-auto-rows: minmax(48px, auto); gap: 9px; }
:is(#bt-auth-page.bt-auth-page[data-auth-page], #login-dialog.bt-auth-modal) .bt-auth-social-button {
    display: flex; flex: none; justify-content: center; align-items: center; gap: 10px;
    position: relative; overflow: hidden; width: auto; min-width: 0; min-height: 47px; height: auto;
    padding: 10px 12px; border: 1px solid var(--odm-border) !important; border-radius: 8px !important;
    background: var(--odm-surface) !important; color: var(--odm-text) !important; box-shadow: none !important;
    font-family: inherit; font-size: 13px !important; font-weight: 500 !important; text-decoration: none !important; transform: none !important;
}
:is(#bt-auth-page.bt-auth-page[data-auth-page], #login-dialog.bt-auth-modal) .bt-auth-social-button--google { grid-column: 1 / -1; }
:is(#bt-auth-page.bt-auth-page[data-auth-page], #login-dialog.bt-auth-modal) .bt-auth-social-button:hover { background: var(--odm-surface-hover) !important; }
:is(#bt-auth-page.bt-auth-page[data-auth-page], #login-dialog.bt-auth-modal) .bt-auth-social-button img { width: 20px; height: 20px; max-width: 20px; max-height: 20px; object-fit: contain; flex-shrink: 0; }
:is(#bt-auth-page.bt-auth-page[data-auth-page], #login-dialog.bt-auth-modal) .bt-auth-social-button span { white-space: normal !important; color: inherit !important; }
:is(#bt-auth-page.bt-auth-page[data-auth-page], #login-dialog.bt-auth-modal) .bt-auth-divider { display: flex; align-items: center; gap: 12px; margin: 22px 0; color: var(--odm-muted) !important; font-size: 11px; font-weight: 400; letter-spacing: 0; text-transform: none; }
:is(#bt-auth-page.bt-auth-page[data-auth-page], #login-dialog.bt-auth-modal) .bt-auth-divider::before, :is(#bt-auth-page.bt-auth-page[data-auth-page], #login-dialog.bt-auth-modal) .bt-auth-divider::after { content: ''; flex: 1; height: 1px; background: var(--odm-border) !important; }
:is(#bt-auth-page.bt-auth-page[data-auth-page], #login-dialog.bt-auth-modal) :is(.bt-auth-alert,.bt-auth-form-status) { margin: 0 0 16px; padding: 12px 14px; border-radius: 8px; font-size: 13px; line-height: 1.6; overflow-wrap: anywhere; }
:is(#bt-auth-page.bt-auth-page[data-auth-page], #login-dialog.bt-auth-modal) :is(.bt-auth-alert--danger,.bt-auth-form-status:not(.bt-auth-alert--success)) { color: var(--odm-danger-text) !important; background: var(--odm-danger-soft) !important; border: 1px solid var(--odm-danger-border) !important; }
:is(#bt-auth-page.bt-auth-page[data-auth-page], #login-dialog.bt-auth-modal) .bt-auth-alert--success { color: var(--odm-text) !important; background: var(--odm-surface-soft) !important; border: 1px solid var(--odm-border) !important; }
:is(#bt-auth-page.bt-auth-page[data-auth-page], #login-dialog.bt-auth-modal) .invalid-feedback { color: var(--odm-danger-text) !important; font-size: 12px; margin-top: 6px; }
:is(#bt-auth-page.bt-auth-page[data-auth-page], #login-dialog.bt-auth-modal) .bt-auth-security-note { display: flex; align-items: center; justify-content: center; gap: 8px; margin: 24px 0 0; padding-top: 20px; border-top: 1px solid var(--odm-border) !important; color: var(--odm-muted) !important; font-size: 11px !important; font-weight: 400 !important; text-align: center; }
:is(#bt-auth-page.bt-auth-page[data-auth-page], #login-dialog.bt-auth-modal) .bt-auth-security-note svg { color: inherit !important; flex-shrink: 0; }
:is(#bt-auth-page.bt-auth-page[data-auth-page], #login-dialog.bt-auth-modal) :is(a,button,input,summary):focus-visible { outline: 2px solid var(--odm-focus) !important; outline-offset: 3px; }
:is(#bt-auth-page.bt-auth-page[data-auth-page], #login-dialog.bt-auth-modal) .d-none { display: none !important; }
/* The same popup stays centred at every size; only its form area scrolls when needed. */
#login-dialog.bt-auth-modal:not(.show) { display: none !important; }
#login-dialog.bt-auth-modal.show { position: fixed !important; inset: 0 !important; z-index: 2000001 !important; display: flex !important; align-items: center !important; justify-content: center !important; padding: 16px !important; overflow: hidden !important; background: #10192599; }
body:has(#login-dialog.bt-auth-modal.show) { overflow: hidden; }
.modal-backdrop.bt-auth-backdrop, body:has(#login-dialog.bt-auth-modal.show) > .modal-backdrop { position: fixed; inset: 0; z-index: 2000000 !important; background: #101925 !important; opacity: .58 !important; backdrop-filter: none !important; }
#login-dialog.bt-auth-modal .modal-dialog { display: block !important; position: relative !important; inset: auto !important; transform: none !important; width: 100% !important; max-width: 520px !important; min-height: 0 !important; margin: auto !important; pointer-events: auto; }
#login-dialog.bt-auth-modal .modal-content { display: flex; flex-direction: column; width: 100%; max-height: calc(100vh - 32px) !important; max-height: calc(100dvh - 32px) !important; overflow: hidden; border: 1px solid var(--odm-border) !important; border-radius: 20px !important; background: var(--odm-surface) !important; color: var(--odm-text) !important; box-shadow: 0 24px 80px #0003 !important; }
#login-dialog.bt-auth-modal .bt-auth-modal__header { flex-shrink: 0; display: flex; align-items: flex-start; justify-content: space-between; gap: 14px; padding: 26px 30px 0; border: 0 !important; background: var(--odm-surface) !important; color: var(--odm-text) !important; }
#login-dialog.bt-auth-modal .bt-auth-modal__brand-wrap { min-width: 0; flex: 1; }
#login-dialog.bt-auth-modal .bt-auth-modal__top-row { display: flex; align-items: center; gap: 11px; margin-bottom: 24px; }
#login-dialog.bt-auth-modal .bt-auth-modal__brand { font-size: 13px; font-weight: 650; }
#login-dialog.bt-auth-modal .bt-auth-modal__brand small { display: block; margin-top: 3px; font-size: 11px; font-weight: 400; color: var(--odm-muted); }
#login-dialog.bt-auth-modal .bt-auth-monogram { color: var(--odm-accent-text) !important; }
#login-dialog.bt-auth-modal .bt-auth-modal__title { margin: 0 0 10px; color: var(--odm-text) !important; font: 400 31px/1.2 Georgia, serif; letter-spacing: -.025em; font-weight: 400 !important; }
#login-dialog.bt-auth-modal .bt-auth-modal__close { display: grid; place-items: center; flex: 0 0 44px; width: 44px; height: 44px; padding: 0; border: 1px solid var(--odm-border) !important; border-radius: 50%; background: var(--odm-surface-soft) !important; color: var(--odm-text) !important; font: 400 25px/1 Arial,sans-serif; cursor: pointer; }
#login-dialog.bt-auth-modal .bt-auth-modal__close:hover { background: var(--odm-surface-hover) !important; }
#login-dialog.bt-auth-modal .modal-body { padding: 0 30px 28px !important; flex: 1 1 auto; min-height: 0; overflow-y: auto !important; overscroll-behavior: contain; background: var(--odm-surface) !important; }
#login-dialog.bt-auth-modal .bt-auth-modal__description { margin: 0 0 16px; font-size: 13px; font-weight: 400 !important; color: var(--odm-muted) !important; line-height: 1.7; }
#login-dialog.bt-auth-modal .bt-auth-tabs { margin-bottom: 20px; }
#login-dialog.bt-auth-modal .bt-auth-recovery-copy h3 { color: var(--odm-text); font-size: 17px; font-weight: 600; margin: 0 0 6px; }
#login-dialog.bt-auth-modal .modal-body .bt-auth-form .bt-auth-form-grid { grid-template-columns: 1fr !important; }
@keyframes bt-account-spin { to { transform: rotate(360deg); } }
@media (max-width: 1000px) {
    #bt-auth-page.bt-auth-page[data-auth-page] .bt-auth-shell { grid-template-columns: .85fr 1.15fr !important; }
    #bt-auth-page.bt-auth-page[data-auth-page] .bt-auth-hero-panel { padding: 30px; }
    #bt-auth-page.bt-auth-page[data-auth-page] .bt-auth-form-panel { padding: 32px !important; }
    #bt-auth-page.bt-auth-page[data-auth-page] .bt-auth-form-grid { grid-template-columns: 1fr !important; }
}
@media (max-width: 760px) {
    #bt-auth-page.bt-auth-page[data-auth-page] { padding: 22px 16px 34px !important; }
    #bt-auth-page.bt-auth-page[data-auth-page] .bt-auth-page__inner { max-width: 540px !important; }
    #bt-auth-page.bt-auth-page[data-auth-page] .bt-auth-shell { grid-template-columns: 1fr !important; min-height: 0; border-radius: 16px !important; }
    #bt-auth-page.bt-auth-page[data-auth-page] .bt-auth-hero-panel { display: none !important; }
    #bt-auth-page.bt-auth-page[data-auth-page] .bt-auth-form-panel { padding: 28px 24px !important; }
    #bt-auth-page.bt-auth-page[data-auth-page] .bt-auth-mobile-header { display: flex !important; justify-content: flex-start; margin: 0 0 26px; color: var(--odm-accent-text); }
    #bt-auth-page.bt-auth-page[data-auth-page] .bt-auth-mobile-header .bt-auth-wordmark { font-size: 14px; color: var(--odm-text) !important; }
    #bt-auth-page.bt-auth-page[data-auth-page] .bt-auth-mobile-header .bt-auth-monogram { color: var(--odm-accent-text) !important; }
}
@media (max-width: 400px) {
    #bt-auth-page.bt-auth-page[data-auth-page] { padding: 16px 10px 28px !important; }
    #bt-auth-page.bt-auth-page[data-auth-page] .bt-auth-form-panel { padding: 24px 18px !important; }
    #login-dialog.bt-auth-modal.show { padding: 10px !important; }
    #login-dialog.bt-auth-modal .modal-content { max-height: calc(100vh - 20px) !important; max-height: calc(100dvh - 20px) !important; border-radius: 16px !important; }
    #login-dialog.bt-auth-modal .bt-auth-modal__header { padding: 22px 20px 0; }
    #login-dialog.bt-auth-modal .modal-body { padding: 0 20px max(22px,env(safe-area-inset-bottom)) !important; }
    :is(#bt-auth-page.bt-auth-page[data-auth-page], #login-dialog.bt-auth-modal) .bt-auth-social__buttons { grid-template-columns: minmax(0, 1fr); }
}
@media (prefers-reduced-motion: reduce) {
    :is(#bt-auth-page.bt-auth-page[data-auth-page], #login-dialog.bt-auth-modal) *, :is(#bt-auth-page.bt-auth-page[data-auth-page], #login-dialog.bt-auth-modal) *::before, :is(#bt-auth-page.bt-auth-page[data-auth-page], #login-dialog.bt-auth-modal) *::after { animation: none !important; transition: none !important; scroll-behavior: auto !important; }
}

#login-dialog.bt-auth-modal .bt-auth-modal__header::before, #bt-auth-page.bt-auth-page .bt-auth-hero-panel::after { content: none !important; }
/* Legacy drawer transforms must not shift the centred dialog during opening. */
#login-dialog.bt-auth-modal .modal-dialog, #login-dialog.bt-auth-modal .modal-content { animation: none !important; transition: none !important; transform: none !important; }
:is(#bt-auth-page.bt-auth-page[data-auth-page], #login-dialog.bt-auth-modal) .bt-auth-captcha { min-width: 0; max-width: 100%; }
:is(#bt-auth-page.bt-auth-page[data-auth-page], #login-dialog.bt-auth-modal) .bt-account-verification { display: flex; flex-direction: column; align-items: center; gap: 10px; width: 100%; margin: 0; padding: 16px 10px; border: 1px solid var(--odm-border); border-radius: 8px; background: var(--odm-surface-soft); }
:is(#bt-auth-page.bt-auth-page[data-auth-page], #login-dialog.bt-auth-modal) .bt-account-verification__label { align-self: flex-start; margin: 0; color: var(--odm-text); font-size: 13px; font-weight: 600; }
:is(#bt-auth-page.bt-auth-page[data-auth-page], #login-dialog.bt-auth-modal) .bt-account-verification__status { margin: 0; color: var(--odm-muted); font-size: 12px; text-align: center; }
:is(#bt-auth-page.bt-auth-page[data-auth-page], #login-dialog.bt-auth-modal) .bt-account-verification [hidden] { display: none !important; }
/* Phones use an attached bottom sheet; larger screens retain the centred dialog. */
@media (max-width: 639.98px) {
    #login-dialog.bt-auth-modal.show { align-items: flex-end !important; padding: 0 !important; }
    #login-dialog.bt-auth-modal .modal-dialog { width: 100% !important; max-width: 100% !important; margin: 0 !important; }
    #login-dialog.bt-auth-modal .modal-content { max-height: calc(100vh - 16px) !important; max-height: calc(100dvh - 16px) !important; border-radius: 20px 20px 0 0 !important; border-bottom: 0 !important; }
    #login-dialog.bt-auth-modal .modal-body { padding-bottom: max(24px,env(safe-area-inset-bottom)) !important; }
}
