.bpts-auth-wrap{min-height:calc(100vh - 100px);display:grid;grid-template-columns:minmax(320px,1fr) minmax(420px,620px);background:#f5f6f8;color:#0a0a0a}.bpts-auth-brand{position:relative;isolation:isolate;min-height:720px;padding:48px;display:flex;flex-direction:column;justify-content:space-between;overflow:hidden;background:linear-gradient(145deg,rgba(3,12,20,.92),rgba(3,12,20,.4)),linear-gradient(135deg,#123046,#5e9db6 55%,#0c2434);color:#fff}.bpts-auth-brand:after{content:'';position:absolute;z-index:-1;inset:auto -20% -30% 10%;height:75%;background:radial-gradient(ellipse,rgba(67,83,204,.55),transparent 65%)}.bpts-auth-logo{display:flex;align-items:center;gap:12px;color:#fff!important;text-decoration:none!important;font-size:20px;font-weight:900}.bpts-auth-logo span{font-size:32px}.bpts-auth-brand>div{max-width:640px}.bpts-auth-brand>div>span,.bpts-auth-heading>span{font-size:11px;font-weight:900;letter-spacing:.18em;color:rgba(255,255,255,.72)}.bpts-auth-brand h1{margin:15px 0;color:#fff;font-size:clamp(46px,6vw,82px);line-height:.96;letter-spacing:-.05em}.bpts-auth-brand p{max-width:580px;margin:0;font-size:18px;line-height:1.6;color:rgba(255,255,255,.86)}.bpts-auth-card{align-self:center;width:min(100% - 40px,480px);margin:50px auto;padding:38px;border:1px solid #e2e4e9;border-radius:18px;background:#fff;box-shadow:0 24px 70px rgba(16,24,40,.1)}.bpts-auth-heading>span{color:#747474}.bpts-auth-heading h2{margin:8px 0 26px;font-size:36px;line-height:1.05;letter-spacing:-.035em}.bpts-social-login{display:grid;gap:10px}.bpts-social-button,.bpts-social-login a{width:100%!important;min-height:52px!important;display:flex!important;align-items:center!important;justify-content:center!important;gap:12px!important;border:1px solid #d8dbe1!important;border-radius:8px!important;background:#fff!important;color:#111!important;text-decoration:none!important;font:inherit!important;font-weight:800!important;box-shadow:none!important}.bpts-social-button.is-disabled{opacity:.58;cursor:not-allowed}.bpts-social-g{font-size:18px;font-weight:900;color:#4285f4}.bpts-social-apple{font-size:18px;color:#111}.bpts-social-setup{margin:2px 0 0;color:#888;font-size:11px;line-height:1.4;text-align:center}.bpts-auth-divider{display:flex;align-items:center;gap:12px;margin:22px 0;color:#999;font-size:11px;text-transform:uppercase;letter-spacing:.08em}.bpts-auth-divider:before,.bpts-auth-divider:after{content:'';height:1px;flex:1;background:#e7e7e7}.bpts-auth-form{display:grid;gap:17px}.bpts-auth-form label{display:grid;gap:8px;font-weight:800}.bpts-auth-form input:not([type=checkbox]){width:100%;height:52px;padding:0 14px;border:1px solid #d8dbe1;border-radius:8px;background:#fff;color:#111;font:inherit;outline:0;box-shadow:none}.bpts-auth-form input:focus{border-color:#4353CC;box-shadow:0 0 0 3px rgba(67,83,204,.12)}.bpts-auth-label-row{display:flex;justify-content:space-between;gap:15px}.bpts-auth-label-row a,.bpts-auth-switch a{color:#4353CC!important;font-weight:800}.bpts-auth-check{display:flex!important;grid-template-columns:18px 1fr;align-items:flex-start;font-size:13px;font-weight:500!important;color:#666}.bpts-auth-check input{width:17px;height:17px;margin:1px 0 0;accent-color:#4353CC}.bpts-auth-switch{margin:24px 0 0;text-align:center;color:#666;font-size:14px}@media(max-width:900px){.bpts-auth-wrap{display:block;min-height:100vh;padding:20px 0;background:linear-gradient(145deg,#07131e,#376b82)}.bpts-auth-brand{display:none}.bpts-auth-card{width:min(100% - 24px,480px);margin:20px auto;padding:28px 22px}.bpts-auth-heading h2{font-size:32px}}


/* =========================================================
   v1.1.2 - Nextend social buttons fill the entire row
   Remove the empty wrapper padding/border around provider buttons.
   ========================================================= */
.bpts-social-login .nsl-container,
.bpts-social-login .nsl-container-buttons {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

.bpts-social-login .nsl-container-buttons {
    display: grid !important;
    gap: 10px !important;
}

.bpts-social-login .nsl-container-buttons > a,
.bpts-social-login a[data-plugin="nsl"] {
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 8px !important;
    background: transparent !important;
    box-shadow: none !important;
    overflow: hidden !important;
}

.bpts-social-login .nsl-button,
.bpts-social-login .nsl-button-default,
.bpts-social-login a[data-plugin="nsl"] > div {
    box-sizing: border-box !important;
    width: 100% !important;
    max-width: none !important;
    min-height: 52px !important;
    margin: 0 !important;
    border-radius: 8px !important;
}

.bpts-social-login .nsl-button-label-container {
    flex: 1 1 auto !important;
}


/* =========================================================
   v1.1.3 - Restore visible email auth submit buttons
   The shared marketplace button previously relied on --mp-blue,
   which is scoped to .bpts-mp-wrap while Account Access uses
   .bpts-auth-wrap. Force a reliable branded button here and guard
   against theme button styles hiding it.
   ========================================================= */
.bpts-auth-form .bpts-mp-button,
.bpts-auth-form button.bpts-mp-button,
.bpts-auth-form button[type="submit"] {
    box-sizing: border-box !important;
    display: inline-flex !important;
    width: 100% !important;
    min-height: 58px !important;
    margin: 0 !important;
    padding: 0 20px !important;
    align-items: center !important;
    justify-content: center !important;
    border: 0 !important;
    border-radius: 8px !important;
    background: #4353CC !important;
    background-color: #4353CC !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    font: inherit !important;
    font-size: 16px !important;
    font-weight: 800 !important;
    line-height: 1.2 !important;
    text-align: center !important;
    text-decoration: none !important;
    opacity: 1 !important;
    visibility: visible !important;
    cursor: pointer !important;
    box-shadow: none !important;
}

.bpts-auth-form .bpts-mp-button:hover,
.bpts-auth-form button[type="submit"]:hover {
    background: #4353CC !important;
    background-color: #4353CC !important;
    color: #ffffff !important;
    opacity: .92 !important;
}

.bpts-auth-form .bpts-mp-button:focus-visible,
.bpts-auth-form button[type="submit"]:focus-visible {
    outline: 3px solid rgba(67,83,204,.25) !important;
    outline-offset: 2px !important;
}


/* =========================================================
   v1.1.4 - Simplified Account Access layout
   Remove the left branding panel and use a clean white page.
   ========================================================= */
.bpts-auth-wrap {
    min-height: calc(100vh - 100px) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 40px 20px !important;
    background: #ffffff !important;
    grid-template-columns: none !important;
}

.bpts-auth-brand {
    display: none !important;
}

.bpts-auth-card {
    align-self: center !important;
    width: min(100%, 520px) !important;
    margin: 0 auto !important;
    padding: 38px !important;
    border: 1px solid #e2e4e9 !important;
    border-radius: 18px !important;
    background: #ffffff !important;
    box-shadow: none !important;
}

@media(max-width:900px) {
    .bpts-auth-wrap {
        min-height: auto !important;
        padding: 20px 12px !important;
        background: #ffffff !important;
    }

    .bpts-auth-card {
        width: min(100%, 520px) !important;
        margin: 0 auto !important;
        padding: 28px 22px !important;
    }
}
