/**
 * Nipun Schools login = Nipun India card structure (UI only).
 * Centered 2-column card; LEFT = full-bleed clean hero photo only; RIGHT = Schools form.
 * Loaded last — overrides campus-gate / apple-mac.
 */
@media screen {
    html body.login-portal.login-portal--india-card.login-portal--campus-gate:not(.login-portal--mobile-app):not(.login-portal--family-app),
    html body.login-portal.login-portal--india-card:not(.login-portal--mobile-app):not(.login-portal--family-app) {
        min-height: 100vh !important;
        min-height: 100dvh !important;
        height: auto !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        padding: 1rem !important;
        margin: 0 !important;
        background: linear-gradient(to bottom right, #eff6ff, #f3f4f6) !important;
        background-image: linear-gradient(to bottom right, #eff6ff, #f3f4f6) !important;
        font-family: Inter, "Segoe UI", system-ui, sans-serif !important;
    }

    html body.login-portal.login-portal--india-card:not(.login-portal--mobile-app):not(.login-portal--family-app) > .login-layout {
        display: grid !important;
        grid-template-columns: minmax(0, 1.05fr) minmax(0, 0.95fr) !important;
        grid-template-rows: auto !important;
        max-width: 68rem !important;
        width: 100% !important;
        margin: 0 auto !important;
        border-radius: 1.15rem !important;
        overflow: visible !important;
        box-shadow:
            0 1px 2px rgba(2, 34, 72, 0.04),
            0 24px 56px -18px rgba(2, 34, 72, 0.28) !important;
        background: #ffffff !important;
        min-height: 0 !important;
        height: auto !important;
        max-height: none !important;
        position: relative !important;
        z-index: 1 !important;
    }

    /* ===== LEFT: photo only ===== */
    html body.login-portal.login-portal--india-card:not(.login-portal--mobile-app):not(.login-portal--family-app) .login-hero,
    html body.login-portal.login-portal--india-card:not(.login-portal--mobile-app):not(.login-portal--family-app) .login-hero.login-hero--india-photo {
        position: relative !important;
        display: block !important;
        grid-column: 1 !important;
        align-self: stretch !important;
        min-height: 28rem !important;
        height: auto !important;
        width: 100% !important;
        padding: 0 !important;
        margin: 0 !important;
        border: 0 !important;
        border-radius: 1.15rem 0 0 1.15rem !important;
        background: #0b356d !important;
        background-image: none !important;
        overflow: hidden !important;
        box-shadow: none !important;
    }

    html body.login-portal.login-portal--india-card .login-hero::before,
    html body.login-portal.login-portal--india-card .login-hero::after {
        display: none !important;
        content: none !important;
        background: none !important;
    }

    html body.login-portal.login-portal--india-card .login-hero-photo {
        position: absolute !important;
        inset: 0 !important;
        width: 100% !important;
        height: 100% !important;
        max-width: none !important;
        max-height: none !important;
        object-fit: cover !important;
        object-position: center top !important;
        display: block !important;
        z-index: 0 !important;
        pointer-events: none !important;
        border: 0 !important;
        border-radius: 0 !important;
        image-rendering: auto !important;
        -webkit-backface-visibility: hidden !important;
        backface-visibility: hidden !important;
        transform: translateZ(0) !important;
    }

    /* Logo removed — photo only on left */
    html body.login-portal.login-portal--india-card .login-hero-india-brand,
    html body.login-portal.login-portal--india-card .login-hero-india-brand__mark,
    html body.login-portal.login-portal--india-card .login-hero-india-brand__name,
    html body.login-portal.login-portal--india-card .login-hero-india-brand__tag {
        display: none !important;
        visibility: hidden !important;
        opacity: 0 !important;
        pointer-events: none !important;
        height: 0 !important;
        width: 0 !important;
        overflow: hidden !important;
    }

    /* Nuclear hide: any leftover left chrome / feature tiles / brand panel */
    html body.login-portal.login-portal--india-card .login-hero-js-hooks,
    html body.login-portal.login-portal--india-card .login-hero-bg-decor,
    html body.login-portal.login-portal--india-card .login-hero-dash-mock,
    html body.login-portal.login-portal--india-card .login-hero-inner,
    html body.login-portal.login-portal--india-card .login-hero-body,
    html body.login-portal.login-portal--india-card .login-hero-brand-panel,
    html body.login-portal.login-portal--india-card .login-hero-copy,
    html body.login-portal.login-portal--india-card .login-hero-showcase,
    html body.login-portal.login-portal--india-card .login-hero-features,
    html body.login-portal.login-portal--india-card .login-hero-orb,
    html body.login-portal.login-portal--india-card .login-hero-grid,
    html body.login-portal.login-portal--india-card .login-hero-photo-scrim,
    html body.login-portal.login-portal--india-card .login-hero .login-brand-lockup,
    html body.login-portal.login-portal--india-card .login-hero [class*="feature"],
    html body.login-portal.login-portal--india-card .login-hero [class*="icon-grid"] {
        display: none !important;
        visibility: hidden !important;
        opacity: 0 !important;
        pointer-events: none !important;
        height: 0 !important;
        width: 0 !important;
        overflow: hidden !important;
    }

    /* ===== RIGHT ===== */
    html body.login-portal.login-portal--india-card:not(.login-portal--mobile-app):not(.login-portal--family-app) .login-shell {
        grid-column: 2 !important;
        display: flex !important;
        flex-direction: column !important;
        background: #ffffff !important;
        background-image: none !important;
        padding: 0 !important;
        margin: 0 !important;
        min-height: 100% !important;
        height: auto !important;
        width: 100% !important;
        max-width: none !important;
        box-shadow: none !important;
        border: 0 !important;
        border-radius: 0 !important;
        overflow: visible !important;
    }

    html body.login-portal.login-portal--india-card:not(.login-portal--mobile-app):not(.login-portal--family-app) .login-top {
        display: none !important;
    }

    html body.login-portal.login-portal--india-card:not(.login-portal--mobile-app):not(.login-portal--family-app) .login-card {
        flex: 0 1 auto !important;
        display: block !important;
        padding: 1.15rem 1.85rem 1.25rem !important;
        margin: 0 !important;
        max-width: none !important;
        width: 100% !important;
        box-shadow: none !important;
        border: 0 !important;
        border-radius: 0 !important;
        background: #fff !important;
        background-image: none !important;
        overflow: visible !important;
    }

    html body.login-portal.login-portal--india-card .login-corp-head,
    html body.login-portal.login-portal--india-card .login-card-intro {
        text-align: center !important;
        margin: 0 0 0.75rem !important;
    }

    html body.login-portal.login-portal--india-card .login-corp-head h1,
    html body.login-portal.login-portal--india-card .login-card-intro h1 {
        font-size: 1.35rem !important;
        font-weight: 700 !important;
        color: #0f172a !important;
        letter-spacing: -0.03em !important;
        margin: 0 0 0.25rem !important;
        font-family: Inter, "Segoe UI", system-ui, sans-serif !important;
        line-height: 1.2 !important;
    }

    html body.login-portal.login-portal--india-card .login-corp-head p,
    html body.login-portal.login-portal--india-card .login-card-intro p {
        color: #64748b !important;
        font-size: 0.8rem !important;
        margin: 0 !important;
        font-weight: 500 !important;
        line-height: 1.35 !important;
    }

    /* Remove "Role" label + empty gap above role chips */
    html body.login-portal.login-portal--india-card .role-section-label {
        display: none !important;
        margin: 0 !important;
        height: 0 !important;
        padding: 0 !important;
        overflow: hidden !important;
    }

    /* Classy role card — navy border, soft surface */
    html body.login-portal.login-portal--india-card .role-option--school-default .role-chip--school-default,
    html body.login-portal.login-portal--india-card .role-chip--school-default {
        border: 1.5px solid #cbd5e1 !important;
        border-radius: 0.75rem !important;
        background: #f8fafc !important;
        box-shadow: none !important;
        padding: 0.65rem 0.8rem !important;
        transition: border-color 0.15s ease, background 0.15s ease, box-shadow 0.15s ease !important;
        margin-bottom: 0.45rem !important;
    }

    html body.login-portal.login-portal--india-card .role-option--school-default input:checked + .role-chip--school-default,
    html body.login-portal.login-portal--india-card .role-option input:checked + .role-chip--school-default {
        border-color: #022248 !important;
        background: #fff !important;
        box-shadow: 0 0 0 3px rgba(2, 34, 72, 0.1) !important;
        color: inherit !important;
    }

    html body.login-portal.login-portal--india-card .role-chip--school-default .role-chip__copy strong {
        color: #020617 !important;
        font-weight: 700 !important;
    }

    html body.login-portal.login-portal--india-card .role-chip--school-default .role-chip__copy small {
        color: #475569 !important;
    }

    html body.login-portal.login-portal--india-card .role-chip--school-default .role-chip__badge {
        background: #e2e8f0 !important;
        color: #334155 !important;
        border: 0 !important;
        font-size: 0.65rem !important;
        font-weight: 700 !important;
        letter-spacing: 0.04em !important;
        border-radius: 999px !important;
        padding: 0.2rem 0.55rem !important;
    }

    html body.login-portal.login-portal--india-card .role-more-drawer {
        margin-top: 0.65rem !important;
        border: 0 !important;
        background: transparent !important;
        box-shadow: none !important;
    }

    html body.login-portal.login-portal--india-card .role-more-drawer__summary {
        border: 0 !important;
        background: transparent !important;
        color: #1e293b !important;
        font-weight: 650 !important;
        font-size: 0.95rem !important;
        padding: 0.35rem 0 !important;
        box-shadow: none !important;
        cursor: pointer !important;
    }

    html body.login-portal.login-portal--india-card .login-form .input-group {
        margin-bottom: 0.95rem !important;
    }

    html body.login-portal.login-portal--india-card .login-form .input-field,
    html body.login-portal.login-portal--india-card .login-form input[type="text"],
    html body.login-portal.login-portal--india-card .login-form input[type="password"],
    html body.login-portal.login-portal--india-card .login-form input[type="email"],
    html body.login-portal.login-portal--india-card .login-form input[type="tel"] {
        border-radius: 0.75rem !important;
        border: 1.5px solid #e2e8f0 !important;
        padding-top: 0.85rem !important;
        padding-bottom: 0.85rem !important;
        box-shadow: none !important;
        background: #fff !important;
        font-size: 0.95rem !important;
        transition: border-color 0.15s ease, box-shadow 0.15s ease !important;
    }

    html body.login-portal.login-portal--india-card .login-form .input-field:focus,
    html body.login-portal.login-portal--india-card .login-form input:focus {
        border-color: #022248 !important;
        box-shadow: 0 0 0 3px rgba(2, 34, 72, 0.12) !important;
        outline: none !important;
    }

    html body.login-portal.login-portal--india-card .login-help-card {
        border: 0 !important;
        background: #f1f5f9 !important;
        border-radius: 0.65rem !important;
        box-shadow: none !important;
        margin: 0.2rem 0 0.55rem !important;
    }

    html body.login-portal.login-portal--india-card .login-help-card summary {
        color: #334155 !important;
        font-weight: 600 !important;
        font-size: 0.95rem !important;
        padding: 0.45rem 0.75rem !important;
    }

    /* Force navy Sign In (override campus-gate green) */
    html body.login-portal.login-portal--india-card .btn-signin,
    html body.login-portal.login-portal--india-card button.btn-signin,
    html body.login-portal.login-portal--india-card .login-actions-sticky .btn-signin {
        width: 100% !important;
        background: #022248 !important;
        background-image: none !important;
        border: 1px solid #022248 !important;
        color: #fff !important;
        border-radius: 0.65rem !important;
        font-weight: 700 !important;
        font-size: 0.92rem !important;
        letter-spacing: -0.01em !important;
        padding: 0.7rem 1rem !important;
        box-shadow: 0 10px 24px -12px rgba(2, 34, 72, 0.55) !important;
        transition: background 0.15s ease, transform 0.12s ease !important;
        margin-top: 0.35rem !important;
    }

    html body.login-portal.login-portal--india-card .btn-signin:hover,
    html body.login-portal.login-portal--india-card button.btn-signin:hover {
        background: #001a33 !important;
        background-image: none !important;
        transform: translateY(-1px);
    }

    html body.login-portal.login-portal--india-card .btn-signin::after {
        display: none !important;
    }

    html body.login-portal.login-portal--india-card .login-secondary-links {
        display: flex !important;
        flex-wrap: wrap !important;
        justify-content: center !important;
        gap: 0.4rem 0.9rem !important;
        margin-top: 0.7rem !important;
        margin-bottom: 0 !important;
        text-align: center !important;
        visibility: visible !important;
        opacity: 1 !important;
        height: auto !important;
        overflow: visible !important;
    }

    html body.login-portal.login-portal--india-card .login-secondary-links a {
        color: #1e293b !important;
        font-size: 0.92rem !important;
        font-weight: 600 !important;
        text-decoration: none !important;
    }

    html body.login-portal.login-portal--india-card .login-secondary-links a:hover {
        color: #022248 !important;
    }

    html body.login-portal.login-portal--india-card .login-footer-signup-link {
        display: block !important;
        width: 100% !important;
        text-align: center !important;
        border: 1.5px solid #e2e8f0 !important;
        border-radius: 0.75rem !important;
        padding: 0.65rem 1rem !important;
        font-weight: 600 !important;
        color: #334155 !important;
        background: #fff !important;
        text-decoration: none !important;
        margin-top: 0.35rem !important;
        flex-basis: 100% !important;
        visibility: visible !important;
        display: block !important;
    }

    html body.login-portal.login-portal--india-card .login-footer-signup-link:hover {
        border-color: #022248 !important;
        color: #022248 !important;
    }

    html body.login-portal.login-portal--india-card .login-security-card,
    html body.login-portal.login-portal--india-card .login-app-strip-wrap,
    html body.login-portal.login-portal--india-card .login-role-mobile {
        display: none !important;
    }

    html body.login-portal.login-portal--india-card .login-admin-foot {
        text-align: center !important;
        margin-top: 1.1rem !important;
    }

    html body.login-portal.login-portal--india-card .login-admin-foot a {
        color: #64748b !important;
        font-size: 0.82rem !important;
        font-weight: 600 !important;
    }

    /* ===== Neat Inter typography (kill Fraunces / Manrope on this card) ===== */
    html body.login-portal.login-portal--india-card:not(.login-portal--mobile-app):not(.login-portal--family-app),
    html body.login-portal.login-portal--india-card:not(.login-portal--mobile-app):not(.login-portal--family-app) .login-layout,
    html body.login-portal.login-portal--india-card:not(.login-portal--mobile-app):not(.login-portal--family-app) .login-shell,
    html body.login-portal.login-portal--india-card:not(.login-portal--mobile-app):not(.login-portal--family-app) .login-card,
    html body.login-portal.login-portal--india-card:not(.login-portal--mobile-app):not(.login-portal--family-app) .login-form,
    html body.login-portal.login-portal--india-card:not(.login-portal--mobile-app):not(.login-portal--family-app) .login-form *,
    html body.login-portal.login-portal--india-card:not(.login-portal--mobile-app):not(.login-portal--family-app) .login-corp-head,
    html body.login-portal.login-portal--india-card:not(.login-portal--mobile-app):not(.login-portal--family-app) .login-corp-head *,
    html body.login-portal.login-portal--india-card:not(.login-portal--mobile-app):not(.login-portal--family-app) .role-picker,
    html body.login-portal.login-portal--india-card:not(.login-portal--mobile-app):not(.login-portal--family-app) .role-picker *:not(i):not(.fas):not(.fa-solid),
    html body.login-portal.login-portal--india-card:not(.login-portal--mobile-app):not(.login-portal--family-app) .btn-signin,
    html body.login-portal.login-portal--india-card:not(.login-portal--mobile-app):not(.login-portal--family-app) .login-secondary-links,
    html body.login-portal.login-portal--india-card:not(.login-portal--mobile-app):not(.login-portal--family-app) .login-secondary-links a,
    html body.login-portal.login-portal--india-card:not(.login-portal--mobile-app):not(.login-portal--family-app) .login-help-card,
    html body.login-portal.login-portal--india-card:not(.login-portal--mobile-app):not(.login-portal--family-app) .login-admin-foot a {
        font-family: Inter, "Noto Sans Telugu", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif !important;
        -webkit-font-smoothing: antialiased !important;
        -moz-osx-font-smoothing: grayscale !important;
        text-rendering: optimizeLegibility !important;
    }

    html body.login-portal.login-portal--india-card .login-form .fas,
    html body.login-portal.login-portal--india-card .login-form .fa-solid,
    html body.login-portal.login-portal--india-card .btn-signin .fas,
    html body.login-portal.login-portal--india-card .role-chip .fas,
    html body.login-portal.login-portal--india-card i.fas {
        font-family: "Font Awesome 6 Free" !important;
        font-weight: 900 !important;
    }

    html body.login-portal.login-portal--india-card .login-corp-head h1,
    html body.login-portal.login-portal--india-card .login-card-intro h1 {
        font-size: 1.85rem !important;
        font-weight: 750 !important;
        letter-spacing: -0.035em !important;
        line-height: 1.2 !important;
        color: #020617 !important;
    }

    html body.login-portal.login-portal--india-card .login-corp-head p,
    html body.login-portal.login-portal--india-card .login-card-intro p {
        font-size: 1rem !important;
        font-weight: 550 !important;
        letter-spacing: -0.01em !important;
        color: #334155 !important;
    }

    html body.login-portal.login-portal--india-card .role-section-label {
        font-size: 0.92rem !important;
        font-weight: 700 !important;
        color: #0f172a !important;
    }

    html body.login-portal.login-portal--india-card .role-chip--school-default .role-chip__copy strong {
        font-size: 1.08rem !important;
        letter-spacing: -0.02em !important;
        color: #020617 !important;
    }

    html body.login-portal.login-portal--india-card .role-chip--school-default .role-chip__copy small {
        font-size: 0.86rem !important;
        font-weight: 500 !important;
        letter-spacing: -0.01em !important;
        color: #475569 !important;
    }

    html body.login-portal.login-portal--india-card .role-more-drawer__summary {
        font-size: 0.95rem !important;
        font-weight: 650 !important;
        color: #1e293b !important;
    }

    html body.login-portal.login-portal--india-card .login-form label,
    html body.login-portal.login-portal--india-card .input-group label {
        font-size: 0.92rem !important;
        font-weight: 650 !important;
        color: #0f172a !important;
        letter-spacing: -0.01em !important;
        margin-bottom: 0.35rem !important;
    }

    html body.login-portal.login-portal--india-card .login-form .input-field,
    html body.login-portal.login-portal--india-card .login-form input {
        font-size: 1.05rem !important;
        font-weight: 550 !important;
        letter-spacing: -0.01em !important;
        color: #020617 !important;
    }

    html body.login-portal.login-portal--india-card .login-form .input-field::placeholder,
    html body.login-portal.login-portal--india-card .login-form input::placeholder {
        color: #64748b !important;
        font-weight: 500 !important;
        opacity: 1 !important;
    }

    html body.login-portal.login-portal--india-card .login-help-card summary {
        font-size: 0.95rem !important;
        font-weight: 600 !important;
        color: #334155 !important;
    }

    html body.login-portal.login-portal--india-card .login-help-card__list,
    html body.login-portal.login-portal--india-card .login-help-card__list strong,
    html body.login-portal.login-portal--india-card .login-help-card__list span {
        font-size: 0.92rem !important;
        color: #0f172a !important;
    }

    html body.login-portal.login-portal--india-card .btn-signin,
    html body.login-portal.login-portal--india-card button.btn-signin {
        font-size: 1.08rem !important;
        font-weight: 750 !important;
    }

    html body.login-portal.login-portal--india-card .login-secondary-links a {
        font-size: 0.92rem !important;
        font-weight: 600 !important;
        color: #1e293b !important;
    }

    html body.login-portal.login-portal--india-card .login-footer-signup-link {
        font-size: 1rem !important;
        font-weight: 700 !important;
        color: #0f172a !important;
    }

    html body.login-portal.login-portal--india-card .login-admin-foot a {
        font-size: 0.92rem !important;
        font-weight: 650 !important;
        color: #1e293b !important;
    }

    html body.login-portal.login-portal--india-card .login-form .space-y-6 > *,
    html body.login-portal.login-portal--india-card .login-form > .input-group + .input-group {
        margin-top: 0 !important;
    }

    html body.login-portal.login-portal--india-card .login-actions-sticky {
        margin-top: 0.35rem !important;
    }

    html body.login-portal.login-portal--india-card .error-message {
        font-family: Inter, "Segoe UI", system-ui, sans-serif !important;
        font-size: 0.95rem !important;
        font-weight: 600 !important;
        border-radius: 0.75rem !important;
        color: #7f1d1d !important;
    }

    @media (max-width: 1023px) {
        html body.login-portal.login-portal--india-card:not(.login-portal--mobile-app):not(.login-portal--family-app) > .login-layout {
            grid-template-columns: 1fr !important;
            max-width: 28rem !important;
            min-height: 0 !important;
            height: auto !important;
        }

        html body.login-portal.login-portal--india-card:not(.login-portal--mobile-app):not(.login-portal--family-app) .login-hero {
            display: none !important;
        }

        html body.login-portal.login-portal--india-card:not(.login-portal--mobile-app):not(.login-portal--family-app) .login-shell {
            grid-column: 1 !important;
        }

        html body.login-portal.login-portal--india-card:not(.login-portal--mobile-app):not(.login-portal--family-app) .login-card {
            padding: 1.75rem 1.35rem !important;
        }
    }
}
