/* Authentication shell: deliberately separate from the general client-area stylesheet. */
body.indax-auth { background: #fff; min-width: 0; overflow-x: hidden; }
.auth-shell { min-height: 100vh; }
.auth-aside { background: var(--indax-navy, #020617); bottom: 0; color: #f8fafc; left: 0; position: fixed; top: 0; width: max(360px, 34vw); }
.auth-aside__inner { margin-left: auto; max-width: 29rem; padding: clamp(3rem, 8vh, 7rem) clamp(2rem, 5vw, 5.5rem); }
.auth-aside__brand { display: inline-block; margin: 0 0 2.25rem; }.auth-aside__brand img { display: block; max-width: 160px; width: 100%; }
.auth-kicker { color: var(--indax-primary); font-size: .76rem; font-weight: 700; letter-spacing: .12em; margin: 0 0 .75rem; text-transform: uppercase; }
.auth-aside h2 { color: #fff; font-size: clamp(1.7rem, 2.4vw, 2.4rem); margin-bottom: 2rem; }
.auth-news-item { border-top: 1px solid rgba(255,255,255,.18); padding: 1.2rem 0; }
.auth-news-item time { color: #c5d1de; display: block; font-size: .78rem; margin-bottom: .4rem; }
.auth-news-item h3 { font-size: 1rem; margin: 0 0 .45rem; }.auth-news-item h3 a { color: #fff; }.auth-news-item p, .auth-aside__intro { color: #d9e1e9; font-size: .88rem; line-height: 1.6; margin: 0; }
.auth-benefits { list-style: none; margin: 1.8rem 0 0; padding: 0; }.auth-benefits li { align-items: center; border-top: 1px solid rgba(255,255,255,.18); color: #f1f5f9; display: flex; font-size: .92rem; gap: .8rem; padding: 1rem 0; }.auth-benefits i { color: #f9a4ae; width: 1rem; }
.auth-main { align-items: center; display: flex; min-width: 0; }.indax-auth #main-body.auth-main { margin-left: max(360px, 34vw); min-height: 100vh; padding: 3rem 1.5rem; }.auth-content { margin: auto; max-width: 31rem; width: 100%; }.auth-content--wide { max-width: 48rem; }
.auth-card { background: #fff; border: 1px solid var(--indax-border); border-radius: var(--indax-radius); box-shadow: 0 8px 28px rgba(31,41,52,.10); overflow: hidden; }.auth-card__body { padding: clamp(1.5rem, 4vw, 2.6rem); }.auth-card h1 { font-size: 1.65rem; margin-bottom: .45rem; }.auth-card__lead { color: var(--indax-muted); line-height: 1.55; margin-bottom: 1.75rem; }.auth-card label { color: var(--indax-ink); font-size: .9rem; font-weight: 600; }.auth-card .form-control { min-height: 46px; }.auth-forgot { font-size: .84rem; font-weight: 600; margin-bottom: .5rem; }.auth-remember { align-items: center; display: flex; font-weight: 400 !important; gap: .5rem; margin: 1.25rem 0; }.auth-remember input { accent-color: var(--indax-primary); }.auth-card .btn-block { min-height: 46px; }.auth-card__footer { background: #fafbfc; border-top: 1px solid var(--indax-border); color: var(--indax-muted); display: flex; flex-wrap: wrap; font-size: .88rem; gap: .35rem; padding: 1rem clamp(1.5rem, 4vw, 2.6rem); }.auth-card__footer a { font-weight: 700; }.auth-language { margin-top: 2rem; }.auth-language .btn-link { color: var(--indax-muted); font-size: .85rem; padding: 0; }.auth-language .iti-flag { display: inline-block; margin-right: .35rem; vertical-align: middle; }
.indax-auth a:focus, .indax-auth button:focus, .indax-auth input:focus { outline: 3px solid rgba(209,45,64,.32); outline-offset: 2px; }
.auth-content:has(.auth-content--wide) { max-width: 48rem; }
.auth-register h1 { font-size: 1.75rem; margin-bottom: .45rem; }
.auth-register__lead { color: var(--indax-muted); margin-bottom: 2rem; }
.auth-register #registration.auth-register__form { background: var(--indax-surface); border: 1px solid var(--indax-border); border-radius: var(--indax-radius); box-shadow: 0 8px 28px rgba(31,41,52,.10); padding: 2.5rem; }
.auth-register__form .alert { margin-bottom: 1.75rem; }
.auth-form-section + .auth-form-section, .auth-form-section-boundary, .auth-form-section--after-security { border-top: 1px solid var(--indax-border); margin-top: 1.75rem; padding-top: 1.75rem; }
.auth-form-section h2 { font-size: 1.08rem; margin: 0 0 1.2rem; }.auth-register__form label { color: var(--indax-ink); font-size: .9rem; font-weight: 600; }.auth-register #registration .form-control, .auth-register #registration .iti, .auth-register #registration .iti input { border-color: var(--indax-border); border-radius: var(--indax-radius-sm); font-size: 1rem; min-height: 46px; width: 100%; }.auth-register #registration .form-control:focus, .auth-register #registration .iti input:focus { border-color: var(--indax-primary); box-shadow: 0 0 0 .2rem rgba(209,45,64,.15); }.auth-form-section .field-help-text { color: var(--indax-muted); display: block; font-size: .8rem; margin-top: .35rem; }.auth-password-action, .auth-password-meter { align-items: flex-start; display: flex; }.auth-password-action .form-group, .auth-password-meter .password-strength-meter { width: 100%; }.auth-password-action .generate-password { min-height: 46px; width: 100%; }.auth-form-section .password-strength-meter { padding-top: 0; }.auth-register__options { margin: 1.75rem 0; }.auth-register__tos { align-items: flex-start; font-size: .9rem; line-height: 1.5; }.auth-register__tos input { flex: 0 0 auto; margin-top: .2rem; }.auth-register__tos .form-check-input { margin-left: 0; position: static; }.auth-register__login { color: var(--indax-muted); font-size: .9rem; margin: 1.25rem 0 0; text-align: center; }.auth-register__login a { font-weight: 700; }
@media (max-width: 991.98px) { .auth-shell { display: block; }.auth-aside { display: none; }.indax-auth #main-body.auth-main { margin-left: 0; min-height: 100vh; padding: 2rem 1rem; } }
@media (max-width: 575.98px) { .indax-auth #main-body.auth-main { padding: 2.25rem 1rem 2rem; }.auth-content { margin-left: 0; margin-right: 0; }.auth-register #registration.auth-register__form { padding: 1.5rem; }.auth-register h1 { font-size: 1.55rem; } }
@media (max-width: 359.98px) { .indax-auth #main-body.auth-main { padding-left: .75rem; padding-right: .75rem; }.auth-card__body { padding: 1.25rem; } }
