.app-auth-body {
            margin: 0;
            min-height: 100vh;
            position: relative;
            overflow-x: hidden;
            background: #030712;
        }
        #page.app-auth-page,
        .app-auth-page#page {
            position: relative;
            z-index: 1;
        }
        body.app-auth-body .card.app-auth-card {
            --bs-card-bg: transparent;
            background-color: transparent !important;
        }
        .app-auth-card {
            background: transparent !important;
            box-shadow: none !important;
            border: none !important;
            position: relative;
        }
        .app-auth-brand {
            margin-bottom: 0.35rem;
        }
        .app-auth-signin-page .app-auth-brand {
            margin-bottom: 0.85rem;
        }
        .app-auth-lang-corner {
            position: absolute;
            top: calc(1rem + env(safe-area-inset-top, 0px));
            inset-inline-end: 1rem;
            z-index: 5;
        }
        html[dir="ltr"] .app-auth-lang-corner {
            right: 1rem;
            left: auto;
        }
        html[dir="rtl"] .app-auth-lang-corner {
            left: 1rem;
            right: auto;
        }
        .app-auth-lang-corner .app-student-lang {
            position: relative;
            flex-shrink: 0;
        }
        .app-auth-lang-corner .app-student-lang__btn {
            display: inline-flex !important;
            align-items: center;
            justify-content: center;
            width: 2.25rem !important;
            min-width: 2.25rem !important;
            max-width: 2.25rem !important;
            height: 2.25rem !important;
            min-height: 2.25rem !important;
            max-height: 2.25rem !important;
            padding: 0 !important;
            margin: 0 !important;
            gap: 0 !important;
            line-height: 1 !important;
            border-radius: 0.35rem !important;
            background: rgba(255, 255, 255, 0.18) !important;
            color: #fff !important;
            border: 1px solid rgba(255, 255, 255, 0.28) !important;
            box-shadow: none !important;
            box-sizing: border-box;
            cursor: pointer;
            -webkit-tap-highlight-color: transparent;
        }
        .app-auth-lang-corner .app-student-lang__btn:focus-visible {
            outline: 2px solid rgba(56, 189, 248, 0.65);
            outline-offset: 2px;
        }
        .app-auth-lang-corner .app-student-lang__flag {
            display: flex;
            align-items: center;
            justify-content: center;
            margin: 0 !important;
        }
        .app-auth-lang-corner .app-student-lang__flag img {
            width: 18px;
            height: 18px;
            border-radius: 3px;
            display: block;
            object-fit: cover;
        }
        .app-auth-lang-corner .app-student-lang__caret {
            display: none !important;
        }
        .app-auth-lang-corner .app-student-lang__label {
            position: absolute !important;
            width: 1px !important;
            height: 1px !important;
            padding: 0 !important;
            margin: -1px !important;
            overflow: hidden !important;
            clip: rect(0, 0, 0, 0) !important;
            white-space: nowrap !important;
            border: 0 !important;
        }
        .app-auth-brand__logo {
            display: block;
            margin-left: auto;
            margin-right: auto;
            max-width: min(32vw, 96px);
            height: auto;
            object-fit: contain;
        }
        .app-auth-brand__logo--circle {
            max-width: min(30vw, 90px);
            width: 100%;
        }
        .app-auth-brand__logo--line {
            max-width: min(72vw, 200px);
            width: 100%;
            height: auto;
        }
        .app-auth-signin-page .app-auth-brand__logo--line {
            max-width: min(58vw, 164px);
        }
        .app-auth-brand__subtitle {
            font-size: clamp(0.8rem, 2.4vw, 0.95rem);
            line-height: 1.45;
            font-weight: 500;
            opacity: 0.95;
            margin-top: 0.35rem;
        }
        .app-auth-brand__naroon {
            font-weight: 900;
            font-size: 1.22em;
            letter-spacing: 0.03em;
            text-shadow: 0 0 20px rgba(255, 255, 255, 0.15);
        }
        .app-auth-signin-heading {
            font-size: clamp(1.45rem, 5.5vw, 2.1rem);
            font-weight: 600;
            line-height: 1.35;
            margin-bottom: 0;
        }
        
        .app-auth-masked-phone {
            direction: ltr;
            unicode-bidi: isolate;
            display: inline-block;
        }
        .app-auth-referral-code {
            direction: ltr;
            unicode-bidi: isolate;
            display: inline-block;
            color: #facc15 !important;
        }
        .app-auth-signin-referral-note {
            margin-bottom: 0 !important;
            margin-top: 0.85rem !important;
        }
        .app-auth-signin-intro {
            display: block;
            line-height: 1.75;
        }
        .app-auth-otp-intro {
            display: block;
            line-height: 1.5;
        }
        .app-auth-otp-change-phone {
            display: inline-block;
            margin-top: 0.2rem;
        }
        .app-auth-validation-warn {
            color: #facc15 !important;
        }
        .app-auth-otp-stage--expired .app-auth-otp-entry[hidden] {
            display: none !important;
        }
        .app-auth-otp-expired[hidden] {
            display: none !important;
        }
        .app-auth-alert--warn {
            color: #facc15 !important;
        }
        .app-auth-otp-resend-wrap .app-auth-otp-resend-btn,
        .app-auth-otp-resend-wrap .app-auth-otp-resend-countdown {
            color: #facc15 !important;
            font-size: 12px !important;
            font-weight: 600 !important;
            line-height: 1.5 !important;
            font-family: "Vazirmatn", tahoma, system-ui, sans-serif !important;
        }
        .app-auth-otp-resend-wrap .app-auth-otp-resend-btn {
            text-decoration: none;
        }
        .app-auth-otp-resend-btn:hover,
        .app-auth-otp-resend-btn:focus {
            color: #fde047 !important;
        }
        .app-auth-otp-boxes {
            display: flex;
            flex-wrap: nowrap;
            justify-content: center;
            align-items: center;
            gap: 0.35rem;
        }
        .app-auth-otp-digit {
            width: 3rem;
            height: 3rem;
            max-width: 14vw;
            padding: 0;
            border: solid 1px rgba(15, 23, 42, 0.18);
            background: #ffffff;
            color: #0f172a;
            caret-color: #0f172a;
            border-radius: 0.35rem;
        }
        .app-auth-otp-digit:focus {
            outline: none;
            border-color: #0e7490;
            box-shadow: 0 0 0 2px rgba(14, 116, 144, 0.35);
        }
        .app-auth-otp-resend-countdown {
            margin: 0;
        }
        .app-auth-otp-resend-countdown__value {
            font-variant-numeric: tabular-nums;
            letter-spacing: 0.04em;
        }
        .app-auth-card .card-center .text-center > .app-auth-brand ~ h1,
        .app-auth-card .card-center .text-center > .app-auth-brand ~ p {
            margin-top: 0.3rem !important;
        }
        .app-auth-signin-page .app-auth-card .card-center .text-center > .app-auth-brand ~ h1 {
            margin-top: 0.55rem !important;
        }
        .app-auth-card .card-center .text-center > .app-auth-brand ~ h1 + p {
            margin-top: 0.35rem !important;
        }
        .app-auth-signin-page .app-auth-card .card-center > .content {
            margin-top: 0.65rem;
        }
        .app-auth-signin-back a {
            color: #facc15 !important;
            font-weight: 700 !important;
            text-decoration: none !important;
            opacity: 1 !important;
        }
        .app-auth-signin-back--bottom {
            margin-top: 1.35rem;
            padding-bottom: 0.35rem;
        }
        .app-auth-signin-back a:hover,
        .app-auth-signin-back a:focus {
            color: #fde047 !important;
            text-decoration: underline !important;
        }
        .app-auth-forgot-password {
            color: #facc15 !important;
            text-decoration: none;
            background: transparent !important;
            box-shadow: none !important;
        }
        .app-auth-forgot-password:hover,
        .app-auth-forgot-password:focus {
            color: #fde047 !important;
            text-decoration: underline;
            opacity: 1;
        }
        .app-auth-btn-otp-login {
            display: block;
            width: 100% !important;
            max-width: 100%;
            border-radius: 0 !important;
            background-color: transparent !important;
            color: #ecfeff !important;
            border: 1px solid rgba(236, 254, 255, 0.45) !important;
            background-image: none !important;
        }
        .app-auth-btn-otp-login:hover,
        .app-auth-btn-otp-login:focus {
            background-color: rgba(14, 116, 144, 0.35) !important;
            color: #f0fdfa !important;
        }
        .app-signin-no-autofill-password::-webkit-credentials-auto-fill-button,
        .app-signin-no-autofill-password::-webkit-strong-password-auto-fill-button {
            visibility: hidden;
            pointer-events: none;
            display: none !important;
        }
        .app-signin-phone-input {
            direction: ltr !important;
            text-align: center !important;
            letter-spacing: 0.06em;
            font-variant-numeric: tabular-nums;
        }
        .app-signin-phone-input::placeholder {
            color: rgba(236, 254, 255, 0.28) !important;
            opacity: 1;
        }
        .app-signin-phone-input::-webkit-input-placeholder {
            color: rgba(236, 254, 255, 0.28) !important;
            -webkit-text-fill-color: rgba(236, 254, 255, 0.28);
            opacity: 1;
        }
        .app-signin-phone-input::-moz-placeholder {
            color: rgba(236, 254, 255, 0.28) !important;
            opacity: 1;
        }
        .app-signin-phone-hint {
            color: rgba(236, 254, 255, 0.55) !important;
            line-height: 1.5;
            margin-top: 0 !important;
        }
        .app-signin-phone-hint__prefix {
            color: rgba(236, 254, 255, 0.7) !important;
            font-weight: 600;
            transition: color 0.2s ease;
        }
        .app-signin-phone-hint__prefix--alert {
            color: #f87171 !important;
            animation: app-signin-phone-prefix-blink 0.9s ease-in-out infinite;
        }
        @keyframes app-signin-phone-prefix-blink {
            0%,
            100% {
                opacity: 1;
            }
            50% {
                opacity: 0.3;
            }
        }
        .app-signin-phone-client-error[hidden] {
            display: none !important;
        }
        .app-signin-ref-row {
            display: flex;
            flex-direction: row;
            align-items: stretch;
            gap: 0.5rem;
        }
        .app-signin-ref-row__field {
            flex: 1 1 auto;
            min-width: 0;
        }
        .app-signin-ref-check-btn {
            flex: 0 0 auto;
            align-self: stretch;
            margin-top: 0;
            padding: 0 0.85rem;
            min-height: 3.25rem;
            border-radius: 0 !important;
            white-space: nowrap;
            background-color: rgba(14, 116, 144, 0.55) !important;
            color: #ecfeff !important;
        }
        .app-signin-ref-check-btn:hover,
        .app-signin-ref-check-btn:focus {
            background-color: #0e7490 !important;
            color: #f0fdfa !important;
        }
        .app-signin-ref-check-btn:disabled {
            opacity: 0.65;
        }
        .app-signin-ref-feedback[hidden] {
            display: none !important;
        }
        .app-signin-ref-feedback--ok {
            color: #4ade80 !important;
            font-weight: 600;
        }
        .app-signin-ref-feedback--bad {
            color: #f87171 !important;
            font-weight: 600;
        }
        .app-signin-ref-feedback--neutral {
            color: #facc15 !important;
            font-weight: 500;
        }
        .app-auth-btn-primary-solid {
            display: block;
            width: 100% !important;
            max-width: 100%;
            border-radius: 0 !important;
            background-color: #0e7490 !important;
            color: #ecfeff !important;
            background-image: none !important;
        }
        .app-auth-btn-primary-solid:hover,
        .app-auth-btn-primary-solid:focus {
            background-color: #155e75 !important;
            color: #f0fdfa !important;
        }
        .app-auth-btn-primary-solid:active {
            background-color: #134e4a !important;
            color: #f0fdfa !important;
        }
        .app-auth-btn-back {
            display: block;
            width: 100% !important;
            max-width: 100%;
            border-radius: 0 !important;
            text-align: center;
            text-decoration: none !important;
            background-color: transparent !important;
            color: rgba(236, 254, 255, 0.9) !important;
            border: 1px solid rgba(236, 254, 255, 0.35) !important;
            background-image: none !important;
        }
        .app-auth-btn-back:hover,
        .app-auth-btn-back:focus {
            background-color: rgba(14, 116, 144, 0.35) !important;
            color: #f0fdfa !important;
        }
        .app-auth-developer-credit {
            margin-top: 1.35rem;
            padding-bottom: 0.25rem;
            line-height: 1.45;
        }
        .app-auth-developer-credit,
        .app-auth-developer-credit p {
            color: rgba(255, 255, 255, 0.5) !important;
            font-family: "Vazirmatn", tahoma, system-ui, sans-serif !important;
        }
        .app-auth-developer-credit p {
            margin-bottom: 0.35rem;
        }
        .app-auth-developer-credit p:last-child {
            margin-bottom: 0;
        }
        
        .app-auth-signin-page {
            padding-bottom: calc(2rem + env(safe-area-inset-bottom, 0px));
        }
        .app-auth-signin-footer {
            position: fixed;
            left: 0;
            right: 0;
            bottom: 0;
            z-index: 4;
            flex-shrink: 0;
            margin: 0;
            padding: 0.32rem 0.65rem calc(0.3rem + env(safe-area-inset-bottom, 0px));
            text-align: center;
            background: #0e7490;
            border-top: none;
            box-shadow: 0 -4px 18px rgba(0, 0, 0, 0.22);
        }
        .app-auth-signin-footer__line {
            margin: 0;
            padding: 0;
            font-size: clamp(0.55rem, 2.5vw, 0.65rem);
            font-weight: 500;
            line-height: 1.35;
            letter-spacing: 0.015em;
            color: rgba(255, 255, 255, 0.95);
            white-space: nowrap;
            overflow: hidden;
            text-overflow: ellipsis;
        }
        .app-auth-signin-footer__label {
            font-weight: 500;
        }
        .app-auth-signin-footer__company {
            font-weight: 600;
        }
        .app-auth-signin-footer__sep {
            margin: 0 0.35rem;
            opacity: 0.75;
        }
        .app-auth-signin-footer__phones {
            font-weight: 500;
            letter-spacing: 0.02em;
        }
        .app-auth-signin-page .app-auth-access-help-wrap {
            margin-top: 1.85rem;
            margin-bottom: 0.25rem;
        }
        
        .app-auth-page input.form-control:-webkit-autofill,
        .app-auth-page input.form-control:-webkit-autofill:hover,
        .app-auth-page input.form-control:-webkit-autofill:focus,
        .app-auth-page input.form-control:-webkit-autofill:active {
            -webkit-text-fill-color: rgba(255, 255, 255, 0.98) !important;
            caret-color: #fff;
            box-shadow: 0 0 0 1000px rgba(8, 18, 35, 0.65) inset !important;
            transition: background-color 99999s ease-out 0s;
        }
        .app-auth-page input.form-control:-moz-autofill,
        .app-auth-page input.form-control:-moz-autofill:focus {
            box-shadow: 0 0 0 1000px rgba(8, 18, 35, 0.65) inset !important;
            -webkit-text-fill-color: rgba(255, 255, 255, 0.98);
            color: rgba(255, 255, 255, 0.98) !important;
            caret-color: #fff;
        }
        
        .app-auth-page input.form-control::placeholder {
            color: rgba(255, 255, 255, 0.95) !important;
            opacity: 1;
        }
        .app-auth-page input.form-control::-webkit-input-placeholder {
            color: rgba(255, 255, 255, 0.95) !important;
        }
        .app-auth-page input.form-control::-moz-placeholder {
            color: rgba(255, 255, 255, 0.95) !important;
            opacity: 1;
        }
        .app-auth-page input.form-control:-ms-input-placeholder {
            color: rgba(255, 255, 255, 0.95) !important;
        }

        
        .app-auth-access-help-btn {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            width: 4.2rem;
            height: 4.2rem;
            padding: 0;
            border: 2px solid rgba(14, 116, 144, 0.95);
            border-radius: 50%;
            background: #0c4a6e;
            box-shadow: 0 6px 20px rgba(0, 0, 0, 0.35);
            cursor: pointer;
            transition: transform 0.15s ease, box-shadow 0.15s ease;
        }
        .app-auth-access-help-btn:hover,
        .app-auth-access-help-btn:focus {
            transform: scale(1.04);
            box-shadow: 0 8px 24px rgba(2, 123, 188, 0.45);
            outline: none;
        }
        .app-auth-access-help-btn__img {
            display: block;
            width: 3.1rem;
            height: 3.1rem;
            border-radius: 50%;
            object-fit: cover;
        }
        
        body.app-auth-body .app-auth-access-help-menu {
            z-index: 101 !important;
        }
        body.app-auth-body .app-auth-access-help-menu:not(.menu-active) {
            visibility: hidden !important;
            pointer-events: none !important;
            opacity: 0 !important;
        }
        body.app-auth-body .app-auth-access-help-menu.menu-active {
            visibility: visible !important;
            pointer-events: auto !important;
            opacity: 1 !important;
        }
        #menu-auth-access-help-form.menu,
        #menu-auth-access-help-form.app-auth-access-help-menu--form {
            overflow: hidden !important;
            display: flex !important;
            flex-direction: column;
            max-height: min(420px, 88dvh);
            padding-bottom: env(safe-area-inset-bottom, 0px);
            left: 0 !important;
            right: 0 !important;
            width: 100% !important;
            border-radius: 0 !important;
        }
        #menu-auth-access-help-form.menu-box-bottom.menu-active {
            transform: translate3d(0, 0, 0) !important;
        }
        #menu-auth-access-help-form .app-auth-access-help-menu__head {
            flex-shrink: 0;
            padding-bottom: 0.35rem;
        }
        #menu-auth-access-help-form .app-auth-access-help-menu__head h1 {
            font-family: "Vazirmatn", tahoma, system-ui, sans-serif;
            line-height: 1.3;
        }
        #menu-auth-access-help-form .app-auth-access-help-menu__body {
            flex: 0 0 auto;
            overflow: hidden;
            display: flex;
            flex-direction: column;
        }
        #menu-auth-access-help-form .app-auth-access-help-form {
            display: flex;
            flex-direction: column;
            flex: 0 0 auto;
        }
        #menu-auth-access-help-form .app-auth-access-help-form__fields {
            flex: 0 0 auto;
            overflow: hidden;
        }
        #menu-auth-access-help-form .app-auth-access-help-form__actions {
            flex-shrink: 0;
            padding-top: 0.35rem;
            padding-bottom: 0.35rem;
        }
        #menu-auth-access-help-form .app-auth-access-help-submit {
            margin: 0;
        }
        #menu-auth-access-help-form .app-auth-access-help-submit:disabled {
            opacity: 0.72;
        }
        .app-auth-access-help-menu .menu-title h1 {
            font-family: "Vazirmatn", tahoma, system-ui, sans-serif;
        }
        .app-auth-access-help-menu .menu-title a,
        .app-auth-access-help-menu .menu-title a i {
            color: #0f172a !important;
        }
        
        .app-auth-access-help-menu .input-style.has-icon i:first-child {
            color: #0f172a !important;
        }
        .app-auth-access-help-menu .input-transparent input,
        .app-auth-access-help-menu .input-transparent label {
            color: #0f172a !important;
            background-color: transparent !important;
        }
        .app-auth-access-help-menu .input-transparent input::placeholder {
            color: rgba(15, 23, 42, 0.45) !important;
            opacity: 1;
        }
        .app-auth-access-help-menu .input-transparent.no-borders input {
            border-color: rgba(15, 23, 42, 0.2) !important;
        }
        .app-auth-access-help-menu__head .app-auth-access-help-form-error {
            color: #0e7490 !important;
            font-size: 0.68rem;
            font-weight: 600;
            line-height: 1.4;
            text-align: center;
            padding: 0 1.5rem 0 0.5rem;
            max-height: 2.8em;
            overflow: hidden;
            text-overflow: ellipsis;
        }
        .app-auth-access-help-menu__head .app-auth-access-help-form-error:not([hidden]) {
            display: block;
        }
        .app-auth-access-help-char-count {
            color: rgba(15, 23, 42, 0.55) !important;
        }

/* Sign-in background — tech overlay without grid/network lines. */
html:has(body.app-auth-body),
body.app-auth-body {
    background: #030712 !important;
    background-color: #030712 !important;
}

body.app-auth-body > .app-auth-bg {
    position: fixed !important;
    inset: 0 !important;
    z-index: 0 !important;
    display: block !important;
    pointer-events: none !important;
}

body.app-auth-body > .app-auth-bg .app-auth-bg__base {
    background: linear-gradient(165deg, #020617 0%, #0c1929 35%, #0f2847 55%, #111827 100%) !important;
}

body.app-auth-body > .app-auth-bg .app-auth-bg__grid,
body.app-auth-body > .app-auth-bg .app-auth-bg__nodes,
body.app-auth-body > .app-auth-bg .app-auth-bg__glow {
    display: none !important;
}

body.app-auth-body > .app-auth-bg .app-auth-bg__mesh,
body.app-auth-body > .app-auth-bg .app-auth-sym--drift,
body.app-auth-body > .app-auth-bg .app-auth-sym--orbit,
body.app-auth-body > .app-auth-bg .app-auth-sym--spin-slow,
body.app-auth-body > .app-auth-bg .app-auth-sym--blink,
body.app-auth-body > .app-auth-bg .app-auth-sym--scan-y {
    animation: none !important;
}

body.app-auth-body > .app-auth-bg .app-auth-bg__mesh {
    transform: none !important;
}

body.app-auth-body > .app-auth-bg .app-auth-sym {
    text-shadow: none !important;
    transform: none !important;
    opacity: 0.28 !important;
}

body.app-auth-body #page.app-auth-page {
    position: relative !important;
    z-index: 1 !important;
    min-height: 100vh !important;
    min-height: 100dvh !important;
    background: transparent !important;
    isolation: auto !important;
}

body.app-auth-body #page.app-auth-page .page-content,
body.app-auth-body .app-auth-signin-page,
body.app-auth-body .card.app-auth-card,
body.app-auth-body .card.app-auth-card[data-card-height="cover-full"],
body.app-auth-body .app-auth-card .card-center {
    background: transparent !important;
    background-color: transparent !important;
    --bs-card-bg: transparent !important;
    --bs-body-bg: transparent !important;
    border: none !important;
    box-shadow: none !important;
}

/* Auth — language sheet stacking only (layout/styles: app-lang-sheet.css). */
html:has(body.app-auth-body) > .menu-hider.menu-active {
    z-index: 100 !important;
    background-color: rgba(2, 6, 23, 0.45) !important;
}

body.app-auth-body #menu-language.app-student-lang-sheet,
body.app-auth-body #menu-auth-access-help-form,
body.app-auth-body #menu-auth-access-help-success {
    z-index: 101 !important;
}

