/* Shared presentation for account access. Form behavior remains in each page. */
body.sms-auth { background:#f6f6f9; color:#526975; }
body.sms-auth .auth-hero.site-blocks-cover { min-height:0; padding:42px 0!important; background:radial-gradient(ellipse at 95% 0,#e9eaf3,transparent 65%),#f4f3eb!important; }
.sms-auth .auth-hero::before { display:none; }
.sms-auth .auth-hero .container { max-width:1240px; }
body.sms-auth .auth-hero .row { height:auto; min-height:0; text-align:left!important; }
body.sms-auth .auth-hero h1 { color:#163449!important; font-size:clamp(1.9rem,3.5vw,2.7rem); font-weight:700; line-height:1.2; }
body.sms-auth .auth-hero p { max-width:760px; margin:12px 0 0; color:#526975; font-size:16px; line-height:1.65; }
.sms-auth .auth-main { padding:40px 20px 64px!important; }
.sms-auth .auth-main>.container { max-width:540px; padding:32px; border:1px solid #e5e6ec; border-radius:20px; background:#fff; box-shadow:0 12px 36px #17344908; }
.sms-auth.auth-register .auth-main>.container { max-width:880px; }
.sms-auth .auth-main .col-md-5 { flex:0 0 100%; max-width:100%; }
.sms-auth .auth-main p { font-size:15px; line-height:1.65; }
.sms-auth .auth-main label { display:block; margin-bottom:8px; font-size:15px; font-weight:650; color:#163449; }
.sms-auth .auth-main .form-group { margin-bottom:24px; min-width:0; }
.sms-auth .auth-main .form-control { width:100%; min-width:0; height:48px; padding:10px 14px; border:1px solid #c8c9d6!important; border-radius:9px; background:#fff; color:#293278; font:400 16px/1.5 var(--sms-font-family); }
.sms-auth .auth-main textarea.form-control { height:auto; min-height:106px; }
.sms-auth .auth-main .form-control:focus { border-color:#4b59bf!important; box-shadow:0 0 0 3px #4b59bf22; }
.sms-auth .auth-main .input-group { flex-wrap:nowrap; }
.sms-auth .auth-main .input-group>.form-control { width:1%; border-radius:9px 0 0 9px; }
.sms-auth .auth-main .input-group>button { flex:0 0 48px; min-height:48px; background:#f1f2f7!important; color:#4351bd!important; border:1px solid #c8c9d6!important; border-left:0!important; border-radius:0 9px 9px 0!important; }
.sms-auth .auth-main .btn-primary { min-height:48px; background:#27307b; border:1px solid #27307b; border-radius:9px; font-size:16px; font-weight:700; }
.sms-auth .auth-main .btn-primary:hover { background:#4451ba; border-color:#4451ba; }
.sms-auth .auth-main a { color:#4351bd; font-weight:650; text-decoration:underline; text-underline-offset:3px; }
.sms-auth .auth-main :focus-visible { outline:3px solid #b88938; outline-offset:3px; }
.sms-auth .auth-main small { display:block; margin-top:8px; font-size:13px; line-height:1.5; }
.sms-auth .auth-form-divider { height:1px; background:#e8e8ed; margin:24px 0; }
.sms-auth .auth-main .auth-fields { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 24px; margin:0; }
.sms-auth .auth-fields>.form-group { padding:0; width:100%; }
.sms-auth .auth-fields>.auth-wide { grid-column:1/-1; }
.sms-auth .auth-section-title { grid-column:1/-1; display:flex; align-items:center; gap:12px; padding:20px 0 16px; margin:8px 0 8px; border-top:1px solid #e7e8ed; font-size:18px; line-height:1.4; font-weight:700; color:#163449; }
.sms-auth .auth-section-title:first-child { border:0; padding-top:0; }
.sms-auth .auth-section-title span { display:grid; place-items:center; width:32px; height:32px; border-radius:50%; background:#f1f2f7; color:#4351bd; font-size:12px; }
.sms-auth .auth-main input[type=radio],.sms-auth .auth-main input[type=checkbox] { width:20px; height:20px; accent-color:#4b59bf; }
.sms-auth .auth-main td { padding:8px 5px; vertical-align:middle; }
.sms-auth .auth-main .form-group>.form-group { padding:0; margin:0; }
@media(max-width:575px) {
 .sms-auth .auth-main { padding:24px 16px 40px!important; }
 .sms-auth .auth-main>.container { padding:24px 20px; border-radius:16px; }
 body.sms-auth .auth-hero.site-blocks-cover { padding:30px 4px!important; }
 .sms-auth .auth-main .auth-fields { grid-template-columns:minmax(0,1fr); }
 .sms-auth .auth-main input[type=submit] { width:100%; }
}

.sms-auth .auth-main .auth-success-title { font-size:24px; font-weight:700; color:#163449; margin-bottom:16px; }
