body.connect-auth{font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Tahoma,Arial,sans-serif;color:#172b49;text-align:start;background-color:#f8fafc;line-height:1.65}
.connect-auth .site-header{padding-block:32px 4px}
.connect-auth .brand{display:inline-flex;width:auto;justify-content:center;align-items:center;gap:10px;color:#172b49;text-decoration:none}
.connect-auth .auth-main{display:flex;align-items:center;justify-content:center;flex:1;padding-block:28px 36px}
.connect-auth .auth-mount{width:100%;max-width:480px;min-width:0}
.connect-auth .auth-register .auth-mount{max-width:700px}
.connect-auth .auth-layout-wrap{display:block;min-height:0;width:100%;margin:0!important;background:none}
.connect-auth .auth-layout-wrap .auth-content{width:100%;min-width:0;margin:0!important;padding:32px;background:#fff;border:1px solid #e3eaf2;border-radius:24px;box-shadow:0 16px 60px #213e6510}
.connect-auth .auth-layout-wrap .auth-content>.row{margin:0}
.connect-auth .auth-layout-wrap .auth-content>.row>.col-md-12{padding:0}
.connect-auth .auth-layout-wrap .auth-content>.row>.col-md-12>.p-4{padding:0!important}
.connect-auth .avatar{display:flex;align-items:center;justify-content:center;width:64px;height:64px;margin:0 auto 18px!important;background:#eef5fd;border:1px solid #e3edf9;border-radius:20px}
.connect-auth .avatar i{font-size:26px!important;color:#387ac0!important}
.connect-auth h2{font-family:inherit;font-size:26px;line-height:1.5;font-weight:700;color:#172b49;margin:0 0 28px!important;text-decoration:none!important}
.connect-auth .form-group{margin-bottom:20px}
.connect-auth .form-group .form-group{margin-bottom:0}
.connect-auth label,.connect-auth legend{font-size:13px;font-weight:600;color:#354965;text-align:start}
.connect-auth .form-control,.connect-auth .custom-select{min-height:48px;height:auto;border:1px solid #dce5ef;border-radius:10px;background:#fff;color:#172b49;padding:11px 14px;font-size:14px;line-height:1.5;box-shadow:none;font-family:inherit}
.connect-auth .form-control:focus,.connect-auth .custom-select:focus{border-color:#6da0d9;box-shadow:0 0 0 3px #387ac017}
.connect-auth .input-group{border-radius:10px;overflow:hidden;border:1px solid #dce5ef;flex-wrap:nowrap}
.connect-auth .input-group .form-control{border:0;border-radius:0;min-width:0}
.connect-auth .input-group:focus-within{border-color:#6da0d9;box-shadow:0 0 0 3px #387ac017}
.connect-auth .input-group .form-control:focus{box-shadow:none}
.connect-auth .input-group-append{margin:0}
.connect-auth .input-group-text{border:0;border-radius:0;background:#f8fafc;color:#69788e;padding:0 15px}
.connect-auth .btn{min-height:46px;border-radius:10px;font-family:inherit;font-size:14px;font-weight:600;line-height:1.6;padding:11px 20px;box-shadow:none;white-space:normal}
.connect-auth .btn-primary{background:#387ac0;border-color:#387ac0;color:white}
.connect-auth .btn-primary:hover{background:#2867aa;border-color:#2867aa}
.connect-auth .btn-secondary{background:#f1f5f9;border-color:#e3eaf2;color:#53657d}
.connect-auth a:not(.brand){color:#387ac0;font-weight:600;text-decoration:none}
.connect-auth a:not(.brand):hover{text-decoration:underline}
.connect-auth .auth-layout-wrap .auth-content>.row .pt-3{font-size:13px;color:#69788e;text-align:center}
.connect-auth .auth-layout-wrap .auth-content p{margin-bottom:0}
.connect-auth .alert{border-radius:10px;font-size:13px}
.connect-auth .auth-register .pt-3{text-align:center;font-size:13px;color:#69788e;margin-top:18px;padding-top:22px!important;border-top:1px solid #edf1f6}
.connect-auth .auth-register form>.row,.connect-auth .auth-register form>div>.row{margin-inline:-10px!important}
.connect-auth .auth-register form .col-md-6{padding-inline:10px}
.connect-auth .auth-register form .btn{margin-inline-end:8px;margin-top:8px}
.connect-auth .vs__dropdown-toggle{min-height:48px;border:1px solid #dce5ef;border-radius:10px;padding:6px 9px}
.connect-auth .vs__search{font-family:inherit;font-size:14px}
.connect-auth .vs__dropdown-menu{border-color:#dce5ef;border-radius:10px;text-align:start}
.connect-auth .iti{width:100%}
.connect-auth input[type=email],.connect-auth input[type=tel]{direction:ltr;text-align:start}
.connect-auth .invalid-feedback,.connect-auth .text-danger{font-size:12px}
.connect-auth :is(a,button,select):focus-visible{outline:3px solid #387ac0;outline-offset:3px}
.connect-auth .site-footer{font-size:11px;color:#69788e;padding-block:4px 24px}
@media(prefers-reduced-motion:reduce){.connect-auth .btn{transition:none}}

.connect-auth .btn.btn-rounded{border-radius:10px}

/* The authentication frame shares one surface for the story and form. */
body.connect-auth{background:#f2f5fa;background-image:radial-gradient(ellipse at 10% 0%,#e5edf9,transparent 50%)}
.connect-auth .site-header{width:min(1120px,calc(100% - 64px));justify-content:flex-start;padding-block:26px 0}
.connect-auth .brand{font-size:29px;letter-spacing:-1.2px}
.connect-auth .auth-main{width:min(1120px,calc(100% - 64px));padding-block:28px 40px}
.connect-auth .auth-main .auth-mount{max-width:none;width:100%}
.connect-auth .auth-frame{display:grid;grid-template-columns:.92fr 1.08fr;width:100%;min-height:620px;border:1px solid #e1e7f0;border-radius:28px;box-shadow:0 22px 75px #17365f0c;background:#fff;overflow:hidden}
.connect-auth .auth-form-zone{min-width:0;padding:28px 48px 40px;display:flex;flex-direction:column;justify-content:center}
.connect-auth .auth-toolbar{display:flex;justify-content:flex-end;margin-bottom:36px}
.connect-auth .auth-layout-wrap .auth-content{padding:0;background:none;border:0;border-radius:0;box-shadow:none}
.connect-auth .auth-title-block{text-align:start;margin-bottom:30px}
.connect-auth .auth-eyebrow{display:block;font-size:10px;letter-spacing:1.7px;font-weight:700;color:#5283c5;margin-bottom:12px}
.connect-auth .auth-title-block h2{font-size:32px;line-height:1.25;letter-spacing:-.8px;margin:0 0 10px!important;font-weight:650}
.connect-auth .auth-layout-wrap .auth-content .auth-title-block p{font-size:13px;color:#78869b;line-height:1.8;margin:0}
.connect-auth label,.connect-auth legend{font-size:12px;font-weight:600;color:#475b75}
.connect-auth .form-control{min-height:50px;background:#fbfcfe}
.connect-auth .input-group{background:#fbfcfe;border-radius:10px}
.connect-auth .input-group .form-control{background:transparent}
.connect-auth .password-toggle{height:100%;min-width:48px;border:0;background:transparent;color:#7d8ca1;cursor:pointer}
.connect-auth .password-toggle:hover{color:#5283c5;background:#edf3fb}
.connect-auth .btn.btn-primary{background:#5283c5;border-color:#5283c5;box-shadow:0 5px 12px #5283c51c}
.connect-auth .btn.btn-primary:hover{background:#416eaa;border-color:#416eaa}
.connect-auth .btn.btn-rounded{border-radius:10px!important;min-height:50px}
.connect-auth .auth-layout-wrap .auth-content>.row .pt-3:last-child{border-top:1px solid #edf0f5;margin-top:22px;padding-top:22px!important}
.connect-auth .auth-register .auth-content>.mt-3>.col-12{padding:0;margin-bottom:14px!important}
.connect-auth .auth-register .auth-content>.mt-3>.col-12>.btn{display:flex;align-items:center;gap:14px;min-height:94px;padding:18px;border:1px solid transparent;color:#fff;text-align:start;border-radius:13px;box-shadow:none;transition:transform .18s,filter .18s}
.connect-auth .auth-register .auth-content>.mt-3>.col-12>.btn-primary{background:#5283c5;border-color:#5283c5}
.connect-auth .auth-register .auth-content>.mt-3>.col-12>.btn-success{background:#56b35f;border-color:#56b35f;color:#102e17}
.connect-auth .auth-register .auth-content>.mt-3>.col-12>.btn-warning{background:#f1a445;border-color:#f1a445;color:#392611}
.connect-auth .auth-register .auth-content>.mt-3>.col-12>.btn:hover{transform:translateY(-2px);filter:brightness(.96)}
.connect-auth .auth-register .auth-content>.mt-3>.col-12>.btn i{display:grid;place-items:center;width:42px;height:42px;margin:0!important;border-radius:11px;background:#ffffff29;font-size:19px;flex-shrink:0}
.connect-auth .role-copy{display:flex;flex-direction:column;gap:4px}
.connect-auth .role-copy strong{font-size:16px;font-weight:650}.connect-auth .role-copy small{font-size:11px;font-weight:400;line-height:1.6}
.connect-auth .auth-register .auth-content>.mt-3>.col-12>.btn::after{content:'→';margin-inline-start:auto;font-size:20px;font-weight:400}
[dir=rtl] .connect-auth .auth-register .auth-content>.mt-3>.col-12>.btn::after{content:'←'}
[dir=rtl] .connect-auth .auth-eyebrow{letter-spacing:0}
.connect-auth .auth-register .auth-frame:has(form){grid-template-columns:.75fr 1.25fr}
.connect-auth .auth-register .auth-frame:has(form) .auth-form-zone{padding-inline:30px}
.connect-auth .site-footer{padding-block:0 22px}
@media(max-width:360px){.connect-auth .auth-form-zone{padding:20px}.connect-auth .auth-title-block h2{font-size:26px}.connect-auth .auth-register .auth-content>.mt-3>.col-12>.btn{padding:14px 10px;gap:9px}.connect-auth .auth-register .auth-content>.mt-3>.col-12>.btn i{width:34px;height:38px}.connect-auth .role-copy strong{font-size:15px}}
@media(prefers-reduced-motion:reduce){.connect-auth .auth-register .auth-content>.mt-3>.col-12>.btn{transition:none}.connect-auth .auth-register .auth-content>.mt-3>.col-12>.btn:hover{transform:none}}

/* A centered form surface, with room for two-column registration fields. */
.connect-auth .auth-main{width:min(560px,calc(100% - 40px));padding-block:24px 36px}
.connect-auth .auth-main.auth-register{width:min(620px,calc(100% - 40px))}
.connect-auth .auth-main.auth-register:has(form){width:min(800px,calc(100% - 40px))}
.connect-auth .auth-frame,.connect-auth .auth-register .auth-frame:has(form){display:block;min-height:0;border-radius:24px}
.connect-auth .auth-form-zone{padding:28px 36px 36px}
.connect-auth .auth-register .auth-frame:has(form) .auth-form-zone{padding:28px 36px 36px}
.connect-auth .auth-toolbar{margin-bottom:30px}
@media(max-width:600px){.connect-auth .auth-main,.connect-auth .auth-main.auth-register,.connect-auth .auth-main.auth-register:has(form){width:calc(100% - 32px);padding-block:20px 28px;align-items:flex-start}.connect-auth .auth-form-zone,.connect-auth .auth-register .auth-frame:has(form) .auth-form-zone{padding:24px 20px}.connect-auth .auth-title-block h2{font-size:27px}.connect-auth .auth-layout-wrap .auth-content{padding:0;min-width:0}.connect-auth .auth-register .auth-content>.mt-3>.col-12>.btn{padding:16px 12px;gap:10px}}
/* Keep short account forms and their footer together on tall screens. */
body.connect-auth .auth-main{flex:0 0 auto;padding-bottom:8px}
body.connect-auth .site-footer{border-top:0;padding:4px 0 20px}
@media(max-width:600px){body.connect-auth .auth-main{padding-bottom:8px}body.connect-auth .site-footer{padding:4px 0 18px}}
/* Balance short auth screens between the fixed header and bottom footer. */
body.connect-auth .auth-main{flex:1 0 auto;align-items:center;padding-block:24px 36px}
body.connect-auth .auth-main.auth-register:not(:has(form)){align-items:center}
body.connect-auth .auth-main.auth-register:has(form){flex:0 0 auto;align-items:flex-start;padding-block:20px 32px}
body.connect-auth .site-footer{flex-shrink:0;margin-top:auto;border-top:1px solid #e3eaf2;padding:14px 0 20px}
@media(max-width:600px){body.connect-auth .auth-main{padding-block:20px 28px}.connect-auth .auth-main.auth-register:has(form){padding-block:16px 28px}body.connect-auth .site-footer{padding:12px 0 18px}}
/* Give the form a deliberate offset below the centered brand. */
body.connect-auth .auth-main{justify-content:flex-start;padding-top:clamp(52px,8vh,76px)}
body.connect-auth .auth-main.auth-register:has(form){padding-top:24px}
@media(max-width:600px){body.connect-auth .auth-main{padding-top:44px}body.connect-auth .auth-main.auth-register:has(form){padding-top:18px}}
