/* BB Account shared component layer.
   Loaded after every route stylesheet. All routes are peers; shared controls are authoritative here. */
/* BB Account shared design tokens. Every account route is a peer and inherits these values. */
body.bb-account-unified-route,
#bb-account-root,
.bb-account-module {
    --white:#ffffff;
    --black:#000000;
    --spinner:#008888;
    --text-primary:#444448;
    --text-secondary:#6e6e73;
    --input-bg:#f5f5f7;
    --input-text:#1d1d1f;
    --error-red:#F45;
    --caps-error:#f80;
    --error-bg:#F451;
    --button-bg:#008888;
    --button-bg-hover:#009595;
    --button-text:#ffffff;
    --button-disabled-bg:#e0e0e0;
    --button-disabled-text:#a0a0a0;
    --link:#008888;
    --input-radius:12px;
    --button-radius:12px;
    --input-border:#c8c8ca;
    --input-focus:#008888;
    --input-focus-shadow:#00888833;
    --outline-offset:1px;
    --outline-offset-btn:3px;
    --focus-outline:2px;
    --bb-account-button-bg:#008888;
    --bb-account-button-bg-hover:#009595;
    --bb-account-button-text:#ffffff;
    --bb-account-input-focus:#008888;
    color:var(--text-primary);
    -webkit-tap-highlight-color:transparent;
}
.theme-dark body.bb-account-unified-route,
body.bb-account-unified-route.theme-dark,
.theme-dark #bb-account-root,
.theme-dark .bb-account-module {
    --white:#000000;
    --input-bg:#1d1d1f;
    --input-border:#3a3a3c;
    --input-focus:#009595;
    --input-focus-shadow:#00888840;
    --input-text:#f5f5f7;
    --error-red:#F56;
    --button-bg:#009595;
    --button-bg-hover:#009595;
    --button-text:#ffffff;
    --link:#009595;
    --text-primary:#f2f2f5;
    --text-secondary:#a1a1a6;
    --error-bg:#3b0000;
    --button-disabled-bg:#2c2c2e;
    --button-disabled-text:#666666;
    --bb-account-button-bg:#009595;
    --bb-account-button-bg-hover:#009595;
    --bb-account-button-text:#ffffff;
    --bb-account-input-focus:#009595;
}

/* Shared component contract: buttons, timestamps, common states and sign-in form alignment. */
.bb-account-primary-button,
.bb-account-module .bb-account-primary-button,
#bb-account-root .bb-account-primary-button {
    box-sizing:border-box!important;
    min-height:44px!important;
    border:0!important;
    border-radius:12px!important;
}

/* Continue: when inactive, transparency belongs to the background only. */
.bb-account-continue-button.disabled:not(.loading),
.bb-account-continue-button.btn-inactive:not(.loading),
.bb-account-continue-button:disabled:not(.loading),
.bb-account-module .bb-account-continue-button.disabled:not(.loading),
.bb-account-module .bb-account-continue-button.btn-inactive:not(.loading),
.bb-account-module .bb-account-continue-button:disabled:not(.loading),
#bb-account-root .bb-account-continue-button.disabled:not(.loading),
#bb-account-root .bb-account-continue-button.btn-inactive:not(.loading),
#bb-account-root .bb-account-continue-button:disabled:not(.loading) {
    background:rgba(0,136,136,.20)!important;
    color:var(--button-text,#fff)!important;
    opacity:1!important;
    cursor:default!important;
    pointer-events:none!important;
}
.theme-dark .bb-account-continue-button.disabled:not(.loading),
.theme-dark .bb-account-continue-button.btn-inactive:not(.loading),
.theme-dark .bb-account-continue-button:disabled:not(.loading),
.theme-dark .bb-account-module .bb-account-continue-button.disabled:not(.loading),
.theme-dark .bb-account-module .bb-account-continue-button.btn-inactive:not(.loading),
.theme-dark .bb-account-module .bb-account-continue-button:disabled:not(.loading),
.theme-dark #bb-account-root .bb-account-continue-button.disabled:not(.loading),
.theme-dark #bb-account-root .bb-account-continue-button.btn-inactive:not(.loading),
.theme-dark #bb-account-root .bb-account-continue-button:disabled:not(.loading) {
    background:rgba(0,149,149,.25)!important;
}
.bb-account-continue-button:not(.loading) .bb-account-button-text,
.bb-account-continue-button:not(.loading) .signin-btn-text,
.bb-account-continue-button:not(.loading) .btn-text {
    opacity:1!important;
    color:var(--button-text,#fff)!important;
}

/* The generic disabled contract uses the same background-only treatment. */
.bb-account-primary-button.disabled:not(.loading),
.bb-account-primary-button.btn-inactive:not(.loading),
.bb-account-primary-button:disabled:not(.loading) {
    background:rgba(0,136,136,.20)!important;
    color:var(--button-text,#fff)!important;
    opacity:1!important;
}
.theme-dark .bb-account-primary-button.disabled:not(.loading),
.theme-dark .bb-account-primary-button.btn-inactive:not(.loading),
.theme-dark .bb-account-primary-button:disabled:not(.loading) {
    background:rgba(0,149,149,.25)!important;
}

/* One timestamp style everywhere. Natural width/height: identical to the original shared lockout timer. */
.bb-account-timestamp,
.bb-account-module .bb-account-timestamp,
#bb-account-root .bb-account-timestamp {
    display:block!important;
    position:static!important;
    left:auto!important;
    transform:none!important;
    width:auto!important;
    min-width:0!important;
    max-width:none!important;
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    margin:20px 0!important;
    padding:0!important;
    border:0!important;
    border-radius:0!important;
    background:transparent!important;
    color:var(--button-bg,var(--theme,#008888))!important;
    font-family:"BB Display",sans-serif!important;
    font-weight:600!important;
    font-size:40px!important;
    line-height:1.1!important;
    letter-spacing:-.005em!important;
    text-align:center!important;
    white-space:nowrap!important;
    font-feature-settings:"tnum"!important;
    font-variant-numeric:tabular-nums!important;
}

@media (max-width:767px) {
    .bb-account-timestamp,
    .bb-account-module .bb-account-timestamp,
    #bb-account-root .bb-account-timestamp {
        width:auto!important;
        max-width:none!important;
        height:auto!important;
        min-height:0!important;
        max-height:none!important;
        margin:16px 0!important;
        font-size:36px!important;
        line-height:1.1!important;
        letter-spacing:-.005em!important;
    }
}


/* v2.5.9 shared sign-in contract: block form with the action anchored at the bottom. */
#bb-account-root #signin-form-container > form#loginform.bb-account-form {
    position:relative!important;
    display:block!important;
    height:300px!important;
    min-height:300px!important;
}
#bb-account-root #signin-form-container > form#loginform .bb-account-continue-button {
    position:absolute!important;
    left:0!important;
    right:0!important;
    bottom:0!important;
    width:100%!important;
    margin:0!important;
}
#bb-account-root .bb-account-subtitle.bb-account-after-form-link {
    padding:40px 0!important;
}
#bb-account-root input.field-error:focus,
#bb-account-root input.field-error:focus-visible,
#bb-account-root textarea.field-error:focus,
#bb-account-root textarea.field-error:focus-visible,
#bb-account-root select.field-error:focus,
#bb-account-root select.field-error:focus-visible,
.bb-account-module input.field-error:focus,
.bb-account-module input.field-error:focus-visible,
.bb-account-module textarea.field-error:focus,
.bb-account-module textarea.field-error:focus-visible,
.bb-account-module select.field-error:focus,
.bb-account-module select.field-error:focus-visible {
    border-color:var(--input-focus,#008888)!important;
    outline-color:var(--input-focus,#008888)!important;
    box-shadow:0 0 0 4px rgba(255,68,85,.20)!important;
    background:var(--white,#fff)!important;
}
