/* Login-only identity lockup: no programme branding competes with sign-in. */
.admin-auth .admin-auth-card {
    width: min(100%, 480px);
}

.admin-auth .admin-auth-identity {
    display: flex;
    align-items: center;
    gap: 14px;
    margin: 0 0 24px;
    padding: 0 0 16px;
    border-bottom: 2px solid var(--brand-blue);
}

.admin-auth .admin-auth-school-logo {
    flex: 0 0 auto;
    width: 58px;
    height: 68px;
    object-fit: contain;
}

.admin-auth .admin-auth-identity-copy {
    display: grid;
    min-width: 0;
    gap: 5px;
}

.admin-auth .admin-auth-identity-copy strong,
.admin-auth .admin-auth-identity-copy span {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.admin-auth .admin-auth-identity-copy strong {
    color: var(--brand-ink);
    font: 700 15px/1.15 var(--font-display);
    letter-spacing: .025em;
}

.admin-auth .admin-auth-identity-copy span {
    color: var(--brand-blue);
    font: 600 11px/1.25 var(--font-mono);
    letter-spacing: .055em;
}

.admin-auth .admin-auth-card > h1 {
    margin: 0 0 8px;
    font-size: clamp(1.65rem, 4vw, 2.15rem);
}

.admin-auth .admin-auth-card > .admin-subtitle {
    margin: 0;
}

@media (max-width: 420px) {
    .admin-auth .admin-auth-card {
        padding: 22px;
    }

    .admin-auth .admin-auth-identity {
        gap: 11px;
        margin-bottom: 20px;
        padding-bottom: 14px;
    }

    .admin-auth .admin-auth-school-logo {
        width: 48px;
        height: 56px;
    }

    .admin-auth .admin-auth-identity-copy strong {
        font-size: 13px;
    }

    .admin-auth .admin-auth-identity-copy span {
        font-size: 9px;
    }
}
